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:块(所以只剩下fos_userbundle一个)......

于 2012-02-23T15:40:26.457 回答