2011-01-04 14 views
6

Nella mia applicazione web voglio implementare l'OpenId proprio come stackoverflow.com deve accedere al suo sito web.Come implementare l'applicazione java web openId?

Nel dettaglio si trovano mentre login per stackoverflow.com alt text

Così, quando se uno sceglie google allora consentire gli usi per il log-in tramite l'account Google.

Per favore dimmi come implementarlo in un'applicazione web java in dettaglio. C'è qualche singola API per l'accesso attraverso il sito web diverso, come (yahoo, google, facebook, ecc)

Grazie

+0

ho chiesto la stessa domanda qualche tempo fa: http://stackoverflow.com/questions/3571384/is-there-a-spring-security-openid-registration-like-stackoverflow –

risposta

4

Non proprio. La maggior parte di quelli che hai citato utilizza semplicemente il protocollo OpenID, tuttavia Facebook utilizza la propria autorizzazione, quindi è necessario aggiungerlo come metodo separato.

Date un'occhiata a OpenID4Java

ho anche usato il openid-selector per la parte lato client.

Infine, vorrei dare un'occhiata allo this resource per vedere gli endpoint URL per i diversi provider.

6

Ci sono due lati di questo:

  • lato client. Questa è la parte più facile. Puoi farlo manualmente, ma ci sono già soluzioni javascript che renderanno una lista di fornitori di openid. Controllare openid-selector e this jQuery plugin. Personalmente mi piace di più quest'ultimo.
  • lato server. Dovrai gestire l'autenticazione openID. Ci sono più librerie java (sono tutte elencate sul sito web di openid). Ecco uno che ho deciso di utilizzare: openid4java. Vedi this question per la mia motivazione.