.Net でアプリケーションの承認と権限を取得する最善の方法は何ですか? 以前の AzMan は標準的な方法でした。プロバイダー モデルの出現により、少なくとも役割は処理されますが、承認と資格についてはわかりません。ロール/ユーザーの操作レベルのアクセス許可を定義してアクセスする機能を検討しています。上記を達成するための最も適切な方法は何ですか?
2 に答える
このブログ投稿によると、ClaimsAuthorizationManager API は「次世代の AzMan」です。ただし、これは単なる API であり、デフォルトの実装や管理 GUI が付属していないため、実際にはまだ直接の代替にはなりません。
WIF/ジュネーブのものは、まだ AzMan ほど「成熟」していないようです。約 3 年間 AzMan を使用しており、実装は azman.dll への直接リンクから、役割と操作を提供する WCF ベースのサービスへと進化しました。WCF サービスは、WinForms、WPF クライアントにサービスを提供します。現在、Silverlight で動作するようにしています。少なくとも、azman で無料で提供されているような WIF の役割や操作などをセットアップするフロント エンドが作成されるまでは、AzMan からすぐに切り替えることはないと思います。
詳細については、Active Directory に azman ストアを作成し、醜い COM azroles.dll の周りに .net ラッパーを提供する .net dll を作成しました。これに加えて、基本的に役割と操作の要求を .net azman dll に直接渡すだけの WCF サービスがあります。役割や操作などは、クライアントが処理する文字列配列として返されます。サービスによる認証を行う方法は 2 つあります。1) 匿名認証、または 2) Windows 認証 (パススルー) のいずれかを使用します。これは、ユーザー名とパスワードを指定すると、最初にこれらの文字列を使用して認証する匿名認証が使用されることを意味します。パススルー/Windows 認証が使用されている場合、WCF サービスは、認証済みの Windows ユーザーであることを既に認識しています...
通常、winform と WPF クライアントは Windows 認証を使用してパススルーし、利用可能なロールを取得しますが、Silverlight クライアントは匿名認証を使用します...