Я пытаюсь установить базовый HTTP browser-based authentication для раздела моего приложения Symfony 2 под названием /secret
.Настройка базовой проверки подлинности на основе HTTP-браузера в приложении Symfony 2 - аутентификация HTTP-аутентификации
Я бы хотел, чтобы страница /secret
была общедоступной, но любая страница ниже /secret
, такая как /secret/landing
, была бы за брандмауэром SF2.
Когда я перехожу на /secret
(или его любую дочернюю страницу), я получаю перенаправленную страницу моего приложения /login
, и я не понимаю, почему?
security:
providers:
sylius_user_provider:
id: sylius.user_provider.name_or_email
in_memory:
memory:
users:
secret:
password: secret
roles: 'ROLE_SECRET'
encoders:
Symfony\Component\Security\Core\User\User: plaintext
firewalls:
main:
switch_user: { role: ROLE_ADMINISTRATION_ACCESS }
context: user
pattern: /.*
form_login:
provider: sylius_user_provider
login_path: /login
check_path: /login_check
failure_path: /login
default_target_path:/
use_forward: false
use_referer: true
remember_me:
key: %sylius.secret%
name: APP_REMEMBER_ME
lifetime: 31536000
always_remember_me: true
remember_me_parameter: _remember_me
oauth:
resource_owners:
facebook: "/login/check-facebook"
google: "/login/check-google"
amazon: "/login/check-amazon"
login_path: /login
failure_path: /login
oauth_user_provider:
service: sylius.oauth.user_provider
logout: true
anonymous: true
secret:
pattern: ^/secret/.*
http_basic: ~
provider: in_memory
context: secret
access_control:
- { path: ^/secret/.*, roles: ROLE_SECRET }