Compartilhar via


CryptographyClient Classe

Executa operações criptográficas usando chaves de Key Vault do Azure.

Esse cliente executará operações localmente quando for intializado com o material de chave necessário ou for capaz de obter esse material de Key Vault. Quando o material de chave necessário não está disponível, as operações criptográficas são executadas pelo serviço Key Vault.

Herança
azure.keyvault.keys._shared.client_base.KeyVaultClientBase
CryptographyClient

Construtor

CryptographyClient(key: KeyVaultKey | str, credential: TokenCredential, **kwargs)

Parâmetros

key
KeyVaultKey
Obrigatório

KeyVaultKey Uma instância conforme retornado por get_keyou uma cadeia de caracteres. Se uma cadeia de caracteres, o valor deverá ser o identificador de uma chave de Key Vault do Azure. É recomendável incluir uma versão.

credential
TokenCredential
Obrigatório

Um objeto que pode fornecer um token de acesso para o cofre, como uma credencial de identity

api_version
ApiVersion

Versão da API de serviço a ser usada. O padrão é o mais recente.

verify_challenge_resource
bool

Se o recurso de desafio de autenticação deve ser verificado corresponde ao Key Vault ou ao domínio HSM Gerenciado. O padrão é True.

Métodos

close

Feche soquetes abertos pelo cliente.

Chamar esse método é desnecessário ao usar o cliente como um gerenciador de contexto.

decrypt

Descriptografe um único bloco de dados criptografados usando a chave do cliente.

requer a permissão de chaves/descriptografar. Esse método descriptografa apenas um único bloco de dados, cujo tamanho depende do algoritmo de chave e criptografia.

encrypt

Criptografar bytes usando a chave do cliente.

requer a permissão de chaves/criptografar. Esse método criptografa apenas um único bloco de dados, cujo tamanho depende do algoritmo de chave e criptografia.

from_jwk

Cria um cliente que só pode executar operações criptográficas localmente.

send_request

Executa uma solicitação de rede usando o pipeline existente do cliente.

A URL de solicitação pode ser relativa à URL do cofre. A versão da API de serviço usada para a solicitação é a mesma do cliente, a menos que especificado de outra forma. Esse método não será gerado se a resposta for um erro; para gerar uma exceção, chame raise_for_status() no objeto de resposta retornado. Para obter mais informações sobre como enviar solicitações personalizadas com esse método, consulte https://aka.ms/azsdk/dpcodegen/python/send_request.

sign

Crie uma assinatura de um resumo usando a chave do cliente.

requer a permissão de chaves/assinar.

unwrap_key

Desembrulhar uma chave encapsulada anteriormente com a chave do cliente.

Requer a permissão keys/unwrapKey.

verify

Verifique uma assinatura usando a chave do cliente.

requer a permissão de chaves/verificar.

wrap_key

Encapsule uma chave com a chave do cliente.

Requer a permissão keys/wrapKey.

close

Feche soquetes abertos pelo cliente.

Chamar esse método é desnecessário ao usar o cliente como um gerenciador de contexto.

close() -> None

decrypt

Descriptografe um único bloco de dados criptografados usando a chave do cliente.

requer a permissão de chaves/descriptografar. Esse método descriptografa apenas um único bloco de dados, cujo tamanho depende do algoritmo de chave e criptografia.

decrypt(algorithm: EncryptionAlgorithm, ciphertext: bytes, **kwargs) -> DecryptResult

Parâmetros

algorithm
EncryptionAlgorithm
Obrigatório

Algoritmo de criptografia a ser usado

ciphertext
bytes
Obrigatório

Bytes criptografados para descriptografar. A Microsoft recomenda que você não use CBC sem primeiro garantir a integridade do texto cifrado usando, por exemplo, um HMAC. Consulte https://docs.microsoft.com/dotnet/standard/security/vulnerabilities-cbc-mode para obter mais informações.

iv
bytes ou None

O vetor de inicialização usado durante a criptografia. Necessário para descriptografia do AES.

authentication_tag
bytes ou None

A marca de autenticação gerada durante a criptografia. Necessário apenas para descriptografia do AES-GCM.

additional_authenticated_data
bytes ou None

Dados opcionais autenticados, mas não criptografados. Para uso com descriptografia AES-GCM.

Tipo de retorno

Exceções

Se forem fornecidos parâmetros incompatíveis com o algoritmo especificado.

encrypt

Criptografar bytes usando a chave do cliente.

requer a permissão de chaves/criptografar. Esse método criptografa apenas um único bloco de dados, cujo tamanho depende do algoritmo de chave e criptografia.

encrypt(algorithm: EncryptionAlgorithm, plaintext: bytes, **kwargs) -> EncryptResult

Parâmetros

algorithm
EncryptionAlgorithm
Obrigatório

Algoritmo de criptografia a ser usado

plaintext
bytes
Obrigatório

Bytes para criptografar

iv
bytes ou None

Vetor de inicialização. Necessário apenas para criptografia AES-CBC(PAD). Se você passar seu próprio IV, certifique-se de usar um IV criptograficamente aleatório e sem repetição. Se for omitido, será feita uma tentativa de gerar uma IV por meio de os.urandom para criptografia local; para criptografia remota, Key Vault gerará uma IV.

additional_authenticated_data
bytes ou None

Dados opcionais autenticados, mas não criptografados. Para uso com criptografia AES-GCM.

Tipo de retorno

Exceções

se forem fornecidos parâmetros incompatíveis com o algoritmo especificado ou se a geração de um IV falhar na plataforma atual.

from_jwk

Cria um cliente que só pode executar operações criptográficas localmente.

from_jwk(jwk: JsonWebKey | Dict[str, Any]) -> CryptographyClient

Parâmetros

jwk
JsonWebKey ou Dict[str, Any]
Obrigatório

o material criptográfico da chave, como um JsonWebKey ou dicionário.

Tipo de retorno

send_request

Executa uma solicitação de rede usando o pipeline existente do cliente.

A URL de solicitação pode ser relativa à URL do cofre. A versão da API de serviço usada para a solicitação é a mesma do cliente, a menos que especificado de outra forma. Esse método não será gerado se a resposta for um erro; para gerar uma exceção, chame raise_for_status() no objeto de resposta retornado. Para obter mais informações sobre como enviar solicitações personalizadas com esse método, consulte https://aka.ms/azsdk/dpcodegen/python/send_request.

send_request(request: HttpRequest, *, stream: bool = False, **kwargs) -> HttpResponse

Parâmetros

request
HttpRequest
Obrigatório

A solicitação de rede que você deseja fazer.

stream
bool

Se o conteúdo da resposta será transmitido. Usa False como padrão.

Retornos

A resposta da sua chamada de rede. Não faz tratamento de erros em sua resposta.

Tipo de retorno

sign

Crie uma assinatura de um resumo usando a chave do cliente.

requer a permissão de chaves/assinar.

sign(algorithm: SignatureAlgorithm, digest: bytes, **kwargs) -> SignResult

Parâmetros

algorithm
SignatureAlgorithm
Obrigatório

algoritmo de assinatura

digest
bytes
Obrigatório

bytes com hash para assinar

Tipo de retorno

unwrap_key

Desembrulhar uma chave encapsulada anteriormente com a chave do cliente.

Requer a permissão keys/unwrapKey.

unwrap_key(algorithm: KeyWrapAlgorithm, encrypted_key: bytes, **kwargs) -> UnwrapResult

Parâmetros

algorithm
KeyWrapAlgorithm
Obrigatório

algoritmo de encapsulamento a ser usado

encrypted_key
bytes
Obrigatório

a chave encapsulada

Tipo de retorno

verify

Verifique uma assinatura usando a chave do cliente.

requer a permissão de chaves/verificar.

verify(algorithm: SignatureAlgorithm, digest: bytes, signature: bytes, **kwargs) -> VerifyResult

Parâmetros

algorithm
SignatureAlgorithm
Obrigatório

algoritmo de verificação

digest
bytes
Obrigatório

Resumo pré-hash correspondente à assinatura. O algoritmo de hash usado deve ser compatível com algorithm.

signature
bytes
Obrigatório

assinatura para verificar

Tipo de retorno

wrap_key

Encapsule uma chave com a chave do cliente.

Requer a permissão keys/wrapKey.

wrap_key(algorithm: KeyWrapAlgorithm, key: bytes, **kwargs) -> WrapResult

Parâmetros

algorithm
KeyWrapAlgorithm
Obrigatório

algoritmo de encapsulamento a ser usado

key
bytes
Obrigatório

chave a ser encapsulada

Tipo de retorno

Atributos

key_id

O identificador completo da chave do cliente.

Essa propriedade pode ser None quando um cliente é construído com from_jwk.

Tipo de retorno

str,

vault_url

A URL do cofre base da chave do cliente.

Essa propriedade pode ser None quando um cliente é construído com from_jwk.

Tipo de retorno

str,