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 staticThread.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 staticWindowsIdentity.GetCurrent().
Normalmente, você não acessará essa classe diretamente. Normalmente, você chamará o método IsInRole do IPrincipal retornado pela propriedade staticCurrentPrincipal. 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) |