2010-11-01 9 views
7

Kullanıcının Google Takvim verilerine erişmesi gereken bir Java web uygulaması oluşturuyorum - bu nedenle OAuth/OpenID karma öğesinin gitmek için en iyi yol olduğunu düşündüm.Google'ın OAuth/OpenID melezini Java Web App uygulamasında entegre etmek için kütüphane?

İşi yürütmek için en iyi kütüphane hangisi - ve sonundaki kod miktarını azaltmak?

Ben (her iki melez desteklemeyen) yanı sıra dyuproject & Bahar Güvenlik OpenID openid4java denedik (o entegre alamadım).

PS: GAE'nin bir seçenek

Herhangi bir fikir değil mi?

cevap

6

herhangi entegre kütüphane bilmiyorum ama ben OpenID kitaplığında (openid4java), OAth kütüphanesinden (net.oauth Java implementation [veya Scribe Düzenle]): ile bunu

Benim OAuth consumer key olduğunu www.example.com gibi, http: //*.example.com adresini OpenID realm olarak kullanıyorum.

aşağıdaki parametreleri eklemek (url veya form yönlendirmek için) Google'ın OpenID bitiş noktasına kullanıcıyı yönlendirme yaparken:

düz OpenID tepkisi ilaveten Karşılığında
openid.ns.ext2=http://specs.openid.net/extensions/oauth/1.0 
openid.ext2.consumer=<my oauth consumer key> 
openid.ext2.scope=<oauth scope to be authorized> 

Aldığım:

openid.ext2.request_token=<request-token> 

ben değişimi OAuth yetkili çağrıları yapmak için gerekli olan erişim belirteci ve erişim-gizli istek-belirteci alındı. Bu kadar!

Düzgün OAuth'ta istek belirteci ile birlikte bir istek gizli ve doğrulayıcı kullanmanız gerektiğini unutmayın, ancak burada bunlara ihtiyacınız yoktur.

Daha iyi bir görünüme sahip olmak için Google OAuth, Google OpenID ve OpenID OAuth Extension öğelerini okuyabilirsiniz.

Düzenleme: Here (comment 8), sizin için yukarıda açık olan openid4java için OAuth uzantıdır.

+0

Büyük şeyler John, "Not ..." son satırında gerçekten benim gün kurtardı. Benimle request_token vardı, ancak erişim jetonlarını nasıl alacağımı bilmiyordum! Şimdi biliyorum :) –

+0

Yani herhangi bir imzaya ihtiyacın yok mu? Bunu uygulamak için uğraşıyorum (http://stackoverflow.com/questions/7241094/openidoauth-for-youtube-using-openid4java), bir göz atabilir misin? – juell

4

OpenID'yi desteklemiyor, ancak Scribe Google'ı destekleyen çok iyi bir OAuth Java kitaplığı. aşağıdaki gibi ve ellerimle:

+0

bahşiş için teşekkürler - şimdi Spring Güvenlik OpenID (kendi openid4java kullanır) ve Scribe birlikte kullanmaya çalışıyorum – stephanos

İlgili konular