CngKey.Open Método
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.
Cria uma instância de um CngKey objeto que representa uma chave existente.
Sobrecargas
| Nome | Description |
|---|---|
| Open(String) |
Cria uma instância de um CngKey objeto que representa uma chave nomeada existente. |
| Open(SafeNCryptKeyHandle, CngKeyHandleOpenOptions) |
Cria uma instância de um CngKey objeto usando um identificador para uma chave existente. |
| Open(String, CngProvider) |
Cria uma instância de um CngKey objeto que representa uma chave nomeada existente, usando o KSP (provedor de armazenamento de chaves) especificado. |
| Open(String, CngProvider, CngKeyOpenOptions) |
Cria uma instância de um CngKey objeto que representa uma chave nomeada existente, usando o KSP (provedor de armazenamento de chaves) especificado e as opções de abertura de chave. |
Open(String)
Cria uma instância de um CngKey objeto que representa uma chave nomeada existente.
public:
static System::Security::Cryptography::CngKey ^ Open(System::String ^ keyName);
public static System.Security.Cryptography.CngKey Open(string keyName);
static member Open : string -> System.Security.Cryptography.CngKey
Public Shared Function Open (keyName As String) As CngKey
Parâmetros
- keyName
- String
O nome da chave.
Retornos
Uma chave existente.
Exceções
keyName é null.
Não há suporte para CNG (Cryptography Next Generation) nesse sistema.
Todos os outros erros.
Comentários
Essa sobrecarga usa os seguintes padrões:
KSP (provedor de armazenamento de chaves): MicrosoftSoftwareKeyStorageProvider. Use a Open(String, CngProvider) sobrecarga se quiser especificar outro KSP.
Opções de abertura de chave: CngKeyOpenOptions.None.
Aplica-se a
Open(SafeNCryptKeyHandle, CngKeyHandleOpenOptions)
Cria uma instância de um CngKey objeto usando um identificador para uma chave existente.
public:
static System::Security::Cryptography::CngKey ^ Open(Microsoft::Win32::SafeHandles::SafeNCryptKeyHandle ^ keyHandle, System::Security::Cryptography::CngKeyHandleOpenOptions keyHandleOpenOptions);
[System.Security.SecurityCritical]
public static System.Security.Cryptography.CngKey Open(Microsoft.Win32.SafeHandles.SafeNCryptKeyHandle keyHandle, System.Security.Cryptography.CngKeyHandleOpenOptions keyHandleOpenOptions);
[<System.Security.SecurityCritical>]
static member Open : Microsoft.Win32.SafeHandles.SafeNCryptKeyHandle * System.Security.Cryptography.CngKeyHandleOpenOptions -> System.Security.Cryptography.CngKey
Public Shared Function Open (keyHandle As SafeNCryptKeyHandle, keyHandleOpenOptions As CngKeyHandleOpenOptions) As CngKey
Parâmetros
- keyHandle
- SafeNCryptKeyHandle
Um identificador para uma chave existente.
- keyHandleOpenOptions
- CngKeyHandleOpenOptions
Um dos valores de enumeração que indica se keyHandle representa uma chave efêmera ou uma chave nomeada.
Retornos
Uma chave existente.
- Atributos
Exceções
keyHandle é null.
keyHandle é inválido ou malformado ou já está fechado. Essa exceção também será gerada se a chave for uma chave efêmera criada pelo CLR (Common Language Runtime), mas o EphemeralKey valor não for especificado.
Não há suporte para CNG (Cryptography Next Generation) nesse sistema.
Todos os outros erros.
Comentários
Essa sobrecarga permite que os usuários avançados usem as classes CNG mesmo se dependerem da invocação da plataforma ou da funcionalidade de interoperabilidade gerenciada do C++. Por exemplo, se você tiver uma biblioteca nativa que retorna a chave como um NCRYPT_KEY_HANDLE, essa sobrecarga permitirá que você crie um wrapper gerenciado ao redor da chave e use as classes CNG para manipulá-la.
Ao abrir uma chave usando seu identificador, não é possível determinar o estado efêmero da chave e especifique-a por conta própria. Várias propriedades da CngKey classe dependem desse valor para estarem corretas. Portanto, certifique-se de passar o valor de sinalizador correto para os Open métodos.
Aplica-se a
Open(String, CngProvider)
Cria uma instância de um CngKey objeto que representa uma chave nomeada existente, usando o KSP (provedor de armazenamento de chaves) especificado.
public:
static System::Security::Cryptography::CngKey ^ Open(System::String ^ keyName, System::Security::Cryptography::CngProvider ^ provider);
public static System.Security.Cryptography.CngKey Open(string keyName, System.Security.Cryptography.CngProvider provider);
static member Open : string * System.Security.Cryptography.CngProvider -> System.Security.Cryptography.CngKey
Public Shared Function Open (keyName As String, provider As CngProvider) As CngKey
Parâmetros
- keyName
- String
O nome da chave.
- provider
- CngProvider
O KSP que contém a chave.
Retornos
Uma chave existente.
Exceções
keyName ou provider é null.
Não há suporte para CNG (Cryptography Next Generation) nesse sistema.
Todos os outros erros.
Comentários
Ao contrário da sobrecarga do Open(String) método, essa sobrecarga permite que você especifique o provedor. Além disso, um valor padrão CngKeyOpenOptions é None criado e associado à chave.
Aplica-se a
Open(String, CngProvider, CngKeyOpenOptions)
Cria uma instância de um CngKey objeto que representa uma chave nomeada existente, usando o KSP (provedor de armazenamento de chaves) especificado e as opções de abertura de chave.
public:
static System::Security::Cryptography::CngKey ^ Open(System::String ^ keyName, System::Security::Cryptography::CngProvider ^ provider, System::Security::Cryptography::CngKeyOpenOptions openOptions);
[System.Security.SecurityCritical]
public static System.Security.Cryptography.CngKey Open(string keyName, System.Security.Cryptography.CngProvider provider, System.Security.Cryptography.CngKeyOpenOptions openOptions);
public static System.Security.Cryptography.CngKey Open(string keyName, System.Security.Cryptography.CngProvider provider, System.Security.Cryptography.CngKeyOpenOptions openOptions);
[<System.Security.SecurityCritical>]
static member Open : string * System.Security.Cryptography.CngProvider * System.Security.Cryptography.CngKeyOpenOptions -> System.Security.Cryptography.CngKey
static member Open : string * System.Security.Cryptography.CngProvider * System.Security.Cryptography.CngKeyOpenOptions -> System.Security.Cryptography.CngKey
Public Shared Function Open (keyName As String, provider As CngProvider, openOptions As CngKeyOpenOptions) As CngKey
Parâmetros
- keyName
- String
O nome da chave.
- provider
- CngProvider
O KSP que contém a chave.
- openOptions
- CngKeyOpenOptions
Uma combinação bit a bit dos valores de enumeração que especificam opções para abrir a chave, como de onde a chave é aberta (armazenamento do computador ou do usuário) e se deve suprimir a solicitação de interface do usuário.
Retornos
Uma chave existente.
- Atributos
Exceções
keyName ou provider é null.
Não há suporte para CNG (Cryptography Next Generation) nesse sistema.
Todos os outros erros.
Comentários
Ao contrário da sobrecarga do Open(String) método, essa sobrecarga permite que você especifique as opções de abertura do provedor e da chave.