Freigeben über


ClientRolePrincipal Klasse

Definition

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 falseerforderlich.

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 staticThread.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 staticWindowsIdentity.GetCurrent()-Methode zurückgegeben wird.

Normalerweise greifen Sie nicht direkt auf diese Klasse zu. Normalerweise rufen Sie die IsInRole-Methode der von der staticCurrentPrincipal 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)

Gilt für:

Weitere Informationen