In diesem Beitrag erfahren Sie, wie Sie die JWT-Middleware (JSON Web Tokens) in Lithe integrieren und so eine robuste und sichere Authentifizierung für Ihre API bereitstellen. Mit JWT können Sie Benutzer einfach und effizient authentifizieren und sensible Routen sichern.
JSON Web Token (JWT) ist ein offener Standard (RFC 7519), der eine kompakte, eigenständige Methode zur Übertragung von Informationen zwischen Parteien als JSON-Objekt definiert. Diese Token können zur Authentifizierung verwendet werden, sodass Sie die Sitzung eines Benutzers aufrechterhalten können, ohne Informationen auf dem Server speichern zu müssen. JWT besteht aus drei Teilen: Header, Payload und Signatur.
composer create-project lithephp/lithephp nome-do-projeto cd nome-do-projeto
composer require lithemod/jwt
use function Lithe\Orbis\Http\Router\router; $app = new \Lithe\App; $app->use('/api', router(__DIR__ . '/routes/api')); $app->listen();
use Lithe\Http\{Request, Response}; use function Lithe\Orbis\Http\Router\{get}; $auth = new \Lithe\Auth\JWT(); get('/protected', $auth, function(Request $req, Response $res) { return $res->json(['message' => 'Este é um conteúdo protegido!']); });
use Lithe\Http\{Request, Response}; use function Lithe\Orbis\Http\Router\{post}; post('/login', function(Request $req, Response $res) { $body = $req->body(); // Supondo que o corpo da requisição contenha 'username' e 'password' // Aqui você deve validar as credenciais do usuário (exemplo simplificado) if ($body->username === 'admin' && $body->password === 'senha') { $user = ['id' => 1]; // Exemplo de usuário $token = (new \Lithe\Auth\JWT())->generateToken($user); return $res->send(['token' => $token]); } return $res->status(401)->json(['message' => 'Credenciais inválidas']); });
Natürlich! Hier ist der aktualisierte Abschnitt mit Informationen zum Festlegen eines sicheren und geheimen Schlüssels bei der Verwendung von JWT:
Damit haben Sie die JWT-Middleware erfolgreich in Lithe integriert und so eine sichere Authentifizierung und den Schutz sensibler Routen ermöglicht. Es ist wichtig zu bedenken, dass Sie bei der Verwendung von JWT beim Instanziieren des JWT-Objekts einen sicheren und geheimen Schlüssel definieren müssen, indem Sie ihn als ersten Parameter übergeben: new JWT('your_secret_key'). Dieser Schlüssel muss komplex sein und geheim gehalten werden, um Betrug zu vermeiden.
Jetzt können Sie Ihre Anwendung nach Bedarf erweitern und zusätzliche Funktionen wie Token-Sperrung und Sitzungsverwaltung implementieren.
Um mehr über JWT zu erfahren, können Sie sich hier die offizielle Dokumentation ansehen.
Teilen Sie Ihre Erfahrungen und Fragen gerne in den Kommentaren!
Das obige ist der detaillierte Inhalt vonIntegration der JWT-Authentifizierung in Lithe. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!