方法 : セキュリティ コンテキストを調べる
Windows Communication Foundation (WCF) サービスのプログラミングを行う場合、サービス セキュリティ コンテキストを使用すると、サービスの認証で使用されるクライアントの資格情報とクレームの詳細を確認できます。これは、ServiceSecurityContext クラスのプロパティを使用することで可能になります。
たとえば、PrimaryIdentity プロパティまたは WindowsIdentity プロパティを使用すると、現在のクライアントの ID を取得できます。クライアントが匿名であるかどうかを確認するには、IsAnonymous プロパティを使用します。
また、AuthorizationContext プロパティにあるクレームのコレクションを反復処理することによって、クライアントのためにどのようなクレームが作成されているのかを確認することもできます。
現在のセキュリティ コンテキストを取得するには
- 現在のセキュリティ コンテキストを取得するためには、静的プロパティ Current にアクセスします。参照から現在のコンテキストの任意のプロパティを調べます。
呼び出し元の ID を確認するには
- PrimaryIdentity プロパティおよび WindowsIdentity プロパティの値を表示します。
呼び出し元のクレームを解析するには
現在の AuthorizationContext クラスを返します。Current プロパティを使用して、現在のサービス セキュリティ コンテキストを返し、次に AuthorizationContext プロパティを使用して AuthorizationContext を返します。
AuthorizationContext クラスの ClaimSets プロパティによって返された ClaimSet オブジェクトのコレクションを解析します。
例
次の例では、現在のセキュリティ コンテキストの WindowsIdentity プロパティおよび PrimaryIdentity プロパティの値、ClaimType プロパティの値、クレームのリソース値、および現在のセキュリティ コンテキストのすべてのクレームの Right プロパティを表示します。
コードのコンパイル
コードでは、次の名前空間を使用します。