Heim >häufiges Problem >Was ist JWT?
jwt ist nur eine Abkürzung und die vollständige Schreibweise lautet JSON Web Tokens. Es handelt sich um eine beliebte domänenübergreifende Authentifizierungslösung, ein JSON-basiertes Token, das zur Deklaration bestimmter Ansprüche im Netzwerk verwendet wird.
JWT-Prinzip: Die JWT-Überprüfungsmethode besteht darin, Benutzerinformationen zu verschlüsseln, um ein Token zu generieren. Bei jeder Anfrage muss der Server nur den gespeicherten Schlüssel verwenden, um die Richtigkeit des Tokens zu überprüfen Es müssen keine Sitzungsdaten gespeichert werden. Dann wird der Server zustandslos und lässt sich leicht erweitern.
Benutzerinformationen vor der Verschlüsselung, wie zum Beispiel:{ "username": "vist", "role": "admin", "expire": "2018-12-08 20:20:20" }Vom Client empfangenes Token:
7cd357af816b907f2cc9acbe9c3b4625
JWT-Struktur
Ein Token ist in 3 Teile unterteilt:
HeadereyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c
Header
Der Header-Teil von JWT ist ein JSON-Objekt, das Metadaten beschreibt, normalerweise:
{ "typ": "JWT", "alg": "HS256" }typ ist der Deklarationstyp, geben Sie „JWT“ an alg ist der Verschlüsselungsalgorithmus, der Standardwert ist „HS256“ kann auch der folgende Algorithmus sein:
Nutzlast
Nutzlast Es ist der Datenträger, Wird zum Speichern der tatsächlichen Dateninformationen verwendet, die übertragen werden müssen, und ist auch ein JSON-Objekt. Offizielle empfohlene JWT-Felder: muss größer sein als die Ausstellungszeit
nbf: Definieren Sie die Zeit, vor der das JWT nicht verfügbar ist.{ "username": "vist", "role": "admin" }
JWT verwendet
1. Der Server verschlüsselt die Benutzerinformationen entsprechend dem Anmeldestatus des Benutzers und gibt sie an den Client zurück 2. Der Client erhält das vom Server zurückgegebene Token und speichert es in einem Cookie 3 , Jede Kommunikation zwischen dem Client und dem Server bringt ein Token mit sich, das in die Header-Informationen der HTTP-Anforderung eingefügt werden kann, z LogikJWT-Funktionen
JWT ist prägnanter und besser für die Bereitstellung in HTML- und HTTP-Umgebungen geeignet. JWT eignet sich für die einmalige Überprüfung, z. B.: Aktivierungs-E-Mail.
JWT ist geeignet für zustandslose Authentifizierung
JWT eignet sich für serverseitige CDN-Verteilungsinhalte Zeitsparender als DatenbanksitzungsabfragenJWT ist standardmäßig nicht verschlüsselt
Das obige ist der detaillierte Inhalt vonWas ist JWT?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!