ClientRolePrincipal クラス
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
ロール情報を含むクライアント アプリケーション サービスのセキュリティ情報を表します。
public ref class ClientRolePrincipal : System::Security::Principal::IPrincipal
public class ClientRolePrincipal : System.Security.Principal.IPrincipal
type ClientRolePrincipal = class
interface IPrincipal
Public Class ClientRolePrincipal
Implements IPrincipal
- 継承
-
ClientRolePrincipal
- 実装
例
次のコード例では、このクラスを使用して、ユーザーが "マネージャー" ロールに含まれている場合にのみボタンを表示する方法を示します。 この例では、初期 Visible プロパティ値が false
の managerOnlyButton
という名前の Button が必要です。
private void DisplayButtonForManagerRole()
{
try
{
ClientRolePrincipal rolePrincipal =
System.Threading.Thread.CurrentPrincipal
as ClientRolePrincipal;
if (rolePrincipal != null && rolePrincipal.IsInRole("manager"))
{
managerOnlyButton.Visible = true;
}
}
catch (System.Net.WebException)
{
MessageBox.Show("Unable to access the roles service.",
"Warning", MessageBoxButtons.OK, MessageBoxIcon.Warning);
}
}
Private Sub DisplayButtonForManagerRole()
Try
Dim rolePrincipal As ClientRolePrincipal = TryCast( _
System.Threading.Thread.CurrentPrincipal, ClientRolePrincipal)
If rolePrincipal IsNot Nothing And _
rolePrincipal.IsInRole("manager") Then
managerOnlyButton.Visible = True
End If
Catch ex As System.Net.WebException
MessageBox.Show("Unable to access the role service.", _
"Warning", MessageBoxButtons.OK, MessageBoxIcon.Warning)
End Try
End Sub
注釈
クライアント アプリケーション サービスでユーザーを検証すると、ClientFormsAuthenticationMembershipProvider または ClientWindowsAuthenticationMembershipProvider によって、static
Thread.CurrentPrincipal プロパティがこのクラスのインスタンスに設定されます。
ClientFormsAuthenticationMembershipProvider は、Identity プロパティを ClientFormsIdentity クラスの新しいインスタンスに初期化します。
ClientWindowsAuthenticationMembershipProvider は、static
WindowsIdentity.GetCurrent() メソッドによって返される WindowsIdentity オブジェクトに対して、Identity プロパティを初期化します。
通常、このクラスには直接アクセスしません。 通常は、static
CurrentPrincipal プロパティによって返される IPrincipal の IsInRole メソッドを呼び出します。 ただし、「例」セクションに示すように、CurrentPrincipal プロパティ値を ClientRolePrincipal 参照にキャストして、IsInRole メソッドを明示的に呼び出すことができます。
コンストラクター
ClientRolePrincipal(IIdentity) |
ClientRolePrincipal クラスの新しいインスタンスを初期化します。 |
プロパティ
Identity |
ClientRolePrincipalに関連付けられているセキュリティ ID を取得します。 |
メソッド
Equals(Object) |
指定したオブジェクトが現在のオブジェクトと等しいかどうかを判断します。 (継承元 Object) |
GetHashCode() |
既定のハッシュ関数として機能します。 (継承元 Object) |
GetType() |
現在のインスタンスの Type を取得します。 (継承元 Object) |
IsInRole(String) |
ClientRolePrincipal によって表されるユーザーが指定されたロールに含まれているかどうかを示す値を取得します。 |
MemberwiseClone() |
現在の Objectの簡易コピーを作成します。 (継承元 Object) |
ToString() |
現在のオブジェクトを表す文字列を返します。 (継承元 Object) |
適用対象
こちらもご覧ください
.NET