2012-04-09 3 views
0

Ich recherchiere über OpenId und sehe, ob es eine gute Lösung für meine Website ist und einige Dinge verwirrten mich. Korrigiere mich, wenn ich falsch liege.Einige Fragen zu OpenId

"Ich verstehe, dass OpenID auf eine Weise funktioniert, dass der Benutzer die Anmeldeinformationen an den Autorisierungsserver sendet und dieser TRUSTED-Server sagt, ob dieser Benutzer legitim ist oder nicht."

Nun nehmen wir ein Beispiel für Stackoverflow. Ich sehe alle diese Symbole für Yahoo und Google und alles und ich denke, Stackoverflow sagt, das sind meine vertrauenswürdigen Anbieter und wenn Sie Ihnen vertrauen, vertraue ich Ihnen.

Jetzt gibt es auch eine Schaltfläche, die OpenID sagt und ich kann mich auch dort anmelden. Ist das nun ein unabhängiger Authorization Server? Wer ist der Anbieter dafür?

Wenn ich OpenID zu meinem Webprojekt einbetten möchte. Welchen Autorisierungsserver sollte ich verwenden? Ich sehe dieses OAuth als eine Option, wenn ich über OpenId suche; Ist es ein Autorisierungsserver?

Antwort

3

OpenID ist ein Standard, kein Auth-Provider.

  • Ein OpenID-URI liefert genügend Informationen, um zur Authentifizierung zum Authentifizierungsanbieter zu gelangen.
  • Der Benutzer gibt seine Anmeldedaten auf der Website des Anbieters ein. Bei diesem Schritt muss der Benutzer wissen, wie die Autorisierungsseite des Anbieters aussieht.
  • Die Antwort, gekoppelt mit dem Referrer-Header, soll genug Informationen sein, um einen Benutzer sicher zu authentifizieren.

OAuth ergänzt OpenID.

[Google hat eine einigermaßen gute Fließ Erklärung: https://developers.google.com/accounts/docs/OpenID]

Viele Websites bieten Optionen für bestimmte Auth-Provider nur den Prozess zu vereinfachen. OpenID-URIs sind nicht einheitlich, sodass Sie beispielsweise nicht wissen können, wie der URI von einer E-Mail-Adresse sein würde.

Einige Auth-Provider (wie Google) machen es etwas schwierig, herauszufinden, was Ihre OpenID tatsächlich ist, vermutlich in dem Bemühen, die Anmeldung für die Benutzer transparenter zu machen (und Branding den Webseiten der vertrauenden Parteien hinzuzufügen).

Wenn Sie wissen, was Ihr OpenID URI ist, sollten Sie in der Lage sein, das auf jeder kompatiblen Site einzugeben, ohne den Schritt "Wählen Sie einen bekannten Provider" auszuführen. Ob diese Option verfügbar ist, liegt jedoch im Ermessen des Autors.

[Wie für die "trustedness" von Auth-Anbieter, gibt es einige mögliche Probleme: http://en.wikipedia.org/wiki/OpenID#Security]

[Die OpenID Foundation die offiziellen Antworten hat: http://openid.net/get-an-openid/]

+0

OpenId noch ein Konzept, bei dem zum Beispiel Google agiert als OpenID-Provider und bei stackoverflow können wir Yahoo und Google als OpenID-Anbieter sehen. Aber wie gesagt, es gibt auch einen Link für OpenID. ist es für die Leute, die kein Yahoo oder Google-Konto haben oder es haben, aber immer noch nicht wollen, um sie zu authentifizieren, können sie weitermachen und ihre Anmeldeinformationen in OpeinID.net-Datenbank und jetzt OpenId.net speichern funktioniert als Autorisierungsserver? Ich denke ich verwechsle OpenID das Konzept mit OpenID.net dem Authorization Server. Ist das korrekt? – TeaLeave

+0

Es gibt keine zentralisierte OpenId-Datenbank. Jede Website könnte ein Anbieter sein, wenn sie dies wünschen. Als die Person, die oben geantwortet hat, ist die zusätzliche Textbox in StackOverflow, so dass Sie zu jedem OpenId-Anbieter und nicht nur den häufig verwendeten verwenden können. – pdwetz

+0

Wenn Sie Ihren URI für Google oder Yahoo! kennen, sollten Sie ihn einfach in das Textfeld eingeben und den gleichen Workflow erhalten :) – Kazuaki