Pyramid を使用して中規模の Web アプリケーションを構築することを検討しています。RBACを実装する必要があります。最良の選択は何でしょうか? Zope コンポーネントを使用することは可能でしょうか?
2064 次
1 に答える
3
Pyramid は、プリンシパルをパーミッションにマップする ACL 認可ポリシーを実装しています。
- プリンシパルは、要求 (ユーザー) 自体から導出され、好きなものを意味するように構成できます。
- 権限は、個々のビューまたは「操作」に関連付けられた文字列です。
私が間違っているかもしれませんが、RBAC はこの考えに非常に自然に適合しているようです。RBAC はよりグローバルなポリシーになる傾向があることを理解していますが、ACL は一般的にコンテキストに依存するため、データに関連付けられています。ただし、これは実際には問題ではなく、アプリケーションの残りの部分をどのように構築するかによって異なります。
独自の をかなり簡単に実装することもできますRBACAuthorizationPolicy
。Pyramid では、プリンシパルとパーミッションが渡され、そこからアクセス マッピングをクエリして、そのユーザーに対してAllowed
orDenied
値を返すかどうかを決定できます。
于 2011-12-21T15:59:46.307 に答える