Sdílet prostřednictvím


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í ukázkový kód ukazuje, jak použít tuto třídu k zobrazení tlačítka pouze v případě, že je uživatel v roli "manažer". 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 ClientFormsAuthenticationMembershipProvider nastaví staticThread.CurrentPrincipal vlastnost nebo ClientWindowsAuthenticationMembershipProvider 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 IsInRole metodu IPrincipal vrácenou staticCurrentPrincipal vlastností. Můžete však přetypovat CurrentPrincipal hodnotu vlastnosti na ClientRolePrincipal odkaz a explicitně volat metodu IsInRole , 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()

Získá aktuální Type instanci.

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

Získá hodnotu označující, zda uživatel reprezentovaný ClientRolePrincipal je 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é