ClientRolePrincipal Classe
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Representa informações de segurança para serviços de aplicativo cliente, o que inclui informações de função.
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
- Herança
-
ClientRolePrincipal
- Implementações
Exemplos
O código de exemplo a seguir demonstra como usar essa classe para exibir um botão somente quando o usuário estiver na função "gerente". Este exemplo requer um Button nomeado managerOnlyButton
com um valor de propriedade Visible inicial de false
.
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
Comentários
Quando você valida um usuário nos serviços de aplicativo cliente, o ClientFormsAuthenticationMembershipProvider ou o ClientWindowsAuthenticationMembershipProvider define a propriedade static
Thread.CurrentPrincipal para uma instância dessa classe. O ClientFormsAuthenticationMembershipProvider inicializa a propriedade Identity para uma nova instância da classe ClientFormsIdentity. O ClientWindowsAuthenticationMembershipProvider inicializa a propriedade Identity para o objeto WindowsIdentity retornado pelo método static
WindowsIdentity.GetCurrent().
Normalmente, você não acessará essa classe diretamente. Normalmente, você chamará o método IsInRole do IPrincipal retornado pela propriedade static
CurrentPrincipal. No entanto, você pode converter o valor da propriedade CurrentPrincipal em uma referência ClientRolePrincipal para chamar o método IsInRole explicitamente, conforme demonstrado na seção Exemplo.
Construtores
ClientRolePrincipal(IIdentity) |
Inicializa uma nova instância da classe ClientRolePrincipal. |
Propriedades
Identity |
Obtém a identidade de segurança associada ao ClientRolePrincipal. |
Métodos
Equals(Object) |
Determina se o objeto especificado é igual ao objeto atual. (Herdado de Object) |
GetHashCode() |
Serve como a função de hash padrão. (Herdado de Object) |
GetType() |
Obtém o Type da instância atual. (Herdado de Object) |
IsInRole(String) |
Obtém um valor que indica se o usuário representado pelo ClientRolePrincipal está na função especificada. |
MemberwiseClone() |
Cria uma cópia superficial do Objectatual. (Herdado de Object) |
ToString() |
Retorna uma cadeia de caracteres que representa o objeto atual. (Herdado de Object) |