#symfony #security #firewall
#symfony #Безопасность #брандмауэр
Вопрос:
Я устанавливаю безопасность для своего api. Мне нужно защитить URL api. Итак, запросите аутентификацию для URL mydomain.com/api /. НО если запрос поступает из того же домена (mydomain.com ) Я хочу отключить аутентификацию.
Я попытался использовать ключ хоста и ввести обычное выражение, в котором говорится: когда хост не содержит «mydomain». Но это не сработало.
firewalls:
api:
pattern: ^/api
host: ^((?!mydomain).)*$
stateless: true
anonymous: true
lexik_jwt:
authorization_header:
enabled: true
prefix: Bearer
firewalls:
api:
pattern: ^/api
host: #???????
stateless: true
anonymous: true
lexik_jwt:
authorization_header:
enabled: true
prefix: Bearer
Я ожидал, что брандмауэр api сработает, когда запрос выйдет за пределы mydomain. И не работает, когда запрос поступает из mydomain.
Ответ №1:
Вы можете попробовать изменить свою логику.
Создайте два брандмауэра :
- Первый перехватывает запросы, поступающие из вашего домена, и отключает аутентификацию для них.
- Второй перехватывает все оставшиеся запросы и запрашивает аутентификацию.