コンテクスト
ZendACLについて読んでいます http://framework.zend.com/manual/en/zend.acl.html
質問
1台のサーバーで3つのZendアプリケーションを実行しています。
- 私のフロントエンドアプリ
- 私のフロントエンド-メンバーアプリ
- 私のバックエンドアプリ(サイト所有者の管理者)
アプリケーション内で、2種類のACLを使用することを検討しています。
- アプリケーション全体のACL-「アプリACL」の権限は単に「アクセス」(または「読み取り」(または「SendHTTPRequests」)と呼ぶこともあります))
- アカウント全体-他のすべての権限を個々の「アカウントACL」に任せます
これにより、スパマーやその他の攻撃者をブロックしやすくなると思います
if (UserActivityScoresHighProbabilityOfHacking_Specification->IsSatisfiedBy(User))
{
User->addrole(Attacker)
}
おそらく、次のようなルールがあります。
フロントエンドアプリのアクセス制御
- 名前=攻撃者
- 一意の権限=なし
- 権限の継承元=N/ A
- 名前=ゲスト
- 一意のアクセス許可=SendHTTPRequests
- 権限の継承元=N/ A
- 名前=メンバー
- 一意のアクセス許可=SendHTTPRequests
- 権限の継承元=ゲスト
- 名前=管理者
- 一意のアクセス許可=(すべてのアクセス許可)
- 権限の継承元=N/ A
他のアプリには、ゲストへのアクセスを拒否するためのより厳しいルールがあります。
したがって、答える質問は次のとおりです。
「攻撃者」の役割(否定的な役割)をユーザーに割り当てることは、賢明なことだと思いますか。
または、これは一般的なベストプラクティスに反しますか?