2016-10-24 3 views
1

を制限します。このルートにアクセスすることができSymfony2のアクセス制御は、私はROLE_CUSTOMは、指定されたルートのために作成したカスタム役割である(ROLE_CUSTOM)</p> <p>を除くすべてのロール(SUPER_ADMINは、ADMINが含まれている)によってアクセスされることから、いくつかのルートを制限したいROLE_SUPER_ADMIN

唯一の役割は、私がsecurity.access_control.ymlからまたはファイアウォールの設定からこれを制御したい(ROLE_CUSTOM)

です。

私はis_granted関数を使うことができますが、security.access_control.ymlまたはファイアウォール設定から制御したいと思っています。

これをどのように達成できますか?

答えて

2

ロールは単純で、基本的にはあなたが発明して必要に応じて使用する文字列です。したがって、ROLE_SUPER_ADMINROLE_ADMINは既にあなたによって作成されたカスタムロールです。 そして、すべてが自分の役割階層Reference)に依存します。

security: 
    role_hierarchy: 
     ROLE_CUSTOM:  ROLE_USER 
     ROLE_ADMIN:  ROLE_USER 
     ROLE_SUPER_ADMIN: [ROLE_ADMIN, ROLE_ALLOWED_TO_SWITCH] 

あなたはROLE_CUSTOMとユーザーのためにURLパターンを保護できるようにするには、単に(Reference)次の操作を行います

security: 
    access_control: 
     - { path: ^/exclusive-path$, role: ROLE_CUSTOM } 

準備! ROLE_CUSTOMのユーザーのみが/exclusive-pathのパスにアクセスできます。

関連する問題

 関連する問題