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, yalnızca kullanıcı "yönetici" rolünde olduğunda düğme görüntülemek için bu sınıfın nasıl kullanılacağını gösterir. Bu örnek, ilk Visible özellik değeri falseolan bir adlandırılmış managerOnlyButton değer 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, ClientFormsAuthenticationMembershipProvider veya ClientWindowsAuthenticationMembershipProvider özelliği bu sınıfın staticThread.CurrentPrincipal bir örneğine ayarlar. , ClientFormsAuthenticationMembershipProvider özelliğini sınıfın Identity yeni bir örneğine ClientFormsIdentity başlatır. yöntemi ClientWindowsAuthenticationMembershipProvider tarafından staticWindowsIdentity.GetCurrent() döndürülen nesneye WindowsIdentity özelliğini başlatırIdentity.

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

Oluşturucular

ClientRolePrincipal(IIdentity)

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

Özellikler

Identity

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

Yöntemler

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()

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

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

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

MemberwiseClone()

Geçerli Objectöğesinin sığ bir kopyasını oluşturur.

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

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

(Devralındığı yer: Object)

Şunlara uygulanır

Ayrıca bkz.