non so alcuna libreria integrata, ma lo faccio con una libreria OpenID (openid4java), una libreria OAuth (net.oauth Java implementation [Edit: o Scribe]) e le mie mani nude come segue:
mio OAuth consumer key
è come www.example.com, quindi utilizzo http: //*.example.com come OpenID realm
.
aggiungo seguenti parametri (per reindirizzare URL o forma) quando il reindirizzamento all'utente di Google OpenID endpoint:
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>
In cambio, oltre alla risposta OpenID pianura ricevo:
openid.ext2.request_token=<request-token>
scambio I token di richiesta ricevuto con access-token e access-secret che sono ciò che è necessario per effettuare chiamate autorizzate da OAuth. È tutto!
Nota che in plain OAuth insieme al token di richiesta devi utilizzare una richiesta-secret e verificatore ma qui non ne hai bisogno.
Per avere una vista migliore è possibile leggere Google OAuth, Google OpenID e OpenID OAuth Extension.
Modifica: Here (comment 8) è l'estensione OAuth per openid4java che fa per te.
fonte
2010-11-30 22:29:22
Grandi cose John, l'ultima riga in "Note ..." mi ha davvero salvato la giornata. Ho avuto il request_token con me ma non avevo idea di come ottenere i token di accesso! Ora lo so :) –
Quindi non hai bisogno di alcuna forma di firma? Sto faticando a implementare questo oltre [qui] (http://stackoverflow.com/questions/7241094/openidoauth-for-youtube-using-openid4java), qualche possibilità che tu possa dare un'occhiata? – juell