2016-05-23 4 views
2

私は、Symphony3のACL機能をチェックアウト/評価しようとしています。誰もが有権者の使用を勧めても、自分のニーズに合っているかどうかはわかりませんので、その話題をさらに深く掘り下げることにしました。私はソースで見つかったとAPI-Documentationに私がやってきた二つの方法があるよう:Symfony 3 - ACLの親子関係

getParentAcl() 
    setParentAcl(AclInterface $acl = null) 

は、権限の階層を作成することを意図し、これらの方法はありますか、彼らは別の目的のために存在していますか?私が持っていると思い何

は何かがそのような権限«の»木である:

+ registered User [VIEW, VOTE] 
| 
+-+ authorized User (level 1) [FLAG, UN- and PUBLISH] 
    | 
    + authorized User (level 2) [EDIT, DELETE] 

権限が親から子へとまとめるようにします。上記の例では、権限のあるユーザー(レベル2)にはすべての権限(VIEW、VOTE、FLAG、...、DELETE)が必要です。

すべてのアイデア:お互いから継承できる役割に特定の権限を割り当て、RoleSecurityIdentityを使用してレベルの権限を割り当てます。

symfony3のACL親子関係はそういうことを意味していますか?

私はどんなヘルプにも感謝し、いくつかの詳細なドキュメントをお待ちしております!

ありがとうございました!

答えて

0

PermissionGrantingStrategyはまず、すべてのオブジェクトスコープのACEをチェックします。該当するものがなければ、クラススコープのACEがチェックされます。いずれも該当しない場合、プロセスは親ACLのACEで繰り返されます。親ACLが存在しない場合、例外がスローされます。 Process for Reaching Authorization Decisions