次の方法で共有


Role-Based セキュリティ

ロールは、多くの場合、ポリシーを適用するために財務アプリケーションまたはビジネス アプリケーションで使用されます。 たとえば、アプリケーションは、要求を行うユーザーが指定されたロールのメンバーであるかどうかに応じて、処理されるトランザクションのサイズに制限を課す場合があります。 事務員は、指定されたしきい値未満のトランザクションを処理する権限を持つ場合があり、監督者の上限が高く、副会長の上限が引き続き高い (または制限がまったくない) 場合があります。 ロールベースのセキュリティは、アプリケーションがアクションを完了するために複数の承認を必要とする場合にも使用できます。 このような場合は、すべての従業員が購入要求を生成できるが、その要求を仕入先に送信できる発注書に変換できるのは購買エージェントだけである購買システムです。

.NET ロールベースのセキュリティでは、関連付けられた ID から構築されたプリンシパルに関する情報を現在のスレッドで使用できるようにすることで、承認がサポートされます。 ID (および定義に役立つプリンシパル) は、Windows アカウントに基づくか、Windows アカウントとは無関係のカスタム ID にすることができます。 .NET アプリケーションは、プリンシパルの ID またはロール メンバーシップ、またはその両方に基づいて承認の決定を行うことができます。 ロールは、セキュリティに関して同じ特権を持つプリンシパルの名前付きセットです (窓口やマネージャーなど)。 プリンシパルは、1 つ以上のロールのメンバーにすることができます。 そのため、アプリケーションはロール メンバーシップを使用して、プリンシパルが要求されたアクションの実行を許可されているかどうかを判断できます。

.NET のロールベースのセキュリティでは、コード アクセス セキュリティの使いやすさと一貫性を確保するために、コード アクセス セキュリティ チェックと同様の方法で共通言語ランタイムが承認を実行できる System.Security.Permissions.PrincipalPermission オブジェクトが提供されます。 PrincipalPermission クラスは、プリンシパルが一致する必要がある ID またはロールを表し、宣言型と命令型の両方のセキュリティ チェックと互換性があります。 また、プリンシパルの ID 情報に直接アクセスし、必要に応じてコードでロールと ID のチェックを実行することもできます。

.NET は、幅広いアプリケーションのニーズを満たすのに十分な柔軟性と拡張性を備えたロールベースのセキュリティ サポートを提供します。 COM+ 1.0 サービスなどの既存の認証インフラストラクチャとの相互運用や、カスタム認証システムの作成を選択できます。 ロールベースのセキュリティは、主にサーバーで処理される ASP.NET Web アプリケーションでの使用に特に適しています。 ただし、.NET ロールベースのセキュリティは、クライアントまたはサーバーで使用できます。

このセクションを読む前に、「 主要なセキュリティの概念」に記載されている資料を理解していることを確認してください。

こちらも参照ください