Избегайте jwt-аутентификации на некоторых маршрутах с PUBLIC_ACCESSPhp

Кемеровские программисты php общаются здесь
Ответить
Anonymous
 Избегайте jwt-аутентификации на некоторых маршрутах с PUBLIC_ACCESS

Сообщение Anonymous »

Я использую Symfony 7.1; Установлен lexikjwttoken;
Я хочу разрешить вызов некоторых маршрутов без аутентификации;
Вот мой файл security.yml:

Код: Выделить всё

security:
password_hashers:
Symfony\Component\Security\Core\User\PasswordAuthenticatedUserInterface: 'auto'

providers:
app_user_provider:
entity:
class: App\Entity\User
property: email

firewalls:
login:
pattern: ^/api/v1/auth/sign-in
stateless: true
custom_authenticator: App\Security\JwtCustomAuthenticator
api:
pattern: ^/api
stateless: true
jwt: ~

access_control:
- { path: ^/api/v1/auth/sign-in, roles: PUBLIC_ACCESS }
- { path: ^/api/v1/auth/check-pin, roles: PUBLIC_ACCESS }
- { path: ^/api, roles: IS_AUTHENTICATED_FULLY }
Мой маршрут в контроллере выглядит так:

Код: Выделить всё

    #[Route('/check-pin', name: 'check_pin', methods: ['POST'])]
public function checkPin(Request $request): JsonResponse
{
return $this->userTokenResponse->createSuccessResponse(200, ['token' => '111']);
}
Когда я попытался выполнить POST /api/v1/auth/check-pin, я получил:

Код: Выделить всё

{
"code": 401,
"message": "Expired JWT Token"
}
Есть идеи, почему это происходит? Я уже добавляю PUBLIC_ACCESS для этого маршрута;

Подробнее здесь: https://stackoverflow.com/questions/788 ... lic-access
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Php»