AnisimovAM
@AnisimovAM
Программист

Как в Symfony отключить создание session при вызове api методов?

Добрый день.

В проекте на Symfony 2.8 есть админка (роут /admin) и api (роут /api). Для api используется jwt.
Требуется сделать так, чтобы при вызове методом api сессии не создавались (создание сессий только для админки)

Еще есть такая проблема:
1. Зашел в админку под админом
2. Вызвал метод api, без токена авторизации (например, /api/article/1)
3. Сессия админа слетает, надо заново входить в админку

Кто-нибудь сталкивался с подобной задачей? Как можно отключить сессии для api?
  • Вопрос задан
  • 709 просмотров
Пригласить эксперта
Ответы на вопрос 1
DarkRaven
@DarkRaven
разработка программного обеспечения
Вообще, все API методы должны иметь свой файрвол безопасности, к примеру через тот же JWT.
У LexikJWTAuthenticationBundle в конфигурации хорошо это показано.

security:

    # ***
    
    firewalls:
    # ***
        refresh:
            pattern:  ^/api/v1/token/refresh
            stateless: true
            anonymous: true
    # ***
        api:
            pattern:   ^/api
            stateless: true
            guard:
                authenticators:
                    - lexik_jwt_authentication.jwt_token_authenticator


Так же, важен порядок следования файрволов, API у меня идет выше основного.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы