WindowsPrincipal Classe

Definição

Permite que o código verifique a associação de grupo do Windows de um usuário do Windows.Enables code to check the Windows group membership of a Windows user.

public ref class WindowsPrincipal : System::Security::Claims::ClaimsPrincipal
public ref class WindowsPrincipal : System::Security::Principal::IPrincipal
public class WindowsPrincipal : System.Security.Claims.ClaimsPrincipal
[System.Serializable]
public class WindowsPrincipal : System.Security.Principal.IPrincipal
[System.Serializable]
[System.Runtime.InteropServices.ComVisible(true)]
public class WindowsPrincipal : System.Security.Principal.IPrincipal
[System.Serializable]
[System.Runtime.InteropServices.ComVisible(true)]
public class WindowsPrincipal : System.Security.Claims.ClaimsPrincipal
type WindowsPrincipal = class
    inherit ClaimsPrincipal
[<System.Serializable>]
type WindowsPrincipal = class
    interface IPrincipal
[<System.Serializable>]
[<System.Runtime.InteropServices.ComVisible(true)>]
type WindowsPrincipal = class
    interface IPrincipal
[<System.Serializable>]
[<System.Runtime.InteropServices.ComVisible(true)>]
type WindowsPrincipal = class
    inherit ClaimsPrincipal
Public Class WindowsPrincipal
Inherits ClaimsPrincipal
Public Class WindowsPrincipal
Implements IPrincipal
Herança
WindowsPrincipal
Herança
WindowsPrincipal
Atributos
Implementações

Exemplos

O exemplo a seguir demonstra como usar as IsInRole sobrecargas de método.The following example demonstrates how to use the IsInRole method overloads. A WindowsBuiltInRole enumeração é usada como a origem para os RIDs (identificadores relativos) que identificam as funções internas.The WindowsBuiltInRole enumeration is used as the source for the relative identifiers (RIDs) that identify the built-in roles. Os RIDs são usados para determinar as funções da entidade de segurança atual.The RIDs are used to determine the roles of the current principal.

public:
   static void DemonstrateWindowsBuiltInRoleEnum()
   {
      AppDomain^ myDomain = Thread::GetDomain();

      myDomain->SetPrincipalPolicy( PrincipalPolicy::WindowsPrincipal );
      WindowsPrincipal^ myPrincipal = dynamic_cast<WindowsPrincipal^>(Thread::CurrentPrincipal);

      Console::WriteLine( "{0} belongs to: ", myPrincipal->Identity->Name );

      Array^ wbirFields = Enum::GetValues( WindowsBuiltInRole::typeid );

      for each ( Object^ roleName in wbirFields )
      {
         try
         {
            Console::WriteLine( "{0}? {1}.", roleName,
               myPrincipal->IsInRole(  *dynamic_cast<WindowsBuiltInRole^>(roleName) ) );
         }
         catch ( Exception^ ) 
         {
            Console::WriteLine( "{0}: Could not obtain role for this RID.",
               roleName );
         }
      }
   }
using System;
using System.Threading;
using System.Security.Permissions;
using System.Security.Principal;

class SecurityPrincipalDemo
{
    public static void DemonstrateWindowsBuiltInRoleEnum()
    {
        AppDomain myDomain = Thread.GetDomain();

        myDomain.SetPrincipalPolicy(PrincipalPolicy.WindowsPrincipal);
        WindowsPrincipal myPrincipal = (WindowsPrincipal)Thread.CurrentPrincipal;
        Console.WriteLine("{0} belongs to: ", myPrincipal.Identity.Name.ToString());
        Array wbirFields = Enum.GetValues(typeof(WindowsBuiltInRole));
        foreach (object roleName in wbirFields)
        {
            try
            {
                // Cast the role name to a RID represented by the WindowsBuildInRole value.
                Console.WriteLine("{0}? {1}.", roleName,
                    myPrincipal.IsInRole((WindowsBuiltInRole)roleName));
                Console.WriteLine("The RID for this role is: " + ((int)roleName).ToString());
            }
            catch (Exception)
            {
                Console.WriteLine("{0}: Could not obtain role for this RID.",
                    roleName);
            }
        }
        // Get the role using the string value of the role.
        Console.WriteLine("{0}? {1}.", "Administrators",
            myPrincipal.IsInRole("BUILTIN\\" + "Administrators"));
        Console.WriteLine("{0}? {1}.", "Users",
            myPrincipal.IsInRole("BUILTIN\\" + "Users"));
        // Get the role using the WindowsBuiltInRole enumeration value.
        Console.WriteLine("{0}? {1}.", WindowsBuiltInRole.Administrator,
           myPrincipal.IsInRole(WindowsBuiltInRole.Administrator));
        // Get the role using the WellKnownSidType.
        SecurityIdentifier sid = new SecurityIdentifier(WellKnownSidType.BuiltinAdministratorsSid, null);
        Console.WriteLine("WellKnownSidType BuiltinAdministratorsSid  {0}? {1}.", sid.Value, myPrincipal.IsInRole(sid));
    }

    public static void Main()
    {
        DemonstrateWindowsBuiltInRoleEnum();
    }
}
Imports System.Threading
Imports System.Security.Permissions
Imports System.Security.Principal

Class SecurityPrincipalDemo

    Public Shared Sub DemonstrateWindowsBuiltInRoleEnum()
        Dim myDomain As AppDomain = Thread.GetDomain()

        myDomain.SetPrincipalPolicy(PrincipalPolicy.WindowsPrincipal)
        Dim myPrincipal As WindowsPrincipal = CType(Thread.CurrentPrincipal, WindowsPrincipal)
        Console.WriteLine("{0} belongs to: ", myPrincipal.Identity.Name.ToString())
        Dim wbirFields As Array = [Enum].GetValues(GetType(WindowsBuiltInRole))
        Dim roleName As Object
        For Each roleName In wbirFields
            Try
                ' Cast the role name to a RID represented by the WindowsBuildInRole value.
                Console.WriteLine("{0}? {1}.", roleName, myPrincipal.IsInRole(CType(roleName, WindowsBuiltInRole)))
                Console.WriteLine("The RID for this role is: " + Fix(roleName).ToString())

            Catch
                Console.WriteLine("{0}: Could not obtain role for this RID.", roleName)
            End Try
        Next roleName
        ' Get the role using the string value of the role.
        Console.WriteLine("{0}? {1}.", "Administrators", myPrincipal.IsInRole("BUILTIN\" + "Administrators"))
        Console.WriteLine("{0}? {1}.", "Users", myPrincipal.IsInRole("BUILTIN\" + "Users"))
        ' Get the role using the WindowsBuiltInRole enumeration value.
        Console.WriteLine("{0}? {1}.", WindowsBuiltInRole.Administrator, myPrincipal.IsInRole(WindowsBuiltInRole.Administrator))
        ' Get the role using the WellKnownSidType.
        Dim sid As New SecurityIdentifier(WellKnownSidType.BuiltinAdministratorsSid, Nothing)
        Console.WriteLine("WellKnownSidType BuiltinAdministratorsSid  {0}? {1}.", sid.Value, myPrincipal.IsInRole(sid))

    End Sub

    Public Shared Sub Main()
        DemonstrateWindowsBuiltInRoleEnum()

    End Sub
End Class

Comentários

A WindowsPrincipal classe é usada principalmente para verificar a função de um usuário do Windows.The WindowsPrincipal class is primarily used to check the role of a Windows user. As WindowsPrincipal.IsInRole sobrecargas de método permitem verificar a função de usuário usando contextos de função diferentes.The WindowsPrincipal.IsInRole method overloads let you check the user role by using different role contexts.

Construtores

WindowsPrincipal(WindowsIdentity)

Inicializa uma nova instância da classe WindowsPrincipal usando o objeto WindowsIdentity especificado.Initializes a new instance of the WindowsPrincipal class by using the specified WindowsIdentity object.

Propriedades

Claims

Obtém uma coleção que contém todas as declarações de todas as identidades de declarações associadas a essa entidade de segurança de declarações.Gets a collection that contains all of the claims from all of the claims identities associated with this claims principal.

(Herdado de ClaimsPrincipal)
CustomSerializationData

Contém quaisquer dados adicionais fornecidos por um tipo derivado.Contains any additional data provided by a derived type. Normalmente definido ao chamar WriteTo(BinaryWriter, Byte[]).Typically set when calling WriteTo(BinaryWriter, Byte[]).

(Herdado de ClaimsPrincipal)
DeviceClaims

Obtém todas as declarações de dispositivo Windows dessa entidade de segurança.Gets all Windows device claims from this principal.

Identities

Obtém uma coleção que contém todas as identidades baseadas em declarações associadas a essa entidade de segurança de declarações.Gets a collection that contains all of the claims identities associated with this claims principal.

(Herdado de ClaimsPrincipal)
Identity

Obtém a identidade da entidade de segurança atual.Gets the identity of the current principal.

UserClaims

Obtém todas as declarações de usuário do Windows dessa entidade de segurança.Gets all Windows user claims from this principal.

Métodos

AddIdentities(IEnumerable<ClaimsIdentity>)

Adiciona as identidades baseadas em declarações especificadas a esta entidade de segurança de declarações.Adds the specified claims identities to this claims principal.

(Herdado de ClaimsPrincipal)
AddIdentity(ClaimsIdentity)

Adiciona a identidade baseada em declarações especificada a esta entidade de segurança de declarações.Adds the specified claims identity to this claims principal.

(Herdado de ClaimsPrincipal)
Clone()

Retorna uma cópia desta instância.Returns a copy of this instance.

(Herdado de ClaimsPrincipal)
CreateClaimsIdentity(BinaryReader)

Cria uma nova identidade baseada em declarações.Creates a new claims identity.

(Herdado de ClaimsPrincipal)
Equals(Object)

Determina se o objeto especificado é igual ao objeto atual.Determines whether the specified object is equal to the current object.

(Herdado de Object)
FindAll(Predicate<Claim>)

Recupera todas as declarações que correspondem ao predicado especificado.Retrieves all of the claims that are matched by the specified predicate.

(Herdado de ClaimsPrincipal)
FindAll(String)

Recupera todas as declarações que têm o tipo de declaração especificado.Retrieves all or the claims that have the specified claim type.

(Herdado de ClaimsPrincipal)
FindFirst(Predicate<Claim>)

Recupera a primeira declaração correspondente ao predicado especificado.Retrieves the first claim that is matched by the specified predicate.

(Herdado de ClaimsPrincipal)
FindFirst(String)

Recupera a primeira declaração com o tipo de declaração especificado.Retrieves the first claim with the specified claim type.

(Herdado de ClaimsPrincipal)
GetHashCode()

Serve como a função de hash padrão.Serves as the default hash function.

(Herdado de Object)
GetObjectData(SerializationInfo, StreamingContext)

Preenche o SerializationInfo com os dados necessários para serializar o objeto de ClaimsPrincipal atual.Populates the SerializationInfo with data needed to serialize the current ClaimsPrincipal object.

(Herdado de ClaimsPrincipal)
GetType()

Obtém o Type da instância atual.Gets the Type of the current instance.

(Herdado de Object)
HasClaim(Predicate<Claim>)

Determina se uma das identidades baseadas em declarações associadas a essa entidade de segurança de declarações contém uma declaração correspondente ao predicado especificado.Determines whether any of the claims identities associated with this claims principal contains a claim that is matched by the specified predicate.

(Herdado de ClaimsPrincipal)
HasClaim(String, String)

Determina se uma das identidades de declarações associadas a essa entidade de segurança de declarações contém uma declaração com o valor e o tipo de declaração especificados.Determines whether any of the claims identities associated with this claims principal contains a claim with the specified claim type and value.

(Herdado de ClaimsPrincipal)
IsInRole(Int32)

Determina se a entidade de segurança atual pertence ao grupo de usuários do Windows com o RID (identificador relativo) especificado.Determines whether the current principal belongs to the Windows user group with the specified relative identifier (RID).

IsInRole(SecurityIdentifier)

Determina se a entidade de segurança atual pertence ao grupo de usuários do Windows com o SID (identificador de segurança) especificado.Determines whether the current principal belongs to the Windows user group with the specified security identifier (SID).

IsInRole(String)

Determina se a entidade de segurança atual pertence ao grupo de usuários do Windows com o nome especificado.Determines whether the current principal belongs to the Windows user group with the specified name.

IsInRole(WindowsBuiltInRole)

Determina se a entidade atual pertence ao grupo de usuários do Windows com o WindowsBuiltInRole especificado.Determines whether the current principal belongs to the Windows user group with the specified WindowsBuiltInRole.

MemberwiseClone()

Cria uma cópia superficial do Object atual.Creates a shallow copy of the current Object.

(Herdado de Object)
ToString()

Retorna uma cadeia de caracteres que representa o objeto atual.Returns a string that represents the current object.

(Herdado de Object)
WriteTo(BinaryWriter)

Serializa usando um BinaryWriter.Serializes using a BinaryWriter.

(Herdado de ClaimsPrincipal)
WriteTo(BinaryWriter, Byte[])

Serializa usando um BinaryWriter.Serializes using a BinaryWriter.

(Herdado de ClaimsPrincipal)

Aplica-se a