尝试将这两个捆绑包与最新的Symfony(V:2.7.2)一起使用。
FOSOauth设置正常,但添加HWIOAuthBundle并不是那么简单。按照原生Read.me中的说明,我接受了这个:
如何一起设置这两个?
答案 0 :(得分:1)
您似乎还没有在希望HWIOAuthBundle使用的防火墙( security.yml 文件)中正确配置 oauth 部分。 例如,Facebook:
// app/config/config.yml
hwi_oauth:
firewall_name: main
resource_owners:
facebook:
type: facebook
...
然后您需要配置主防火墙
// app/config/security.yml
main:
pattern: ^/
oauth:
resource_owners:
facebook: "/login/check-facebook"
oauth_user_provider:
service: my_custom_oauth_user_provider
...
不要忘记申报facebook 登录检查路线
// app/config/routing.yml
facebook_login:
path: /login/check-facebook
您还需要创建一个用户提供程序(您可以扩展和修改的包本身has some built-in providers)并将其注册为服务
// app/config/services.yml
my_custom_oauth_user_provider:
class: AppBundle\Security\OAuthUserProvider
正如您的问题是如何使用FOSOAuthServerBundle设置HWIOAuthBundle,有一个非常完整的指导如何实现这一目标:A way to integrate FosUserBundle and HWIOAuthBundle
答案 1 :(得分:0)
您需要使用身份验证方式添加新防火墙(例如secured_area)" oauth"。
例如:
security:
firewalls:
secured_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
您可以找到此信息here