2

FOSUserBundleのインストール ガイドに従いましたが、手順 8 で次のエラーが発生しました。

[Symfony\Component\DependencyInjection\Exception\ServiceNotFoundException]
ServiceNotFoundException: サービス "security.authentication.manager" は、存在しないサービス "security.user.provider.concrete.fos_userbundle" に依存しています。

これは私のsecurity.ymlです:

# app/config/security.yml
security:
    providers:
        fos_userbundle:
            id: fos_user.user_manager

    encoders:
        Symfony\Component\Security\Core\User\User: plaintext
        FOS\UserBundle\Model\UserInterface:        sha512

    role_hierarchy:
        ROLE_ADMIN:       ROLE_USER
        ROLE_SUPER_ADMIN: [ROLE_USER, ROLE_ADMIN, ROLE_ALLOWED_TO_SWITCH]

    providers:
        in_memory:
            users:
                user:  { password: userpass, roles: [ 'ROLE_USER' ] }
                admin: { password: adminpass, roles: [ 'ROLE_ADMIN' ] }

    firewalls:
        dev:
            pattern:  ^/(_(profiler|wdt)|css|images|js)/
            security: false

        login:
            pattern:  ^/demo/secured/login$
            security: false

        secured_area:
            pattern:    ^/demo/secured/
            form_login:
                check_path: /demo/secured/login_check
                login_path: /demo/secured/login
            logout:
                path:   /demo/secured/logout
                target: /demo/

        main:
            pattern:           ^/
            form_login:
                provider:      fos_userbundle
                csrf_provider: form.csrf_provider
            logout:            true
            anonymous:         true

    access_control:
        - { path: ^/login$, role: IS_AUTHENTICATED_ANONYMOUSLY }
        - { path: ^/register, role: IS_AUTHENTICATED_ANONYMOUSLY }
        - { path: ^/resetting, role: IS_AUTHENTICATED_ANONYMOUSLY }
        - { path: ^/admin/, role: ROLE_ADMIN }

    role_hierarchy:
        ROLE_ADMIN:       ROLE_USER
        ROLE_SUPER_ADMIN: ROLE_ADMIN

サービスを手動で登録する必要がありますか? どうやって進める?

4

1 に答える 1

8

providers:2番目のブロックを削除してみてくださいfos_userbundle( 1つだけが残ります)...

于 2012-02-23T15:40:26.457 に答える