2010-06-21 25 views
6

Thông thường mọi người yêu cầu 'thư viện tốt nhất', nhưng tôi cho rằng xác thực OpenID chỉ là một vài yêu cầu vào/ra ...? Và tôi đang ở GAE, nơi nhiều JAR hơn có nghĩa là bắt đầu lạnh chậm hơn. Ví dụ: openid4java-0.9.5.jar có 190kB. Điều đó có vẻ giống như một chi phí cực kỳ cao cho một số đọc URL và phân tích cú pháp văn bản.Tôi muốn OpenID trên GAE/J. Tôi không muốn có một JAR 100kB khác. Tôi có bị lạc không?

Tôi có thiếu gì đó không? Nó phức tạp hơn sau đó những gì là cần thiết khi yêu cầu access_token và thông tin người dùng từ Facebook?

Có một số giải thích rõ ràng không? (This looks good nhưng dường như chỉ hữu ích cho Tài khoản Google.)
Hoặc xác thực phức tạp (hoặc nhà cung cấp nhận dạng không tương thích) mà tôi chỉ nên chấp nhận + 190kB và thêm chúng vào các JAR của tôi? (Hoặc có thể đợi OpenID ngay bây giờ.)

+13

App Engine hiện hỗ trợ OpenID nguyên bản. Có lý do gì mà bạn không thể sử dụng nó? –

+2

Lý do duy nhất là tôi không biết điều đó. Silly, tôi biết. : P Cảm ơn bạn, Nick !! Bạn có thể cho tôi một số URL được không? Tôi không thể google bất cứ điều gì mà sẽ trông 'chính thức' đủ. –

+2

http://code.google.com/appengine/docs/java/users/overview.html – nicerobot

Trả lời

0

Tôi nghĩ tốt hơn là nên sử dụng một thư viện tốt hơn là tự viết bài. 100 kB có phải là số tiền lớn cho mã phía máy chủ không? Nếu bạn thực sự muốn giảm kích thước của mã cuối cùng của mình, hãy sử dụng obfuscator tốt hơn, ví dụ ProGuard có thể rút ngắn tên phương thức và loại bỏ mã không cần thiết. Nhưng hãy nhớ rằng tối ưu hóa sớm là gốc rễ của tất cả các điều ác - các JAR tước có thể có ý nghĩa lớn đối với các applet hoặc mã khác mà người dùng phải tải xuống, nhưng IMO có ít ý nghĩa đối với các ứng dụng phía máy chủ.

+0

Cảm ơn, nhưng tôi không nghĩ rằng nó là hợp lý để sử dụng thư viện cho một cái gì đó có thể được thực hiện trong 5 dòng mã. Nhưng nó là điều rất phổ biến để xem ... –

1

Sử dụng các đặc điểm đăng nhập được Liên kết được cung cấp bởi Google App Engine. Đăng nhập liên quan đề cập đến bất kỳ dịch vụ nào cho phép người dùng tạo một ID hoặc tài khoản và sử dụng nó để xác thực với các dịch vụ khác nhau. OpenID là đăng nhập liên kết duy nhất được dịch vụ Người dùng Google App Engine hỗ trợ.

Bạn có thể tìm thêm thông tin về các tùy chọn xác thực ở đây: http://code.google.com/appengine/docs/java/users/overview.html#Authentication_Options

Và tôi sẽ khuyên bạn nên đọc "Tóm tắt kinh nghiệm tài cho Federated Đăng nhập" thêm: http://sites.google.com/site/oauthgoog/UXFedLogin/summary

+0

Cảm ơn, tôi đã có câu trả lời, xem ở trên. (Nó chưa được đánh dấu vì nó được đưa ra trong một bình luận.) –

0

+1 cho mặc định mở Hỗ trợ Id (mặc dù thử nghiệm) trong GAE

Tuy nhiên, tôi đã sử dụng RPX (hiện tại là janrain): http://www.janrain.com/products/engage eariler. Độc đáo phù hợp với yêu cầu của bạn - không có lọ, ít mã nhất và hỗ trợ cho tất cả các giao diện mở/giao diện xã hội đăng nhập. Tất cả bạn cần một URL gọi lại có thể truy cập công cộng.

Hãy khám phá!

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