2016-04-15 9 views
1

FOSOAuthServerBundleを で動作させようとしていますが、oauth_authorizeと闘って302リダイレクションループを得ています。ここでFOSOAuth2とFOSUserでリダイレクトループを承認する

は、私は(簡体字)私のsecurity.ymlに持っているものです。

firewalls: 
    oauth_authorize: 
     pattern: ^/oauth/v2/auth 
     form_login: 
     provider: fos_userbundle 
     check_path: /oauth/v2/auth/login_check 
     login_path: /oauth/v2/auth/login 

access_control: 
    - { path: ^/login$, role: IS_AUTHENTICATED_ANONYMOUSLY } 
    - { path: ^/oauth/v2/auth/login, role: IS_AUTHENTICATED_ANONYMOUSLY } 

デフォルト/loginoauth_authorizeパターンと一致しないので、私はlogin_pathを指定する必要があります。

/oauth/v2/auth/loginのルートをバンドルに追加しましたが、ダミーのコントローラであっても、決して呼び出されません。私はFirefoxが十分だと言うまでに302のリダイレクトを取得するだけです。

comments hereの誰かが、パターン正規表現の最後に$を追加することを提案しましたが、ルートが一致しません。

ログは私を与える:

security.INFO:含むAuthenticationExceptionがスローされました。認証エントリポイントにリダイレクトします。/home/arthur/PhpstormProjects/rss-api/vendor /にあるTokenStorageにトークンが見つかりませんでした。( "例外": "[オブジェクト](symfony \ Component \ Security \ Core \ Exception \ AuthenticationCredentialsNotFoundException symfony/symfony/src/Symfony /コンポーネント/セキュリティ/ Http/Firewall/AccessListener.php:53) "} []

私に何か不足していますか?

EDIT:symfonyの3.0とOAuthのサーバー・バンドル1.5

答えて

0

私は確かに何か、アクセスをブロックするファイアウォールを防ぐ匿名のディレクティブがありませんでした。

firewalls: 
    oauth_authorize: 
     pattern: ^/oauth/v2/auth 
     form_login: 
     provider: fos_userbundle 
     check_path: /oauth/v2/auth/login_check 
     login_path: /oauth/v2/auth/login 
     anonymous: true