Я пытаюсь получить HWIOAuthBundle комплект установлен & настроен, но у меня возникли некоторые проблемы. Вот что я сделал:
1) Включить комплект в AppKernel.php
:
new HWI\Bundle\OAuthBundle\HWIOAuthBundle(),
2) Добавьте эту строку в config.yml
:
imports:
- { resource: parameters.yml }
- { resource: security.yml }
- { resource: sonata.yml }
- { resource: hwi.yml }
3) Напишите следующее на hwi.yml
файл:
hwi_oauth:
firewall_name: admin_area
resource_owners:
salesforce:
type: salesforce
client_id: <cliend_id>
client_secret: <client_secret>
4) Добавьте маршруты в самом начале в routing.yml
:
#FOSUserBundle
fos_user:
resource: "@FOSUserBundle/Resources/config/routing/all.xml"
#HWIOAuthBundle
hwi_oauth_redirect:
resource: "@HWIOAuthBundle/Resources/config/routing/redirect.xml"prefix: /connect
hwi_oauth_login:
resource: "@HWIOAuthBundle/Resources/config/routing/login.xml"prefix: /login
#SonataAdmin
admin:
resource: '@SonataAdminBundle/Resources/config/routing/sonata_admin.xml'
prefix: /admin
_sonata_admin:
resource: .
type: sonata_admin
prefix: /admin
Когда я звоню в браузере: http://applocal.dev/app_dev.php
Я получил эту ошибку:
ServiceNotFoundException в
CheckExceptionOnInvalidReferenceBehaviorPass.php строка 58: служба
«hwi_oauth.security.oauth_utils» зависит от несуществующего
сервис «hwi_oauth.resource_ownermap.admin_area».
Что мне здесь не хватает? Почему эта ошибка?
похоже вы не настроили oauth firwall
Пожалуйста, проверьте, что у вас есть в app / config / security.yml что-то вроде:
security:
firewalls:
admin_area:
anonymous: ~
oauth:
resource_owners:
facebook: "/login/check-facebook"google: "/login/check-google"my_custom_provider: "/login/check-custom"my_github: "/login/check-github"login_path: /login
use_forward: false
failure_path: /login
oauth_user_provider:
service: my.oauth_aware.user_provider.service
access_control:
- { path: ^/login, roles: IS_AUTHENTICATED_ANONYMOUSLY }
Других решений пока нет …