Inhaltsverzeichnis
1. Warum Token für die Anmeldung verwenden? Trennung von Front-End und Backend oder um mehrere Webanwendungen zu unterstützen, dann wird es große Probleme bei der Verwendung des Originals geben Cookies oder Sitzungen
oauth2 und jwt
Empfohlene Studie: „
Heim Backend-Entwicklung PHP-Problem So verwenden Sie Token-PHP

So verwenden Sie Token-PHP

Sep 21, 2021 am 09:21 AM
php token

So verwenden Sie das Token in PHP: 1. Der Client-Benutzer gibt den Benutzernamen und das Passwort ein, um sich anzumelden und das Token anzufordern. 2. Verwenden Sie die JWT-Spezifikation, um das Token zu generieren. 4. Der Client erhält die Token-Anfragedaten.

So verwenden Sie Token-PHP

Die Betriebsumgebung dieses Artikels: Windows 7-System, PHP Version 7.1, Dell G3-Computer.

Wie verwende ich Token-PHP?

Generierung und Verwendung von PHP-Token

1. Warum Token für die Anmeldung verwenden? Trennung von Front-End und Backend oder um mehrere Webanwendungen zu unterstützen, dann wird es große Probleme bei der Verwendung des Originals geben Cookies oder Sitzungen

Cookie- und Sitzungsauthentifizierung müssen unter demselben primären Domänennamen erfolgen, bevor die Authentifizierung durchgeführt werden kann (derzeit kann die Sitzung in Redis gespeichert werden, um das Problem zu lösen).


2. Lösung

oauth2 und jwt

jwt: ist ein Sicherheitsstandard. Die Grundidee besteht darin, dass der Benutzer dem Authentifizierungsserver den Benutzernamen und das Kennwort zur Verfügung stellt und der Server die Legitimität der vom Benutzer übermittelten Informationen überprüft. Wenn die Überprüfung erfolgreich ist, wird ein Token (Token) generiert und zurückgegeben

OAuth2 : Es handelt sich um ein sicheres Autorisierungsframework. Es beschreibt im Detail, wie eine gegenseitige Authentifizierung zwischen verschiedenen Rollen, Benutzern, Service-Front-End-Anwendungen (z. B. API) und Clients (z. B. Websites oder mobilen APPs) im System erreicht wird.

(jwt, dieses JSON-Web-Token wird hier zur Authentifizierung verwendet)

3. Generierungsmethode

    Header: Verschlüsselungstyp
  1. Beschreibung: Nachrichteninhalt
  2. Schlüssel: ein zufälliger Code zum Verschlüsseln
  3. Verwenden Sie ., um eine Verbindung herzustellen, und verwenden Sie dann hs256, um das Token zu generieren
  4. 4. Der Header besteht normalerweise aus zwei Teilen: dem Typ des Tokens (d. h. JWT) und dem verwendeten Verschlüsselungsalgorithmus (z. B. SHA256 oder RSA)
{
      "alg": "HS256",
      "typ": "JWT"
}
Nach dem Login kopieren

Dann ist dieser JSON Base64Url-codiert und wird zum ersten Teil

2. Die Nutzlast ist die Deklaration. Bei der Erklärung geht es um die Entität.

{
      "exp": "1525785339",
      "sub": "1234567890",
      "name": "John Doe",
      "admin": true
}
Nach dem Login kopieren

Die Nutzlast wird dann Base64Url-codiert, um zum zweiten Teil zu werden

(PS: Diese Informationen sind zwar vor Manipulationen geschützt, können aber von jedem gelesen werden. Legen Sie keine wichtigen Informationen darin ab, es sei denn, sie sind verschlüsselt)

3). Verwenden Sie einen Verschlüsselungsschlüssel

4). Zum Signieren müssen Sie den ersten codierten Teil, den zweiten codierten Teil und dann einen Schlüssel verwenden. Verwenden Sie den Verschlüsselungsalgorithmus im ersten Teil zum Signieren
HMACSHA256(
          base64UrlEncode(header) + "." + base64UrlEncode(payload),
          key
)
Nach dem Login kopieren

Diese Signatur wird verwendet, um zu überprüfen, ob die Nachricht manipuliert wurde.

(PHP verwendet die Verschlüsselungsmethode für die Verschlüsselung. Hinweis: SHA-256 dient der Manipulationssicherheit und AES-256 wird für die Verschlüsselung verwendet. Die beiden Konzepte sind unterschiedlich.)

5. Der Speicherort des Tokens

sollte normalerweise sein im Header der Anforderung Das Autorisierungsfeld verwendet den Bearer-Modus, um JWT (Authorization: Bearer) hinzuzufügen (natürlich können Sie es auch an einer beliebigen Stelle platzieren, z. B. indem Sie es als Parameter nach der URL übergeben, sofern der Client es erkennen kann , aber da es sich bei JWT um eine Spezifikation handelt, sollten wir uns besser an die Spezifikation halten.

Empfohlene Studie: „

PHP-Video-Tutorial

6. Verwendung

Der Client-Benutzer gibt den Benutzernamen und das Passwort ein und meldet sich an das Token

Nachdem der Server die Anfrage erhalten hat, verwendet er die JWT-Spezifikation. Generieren Sie ein Token und geben Sie es an den Client zurück.
  1. Nachdem der Client das Token erhalten hat, überprüft er nach der Entschlüsselung die Aktualität des Tokens (die Ablaufzeit). des Tokens) und speichert es.
  2. Der Client fordert Daten mit dem Token an Wenn Sie einen Token verwenden, können Sie ihn fälschen und nachahmen, wenn er erbeutet wird. Wenn die Sicherheit also relativ hoch ist, empfiehlt sich die Verwendung von oauth2

Das obige ist der detaillierte Inhalt vonSo verwenden Sie Token-PHP. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

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

Video Face Swap

Video Face Swap

Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

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)

PHP 8.4 Installations- und Upgrade-Anleitung für Ubuntu und Debian PHP 8.4 Installations- und Upgrade-Anleitung für Ubuntu und Debian Dec 24, 2024 pm 04:42 PM

PHP 8.4 bringt mehrere neue Funktionen, Sicherheitsverbesserungen und Leistungsverbesserungen mit einer beträchtlichen Menge an veralteten und entfernten Funktionen. In dieser Anleitung wird erklärt, wie Sie PHP 8.4 installieren oder auf PHP 8.4 auf Ubuntu, Debian oder deren Derivaten aktualisieren. Obwohl es möglich ist, PHP aus dem Quellcode zu kompilieren, ist die Installation aus einem APT-Repository wie unten erläutert oft schneller und sicherer, da diese Repositorys in Zukunft die neuesten Fehlerbehebungen und Sicherheitsupdates bereitstellen.

7 PHP-Funktionen, die ich leider vorher nicht kannte 7 PHP-Funktionen, die ich leider vorher nicht kannte Nov 13, 2024 am 09:42 AM

Wenn Sie ein erfahrener PHP-Entwickler sind, haben Sie möglicherweise das Gefühl, dass Sie dort waren und dies bereits getan haben. Sie haben eine beträchtliche Anzahl von Anwendungen entwickelt, Millionen von Codezeilen debuggt und eine Reihe von Skripten optimiert, um op zu erreichen

So richten Sie Visual Studio-Code (VS-Code) für die PHP-Entwicklung ein So richten Sie Visual Studio-Code (VS-Code) für die PHP-Entwicklung ein Dec 20, 2024 am 11:31 AM

Visual Studio Code, auch bekannt als VS Code, ist ein kostenloser Quellcode-Editor – oder eine integrierte Entwicklungsumgebung (IDE) –, die für alle gängigen Betriebssysteme verfügbar ist. Mit einer großen Sammlung von Erweiterungen für viele Programmiersprachen kann VS Code c

Erklären Sie JSON Web Tokens (JWT) und ihren Anwendungsfall in PHP -APIs. Erklären Sie JSON Web Tokens (JWT) und ihren Anwendungsfall in PHP -APIs. Apr 05, 2025 am 12:04 AM

JWT ist ein offener Standard, der auf JSON basiert und zur sicheren Übertragung von Informationen zwischen Parteien verwendet wird, hauptsächlich für die Identitätsauthentifizierung und den Informationsaustausch. 1. JWT besteht aus drei Teilen: Header, Nutzlast und Signatur. 2. Das Arbeitsprinzip von JWT enthält drei Schritte: Generierung von JWT, Überprüfung von JWT und Parsingnayload. 3. Bei Verwendung von JWT zur Authentifizierung in PHP kann JWT generiert und überprüft werden, und die Funktionen und Berechtigungsinformationen der Benutzer können in die erweiterte Verwendung aufgenommen werden. 4. Häufige Fehler sind Signaturüberprüfungsfehler, Token -Ablauf und übergroße Nutzlast. Zu Debugging -Fähigkeiten gehört die Verwendung von Debugging -Tools und Protokollierung. 5. Leistungsoptimierung und Best Practices umfassen die Verwendung geeigneter Signaturalgorithmen, das Einstellen von Gültigkeitsperioden angemessen.

Wie analysiert und verarbeitet man HTML/XML in PHP? Wie analysiert und verarbeitet man HTML/XML in PHP? Feb 07, 2025 am 11:57 AM

Dieses Tutorial zeigt, wie XML -Dokumente mit PHP effizient verarbeitet werden. XML (Extensible Markup-Sprache) ist eine vielseitige textbasierte Markup-Sprache, die sowohl für die Lesbarkeit des Menschen als auch für die Analyse von Maschinen entwickelt wurde. Es wird üblicherweise für die Datenspeicherung ein verwendet und wird häufig verwendet

PHP -Programm zum Zählen von Vokalen in einer Zeichenfolge PHP -Programm zum Zählen von Vokalen in einer Zeichenfolge Feb 07, 2025 pm 12:12 PM

Eine Zeichenfolge ist eine Folge von Zeichen, einschließlich Buchstaben, Zahlen und Symbolen. In diesem Tutorial wird lernen, wie Sie die Anzahl der Vokale in einer bestimmten Zeichenfolge in PHP unter Verwendung verschiedener Methoden berechnen. Die Vokale auf Englisch sind a, e, i, o, u und sie können Großbuchstaben oder Kleinbuchstaben sein. Was ist ein Vokal? Vokale sind alphabetische Zeichen, die eine spezifische Aussprache darstellen. Es gibt fünf Vokale in Englisch, einschließlich Großbuchstaben und Kleinbuchstaben: a, e, ich, o, u Beispiel 1 Eingabe: String = "TutorialPoint" Ausgabe: 6 erklären Die Vokale in der String "TutorialPoint" sind u, o, i, a, o, ich. Insgesamt gibt es 6 Yuan

Erklären Sie die späte statische Bindung in PHP (statisch: :). Erklären Sie die späte statische Bindung in PHP (statisch: :). Apr 03, 2025 am 12:04 AM

Statische Bindung (statisch: :) implementiert die späte statische Bindung (LSB) in PHP, sodass das Aufrufen von Klassen in statischen Kontexten anstatt Klassen zu definieren. 1) Der Analyseprozess wird zur Laufzeit durchgeführt.

Was sind PHP Magic -Methoden (__construct, __Destruct, __call, __get, __set usw.) und geben Sie Anwendungsfälle an? Was sind PHP Magic -Methoden (__construct, __Destruct, __call, __get, __set usw.) und geben Sie Anwendungsfälle an? Apr 03, 2025 am 12:03 AM

Was sind die magischen Methoden von PHP? Zu den magischen Methoden von PHP gehören: 1. \ _ \ _ Konstrukt, verwendet, um Objekte zu initialisieren; 2. \ _ \ _ Destruct, verwendet zur Reinigung von Ressourcen; 3. \ _ \ _ Call, behandeln Sie nicht existierende Methodenaufrufe; 4. \ _ \ _ GET, Implementieren Sie den dynamischen Attributzugriff; 5. \ _ \ _ Setzen Sie dynamische Attributeinstellungen. Diese Methoden werden in bestimmten Situationen automatisch aufgerufen, wodurch die Code -Flexibilität und -Effizienz verbessert werden.

See all articles