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ğeri falseolan managerOnlyButton adlı bir Button gerektirir.

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 ClientWindowsAuthenticationMembershipProviderstaticThread.CurrentPrincipal özelliğini bu sınıfın bir örneğine ayarlar. ClientFormsAuthenticationMembershipProvider, Identity özelliğini ClientFormsIdentity sınıfının yeni bir örneğine başlatır. ClientWindowsAuthenticationMembershipProvider, staticWindowsIdentity.GetCurrent() yöntemi tarafından döndürülen WindowsIdentity nesnesine Identity özelliğini başlatır.

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

Oluşturucular

ClientRolePrincipal(IIdentity)

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

Özellikler

Identity

ClientRolePrincipalile iliş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()

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

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

ClientRolePrincipal tarafından temsil edilen kullanıcının belirtilen rolde olup olmadığını belirten 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.