私は、役割ベースのセキュリティメカニズムよりも データベースベースのセキュリティメカニズムを必要とする一種のCRMシステムを開発しています。
たとえば、システム内の特定のユーザーは、view
すべてのクライアント、つまりupdate
自分のクライアントを使用できます。
したがって、すべての営業担当者が同じ役割を持っているため、役割ベースのセキュリティはここでは役に立ちませんsales_user_role
。
すべてのクライアント行にフィールドを設定して、それらを区別する必要があります。sales_owner_id
if(client.salesOwnerId.Equales(httpSession["user_id"]){
delete...
update...
}
上記の場合、client
オブジェクトはsalesOwnerIdを持つクライアントエンティティです。
上記はスパゲッティコードなので、データ駆動型のセキュリティフレームワークでやりたいと思います。
私は依存性注入のためにc#.NET4、MVC3、WCF、Nhibernate、Springを使用しています。
(私はそれを行うサイのセキュリティを見ましたが、それは文書化されておらず、学習リソースがほとんどありません)
ありがとう