Esta página foi útil?
Seus comentários sobre este conteúdo são importantes. Queremos saber sua opinião.
Comentários adicionais?
1500 caracteres restantes
Método IsInRole (String)
Este artigo foi traduzido por máquina. Coloque o ponteiro do mouse sobre as frases do artigo para ver o texto original. Mais informações.
Tradução
Original

Método WindowsPrincipal.IsInRole (String)

Determina se o objeto atual pertence ao grupo de usuários do Windows com o nome especificado.

Namespace:  System.Security.Principal
Assembly:  mscorlib (em mscorlib.dll)

[SecurityPermissionAttribute(SecurityAction.Demand, ControlPrincipal = true)]
public override bool IsInRole(
	string role
)

Parâmetros

role
Tipo: System.String
O nome do grupo de usuários do Windows para o qual deseja verificar a participação.

Valor de retorno

Tipo: System.Boolean
true Se o objeto atual é um membro do grupo de usuários Windows especificado; Caso contrário, false.

Implementações

IPrincipal.IsInRole(String)

Ao testar as informações de função recém-criada, como, por exemplo, um novo usuário ou um novo grupo, é importante fazer logout e logon para forçar a propagação de informações de função dentro do domínio. Isso pode causar a IsInRole teste para retornar false. Este método não é suportado no Windows 98 ou Windows Millennium Edition.

Por motivos de desempenho, a IsInRole(SecurityIdentifier) sobrecarga é recomendada como a sobrecarga preferível para determinar a função do usuário.

ObservaçãoObservação

No Windows Vista, o controle de conta de usuário (UAC) determina os privilégios de um usuário. Se você for um membro do grupo Administradores internos, você recebe dois tokens de acesso de tempo de execução: um token de acesso de usuário padrão e um token de acesso de administrador. Por padrão, você está na função de usuário padrão. Quando você tenta executar uma tarefa que requer privilégios administrativos, você pode aumentar dinamicamente sua função usando a caixa de diálogo de consentimento. O código que executa o IsInRole método não exibe a caixa de diálogo de consentimento. O código retorna false, se você estiver na função de usuário padrão, mesmo se você estiver no grupo Administradores internos. Você pode elevar seus privilégios antes de executar o código clicando no ícone do aplicativo e indicando que você deseja executar como administrador.

Para funções internas, o role seqüência de caracteres deve estar no formato "BUILTIN\RoleNameHere". Por exemplo, para testar a participação na função de administrador do Windows, a seqüência de caracteres que representa a função deve ser "BUILTIN\Administrators". Observe que a barra invertida deve haver escape. A tabela a seguir lista as funções internas.

ObservaçãoObservação

A ortografia para as funções BUILTIN no formato string difere a ortografia, usada na WindowsBuiltInRole enumeração. Por exemplo, a ortografia de um administrador na enumeração é "Administrador", não "administradores". Ao usar essa sobrecarga, use a ortografia para a função da tabela a seguir.

Grupos locais internos

BUILTIN\Administrators

BUILTIN \ usuários

BUILTIN\Guests

Operadores de conta\interna

Operadores de BUILTIN\Server

Operadores de BUILTIN\Print

Operadores de BUILTIN\Backup

BUILTIN\Replicator

Para funções específicas de computador, o role seqüência de caracteres deve estar no formato "MachineName\RoleNameHere".

Para funções específicas do domínio, o role seqüência de caracteres deve estar no formato "DomainName\RoleNameHere"; Por exemplo, "SomeDomain\Domain Users".

ObservaçãoObservação

No.NET Framework versão 1.0, o role parâmetro distingue maiúsculas de minúsculas. No.NET Framework versão 1.1 e posterior, o role parâmetro distingue maiúsculas e minúsculas.

O exemplo de código a seguir demonstra o uso da WindowsPrincipal.IsInRole(String) método.

As seqüências de caracteres BUILTIN\Administrators e BUILTIN\Users são usados para determinar se o objeto atual é um administrador ou um usuário. No exemplo de código completo, consulte o WindowsPrincipal.IsInRole(Int32) método.


// 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"));


.NET Framework

Com suporte em: 4.5.2, 4.5.1, 4.5, 4, 3.5, 3.0, 2.0, 1.1, 1.0

.NET Framework Client Profile

Com suporte em: 4, 3.5 SP1

Windows Phone 8.1, Windows Phone 8, Windows 8.1, Windows Server 2012 R2, Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (Função Server Core sem suporte), Windows Server 2008 R2 (Função Server Core com suporte com o SP1 ou posterior, Itanium sem suporte)

O .NET Framework não oferece suporte a todas as versões de cada plataforma. Para obter uma lista das versões com suporte, consulte Requisitos do sistema do .NET Framework.

Contribuições da comunidade

ADICIONAR
A Microsoft está realizando uma pesquisa online para saber sua opinião sobre o site do MSDN. Se você optar por participar, a pesquisa online lhe será apresentada quando você sair do site do MSDN.

Deseja participar?
Mostrar:
© 2015 Microsoft