ClientRolePrincipal Třída

Definice

Představuje informace o zabezpečení pro klientské aplikační služby, které zahrnují informace o rolích.

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
Dědičnost
ClientRolePrincipal
Implementuje

Příklady

Následující příklad kódu ukazuje, jak použít tuto třídu k zobrazení tlačítka pouze v případě, že uživatel je v roli "správce". Tento příklad vyžaduje pojmenovaný ButtonmanagerOnlyButton s počáteční Visible hodnotou falsevlastnosti .

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

Poznámky

Při ověřování uživatele v klientských aplikačních službách nastaví ClientFormsAuthenticationMembershipProviderstaticThread.CurrentPrincipal nebo ClientWindowsAuthenticationMembershipProvider vlastnost na instanci této třídy. Inicializuje ClientFormsAuthenticationMembershipProviderIdentity vlastnost na novou instanci ClientFormsIdentity třídy . Inicializuje ClientWindowsAuthenticationMembershipProviderIdentity vlastnost objektu WindowsIdentity vráceného metodou staticWindowsIdentity.GetCurrent() .

K této třídě obvykle nebudete přistupovat přímo. Za normálních okolností budete volat metodu IsInRoleIPrincipal vrácenou staticCurrentPrincipal vlastností . Můžete však přetypovat CurrentPrincipal hodnotu vlastnosti na ClientRolePrincipal odkaz a volat metodu IsInRole explicitně, jak je znázorněno v části Příklad.

Konstruktory

ClientRolePrincipal(IIdentity)

Inicializuje novou instanci ClientRolePrincipal třídy .

Vlastnosti

Identity

Získá identitu zabezpečení přidruženou k .ClientRolePrincipal

Metody

Equals(Object)

Určí, zda se zadaný objekt rovná aktuálnímu objektu.

(Zděděno od Object)
GetHashCode()

Slouží jako výchozí hashovací funkce.

(Zděděno od Object)
GetType()

Type Získá z aktuální instance.

(Zděděno od Object)
IsInRole(String)

Získá hodnotu označující, zda je uživatel reprezentovaný objektem ClientRolePrincipal v zadané roli.

MemberwiseClone()

Vytvoří mělkou kopii aktuálního Objectsouboru .

(Zděděno od Object)
ToString()

Vrátí řetězec, který představuje aktuální objekt.

(Zděděno od Object)

Platí pro

Viz také