6

C# で ACL に対してユーザーのアクセス許可をチェックする方法があるかどうか疑問に思っています。認証に Active Directory を使用する大規模なシステムを構築しており、できるだけ多くの Windows セキュリティ プラミングを使用したいと考えています。System.Security.AccessControl をブラウジングする最後の数時間を費やした後、ACL リストに対してユーザー トークンをチェックする簡単な方法が提供されているかどうかはわかりません。カスタムシステムを実装するのに十分な抽象クラスがありますが、Windows セキュリティ記述子の操作にはるかに適しているようです。

私は、はるかに柔軟で、セキュリティ記述子に対してコンテキストをチェックできる機能 (AuthzAccessCheck) を持つ Authz API を見てきました。必要に応じてラッピングすることにまったく反対しません。

他の誰かが同様の問題を抱えていましたか?もしそうなら、あなたが見た長所と短所は何ですか?

4

1 に答える 1

1

ACL はどのように保存され、アクセスされますか? ACL エントリをPrincipalPermissionオブジェクトに変換することはできますか? その場合、Demand() メソッドを使用してアクセス権を確認できます。ユーザーがアクセス権を持っていない場合、SecurityException がスローされます。

于 2010-07-11T22:46:53.623 に答える