2014-06-10 16 views
25

Tôi đang sử dụng Play! framework v2.3 (Java) và tôi muốn thêm một số xác thực người dùng vào ứng dụng web của tôi, tức là tên người dùng/mật khẩu cho mỗi người dùng và quy trình đăng ký.Xác thực trong Play 2.3.x

Tôi tìm thấy một số thông tin về các tài liệu về cách làm việc này cho v2.1 và v2.2: http://www.playframework.com/documentation/2.1.0/JavaGuide4 https://www.playframework.com/documentation/2.2.x/JavaGuide4

Nhưng tôi không thể tìm thấy bất kỳ thông tin cập nhật trên v2.3. Tôi đã thử xem API cho play.mvc.Security.Authenticated nhưng nó không giúp (http://www.playframework.com/documentation/2.3.x/api/java/play/mvc/Security.Authenticated.html).

Bất kỳ ai biết cách thực hiện điều này đúng cách?

Trả lời

24

Có một số thư viện xác thực đã tồn tại trong đó bao gồm nhiều trường hợp sử dụng. Nó sẽ là tốt nhất để sử dụng một cái gì đó cũng được thành lập trong cộng đồng.

Secure Social - Điều này có vẻ là phổ biến nhất, với nhiều tài liệu. (Đối với cả java và scala)

Deadbolt 2 - Có nhiều ví dụ triển khai được liên kết từ repo git đó. Có vẻ như một chút hướng đến java.

Play2 Auth - Đây chỉ dành cho scala, nhưng nó được ghi lại và rất linh hoạt. (Cá nhân tôi sử dụng Play2 Auth)

+0

tại công ty của tôi, chúng tôi sử dụng Secure Social kể từ hơn một năm. Bây giờ chúng tôi chỉ nâng cấp để chơi 2.3. Phiên bản chính thức của securesocial cho 2.3 vẫn chưa ra mắt, nhưng có một ứng cử viên phát hành mà chúng tôi đã sử dụng. Cho đến nay, nó trông ổn định và độc đáo làm việc. Tôi thực sự có thể khuyên bạn nên SecureSocial, nhưng phải nói rằng tôi không bao giờ thực sự tích hợp những cái khác. –

+5

Có ai có hướng dẫn từng bước để cài đặt an toàn xã hội trên một dự án hiện tại đã được thực hiện trong chơi 2.3.8? – pitchblack408

0

Công ty chúng tôi đã xuất bản Nền tảng đám mây nguồn mở Là giao diện người dùng Web dịch vụ (dành cho Play Framework 2.2.2).

Chúng tôi đang có kế hoạch di chuyển sang 2.3.X trong vài tuần tới, mặc dù ban đầu chúng tôi có một số điểm không tương thích mà chúng tôi cần xem xét.

Bạn có thể xem video ngắn về công việc của chúng tôi tại http://www.acentera.com/opensource/; từ đó bạn sẽ có thể tìm thấy Public Git Repository của chúng ta về mã, mà trong một số trường hợp cần cải tiến nhưng hy vọng có thể là một khởi đầu tốt cho bạn để sử dụng khung công tác web tuyệt vời này.

Chúng tôi đã sử dụng shiro làm xác thực với tùy chỉnh "SampleRealm" thực hiện xác thực JDBC và nhận "quyền" hợp lệ, với memcache làm các phiên lưu trữ để giữ kết nối không trạng thái.

Kính trọng, Eric M. ACenterA Inc.

+0

Chế độ xem và bộ điều khiển chưa được đăng ký. –

+0

Nó thực sự không phải là một "ứng dụng chơi bình thường". Theo nghĩa là nó đang sử dụng Khung EmberJS. Các khung nhìn nằm bên trong các mẫu handlebars ** [URL: Viewbars Views] (https://github.com/ACenterAInc/acentera/tree/master/app/assets/templates/base/user/views) ** và tất cả dữ liệu được gửi qua các cuộc gọi của API JSON. –

+0

Ngoài ra, bạn có thể thấy trong phần sau ** [Project Controller] (https://github.com/ACenterAInc/acentera/blob/master/app/controllers/acentera/Project.java) ** Nó sử dụng: if (SecurityController.canViewUser (projectId, userId)) { Không phải cách tốt nhất để làm, nhưng nó có thể là một ví dụ. –

9

Out có một thư viện xác thực Greate gọi Silhouette cho Chơi Ứng dụng khung (Scala) hỗ trợ một số phương thức xác thực, bao gồm OAuth1, OAuth2, OpenID, Thông tin xác thực, Xác thực cơ bản, Xác thực hai yếu tố hoặc lược đồ xác thực tùy chỉnh. http://silhouette.mohiva.com

Nó rất tốt được duy trì và phiên bản ổn định 3.0.0 đã công bố chỉ vài ngày trước: http://silhouette.mohiva.com/blog/stable-release-of-silhouette-300

Điều cooles được, dự án được đặt theo tên của tội hư cấu nhân vật chiến đấu Silhouette, từ Watchmen tiểu thuyết và phim ảnh.

+1

Một mẫu trình diễn hạt giống để chơi 2.4 với angularJS có thể được tìm thấy ở đây: https://github.com/mohiva/play-silhouette-angular-seed – OliverKK

0

Chơi xác thực là kể từ khi bắt đầu không chỉ đối với scala nhưng đối với java quá, nó đã chốt nhúng ... xã hội an toàn, quốc tịch với nhiều ví dụ:

https://github.com/joscha/play-authenticate

nó là module xác thực tùy biến tốt nhất sử dụng

Các vấn đề liên quan