Неизвестная опция knpu_guard в security.firewalls.main (Symfony)

Я хотел бы добавить возможность входа через facebook на свой сайт. Я стараюсь следовать этому руководству. Но если я добавлю часть knpu_guard в основной раздел, я получу эту ошибку:

Unrecognized option "knpu_guard" under "security.firewalls.main"

Мой раздел firewalls в security.yml выглядит так:

firewalls:
    main:
        anonymous: ~
        #pattern:    ^/
        provider: our_db_provider
        form_login:
            login_path: login
            check_path: login
        logout:
            path:   /logout
            target: /
        knpu_guard:
            authenticators:
                - app.form_login_authenticator
                - app.api_token_authenticator
                - app.facebook_authenticator
            # by default, use the start() function from FormLoginAuthenticator
            entry_point: app.form_login_authenticator

Я просто добавил раздел knpu_guard, больше ничего не изменилось в разделе firewalls


person Iter Ator    schedule 25.07.2017    source источник


Ответы (1)


Я думаю, что учебник немного устарел, потому что knpu_guard больше не принимается.

Вместо этого вы можете использовать guard в качестве ключа в файле security.yml.

Обсуждение

Попробуйте использовать это

form_login:
   login_path: login
   check_path: login
   provider: user_provider #where is this provider? It shouldn't be fos_userbundle for example?
anonymous: true
person Alessandro Minoccheri    schedule 25.07.2017
comment
Теперь я получаю эту ошибку: The service "security.authentication.manager" has a dependency on a non-existent service "app.form_login_authenticator". - person Iter Ator; 25.07.2017
comment
Я обновил ответ, но сейчас трудно понять проблему. - person Alessandro Minoccheri; 25.07.2017
comment
Пользователи хранятся в БД. Мой класс User реализует UserInterface. не пользуюсь fos_userbundle - person Iter Ator; 25.07.2017