2010-08-23 1 views
7

Per OpenID, una volta autenticato contro Google, l'URL autenticato che viene restituito è diverso tra diversi browser, IP addys, & c.Come ottenere l'identificatore univoco da OpenID/Google?

Come si ottiene un identificativo utente univoco dall'implementazione OpenID di Google?

Entrata su un computer e posso ottenere la seguente: https://www.google.com/accounts/o8/id?id=AItOawk......_OESXik

Entrata sul mio BlackBerry con lo stesso account utente ottengo un URL diversa: https://www.google.com/accounts/o8/id?id=AItOawk......_ABIRop

devo assumere ancora una chiamata HTTP terziaria deve essere creato da qualche parte per identificare in modo univoco il login?

+1

Ricevo sempre lo stesso identificatore da google (sto utilizzando https://www.google.com/accounts/o8/id, è lo stesso di te?) – cam

+0

Per un'istanza particolare, se accedo sul mio BlackBerry, l'ID/URL è diverso dal mio portatile: O – Xailor

risposta

4

Google emette identificatori per-realm, quindi finché si accede allo stesso sito Web, si dovrebbe ottenere lo stesso identificatore per lo stesso utente.

A meno che, ovviamente, l'implementazione openid del sito non funzioni e invia regni diversi in base a diversi ip-s o anche all'id di sessione corrente (cosa che potrebbe facilmente accadere se si trova nell'URL).

Provare ad accedere su un altro sito Web, come StackOverflow, e verificare se restituisce ancora identificatori diversi.

+1

Ecco fatto! BB stava provando www. prefisso su qualsiasi cosa digitato per impostazione predefinita e quindi l'implementazione stava eseguendo l'HTTP HOST, la correzione è quella di fornire tale parametro come parametro anziché inferire dalla richiesta HTTP. – Xailor