Aracılığıyla paylaş


ClientRolePrincipal Sınıf

Tanım

Rol bilgilerini içeren istemci uygulama hizmetleri için güvenlik bilgilerini temsil eder.

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
Devralma
ClientRolePrincipal
Uygulamalar

Örnekler

Aşağıdaki örnek kod, bu sınıfın yalnızca kullanıcı "yönetici" rolünde olduğunda bir düğme görüntülemek için nasıl kullanılacağını gösterir. Bu örnek, ilk Visible özellik değerine falsesahip bir adlandırılmış managerOnlyButton gerektirirButton.

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

Açıklamalar

İstemci uygulama hizmetlerinde bir kullanıcıyı doğruladığınızda veya ClientFormsAuthenticationMembershipProviderClientWindowsAuthenticationMembershipProvider özelliği bu sınıfın staticThread.CurrentPrincipal bir örneğine ayarlar. , ClientFormsAuthenticationMembershipProvider özelliğini sınıfın IdentityClientFormsIdentity yeni bir örneğine başlatır. yöntemi ClientWindowsAuthenticationMembershipProvider tarafından staticWindowsIdentity.GetCurrent() döndürülen nesneye WindowsIdentity özelliğini başlatırIdentity.

Normalde bu sınıfa doğrudan erişmezsiniz. Normalde, özelliği tarafından staticCurrentPrincipal döndürülen yöntemini IPrincipal çağırırsınızIsInRole. Ancak, Örnek bölümünde gösterildiği gibi yöntemi açıkça çağırmak IsInRole için özellik değerini bir ClientRolePrincipal başvuruya dönüştürebilirsinizCurrentPrincipal.

Oluşturucular

Name Description
ClientRolePrincipal(IIdentity)

ClientRolePrincipal sınıfının yeni bir örneğini başlatır.

Özellikler

Name Description
Identity

ile ClientRolePrincipalilişkili güvenlik kimliğini alır.

Yöntemler

Name Description
Equals(Object)

Belirtilen nesnenin geçerli nesneye eşit olup olmadığını belirler.

(Devralındığı yer: Object)
GetHashCode()

Varsayılan karma işlevi işlevi görür.

(Devralındığı yer: Object)
GetType()

Geçerli örneğin Type alır.

(Devralındığı yer: Object)
IsInRole(String)

tarafından ClientRolePrincipal temsil edilen kullanıcının belirtilen rolde olup olmadığını gösteren bir değer alır.

MemberwiseClone()

Geçerli Objectbasit bir kopyasını oluşturur.

(Devralındığı yer: Object)
ToString()

Geçerli nesneyi temsil eden bir dize döndürür.

(Devralındığı yer: Object)

Şunlara uygulanır

Ayrıca bkz.