ClientRolePrincipal Klasse
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Stellt Sicherheitsinformationen für Clientanwendungsdienste dar, die Rolleninformationen enthalten.
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
- Vererbung
-
ClientRolePrincipal
- Implementiert
Beispiele
Im folgenden Beispielcode wird veranschaulicht, wie diese Klasse verwendet wird, um eine Schaltfläche nur anzuzeigen, wenn sich der Benutzer in der Rolle "Manager" befindet. In diesem Beispiel ist ein Button namens managerOnlyButton
mit einem anfänglichen Visible Eigenschaftswert von false
erforderlich.
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
Hinweise
Wenn Sie einen Benutzer in Clientanwendungsdiensten überprüfen, legt der ClientFormsAuthenticationMembershipProvider oder die ClientWindowsAuthenticationMembershipProvider die eigenschaft static
Thread.CurrentPrincipal auf eine Instanz dieser Klasse fest. Die ClientFormsAuthenticationMembershipProvider initialisiert die Identity-Eigenschaft in eine neue Instanz der ClientFormsIdentity Klasse. Die ClientWindowsAuthenticationMembershipProvider initialisiert die Identity-Eigenschaft auf das WindowsIdentity Objekt, das von der static
WindowsIdentity.GetCurrent()-Methode zurückgegeben wird.
Normalerweise greifen Sie nicht direkt auf diese Klasse zu. Normalerweise rufen Sie die IsInRole-Methode der von der static
CurrentPrincipal Eigenschaft zurückgegebenen IPrincipal auf. Sie können den wert der CurrentPrincipal Eigenschaft jedoch in einen ClientRolePrincipal Verweis umwandeln, um die IsInRole-Methode explizit aufzurufen, wie im Beispielabschnitt gezeigt.
Konstruktoren
ClientRolePrincipal(IIdentity) |
Initialisiert eine neue Instanz der ClientRolePrincipal Klasse. |
Eigenschaften
Identity |
Ruft die Sicherheitsidentität ab, die der ClientRolePrincipalzugeordnet ist. |
Methoden
Equals(Object) |
Bestimmt, ob das angegebene Objekt dem aktuellen Objekt entspricht. (Geerbt von Object) |
GetHashCode() |
Dient als Standardhashfunktion. (Geerbt von Object) |
GetType() |
Ruft die Type der aktuellen Instanz ab. (Geerbt von Object) |
IsInRole(String) |
Ruft einen Wert ab, der angibt, ob der durch die ClientRolePrincipal dargestellte Benutzer in der angegebenen Rolle ist. |
MemberwiseClone() |
Erstellt eine flache Kopie der aktuellen Object. (Geerbt von Object) |
ToString() |
Gibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt. (Geerbt von Object) |