Refactor monolog of OAuth2controller controller

This commit is contained in:
Charles 2025-12-09 11:47:59 +01:00
parent 6b4ad1d6fd
commit 4022e905a8
1 changed files with 8 additions and 3 deletions

View File

@ -3,6 +3,8 @@
namespace App\Controller; namespace App\Controller;
use App\Service\AccessTokenService; use App\Service\AccessTokenService;
use App\Service\LoggerService;
use App\Service\UserService;
use Psr\Log\LoggerInterface; use Psr\Log\LoggerInterface;
use Psr\Log\LogLevel; use Psr\Log\LogLevel;
use Symfony\Bundle\FrameworkBundle\Controller\AbstractController; use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;
@ -18,17 +20,20 @@ class OAuth2Controller extends AbstractController
{ {
public function __construct(private readonly LoggerService $loggerService, private readonly UserService $userService)
{
}
#[Route('/oauth2/userinfo', name: 'userinfo', methods: ['GET'])] #[Route('/oauth2/userinfo', name: 'userinfo', methods: ['GET'])]
public function userinfo(Request $request): JsonResponse public function userinfo(Request $request): JsonResponse
{ {
$user = $this->getUser(); $user = $this->getUser();
// dd($user);
if (!$user) { if (!$user) {
$this->loggerService->logAccessDenied($user->getId());
return new JsonResponse(['error' => 'Unauthorized'], 401); return new JsonResponse(['error' => 'Unauthorized'], 401);
} }
$this->loggerService->logUserAction($user->getId(), $user->getId(), 'Accessed userinfo endpoint');
return new JsonResponse([ return new JsonResponse([
'id' => $user->getId(), 'id' => $user->getId(),
'name' => $user->getName(), 'name' => $user->getName(),
@ -66,7 +71,7 @@ class OAuth2Controller extends AbstractController
if (!$userIdentifier) { if (!$userIdentifier) {
return new JsonResponse(["ERROR" => "User identifier is required"], Response::HTTP_BAD_REQUEST); return new JsonResponse(["ERROR" => "User identifier is required"], Response::HTTP_BAD_REQUEST);
} }
$accessTokenService->revokeTokens($userIdentifier); $accessTokenService->revokeUserTokens($userIdentifier);
$logger->info("Revoke tokens successfully"); $logger->info("Revoke tokens successfully");
return new JsonResponse(["SUCCESS" => "Tokens revoked successfully"], Response::HTTP_OK); return new JsonResponse(["SUCCESS" => "Tokens revoked successfully"], Response::HTTP_OK);