2009-03-30 23 views
2

WCFセキュリティでグリップを開始しました。サービスでユーザーの役割を一覧表示するにはどうすればよいですか?要求ユーザーの役割をWCFサービスに一覧表示するにはどうすればよいですか?

など。

// Could use declarative security here, i.e. using PrincipalPermission attribute 
public string MyService() 
{ 
    // Would like some code that does something like: 
    foreach(Role role in CurrentUser.Roles) 
    { 
    } 
} 

あなたはこのコードを使用することができますWindowsグループを扱う場合

答えて

2

ありがとう:

foreach (IdentityReference idRef in WindowsIdentity.GetCurrent().Groups) 
{ 
    Console.WriteLine(idRef.Translate(typeof(NTAccount)).Value); 
} 
2

.NETの役割ベースのセキュリティインフラストラクチャ(すなわちIPrincipalを)の全てを取得することはできません。ユーザーの役割ユーザーが特定の役割にあるかどうかは、IPrincipal.IsInRole( "role-name")を介してのみ照会できます。

ただし、特定の認証/認可設定に縛られても構わない場合は、解決策があります。たとえば、別のポスターは、Windows認証を使用するときにユーザーの役割を取得する方法を指摘しました。

関連する問題