Frage

Ich lese über Federated Login für Google-Konto Nutzer um herauszufinden, wie ich eine Benutzeranmeldung auf eine Web-Anwendung mit ihrem Google-Konto haben kann.

So gegen Ende des Prozesses, gibt Google eine Google-Kennung geliefert, die als openid.claimed_id angehängt wird. Das heißt, die Web-Anwendung verwendet diese Kennung des Benutzers und ermöglichen den Zugriff auf Anwendungsfunktionen und Daten zu erkennen. Meine Frage ist, ist diese Kennung statisch? Kann ich diese Kennung wiederholt id denselben Benutzer verwenden?

War es hilfreich?

Lösung

Ja. Betrachten Sie den openid.claimed_id Wert der Benutzername zu sein. Gerade bei Google, aber das gilt für jeden Provider OpenID, dass wirklich implementiert ‚gerichtet Identität‘, nicht diese Benutzernamen berücksichtigen sein correlatible mit anderen Websites. Jeder andere vertrauende neben Ihrer eigenen Website einen anderen claimed_id Wert für die gleichen Google-Nutzer erhalten, von Entwurf.

Auch sollten Sie diesen claimed_id behandeln, als case sensitive .

Andere Tipps

Die spezifische Antwort auf Ihre Frage wird in Googles OpenID-API-Dokumentation :

  

Die von Google bereitgestellte Kennung, die keine Verbindung des Benutzers tatsächlichen Google-Kontonamen oder Passwort hat, ist ein hartnäckiger Wert; es bleibt konstant, auch wenn der Benutzer ändert ihre Google Benutzernamen und / oder E-Mail-Adresse. Diese Kennung ist auch ein „gerichtet Identität“, das heißt, Google einen anderen Wert für jede vertrauende zurückgibt. Google den Anforderungsparameter openid.realm verwendet die vertrauende Partei zu erkennen, so dass, wenn der Drittanbieter-Anwendung entscheidet, diesen Wert zu ändern, werden alle Benutzerkennungen wird sich ändern.

In der Tat, ich lief nur in eine Instanz, wo die Google claimed_id für meine Testbenutzer geändert hatte. Ich war bis zum Ende kommende OpenID in meine App umzusetzen und zu keinem offenbar Grunde, die claimed_id in den Antwortdatum geändert hat.

Ich habe mit diesem Konto in den letzten paar Wochen getestet, und die claimed_id war die gleiche dieser ganze Zeit, wie erwartet. Dann Wham, verändert! Ich sah viele Male in den Antwortdaten zu überprüfen und die zugrunde liegenden Code der Daten hatte sich nicht verändert abgerufen werden.

Ich bin nicht sicher, wie dies zur Zeit zu handhaben, aber ich denke, das werde mich für eine Schleife werfen. Nach anfänglicher Authentifizierung registrieren Benutzer auf die Website (wie man erwarten könnte) und ein Setup-Name. Wie soll man es ist der gleiche Benutzer überprüfen, ob der claimed_id verändert hatte? Wir können sicherlich keine E-Mail-Adresse verwenden, pro Best Practices.

Bearbeiten

Jetzt habe ich Kuchen in meinem Gesicht! Ich vermisste ein kleines Detail, das ein wichtiges Detail entpuppte. Ich ändere meine Umwelt Entwicklung und wurde auf einem anderen V-Host-Hosting. Dies effektiv den Bereich ändern, und dies wird die claimed_id Antwort ändert die Dokumentation nach.

Dies war eine gute Lektion für mich, wie ich war auf einer Sub-Domain OID zu implementieren, in dem Bereich Set automatisch in meinem Code zu sein wurde. Jetzt gespeichert Ich selbst Kopfschmerzen die Straße hinunter, weil ich nicht die gleiche Benutzerdatenbank über alle andere Sub-Domains zu verwenden, wäre in der Lage, ohne Identität zu brechen.

Bereich Aktualisierung

MEHR INFO

Nur als Randnotiz -. Auch wenn Sie Ihre OpenID-Lösung für ein Ihre Subdomains entwickeln, könnte es klug sein, dass Sie diese Welt zu Ihrer Top-Level-Domain angeben

z, openid.realm = http:. //*.Yourdomain.com

Es ermöglicht Ihnen, Ihre Anmeldeseite für alle Ihre Sub-Domains zu erweitern und über sie Benutzeridentität halten.

  

(optional) authentifiziert Reich. Bezeichnet die Domäne, dass das Ende   Benutzer werden auf Vertrauen gefragt. (Beispiel: "http: //*.myexamplesite.com")   Dieser Wert muss im Einklang mit der Domäne definiert in   openid.return_to. Wenn dieser Parameter nicht definiert ist, wird die Verwendung von Google   die URL in openid.return_to verwiesen wird.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top