Partilhar via


KeyContainerPermissionFlags Enumeração

Definição

Cuidado

Code Access Security is not supported or honored by the runtime.

Especifica o tipo de acesso do contêiner de chave permitido.

Essa enumeração dá suporte a uma combinação bit a bit dos valores de membro.

public enum class KeyContainerPermissionFlags
[System.Obsolete("Code Access Security is not supported or honored by the runtime.", DiagnosticId="SYSLIB0003", UrlFormat="https://aka.ms/dotnet-warnings/{0}")]
public enum KeyContainerPermissionFlags
[System.Flags]
[System.Runtime.InteropServices.ComVisible(true)]
[System.Serializable]
public enum KeyContainerPermissionFlags
public enum KeyContainerPermissionFlags
[<System.Obsolete("Code Access Security is not supported or honored by the runtime.", DiagnosticId="SYSLIB0003", UrlFormat="https://aka.ms/dotnet-warnings/{0}")>]
type KeyContainerPermissionFlags = 
[<System.Flags>]
[<System.Runtime.InteropServices.ComVisible(true)>]
[<System.Serializable>]
type KeyContainerPermissionFlags = 
type KeyContainerPermissionFlags = 
Public Enum KeyContainerPermissionFlags
Herança
KeyContainerPermissionFlags
Atributos

Campos

AllFlags 13111

Crie, descriptografe, exclua e abra um contêiner de chave; exporte e importe uma chave; assine arquivos usando uma chave e exiba e altere a lista de controle de acesso de um contêiner de chave.

ChangeAcl 8192

Altere a ACL (lista de controle de acesso) de um contêiner de chave.

Create 1

Crie um contêiner de chave.

A criação de um contêiner de chave também cria um arquivo no disco. É muito importante que qualquer contêiner de chave criado seja removido quando não estiver mais em uso.

Decrypt 512

Descriptografe um contêiner de chave.

A descriptografia é uma operação privilegiada porque utiliza a chave privada.

Delete 4

Exclua um contêiner de chave.

A exclusão de um contêiner de chave pode constituir um ataque de negação de serviço porque impede o uso de arquivos criptografados ou assinados com a chave. Portanto, a exclusão é uma operação privilegiada.

Export 32

Exporte uma chave de um contêiner de chave.

A capacidade de exportar uma chave é potencialmente prejudicial porque remove a exclusividade da chave.

Import 16

Importe uma chave para um contêiner de chave.

A capacidade de importar uma chave pode ser tão prejudicial quanto a capacidade de excluir um contêiner porque importar uma chave para um contêiner de chave denominado substitui a chave existente.

NoFlags 0

Nenhum acesso a um contêiner de chave.

Open 2

Abra um contêiner de chave e use a chave pública.

Open não dá permissão para assinar ou descriptografar arquivos usando a chave privada, mas permite que um usuário verifique as assinaturas do arquivo e criptografe arquivos. Somente o proprietário da chave é capaz de descriptografar esses arquivos usando a chave privada.

Sign 256

Assina um arquivo usando uma chave.

A capacidade de assinar um arquivo é potencialmente prejudicial porque pode permitir que um usuário assine um arquivo usando a chave de outro usuário.

ViewAcl 4096

Exiba a ACL (lista de controle de acesso) de um contêiner de chave.

Exemplos

O exemplo a seguir mostra o uso da KeyContainerPermissionFlags enumeração .

// Create a KeyContainerPermission with the right to open the key container.
KeyContainerPermission ^ keyContainerPerm = gcnew KeyContainerPermission( KeyContainerPermissionFlags::Open );
// Create a KeyContainerPermission with the right 
// to open the key container.
KeyContainerPermission keyContainerPerm = new
     KeyContainerPermission(KeyContainerPermissionFlags.Open);
' Create a KeyContainerPermission with the right to open the key container.
Dim keyContainerPerm As New KeyContainerPermission(KeyContainerPermissionFlags.Open)

Comentários

Cuidado

O CAS (Segurança de Acesso do Código) foi preterido em todas as versões do .NET Framework e do .NET. As versões recentes do .NET não aceitam anotações de CAS e produzem erros caso as APIs relacionadas ao CAS sejam usadas. Os desenvolvedores devem buscar meios alternativos de realizar tarefas de segurança.

Essa enumeração é usada por membros da KeyContainerPermissionAccessEntry classe .

Cuidado

Muitos desses sinalizadores podem ter efeitos poderosos e devem ser concedidos apenas a códigos altamente confiáveis.

Os sinalizadores mais poderosos são Create, Delete, Import, Export, Sign, Decrypte AllFlags. Para ameaças específicas que o uso desses sinalizadores pode apresentar, consulte as descrições do membro.

Aplica-se a