Compartilhar via


Método IX509PrivateKey::Import (certenroll.h)

O método Import importa uma chave privada existente para um contêiner de chaves dentro de um provedor criptográfico.

Sintaxe

HRESULT Import(
  [in] BSTR         strExportType,
  [in] BSTR         strEncodedKey,
  [in] EncodingType Encoding
);

Parâmetros

[in] strExportType

Se a chave foi criada usando um KSP CNG (Provedor de Armazenamento de Chaves), o método Import passa esse argumento para o parâmetro pszProperty da função NCryptSetProperty . Ou seja, o valor especificado será usado como o nome de uma propriedade a ser definida na chave importada.

Se a chave foi criada usando um CSP de CryptoAPI (Provedor de Serviços Criptográficos), esse argumento especifica como a chave privada deve ser importada. Esse pode ser o valor a seguir.

Valor Significado
BCRYPT_PRIVATE_KEY_BLOB
Importa toda a chave privada.

[in] strEncodedKey

Uma variável BSTR que contém a chave a ser importada.

[in] Encoding

Um valor de enumeração EncodingType que especifica o tipo de codificação Unicode a ser aplicada à cadeia de caracteres contida no parâmetro strEncodedKey . O valor padrão é XCN_CRYPT_STRING_BASE64.

Retornar valor

Se a função for bem-sucedida, a função retornará S_OK.

Se a função falhar, ela retornará um valor HRESULT que indica o erro. Os possíveis valores incluem, mas sem limitação, aqueles na tabela a seguir. Para obter uma lista de códigos de erro comuns, consulte Valores HRESULT comuns.

Código de retorno Descrição
HRESULT_FROM_WIN32(ERROR_FILE_READ_ONLY)
O contêiner de chaves já está aberto. Você poderá receber esse erro se já tiver chamado Abrir ou Criar.
HRESULT_FROM_WIN32(ERROR_CALL_NOT_IMPLEMENTED)
A chave foi criada por um CSP de CryptoAPI e você especificou um valor diferente de BCRYPT_PRIVATE_KEY_BLOB para o parâmetro strExportType .

Comentários

A função Import pressupõe automaticamente que você está tentando importar uma chave KSP CNG se você especificar um valor diferente de BCRYPT_PRIVATE_KEY_BLOB para o parâmetro strExportType e você não definir nenhuma das seguintes propriedades:

Requisitos

Requisito Valor
Cliente mínimo com suporte Windows Vista [somente aplicativos da área de trabalho]
Servidor mínimo com suporte Windows Server 2008 [somente aplicativos da área de trabalho]
Plataforma de Destino Windows
Cabeçalho certenroll.h
DLL CertEnroll.dll

Confira também

IX509PrivateKey