Я обычно использую пользователей in_memory для своих суперпользователей, затем я создаю обычных пользователей в базе данных.В этой новой версии Symfony я следовал этому руководству: https://symfony.com/doc/current/security/form_login_setup.html Все по умолчанию.Для создания сущности пользователей.Проблема заключается в том, что провайдеры in_memory игнорируются, и я получаю «имя пользователя не найдено» всякий раз, когда я пытаюсь их использовать.
my securirty.yml:
security:
encoders:
Symfony\Component\Security\Core\User\User: plaintext
App\Entity\User:
algorithm: bcrypt
role_hierarchy:
ROLE_ALL: [ROLE_USUARIO]
ROLE_SUPER_ADMIN: [ROLE_ALL]
providers:
chain_provider:
chain:
providers: [in_memory, app_user_provider]
in_memory:
memory:
users:
someuser:
password: somepassword
roles: ROLE_SUPER_ADMIN
# used to reload user from session & other features (e.g. switch_user)
app_user_provider:
entity:
class: App\Entity\User
property: username
# used to reload user from session & other features (e.g. switch_user)
firewalls:
main:
anonymous: ~
provider: chain_provider
guard:
authenticators:
- App\Security\LoginFormAuthenticator
access_control:
- { path: ^/login$, role: IS_AUTHENTICATED_ANONYMOUSLY }
- { path: ^/register, role: IS_AUTHENTICATED_ANONYMOUSLY }
- { path: ^/resetting, role: IS_AUTHENTICATED_ANONYMOUSLY }
- { path: ^/admin/, role: ROLE_USUARIO }