Objetos PrincipalPermission

O modelo de segurança baseada em função aceita um objeto de permissão como os objetos de permissão encontrados no modelo de segurança de acesso do código.Este objeto, PrincipalPermission, representa a identidade e função que uma determinada classe de entidade de segurança deve ter para executar. Você pode usar o PrincipalPermission classe de segurança imperativas e declarativas verifica.

Para implementar o PrincipalPermission imperativa de classe, criar uma nova instância da classe e inicializá-lo com o nome e a função que você deseja que os usuários precisam acessar seu código.Por exemplo, o código a seguir inicializa uma nova instância desse objeto com uma identidade de "Joan" e uma função do "Teller".

String id = "Joan";
String role = "Teller";
PrincipalPermission principalPerm = new PrincipalPermission(id, role);
Dim id As String = "Joan"
Dim role As String = "Teller"
Dim principalPerm As New PrincipalPermission(id, role)

Você pode criar uma permissão semelhante declarativamente usando a PrincipalPermissionAttribute classe. O código a seguir inicializa declarativamente a identidade de "Joan" e a função para "Teller".

[PrincipalPermissionAttribute(SecurityAction.Demand, Name = "Joan", Role = "Teller")]
<PrincipalPermissionAttribute(SecurityAction.Demand, Name := "Joan", Role := "Teller")>

Quando a verificação de segurança é executada, a identidade especificada e a função devem corresponder para a verificação seja bem-sucedida.No entanto, quando você criar o PrincipalPermission objeto, você pode passar uma cadeia de caracteres de identidade nulo para indicar que a identidade da entidade de segurança pode ser qualquer coisa.Da mesma forma, passar uma seqüência de função nulo indica que entidade de segurança de segurança pode ser um membro de qualquer função (ou nenhuma das funções em todos).Para a segurança declarativa, o mesmo resultado pode ser atingido omitindo ou propriedade.Por exemplo, o código a seguir usa o PrincipalPermissionAttribute para declarativamente indicam que uma entidade de segurança pode ter qualquer nome, mas deve ter a função de caixa.

[PrincipalPermissionAttribute(SecurityAction.Demand, Role = "Teller")]
<PrincipalPermissionAttribute(SecurityAction.Demand, Role := "Teller")>

Consulte também

Referência

PrincipalPermission

PrincipalPermissionAttribute

Outros recursos

Segurança baseada em função

Conceitos chaves sobre segurança