Heim >Web-Frontend >js-Tutorial >oAuth-Authentifizierung und Autorisierung
1. Was ist das OAuth-Protokoll
OAuth (offene Autorisierung) ist ein offener Standard.
Ermöglicht Websites Dritter den Zugriff auf verschiedene Informationen, die von Benutzern beim Dienstanbieter mit der Genehmigung des Benutzers gespeichert werden.
Diese Autorisierung erfordert nicht, dass der Benutzer einen Benutzernamen und ein Passwort für die Website eines Drittanbieters angibt.
OAuth ermöglicht Benutzern die Bereitstellung eines Tokens für eine Website eines Drittanbieters. Ein Token entspricht einer bestimmten Website eines Drittanbieters, und das Token kann nur innerhalb einer bestimmten Zeit auf bestimmte Ressourcen zugreifen.
2. Das Prinzip und der Autorisierungsprozess von OAuth
Zu den drei am Authentifizierungs- und Autorisierungsprozess von OAuth beteiligten Parteien gehören:
Dienstanbieter: Benutzernutzung Der Dienstanbieter dient im Allgemeinen zum Speichern von Nachrichten, Fotos, Videos, Kontakten, Dateien usw. (z. B. Twitter, Sina Microwave usw.).
Benutzer: Benutzer des Dienstanbieters
Dritter: In der Regel eine Website, die auf die beim Dienstanbieter gespeicherten Benutzerinformationen zugreifen möchte.
Zum Beispiel eine Website, die Fotodruckdienste anbietet, auf der Benutzer ihre beim Dienstanbieter gespeicherten Online-Fotoalben drucken möchten.
Vor dem Zertifizierungsprozess muss der Dritte beim Dienstanbieter die eindeutige Kennung des Drittanbieterdienstes beantragen.
Der OAuth-Authentifizierungs- und Autorisierungsprozess läuft wie folgt ab:
1. Der Benutzer besucht eine Website eines Drittanbieters und möchte bestimmte vom Benutzer beim Dienstanbieter gespeicherte Ressourcen bedienen.
2. Die Website des Drittanbieters fordert ein temporäres Token vom Dienstanbieter an.
3. Nachdem der Dienstanbieter die Identität der Drittanbieter-Website überprüft hat, gewährt er ein temporäres Token.
4. Nachdem die Drittanbieter-Website das temporäre Token erhalten hat, leitet sie den Benutzer zur Autorisierungsseite des Dienstanbieters weiter, um die Benutzerautorisierung anzufordern. Dabei werden das temporäre Token und die Rücksendeadresse des Drittanbieters angefordert. Die Website der Partei wird an den Dienstanbieter gesendet.
5. Der Benutzer gibt seinen Benutzernamen und sein Passwort auf der Autorisierungsseite des Dienstanbieters ein, um der Website des Drittanbieters den Zugriff auf die entsprechenden Ressourcen zu autorisieren.
6. Nach erfolgreicher Autorisierung leitet der Dienstanbieter den Benutzer zur Absenderadresse der Drittanbieter-Website weiter.
7. Die Drittanbieter-Website erhält das Zugriffstoken vom Dienstanbieter basierend auf dem temporären Token.
8. Der Dienstanbieter gewährt Drittanbieter-Website-Zugriffstoken auf der Grundlage des Tokens und der Benutzerautorisierung.
9. Die Website des Drittanbieters nutzt das erhaltene Zugriffstoken, um auf die entsprechenden beim Dienstanbieter gespeicherten Benutzerressourcen zuzugreifen.
3. Welche Websites unterstützen derzeit OAuth?
t.sina.com.cn
t.qq.com
t.sohu.com
t.163.com
www.douban.com
www.twitter.com
www.facebook.com
Google Buzz
/oauth/token?
Parameter: (grant_type ist fest codiert, andere zwei Anpassungen)
http://localhost:9000/oauth/token?grant_type=password&username=development@cybergate-tech.com&password=oQd-BfT-cer-7LP
Beispiel für Rückgabeergebnis:
{ "access_token": "beeaa54e-8391-4de0-8ba6-ce145b3fb812", "token_type": "bearer", "refresh_token": "8129769a-d804-46c7-856a-3bacd409b650", "expires_in": 3599, "scope": "read write" }
http://localhost:9000/oauth/token?
Parameter: (refresh_token wird basierend auf 1 bestimmt. Andere Parameter sind fest codiert)
http://localhost:9000/oauth/token?client_id=dashboard&client_secret=secret&grant_type=refresh_token&refresh_token=43dca105-627e-4f50-86e8-0c22c2f3abe9
Ergebnis zurückgeben
Das obige ist der detaillierte Inhalt vonoAuth-Authentifizierung und Autorisierung. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!