2015-03-25 3 views
2

У меня довольно неприятная проблема и даже не знаю, где ее устранить, поскольку Symfony не упоминает преступника.Служба «security.authentication.manager» имеет зависимость от несуществующей службы «security.user.provider.concrete.fos_userbundle»

Мне нужно создать сервер OAUTH для проверки подлинности мобильных пользователей в приложении, в котором уже были созданы пакеты для управления сайтом Sonata/FOSUser.

Я решил установить FOSOAuthServerBundle, который я использовал до совершенно без особых проблем. Сегодня Howerver, я получаю следующее сообщение об ошибке:

[Symfony\Component\DependencyInjection\Exception\ServiceNotFoundException] 
The service "security.authentication.manager" has a dependency on a non-existent service "security.user.provider.concrete.user_provider". 

Вот мои соответствующие файлы:

config.yml

fos_user: 
    db_driver:  orm # can be orm or odm 
    firewall_name: main 
    user_class:  Application\Sonata\UserBundle\Entity\User 

    group: 
     group_class: Application\Sonata\UserBundle\Entity\Group 
     group_manager: sonata.user.orm.group_manager      

    service: 
     user_manager: sonata.user.orm.user_manager 

fos_oauth_server: 
    db_driver: orm 
    client_class:  AppBundle\Entity\Client 
    access_token_class: AppBundle\Entity\AccessToken 
    refresh_token_class: AppBundle\Entity\RefreshToken 
    auth_code_class:  AppBundle\Entity\AuthCode 
    service: 
     user_provider: sonata.user.orm.user_manager 
     options: 
      supported_scopes: user 

security.yml

providers: 
    fos_userbundle: 
     id: fos_user.user_manager 

encoders: 
    FOS\UserBundle\Model\UserInterface: sha512  

firewalls: 

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

    oauth_token: 
     pattern: ^/oauth/v2/token 
     security: false 

    admin: 
     pattern:   /admin(.*) 
     context:   user 
     form_login: 
      provider:  fos_userbundle 
      login_path:  /admin/login 
      use_forward: false 
      check_path:  /admin/login_check 
      failure_path: null 
     logout: 
      path:   /admin/logout 
     anonymous:   true 

    oauth_authorize: 
     pattern: ^/oauth/v2/auth 
     form_login: 
      provider: user_provider 
      check_path: _security_check 
      login_path: _demo_login 
     anonymous: true 

    api: 
     pattern: ^/api 
     fos_oauth: true 
     stateless: true 

    main: 
     pattern:    .* 
     context:    user 
     form_login: 
      provider:  fos_userbundle 
      login_path:  /login 
      use_forward: false 
      check_path:  /login_check 
      failure_path: null 
     logout:    true 
     anonymous:   true 

Там есть почти аналогичный вопрос здесь The service "security.authentication.manager" has a dependency on a non-existent service "security.user.provider.concrete.fos_userbundle", но его проблема была вызвана опусканием fos_userbund le id под провайдерами, что имеет место в моей ситуации.

Кто-то пожалуйста помочь пролить некоторый свет

ответ

4

Ваша ошибка должна быть здесь:

oauth_authorize: 
     pattern: ^/oauth/v2/auth 
     form_login: 
      provider: user_provider #where is this provider? shouldnt it be fos_userbundle 
      check_path: _security_check 
      login_path: _demo_login 
     anonymous: true 
+0

Я не могу поверить в это, я играл главную роль в этой вещи целый день и не мог заметить это. Большое спасибо моему брату за то, что вы нашли время, чтобы помочь –

Смежные вопросы

 Смежные вопросы