From 8566a128c8244d0e8277ccdcc50f8cace780ea47 Mon Sep 17 00:00:00 2001 From: Alex Bilbie Date: Sun, 17 Jan 2016 14:56:42 +0000 Subject: [PATCH] Pass errors back up the chain --- src/ResponseTypes/BearerTokenResponse.php | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/ResponseTypes/BearerTokenResponse.php b/src/ResponseTypes/BearerTokenResponse.php index 5315e112..278b166d 100644 --- a/src/ResponseTypes/BearerTokenResponse.php +++ b/src/ResponseTypes/BearerTokenResponse.php @@ -85,12 +85,12 @@ class BearerTokenResponse extends AbstractResponseType // Attempt to parse and validate the JWT $token = (new Parser())->parse($jwt); if ($token->verify(new Sha256(), $this->pathToPublicKey) === false) { - return $request; + return $request->withAttribute('oauth_access_token_error', 'Access token could not be verified'); } // Check if token has been revoked - if ($this->accessTokenRepository->isAccessTokenRevoked($token->getClaim('jwt'))) { - return $request; + if ($this->accessTokenRepository->isAccessTokenRevoked($token->getClaim('jti'))) { + return $request->withAttribute('oauth_access_token_error', 'Access token has been revoked'); } // Return the request with additional attributes @@ -100,7 +100,7 @@ class BearerTokenResponse extends AbstractResponseType ->withAttribute('oauth_scopes', $token->getClaim('scopes')); } catch (\InvalidArgumentException $e) { // JWT couldn't be parsed so return the request as is - return $request; + return $request->withAttribute('oauth_access_token_error', $e->getMessage()); } } }