Heim Backend-Entwicklung PHP-Tutorial Sina SSO-Anmeldeprozessanalyse

Sina SSO-Anmeldeprozessanalyse

Dec 01, 2016 am 11:14 AM
sso

Kürzlich habe ich den Anmeldeprozess von Sina CAS untersucht und festgestellt, dass Sinas SSO tatsächlich Yale-CAS implementiert und ein paar neue Dinge hinzufügt. Der grundlegende Interaktionsprozess des Authentifizierungsprozesses bleibt unverändert. Seine Originalität liegt in der Implementierung des Ajax-Single-Sign-Ins, was ziemlich beeindruckend ist. Das Implementierungsprinzip ist die Rückruffunktion iframe + JavaScript.

1. Junior SSO

Basic SSO besteht darin, eine einheitliche Anmeldung unter demselben Top-Level-Domainnamen zu realisieren, indem das Cookie des Top-Level-Domainnamens platziert wird. Zum Beispiel:

Single-Sign-On-Adresse: sso.xxx.com/login.jsp

Anwendung 1: web1.xxx.com/login.jsp

Anwendung 2 : web2 .xxx.com/login.jsp

Anwendung 3: web3.xxx.com/login.jsp

Anmeldevorgang:

Situation 1: (Der Benutzer hat nie angemeldet)

1, Benutzer greift auf web1.xxx.com/login.jsp zu, web1 leitet zu sso.xxx.com/login.jsp weiter

2, Überprüfung der Benutzereingabe, erfolgreich. sso.xxx.com implantiert die Token-ID des .xxx.com-Domänencookies und leitet zu web1.xxx.com/login.jsp weiter. web1.xxx.com greift auf die Token-ID des .xxx.com-Domänencookies zu, um festzustellen, ob dies der Fall ist angemeldet, und das System meldet sich bei Fertig stellen an.

Situation 2: (Der Benutzer hat sich bereits angemeldet) Melden Sie sich direkt an.

Zweitens realisiert Sina SSO

Sina realisiert eine einheitliche Anmeldung über Domänennamen hinweg, die im Wesentlichen auf Cookies basiert. Wenn der Benutzer Cookies deaktiviert, kann er sich trotzdem nicht anmelden. Beispiel: Der Sina-SSO-Server ist login.sina.com.cn/sso/login.php

und die Weibo-Anmeldeadresse ist weibo.com/login.php. Die Anmeldung über Domänennamen der ersten Ebene hinweg wird durch Rückruffunktionen und Iframes erreicht.

Der spezifische Ablauf des Authentifizierungsprozesses: Hier stellen wir nur Benutzer vor, die sich noch nie angemeldet haben.

1, Der Benutzer gibt weibo.com/login.php ein

2, Der Benutzer gibt den Benutzernamen ein. Nachdem die Eingabe abgeschlossen ist und der Fokus des Benutzernamen-Eingabefelds verloren geht, sendet die Seitennummer über Ajax eine Anfrage an den Server login.sina.com.cn/sso/prelogin.php, und der Parameter ist user (der Benutzername). gerade eingegeben). Der Dienst gibt Serverzeit und Nonce-Authentifizierung zurück, die über die Rückruffunktion in Javascript-Variablen geschrieben werden.

3. Der Benutzer gibt das Passwort ein, klickt, um sich anzumelden, und die POST-Anfrage der Seite (beachten Sie, dass es sich um eine Ajax-Anfrage handelt, die nicht von login.php gesendet wird),

login.sina .com.cn/sso/login .php?client=ssologin.js(v1.3.12), die durch die Anforderung initiierte Seite ist eine unsichtbare Iframe-Seite in weibo.com/login.php, die Parameter sind Serverzeit und erhaltene Nonce im zweiten Schritt den Benutzernamen und das verschlüsselte Passwort. Kehren Sie zum gesetzten Cookie-TGT unter login.sina.com.cn zurück. Ändern Sie gleichzeitig die Iframe-Adresse in weibo.com/ajaxlogin.php?ticket=XXXXXX. Beachten Sie, dass das Ticket sehr wichtig ist.

4. iframe besucht weibo.com/ajaxlogin.php?ticket=XXXXXX, der Benutzer meldet sich an und gibt ein unter .weibo.com platziertes Cookie zurück, um die Anmeldeinformationen des Benutzers aufzuzeichnen.

5. Besuchen Sie weibo.com/login.php erneut über js. Da das Cookie geschrieben wurde, ist die Anmeldung erfolgreich und der Server sendet 302 und leitet zur Homepage des Benutzers weiter. Weibo.com/userid .

6, An diesem Punkt ist der Anmeldevorgang abgeschlossen.

Wichtige Punkte: Analyse des Interaktionsprozesses und des Passwortverschlüsselungsalgorithmus.


Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
2 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
Repo: Wie man Teamkollegen wiederbelebt
1 Monate vor By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Abenteuer: Wie man riesige Samen bekommt
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

So implementieren Sie mit PHP ein effizientes und stabiles SSO-Single-Sign-On So implementieren Sie mit PHP ein effizientes und stabiles SSO-Single-Sign-On Oct 15, 2023 pm 02:49 PM

So erreichen Sie mit PHP ein effizientes und stabiles SSO-Single-Sign-On. Einführung: Mit der Popularität von Internetanwendungen sind Benutzer mit einer großen Anzahl von Registrierungs- und Anmeldeprozessen konfrontiert. Um das Benutzererlebnis zu verbessern und die Registrierungs- und Anmeldeintervalle der Benutzer zu verkürzen, haben viele Websites und Anwendungen damit begonnen, die Single-Sign-On-Technologie (Single Sign-On, kurz SSO) einzuführen. In diesem Artikel wird erläutert, wie Sie mithilfe von PHP ein effizientes und stabiles SSO-Single-Sign-On implementieren, und es werden spezifische Codebeispiele bereitgestellt. 1. SSO-Single-Sign-On-Prinzip SSO-Single-Sign-On ist eine Lösung zur Identitätsauthentifizierung

OAuth in PHP: Aufbau einer plattformübergreifenden SSO-Lösung OAuth in PHP: Aufbau einer plattformübergreifenden SSO-Lösung Jul 28, 2023 pm 09:38 PM

OAuth in PHP: Aufbau einer plattformübergreifenden SSO-Lösung Mit der rasanten Entwicklung des Internets ist es für Menschen zur Norm geworden, verschiedene Anwendungen auf mehreren Plattformen zu verwenden. Dies wirft die Frage auf: Wie implementiert man Single Sign-On (SSO) zwischen verschiedenen Plattformen? OAuth (Open Authorization) ist eine ausgezeichnete Wahl, um dieses Problem zu lösen. OAuth ist ein offener Standard, der es Benutzern ermöglicht, Anwendungen von Drittanbietern den Zugriff auf ihre Internetressourcen zu autorisieren, ohne ihre Anmeldeinformationen weiterzugeben. OAuth kann verwendet werden, um eine Multi-

Besprechen Sie die Sicherheit und Schwachstellenprävention von PHP SSO Single Sign-On Besprechen Sie die Sicherheit und Schwachstellenprävention von PHP SSO Single Sign-On Oct 15, 2023 pm 02:36 PM

Sicherheit und Schwachstellenprävention von PHPSSO Single Sign-On 1. Einführung Mit der Entwicklung des Internets haben immer mehr Websites Benutzerauthentifizierungsfunktionen implementiert. Allerdings müssen Benutzer jedes Mal, wenn sie sich auf verschiedenen Websites anmelden, ihre Kontonummer und ihr Passwort eingeben, was umständlich ist und leicht vergessen wird. Um dieses Problem zu lösen, wurde Single Sign-On (SSO) entwickelt. SSO ist eine Lösung zur Authentifizierung der Benutzeridentität auf mehreren Websites. Benutzer müssen sich nur einmal anmelden, um nahtlosen Zugriff auf andere Websites zu erhalten. 2. PH

Lassen Sie uns darüber sprechen, wie Sie Single Sign-On (SSO) basierend auf Node implementieren Lassen Sie uns darüber sprechen, wie Sie Single Sign-On (SSO) basierend auf Node implementieren Dec 06, 2022 pm 07:49 PM

Was ist Single Sign-On? Was ist das Prinzip? Wie erreicht man es? Der folgende Artikel führt Sie durch Single Sign-On und erläutert, wie Sie Node zur Implementierung von Single Sign-On SSO verwenden. Ich hoffe, er ist hilfreich für Sie!

Entwurfspraxis eines SSO-Single-Sign-On-Systems basierend auf Swoole Entwurfspraxis eines SSO-Single-Sign-On-Systems basierend auf Swoole Jun 14, 2023 pm 04:08 PM

Mit der rasanten Entwicklung des Internets müssen immer mehr Websites und Anwendungen Single-Sign-On-Funktionen (Single Sign-On, SSO) für Benutzer implementieren, um ein komfortableres und sichereres Benutzererlebnis zu bieten. In diesem Zusammenhang ist das auf Swoole basierende SSO-Single-Sign-On-System nach und nach zu einem heißen Thema in der Branche geworden. In diesem Artikel wird erläutert, wie Sie ein SSO-Single-Sign-On-System auf Basis von Swoole entwerfen und implementieren. 1. Designidee des SSO-Single-Sign-On-Systems Der Zweck des SSO-Single-Sign-On-Systems besteht darin, Benutzern die Anmeldung bei einem System zu ermöglichen.

Neueste Best Practices für Java JAAS Neueste Best Practices für Java JAAS Feb 23, 2024 pm 10:52 PM

1. JAAS-Übersicht JavaJAAS (JavaAuthenticationandAuthorizationService) ist ein Framework für die Single-Sign-On-Integration (SSO) in mehreren Systemen, die rollenbasierte Zugriffskontrolle (RBAC) und die Autorisierungsverwaltung. Mit JAAS können Anwendungen den Zugriff auf Daten oder Ressourcen schützen und Zugriffskontrollmechanismen definieren. 2. Die neuesten Best Practices von JAAS 1. Verwenden Sie JAAS zur Authentifizierung. JAAS bietet zwei Hauptauthentifizierungsmethoden: Tokenbasierte Authentifizierung: Bei dieser Methode werden Token (z. B. Benutzername und Kennwort) verwendet, um die Identität des Benutzers zu überprüfen. Zertifizierungsbasierte Authentifizierung: Diese Methode verwendet eine Zertifizierung (z. B. ein digitales Zertifikat), um die Identität des Benutzers zu überprüfen. 2

Praktische Anwendungsfälle von PHP SSO Single Sign-On in der Multisystemintegration Praktische Anwendungsfälle von PHP SSO Single Sign-On in der Multisystemintegration Oct 15, 2023 am 11:45 AM

Praktische Anwendungsfälle von PHPSSO Single Sign-On in der Multisystemintegration Einführung: Mit der rasanten Entwicklung des Internets und dem Wachstum der Benutzeranforderungen müssen immer mehr Websites und Anwendungen Benutzer-Single-Sign-On-Funktionen (SSO) implementieren. Als weit verbreitete serverseitige Skriptsprache ist PHP flexibel, einfach und leicht zu integrieren und daher für viele Entwickler die erste Wahl. In diesem Artikel wird eine PHP-basierte Single-Sign-On-Lösung vorgestellt und ihre Anwendung bei der Multisystemintegration anhand praktischer Fälle demonstriert. 1. Was ist Single Sign-In?

Vertiefendes Verständnis des Funktionsprinzips und des technischen Mechanismus von PHP SSO Single Sign-On Vertiefendes Verständnis des Funktionsprinzips und des technischen Mechanismus von PHP SSO Single Sign-On Oct 15, 2023 am 09:19 AM

Verstehen Sie das Funktionsprinzip und den technischen Mechanismus des PHPSSO Single Sign-On genau. Mit der rasanten Entwicklung des Internets nimmt auch die Anzahl verschiedener Websites und Anwendungen zu. Um auf verschiedene Websites und Anwendungen zuzugreifen, müssen Benutzer unterschiedliche Konten bzw. Passwörter registrieren, was für Benutzer Unannehmlichkeiten und Ärger mit sich bringt. Um dieses Problem zu lösen, wurde Single Sign-On (SSO) entwickelt. SSO ist ein Autorisierungs- und Authentifizierungssystem, das Benutzern nach erfolgreicher Anmeldung den nahtlosen Zugriff auf mehrere Systeme ermöglicht. Dieser Artikel vermittelt ein tiefgreifendes Verständnis von P

See all articles