funcional a parte de token

This commit is contained in:
2026-05-19 14:48:58 -05:00
parent abb1fae70d
commit cd38287503
12 changed files with 863 additions and 10 deletions

View File

@@ -22,6 +22,15 @@ class JwtAuthMiddleware
$token = $matches[1];
if (config('jwt.allow_any_token')) {
$request->attributes->set('auth', [
'id' => $this->subjectFromUnverifiedToken($token),
'token' => $token
]);
return $next($request);
}
[$header, $payload, $signature] = $this->decodeToken($token);
if (($header['alg'] ?? null) !== 'RS256') {
@@ -113,4 +122,20 @@ class JwtAuthMiddleware
return time() >= (int) $payload['exp'];
}
private function subjectFromUnverifiedToken(string $token): string
{
$parts = explode('.', $token);
if (count($parts) !== 3) {
return 'external-consumer';
}
try {
$payload = $this->base64UrlDecodeJson($parts[1]);
return (string) ($payload['sub'] ?? 'external-consumer');
} catch (\Exception $e) {
return 'external-consumer';
}
}
}