Я не могу выйти из системы пользователя.
Я перенес пользовательскую логику управления пользователями в проект Symfony 4. Он использует рецепты для security
и guard
.
Вот конфигурация logout
в моем основном брандмауэре:
logout:
path: /logout
target: /
Результат: - Пользователь переходит в /logout - Пользователь перенаправляется в / - is_granted("IS_AUTHENTICATED_REMEMBERED")
продолжает возвращать true
в моем шаблоне (ожидается false
)
Другие соображения: - Запись брандмауэра срабатывает, потому что я получаю ошибки, если удаляю ее - Я пытался добавить дополнительные параметры в logout
, чтобы уничтожить сеанс и файлы cookie, однако это не имело значения - Вход в систему работает нормально
Любая идея о том, как устранить эту проблему?
:: edit - добавлено security.yaml
по запросу ::
security:
encoders:
App\Entity\User: bcrypt
role_hierarchy:
ROLE_ADMIN: ROLE_USER
ROLE_SUPER_ADMIN: ROLE_ADMIN
providers:
app_users:
entity: { class: App\Entity\User, property: email }
app_oauth:
id: app.oauth_user_provider
firewalls:
dev:
pattern: ^/(_(profiler|wdt)|css|images|js)/
security: false
main:
provider: app_users
anonymous: ~
oauth:
resource_owners:
google: "/login/check-google"
default_target_path: /
login_path: /
failure_path: /login
oauth_user_provider:
service: app.oauth_user_provider
remember_me:
secret: "%env(APP_SECRET)%"
lifetime: 2592000
path: /
guard:
authenticators:
- App\Security\LoginFormAuthenticator
entry_point: App\Security\LoginFormAuthenticator
logout:
path: /logout
target: /
switch_user: ~
config/packages/security.yaml
файл? - person MatMouth   schedule 21.12.2017access_control: - { path: ^/login/check-google, roles: IS_AUTHENTICATED_ANONYMOUSLY }
- person MatMouth   schedule 21.12.2017