KeyAsyncClient Classe
- java.
lang. Object - com.
azure. security. keyvault. keys. KeyAsyncClient
- com.
public final class KeyAsyncClient
O KeyAsyncClient fornece métodos assíncronos para gerenciar KeyVaultKey no Key Vault do Azure. O cliente dá suporte à criação, recuperação, atualização, exclusão, limpeza, backup, restauração, listagem, liberação e rotação do KeyVaultKey. O cliente também dá suporte à listagem DeletedKey para um cofre de chaves habilitado para exclusão reversível.
Introdução
Para interagir com o serviço de Key Vault do Azure, você precisará criar uma instância da KeyAsyncClient classe, uma URL do cofre e um objeto de credencial.
Os exemplos mostrados neste documento usam um objeto de credencial chamado DefaultAzureCredential para autenticação, que é apropriado para a maioria dos cenários, incluindo ambientes locais de desenvolvimento e produção. Além disso, recomendamos usar uma identidade gerenciada para autenticação em ambientes de produção. Você pode encontrar mais informações sobre diferentes maneiras de autenticação e seus tipos de credencial correspondentes na documentação da Identidade do Azure".
Exemplo: Construir cliente de chave assíncrona
O exemplo de código a seguir demonstra a criação de um KeyAsyncClient, usando o KeyClientBuilder para configurá-lo.
KeyAsyncClient keyAsyncClient = new KeyClientBuilder()
.vaultUrl("<your-key-vault-url>")
.credential(new DefaultAzureCredentialBuilder().build())
.buildAsyncClient();
Criar uma chave criptográfica
O KeyAsyncClient pode ser usado para criar uma chave no cofre de chaves.
Exemplo de código:
O exemplo de código a seguir demonstra como criar de forma assíncrona uma chave criptográfica no cofre de chaves usando a createKey(String name, KeyType keyType) API.
keyAsyncClient.createKey("keyName", KeyType.EC)
.contextWrite(Context.of("key1", "value1", "key2", "value2"))
.subscribe(key ->
System.out.printf("Created key with name: %s and id: %s %n", key.getName(),
key.getId()));
Nota: Para o exemplo síncrono, consulte KeyClient.
Obter uma chave criptográfica
O KeyAsyncClient pode ser usado para recuperar uma chave do cofre de chaves.
Exemplo de código:
O exemplo de código a seguir demonstra como recuperar de forma assíncrona uma chave do cofre de chaves usando a getKey(String name) API.
keyAsyncClient.getKey("keyName")
.contextWrite(Context.of("key1", "value1", "key2", "value2"))
.subscribe(key ->
System.out.printf("Created key with name: %s and: id %s%n", key.getName(),
key.getId()));
Nota: Para o exemplo síncrono, consulte KeyClient.
Excluir uma chave criptográfica
O KeyAsyncClient pode ser usado para excluir uma chave do cofre de chaves.
Exemplo de código:
O exemplo de código a seguir demonstra como excluir assíncronamente uma chave do cofre de chaves usando a beginDeleteKey(String name) API.
keyAsyncClient.beginDeleteKey("keyName")
.subscribe(pollResponse -> {
System.out.printf("Deletion status: %s%n", pollResponse.getStatus());
System.out.printf("Key name: %s%n", pollResponse.getValue().getName());
System.out.printf("Key delete date: %s%n", pollResponse.getValue().getDeletedOn());
});
Nota: Para o exemplo síncrono, consulte KeyClient.
Resumo do método
Métodos herdados de java.lang.Object
Detalhes do método
backupKey
public Mono
Solicita que um backup do especificado KeyVaultKey seja baixado para o cliente. A operação de backup de chave exporta um KeyVaultKey do Azure Key Vault em um formulário protegido. Observe que essa operação não retorna material de chave em um formulário que pode ser usado fora do sistema de Key Vault do Azure, o material de chave retornado é protegido para um HSM Key Vault do Azure ou para o próprio Azure Key Vault. A intenção dessa operação é permitir que um cliente gere um em uma KeyVaultKey instância Key Vault do Azure, faça backup do e restaure-o KeyVaultKeyem outra instância do Azure Key Vault. A operação de backup pode ser usada para exportar, de forma protegida, qualquer KeyType um do Azure Key Vault. Não é possível fazer backup de versões individuais de um KeyVaultKey . Backup/Restore
pode ser executado somente dentro de limites geográficos; o que significa que um backup de uma área geográfica não pode ser restaurado para outra área geográfica. Por exemplo, um backup da área geográfica dos EUA não pode ser restaurado em uma área geográfica da UE. Essa operação requer a key/backup
permissão.
Exemplos de código
Faz backup do KeyVaultKey do cofre de chaves. Assina a chamada de forma assíncrona e imprime o comprimento da matriz de bytes de backup da chave retornada na resposta.
keyAsyncClient.backupKey("keyName")
.contextWrite(Context.of("key1", "value1", "key2", "value2"))
.subscribe(bytes ->
System.out.printf("Key backup byte array length: %s%n", bytes.length));
Parameters:
Returns:
backupKeyWithResponse
public Mono
Solicita que um backup do especificado KeyVaultKey seja baixado para o cliente. A operação de backup de chave exporta um KeyVaultKey do Azure Key Vault em um formulário protegido. Observe que essa operação não retorna material de chave em um formulário que pode ser usado fora do sistema de Key Vault do Azure, o material de chave retornado é protegido para um HSM Key Vault do Azure ou para o próprio Azure Key Vault. A intenção dessa operação é permitir que um cliente gere um em uma KeyVaultKey instância Key Vault do Azure, faça backup do e restaure-o KeyVaultKeyem outra instância do Azure Key Vault. A operação de backup pode ser usada para exportar, de forma protegida, qualquer KeyType um do Azure Key Vault. Não é possível fazer backup de versões individuais de um KeyVaultKey . Backup/Restore
pode ser executado somente dentro de limites geográficos; o que significa que um backup de uma área geográfica não pode ser restaurado para outra área geográfica. Por exemplo, um backup da área geográfica dos EUA não pode ser restaurado em uma área geográfica da UE. Essa operação requer a key/backup
permissão.
Exemplos de código
Faz backup do KeyVaultKey do cofre de chaves. Assina a chamada de forma assíncrona e imprime o comprimento da matriz de bytes de backup da chave retornada na resposta.
keyAsyncClient.backupKeyWithResponse("keyName")
.contextWrite(Context.of("key1", "value1", "key2", "value2"))
.subscribe(backupKeyResponse ->
System.out.printf("Key backup byte array length: %s%n", backupKeyResponse.getValue().length));
Parameters:
Returns:
beginDeleteKey
public PollerFlux
Exclui um KeyVaultKey de qualquer tipo do cofre de chaves. Se a exclusão reversível estiver habilitada no cofre de chaves, o KeyVaultKey será colocado no estado excluído e precisará ser limpo para exclusão permanente, caso contrário, o KeyVaultKey será excluído permanentemente. A operação de exclusão se aplica a qualquer KeyVaultKey armazenado no Azure Key Vault mas não pode ser aplicada a uma versão individual de um KeyVaultKey. Essa operação remove o material criptográfico associado ao , o KeyVaultKeyque significa que o KeyVaultKey não é utilizável para Wrap/Unwrap
Sign/Verify
operações ou Encrypt/Decrypt
. Essa operação requer a keys/delete
permissão.
Exemplos de código
Exclui o KeyVaultKey no Key Vault do Azure. Assina a chamada de forma assíncrona e imprime os KeyVaultKey detalhes quando uma resposta é recebida.
keyAsyncClient.beginDeleteKey("keyName")
.subscribe(pollResponse -> {
System.out.printf("Deletion status: %s%n", pollResponse.getStatus());
System.out.printf("Key name: %s%n", pollResponse.getValue().getName());
System.out.printf("Key delete date: %s%n", pollResponse.getValue().getDeletedOn());
});
Parameters:
Returns:
beginRecoverDeletedKey
public PollerFlux
Recupera o KeyVaultKey no cofre de chaves para sua versão mais recente e só pode ser executado em um cofre habilitado para exclusão reversível. Uma tentativa de recuperar um KeyVaultKey retornará um erro. Considere isso o inverso da operação de exclusão em cofres habilitados para exclusão reversível. Essa operação requer a keys/recover
permissão.
Exemplos de código
Recupera o KeyVaultKey do cofre de chaves habilitado para exclusão reversível. Assina a chamada de forma assíncrona e imprime os detalhes da chave recuperada quando uma resposta é recebida.
keyAsyncClient.beginRecoverDeletedKey("deletedKeyName")
.subscribe(pollResponse -> {
System.out.printf("Recovery status: %s%n", pollResponse.getStatus());
System.out.printf("Key name: %s%n", pollResponse.getValue().getName());
System.out.printf("Key type: %s%n", pollResponse.getValue().getKeyType());
});
Parameters:
Returns:
createEcKey
public Mono
Cria um novo KeyVaultKey e o armazena no cofre de chaves. A operação criar chave EC pode ser usada para criar qualquer EC KeyType no Azure Key Vault. Se um KeyVaultKey com o nome fornecido já existir, o Azure Key Vault criará uma nova versão do KeyVaultKey. Ele requer a keys/create
permissão.
O CreateEcKeyOptions parâmetro é obrigatório. Opcionalmente getCurveName() , o pode ser especificado. Se não for especificado, o valor P_256 padrão será usado pelo Key Vault do Azure. Os expires valores e notBefore são opcionais. O enabled campo será definido true
como pelo Key Vault do Azure, se não for especificado.
O keyType indica o tipo de KeyVaultKey chave a ser criado. Os valores possíveis incluem: EC e EC_HSM.
Exemplos de código
Cria um novo KeyVaultKey com uma P_384 curva de chave da Web. A chave é ativada em um dia e expira em um ano. Assina a chamada de forma assíncrona e imprime os detalhes recentemente KeyVaultKey quando uma resposta é recebida.
CreateEcKeyOptions createEcKeyOptions = new CreateEcKeyOptions("keyName")
.setCurveName(KeyCurveName.P_384)
.setNotBefore(OffsetDateTime.now().plusDays(1))
.setExpiresOn(OffsetDateTime.now().plusYears(1));
keyAsyncClient.createEcKey(createEcKeyOptions)
.contextWrite(Context.of("key1", "value1", "key2", "value2"))
.subscribe(ecKey ->
System.out.printf("Created key with name: %s and id: %s %n", ecKey.getName(),
ecKey.getId()));
Parameters:
Returns:
createEcKeyWithResponse
public Mono
Cria um novo KeyVaultKey e o armazena no cofre de chaves. A operação criar chave EC pode ser usada para criar qualquer EC KeyType no Azure Key Vault. Se um KeyVaultKey com o nome fornecido já existir, o Azure Key Vault criará uma nova versão do KeyVaultKey. Ele requer a keys/create
permissão.
O CreateEcKeyOptions parâmetro é obrigatório. Opcionalmente getCurveName() , o pode ser especificado. Se não for especificado, o valor P_256 padrão será usado pelo Key Vault do Azure. Os expires valores e notBefore são opcionais. O enabled campo será definido true
como pelo Key Vault do Azure, se não for especificado.
O keyType indica o tipo de KeyVaultKey chave a ser criado. Os valores possíveis incluem: EC e EC_HSM.
Exemplos de código
Cria um novo KeyVaultKey com uma P_384 curva de chave da Web. A chave é ativada em um dia e expira em um ano. Assina a chamada de forma assíncrona e imprime os detalhes recentemente KeyVaultKey quando uma resposta é recebida.
CreateEcKeyOptions createEcKeyOptions = new CreateEcKeyOptions("keyName")
.setCurveName(KeyCurveName.P_384)
.setNotBefore(OffsetDateTime.now().plusDays(1))
.setExpiresOn(OffsetDateTime.now().plusYears(1));
keyAsyncClient.createEcKeyWithResponse(createEcKeyOptions)
.contextWrite(Context.of("key1", "value1", "key2", "value2"))
.subscribe(createEcKeyResponse ->
System.out.printf("Created key with name: %s and: id %s%n", createEcKeyResponse.getValue().getName(),
createEcKeyResponse.getValue().getId()));
Parameters:
Returns:
createKey
public Mono
Cria um novo KeyVaultKey e o armazena no cofre de chaves. A operação de criação de chave pode ser usada para criar qualquer KeyType um no Azure Key Vault. Se um KeyVaultKey com o nome fornecido já existir, o Azure Key Vault criará uma nova versão do KeyVaultKey. Ele requer a keys/create
permissão .
O CreateKeyOptions parâmetro é obrigatório. Os getExpiresOn() valores e getNotBefore() são opcionais. O isEnabled() campo é definido true
como pelo Azure Key Vault, se não especificado.
O getKeyType() indica o tipo de KeyVaultKey a ser criado. Os valores possíveis incluem: EC, EC_HSM, RSA, RSA_HSM, OCTe OCT_HSM.
Exemplos de código
Cria um novo KeyVaultKey que é ativado em um dia e expira em um ano. Assina a chamada de forma assíncrona e imprime os detalhes recentemente KeyVaultKey quando uma resposta é recebida.
CreateKeyOptions createKeyOptions = new CreateKeyOptions("keyName", KeyType.RSA)
.setNotBefore(OffsetDateTime.now().plusDays(1))
.setExpiresOn(OffsetDateTime.now().plusYears(1));
keyAsyncClient.createKey(createKeyOptions)
.contextWrite(Context.of("key1", "value1", "key2", "value2"))
.subscribe(key ->
System.out.printf("Created key with name: %s and id: %s %n", key.getName(),
key.getId()));
Parameters:
Returns:
createKey
public Mono
Cria um novo KeyVaultKey e o armazena no cofre de chaves. A operação de criação de chave pode ser usada para criar qualquer KeyType um no Azure Key Vault. Se um KeyVaultKey com o nome fornecido já existir, o Azure Key Vault criará uma nova versão do KeyVaultKey. Ele requer a keys/create
permissão .
O KeyType indica o tipo de KeyVaultKey a ser criado. Os valores possíveis incluem: EC, EC_HSM, RSA, RSA_HSM, OCTe OCT_HSM.
Exemplos de código
Cria um novo KeyVaultKey. Assina a chamada de forma assíncrona e imprime os detalhes recentemente KeyVaultKey quando uma resposta é recebida.
keyAsyncClient.createKey("keyName", KeyType.EC)
.contextWrite(Context.of("key1", "value1", "key2", "value2"))
.subscribe(key ->
System.out.printf("Created key with name: %s and id: %s %n", key.getName(),
key.getId()));
Parameters:
Returns:
createKeyWithResponse
public Mono
Cria um novo KeyVaultKey e o armazena no cofre de chaves. A operação de criação de chave pode ser usada para criar qualquer KeyType um no Azure Key Vault. Se um KeyVaultKey com o nome fornecido já existir, o Azure Key Vault criará uma nova versão do KeyVaultKey. Ele requer a keys/create
permissão .
O KeyType indica o tipo de KeyVaultKey a ser criado. Os valores possíveis incluem: EC, EC_HSM, RSA, RSA_HSM, OCTe OCT_HSM.
Exemplos de código
Cria um novo KeyVaultKey. Assina a chamada de forma assíncrona e imprime os detalhes recentemente KeyVaultKey quando uma resposta é recebida.
CreateKeyOptions createKeyOptions = new CreateKeyOptions("keyName", KeyType.RSA)
.setNotBefore(OffsetDateTime.now().plusDays(1))
.setExpiresOn(OffsetDateTime.now().plusYears(1));
keyAsyncClient.createKeyWithResponse(createKeyOptions)
.contextWrite(Context.of("key1", "value1", "key2", "value2"))
.subscribe(createKeyResponse ->
System.out.printf("Created key with name: %s and: id %s%n", createKeyResponse.getValue().getName(),
createKeyResponse.getValue().getId()));
Parameters:
Returns:
createOctKey
public Mono
Cria e armazena um novo KeyVaultKey no cofre de chaves. Se um KeyVaultKey com o nome fornecido já existir, o Azure Key Vault criará uma nova versão da chave. Essa operação requer a keys/create
permissão .
O CreateOctKeyOptions parâmetro é obrigatório. Os expires valores e notBefore são opcionais. O enabled campo é definido true
como pelo Azure Key Vault, se não especificado.
O keyType indica o tipo de KeyVaultKey chave a ser criado. Os valores possíveis incluem: OCT e OCT_HSM.
Exemplos de código
Cria um novo KeyVaultKey. O KeyVaultKey é ativado em um dia e expira em um ano. Assina a chamada de forma assíncrona e imprime os detalhes do recentemente KeyVaultKey quando uma resposta foi recebida.
CreateOctKeyOptions createOctKeyOptions = new CreateOctKeyOptions("keyName")
.setNotBefore(OffsetDateTime.now().plusDays(1))
.setExpiresOn(OffsetDateTime.now().plusYears(1));
keyAsyncClient.createOctKey(createOctKeyOptions)
.contextWrite(Context.of("key1", "value1", "key2", "value2"))
.subscribe(octKey ->
System.out.printf("Created key with name: %s and id: %s %n", octKey.getName(),
octKey.getId()));
Parameters:
Returns:
createOctKeyWithResponse
public Mono
Cria e armazena um novo KeyVaultKey no cofre de chaves. Se um KeyVaultKey com o nome fornecido já existir, o Azure Key Vault criará uma nova versão da chave. Essa operação requer a keys/create
permissão .
O CreateOctKeyOptions parâmetro é obrigatório. Os expires valores e notBefore são opcionais. O enabled campo é definido true
como pelo Azure Key Vault, se não especificado.
O keyType indica o tipo de KeyVaultKey chave a ser criado. Os valores possíveis incluem: OCT e OCT_HSM.
Exemplos de código
Cria um novo KeyVaultKey. O KeyVaultKey é ativado em um dia e expira em um ano. Assina a chamada de forma assíncrona e imprime os detalhes do recentemente KeyVaultKey quando uma resposta foi recebida.
CreateOctKeyOptions createOctKeyOptions = new CreateOctKeyOptions("keyName")
.setNotBefore(OffsetDateTime.now().plusDays(1))
.setExpiresOn(OffsetDateTime.now().plusYears(1));
keyAsyncClient.createOctKeyWithResponse(createOctKeyOptions)
.contextWrite(Context.of("key1", "value1", "key2", "value2"))
.subscribe(createOctKeyResponse ->
System.out.printf("Created key with name: %s and: id %s%n", createOctKeyResponse.getValue().getName(),
createOctKeyResponse.getValue().getId()));
Parameters:
Returns:
createRsaKey
public Mono
/** Cria um novo KeyVaultKey e o armazena no cofre de chaves. A operação criar chave RSA pode ser usada para criar qualquer tipo de chave RSA no Azure Key Vault. Se um KeyVaultKey com o nome fornecido já existir, o Azure Key Vault criará uma nova versão do KeyVaultKey. Ele requer a keys/create
permissão .
O CreateRsaKeyOptions parâmetro é obrigatório. O getKeySize() pode ser especificado opcionalmente. Os expires valores e notBefore são opcionais. O enabled campo é definido true
como pelo Azure Key Vault, se não especificado.
O keyType indica o tipo de KeyVaultKey a ser criado. Os valores possíveis incluem: RSA e RSA_HSM.
Exemplos de código
Cria um novo KeyVaultKey com tamanho 2048 que é ativado em um dia e expira em um ano. Assina a chamada de forma assíncrona e imprime os detalhes recentemente KeyVaultKey quando uma resposta é recebida.
CreateRsaKeyOptions createRsaKeyOptions = new CreateRsaKeyOptions("keyName")
.setKeySize(2048)
.setNotBefore(OffsetDateTime.now().plusDays(1))
.setExpiresOn(OffsetDateTime.now().plusYears(1));
keyAsyncClient.createRsaKey(createRsaKeyOptions)
.contextWrite(Context.of("key1", "value1", "key2", "value2"))
.subscribe(rsaKey ->
System.out.printf("Created key with name: %s and id: %s %n", rsaKey.getName(),
rsaKey.getId()));
Parameters:
Returns:
createRsaKeyWithResponse
public Mono
Cria um novo KeyVaultKey e o armazena no cofre de chaves. A operação criar chave RSA pode ser usada para criar qualquer tipo de chave RSA no Azure Key Vault. Se um KeyVaultKey com o nome fornecido já existir, o Azure Key Vault criará uma nova versão do KeyVaultKey. Ele requer a keys/create
permissão .
O CreateRsaKeyOptions parâmetro é obrigatório. O getKeySize() pode ser especificado opcionalmente. Os expires valores e notBefore são opcionais. O enabled campo é definido true
como pelo Azure Key Vault, se não especificado.
O keyType indica o tipo de KeyVaultKey a ser criado. Os valores possíveis incluem: RSA e RSA_HSM.
Exemplos de código
Cria um novo KeyVaultKey com tamanho 2048 que é ativado em um dia e expira em um ano. Assina a chamada de forma assíncrona e imprime os detalhes recentemente KeyVaultKey quando uma resposta é recebida.
CreateRsaKeyOptions createRsaKeyOptions = new CreateRsaKeyOptions("keyName")
.setKeySize(2048)
.setNotBefore(OffsetDateTime.now().plusDays(1))
.setExpiresOn(OffsetDateTime.now().plusYears(1));
keyAsyncClient.createRsaKeyWithResponse(createRsaKeyOptions)
.contextWrite(Context.of("key1", "value1", "key2", "value2"))
.subscribe(createRsaKeyResponse ->
System.out.printf("Created key with name: %s and: id %s%n", createRsaKeyResponse.getValue().getName(),
createRsaKeyResponse.getValue().getId()));
Parameters:
Returns:
getCryptographyAsyncClient
public CryptographyAsyncClient getCryptographyAsyncClient(String keyName)
Cria um CryptographyAsyncClient para a versão mais recente de uma determinada chave.
Para garantir o comportamento correto ao executar operações como Decrypt
, Unwrap
e Verify
, é recomendável usar um CryptographyAsyncClient criado para a versão de chave específica que foi usada para a operação inversa correspondente: Encrypt
, Wrap
ou Sign
, respectivamente.
Você pode fornecer uma versão de chave por meio getCryptographyAsyncClient(String keyName, String keyVersion) de ou garantindo que ela seja incluída no keyIdentifier
passado para keyIdentifier(String keyId) antes de criar um cliente.
Parameters:
Returns:
getCryptographyAsyncClient
public CryptographyAsyncClient getCryptographyAsyncClient(String keyName, String keyVersion)
Cria um CryptographyAsyncClient para uma determinada versão de chave.
Parameters:
Returns:
keyVersion
estiver null
ou estiver vazio, o cliente usará a versão mais recente da chave.getDeletedKey
public Mono
Obtém a parte pública de um KeyVaultKey. A operação Obter Chave excluída é aplicável a cofres habilitados para exclusão reversível. Essa operação requer a keys/get
permissão .
Exemplos de código
Obtém o KeyVaultKey do cofre de chaves habilitado para exclusão reversível. Assina a chamada de forma assíncrona e imprime os KeyVaultKey detalhes quando uma resposta é recebida.
keyAsyncClient.getDeletedKey("keyName")
.contextWrite(Context.of("key1", "value1", "key2", "value2"))
.subscribe(deletedKey ->
System.out.printf("Deleted key's recovery id:%s%n", deletedKey.getRecoveryId()));
Parameters:
Returns:
getDeletedKeyWithResponse
public Mono
Obtém a parte pública de um KeyVaultKey. A operação Obter Chave excluída é aplicável a cofres habilitados para exclusão reversível. Essa operação requer a keys/get
permissão .
Exemplos de código
Obtém o KeyVaultKey do cofre de chaves habilitado para exclusão reversível. Assina a chamada de forma assíncrona e imprime os KeyVaultKey detalhes quando uma resposta é recebida.
keyAsyncClient.getDeletedKeyWithResponse("keyName")
.contextWrite(Context.of("key1", "value1", "key2", "value2"))
.subscribe(getDeletedKeyResponse ->
System.out.printf("Deleted key's recovery id: %s%n", getDeletedKeyResponse.getValue().getRecoveryId()));
Parameters:
Returns:
getKey
public Mono
Obtém a parte pública da versão de chave e especificada KeyVaultKey . A operação obter chave é aplicável a todos KeyType e requer a keys/get
permissão.
Exemplos de código
Obtém uma versão específica do no cofre de KeyVaultKey chaves. Assina a chamada de forma assíncrona e imprime os KeyVaultKey detalhes quando uma resposta é recebida.
keyAsyncClient.getKey("keyName")
.contextWrite(Context.of("key1", "value1", "key2", "value2"))
.subscribe(key ->
System.out.printf("Created key with name: %s and: id %s%n", key.getName(),
key.getId()));
Parameters:
Returns:
null
se name
estiver null
ou estiver vazio.getKey
public Mono
Obtém a parte pública da versão de chave e especificada KeyVaultKey . A operação obter chave é aplicável a todos KeyType e requer a keys/get
permissão.
Exemplos de código
Obtém uma versão específica do no cofre de KeyVaultKey chaves. Assina a chamada de forma assíncrona e imprime os KeyVaultKey detalhes quando uma resposta é recebida.
String keyVersion = "6A385B124DEF4096AF1361A85B16C204";
keyAsyncClient.getKey("keyName", keyVersion)
.contextWrite(Context.of("key1", "value1", "key2", "value2"))
.subscribe(key ->
System.out.printf("Created key with name: %s and: id %s%n", key.getName(),
key.getId()));
Parameters:
Returns:
null
se e name
version
estiverem ou vazios null
.getKeyRotationPolicy
public Mono
Obtém o KeyRotationPolicy para o KeyVaultKey com o nome fornecido. Essa operação requer a keys/get
permissão .
Exemplos de código
Recupera o KeyRotationPolicy de um determinado KeyVaultKey. Assina a chamada de forma assíncrona e imprime os KeyRotationPolicy detalhes quando uma resposta é recebida.
keyAsyncClient.getKeyRotationPolicy("keyName")
.subscribe(keyRotationPolicy ->
System.out.printf("Retrieved key rotation policy with id: %s%n", keyRotationPolicy.getId()));
Parameters:
Returns:
getKeyRotationPolicyWithResponse
public Mono
Obtém o KeyRotationPolicy para o KeyVaultKey com o nome fornecido. Essa operação requer a keys/get
permissão .
Exemplos de código
Recupera o KeyRotationPolicy de um determinado KeyVaultKey. Assina a chamada de forma assíncrona e imprime os Response<T> detalhes e KeyRotationPolicy quando uma resposta é recebida.
keyAsyncClient.getKeyRotationPolicyWithResponse("keyName")
.subscribe(getKeyRotationPolicyResponse ->
System.out.printf("Response received successfully with status code: %d. Retrieved key rotation policy"
+ "with id: %s%n", getKeyRotationPolicyResponse.getStatusCode(),
getKeyRotationPolicyResponse.getValue().getId()));
Parameters:
Returns:
getKeyWithResponse
public Mono
Obtém a parte pública da versão de chave e especificada KeyVaultKey . A operação obter chave é aplicável a todos KeyType e requer a keys/get
permissão.
Exemplos de código
Obtém uma versão específica do no cofre de KeyVaultKey chaves. Assina a chamada de forma assíncrona e imprime os KeyVaultKey detalhes quando uma resposta é recebida.
String keyVersion = "6A385B124DEF4096AF1361A85B16C204";
keyAsyncClient.getKeyWithResponse("keyName", keyVersion)
.contextWrite(Context.of("key1", "value1", "key2", "value2"))
.subscribe(getKeyResponse ->
System.out.printf("Created key with name: %s and: id %s%n",
getKeyResponse.getValue().getName(), getKeyResponse.getValue().getId()));
Parameters:
Returns:
null
se e name
version
estiverem ou vazios null
.getRandomBytes
public Mono
Obtenha o número solicitado de bytes que contêm valores aleatórios de um HSM gerenciado.
Exemplos de código
Obtém um número de bytes que contêm valores aleatórios de um HSM Gerenciado. Imprime os bytes recuperados no formato base64Url.
int amount = 16;
keyAsyncClient.getRandomBytes(amount)
.subscribe(randomBytes ->
System.out.printf("Retrieved %d random bytes: %s%n", amount, Arrays.toString(randomBytes)));
Parameters:
Returns:
getRandomBytesWithResponse
public Mono
Obtenha o número solicitado de bytes que contêm valores aleatórios de um HSM gerenciado.
Exemplos de código
Obtém um número de bytes que contêm valores aleatórios de um HSM Gerenciado. Imprime os Response<T> detalhes e os bytes recuperados no formato base64Url.
int amountOfBytes = 16;
keyAsyncClient.getRandomBytesWithResponse(amountOfBytes).subscribe(response ->
System.out.printf("Response received successfully with status code: %d. Retrieved %d random bytes: %s%n",
response.getStatusCode(), amountOfBytes, Arrays.toString(response.getValue())));
Parameters:
Returns:
getVaultUrl
public String getVaultUrl()
Obtenha a URL do ponto de extremidade do cofre para a qual as solicitações de serviço são enviadas.
Returns:
importKey
public Mono
Importa um criado JsonWebKey externamente e o armazena no cofre de chaves. A operação de importação de chave pode ser usada para importar qualquer KeyType um para o Azure Key Vault. Se um KeyVaultKey com o nome fornecido já existir, o Azure Key Vault criará uma nova versão do KeyVaultKey. Essa operação requer a keys/import
permissão.
ImportKeyOptions é necessário e seus campos name e getKey() não podem ser null
. Os expires valores e notBefore em keyImportOptions
são opcionais. Se não for especificado, nenhum valor será definido para os campos. O enabled campo é definido true
como e o isHardwareProtected() campo é definido false
como por Key Vault do Azure, se eles não forem especificados.
Exemplos de código
Importa um novo KeyVaultKey para o cofre de chaves. Assina a chamada de forma assíncrona e imprime os detalhes recentemente KeyVaultKey quando uma resposta é recebida.
ImportKeyOptions options = new ImportKeyOptions("keyName", jsonWebKeyToImport)
.setHardwareProtected(false);
keyAsyncClient.importKey(options).subscribe(keyVaultKey ->
System.out.printf("Imported key with name: %s and id: %s%n", keyVaultKey.getName(), keyVaultKey.getId()));
Parameters:
Returns:
importKey
public Mono
Importa um criado JsonWebKey externamente e o armazena no cofre de chaves. A operação de importação de chave pode ser usada para importar qualquer KeyType um para o Azure Key Vault. Se um KeyVaultKey com o nome fornecido já existir, o Azure Key Vault criará uma nova versão do KeyVaultKey. Essa operação requer a keys/import
permissão.
Exemplos de código
Importa um novo KeyVaultKey para o cofre de chaves. Assina a chamada de forma assíncrona e imprime os detalhes recentemente KeyVaultKey quando uma resposta é recebida.
keyAsyncClient.importKey("keyName", jsonWebKeyToImport)
.subscribe(keyVaultKey ->
System.out.printf("Imported key with name: %s and id: %s%n", keyVaultKey.getName(),
keyVaultKey.getId()));
Parameters:
Returns:
importKeyWithResponse
public Mono
Importa um criado JsonWebKey externamente e o armazena no cofre de chaves. A operação de importação de chave pode ser usada para importar qualquer KeyType um para o Azure Key Vault. Se um KeyVaultKey com o nome fornecido já existir, o Azure Key Vault criará uma nova versão do KeyVaultKey. Essa operação requer a keys/import
permissão.
ImportKeyOptions é necessário e seus campos name e getKey() não podem ser null
. Os expires valores e notBefore em keyImportOptions
são opcionais. Se não for especificado, nenhum valor será definido para os campos. O enabled campo é definido true
como e o isHardwareProtected() campo é definido false
como por Key Vault do Azure, se eles não forem especificados.
Exemplos de código
Importa um novo KeyVaultKey para o cofre de chaves. Assina a chamada de forma assíncrona e imprime os detalhes recentemente KeyVaultKey quando uma resposta é recebida.
ImportKeyOptions importKeyOptions = new ImportKeyOptions("keyName", jsonWebKeyToImport)
.setHardwareProtected(false);
keyAsyncClient.importKeyWithResponse(importKeyOptions).subscribe(response ->
System.out.printf("Imported key with name: %s and id: %s%n", response.getValue().getName(),
response.getValue().getId()));
Parameters:
Returns:
listDeletedKeys
public PagedFlux
Listas DeletedKey do cofre de chaves. Os DeletedKey são recuperados como JsonWebKey estruturas que contêm a parte pública de um DeletedKey. A operação obter chaves excluídas é aplicável aos cofres habilitados para exclusão reversível. Essa operação requer a keys/list
permissão.
Exemplos de código
Lista o DeletedKey no cofre de chaves. Assina a chamada de forma assíncrona e imprime a ID de recuperação de cada DeletedKey uma quando uma resposta é recebida.
keyAsyncClient.listDeletedKeys()
.contextWrite(Context.of("key1", "value1", "key2", "value2"))
.subscribe(deletedKey ->
System.out.printf("Deleted key's recovery id:%s%n", deletedKey.getRecoveryId()));
Returns:
listPropertiesOfKeyVersions
public PagedFlux
Liste todas as versões do especificado KeyVaultKey. A resposta de chave individual no fluxo é representada por KeyProperties como apenas o identificador de chave, atributos e marcas são fornecidos na resposta. Os valores de material de chave não são fornecidos na resposta. Essa operação requer a keys/list
permissão.
Exemplos de código
É possível obter as chaves com o material de chave de todas as versões dessas informações. Converta o Flux que KeyProperties contém para Flux conter KeyVaultKey o uso getKey(String name, String version) em Flux#flatMap(Function).
keyAsyncClient.listPropertiesOfKeyVersions("keyName")
.contextWrite(Context.of("key1", "value1", "key2", "value2"))
.flatMap(keyProperties -> keyAsyncClient.getKey(keyProperties.getName(), keyProperties.getVersion()))
.subscribe(key ->
System.out.printf("Retrieved key version: %s with name: %s and type: %s%n",
key.getProperties().getVersion(), key.getName(), key.getKeyType()));
Parameters:
Returns:
name
não existir no cofre de chaves.listPropertiesOfKeys
public PagedFlux
Listar KeyVaultKey no cofre de chaves. Recupera uma lista do no cofre de KeyVaultKey chaves como JsonWebKey estruturas que contêm a parte pública de um armazenado KeyVaultKey. A operação de lista é aplicável a todos KeyType e a resposta individual KeyVaultKey na lista é representada por KeyProperties como apenas o identificador de chave, atributos e marcas são fornecidos na resposta. O material de chave e as versões de chave individuais não estão listados na resposta. Essa operação requer a keys/list
permissão.
Exemplos de código
É possível obter KeyVaultKey com o material chave dessas informações. Converta o Flux que KeyProperties contém para Flux conter KeyVaultKey o uso getKey(String name, String version) em Flux#flatMap(Function).
keyAsyncClient.listPropertiesOfKeys()
.contextWrite(Context.of("key1", "value1", "key2", "value2"))
.flatMap(keyProperties -> keyAsyncClient.getKey(keyProperties.getName(), keyProperties.getVersion()))
.subscribe(key -> System.out.printf("Retrieved key with name: %s and type: %s%n",
key.getName(),
key.getKeyType()));
Returns:
purgeDeletedKey
public Mono
Exclui permanentemente o especificado KeyVaultKey sem a possibilidade de recuperação. A operação de limpeza de chave excluída é aplicável a cofres habilitados para exclusão reversível. Essa operação requer a keys/purge
permissão.
Exemplos de código
Limpa o KeyVaultKey do cofre de chaves habilitado para exclusão reversível. Assina a chamada de forma assíncrona e imprime o código status da resposta do servidor quando uma resposta é recebida.
keyAsyncClient.purgeDeletedKey("deletedKeyName")
.subscribe(ignored ->
System.out.println("Successfully purged deleted key"));
Parameters:
Returns:
purgeDeletedKeyWithResponse
public Mono
Exclui permanentemente o especificado KeyVaultKey sem a possibilidade de recuperação. A operação de limpeza de chave excluída é aplicável a cofres habilitados para exclusão reversível. Essa operação requer a keys/purge
permissão.
Exemplos de código
Limpa o KeyVaultKey do cofre de chaves habilitado para exclusão reversível. Assina a chamada de forma assíncrona e imprime o código status da resposta do servidor quando uma resposta é recebida.
keyAsyncClient.purgeDeletedKeyWithResponse("deletedKeyName")
.contextWrite(Context.of("key1", "value1", "key2", "value2"))
.subscribe(purgeDeletedKeyResponse ->
System.out.printf("Purge response status code: %d%n", purgeDeletedKeyResponse.getStatusCode()));
Parameters:
Returns:
releaseKey
public Mono
Libera a versão mais recente de um KeyVaultKey.
O KeyVaultKey deve ser exportável. Essa operação requer a keys/release
permissão.
Exemplos de código
Libera um KeyVaultKey. Assina a chamada de forma assíncrona e imprime o objeto assinado que contém o KeyVaultKey quando uma resposta foi recebida.
String targetAttestationToken = "someAttestationToken";
ReleaseKeyResult releaseKeyResult = keyClient.releaseKey("keyName", targetAttestationToken);
System.out.printf("Signed object containing released key: %s%n", releaseKeyResult);
Parameters:
Returns:
releaseKey
public Mono
Libera uma chave.
A chave deve ser exportável. Essa operação requer a permissão 'keys/release'.
Exemplos de código
Libera um KeyVaultKey. Assina a chamada de forma assíncrona e imprime o objeto assinado que contém o KeyVaultKey quando uma resposta foi recebida.
String myKeyVersion = "6A385B124DEF4096AF1361A85B16C204";
String myTargetAttestationToken = "someAttestationToken";
keyAsyncClient.releaseKey("keyName", myKeyVersion, myTargetAttestationToken)
.subscribe(releaseKeyResult ->
System.out.printf("Signed object containing released key: %s%n", releaseKeyResult.getValue()));
Parameters:
null
, essa chamada será equivalente a chamar releaseKey(String name, String targetAttestationToken), com a versão mais recente da chave sendo lançada.
Returns:
releaseKeyWithResponse
public Mono
Libera uma chave.
A chave deve ser exportável. Essa operação requer a permissão 'keys/release'.
Exemplos de código
Libera um KeyVaultKey. Assina a chamada de forma assíncrona e imprime os Response<T> detalhes e o objeto assinado que contém o KeyVaultKey quando uma resposta foi recebida.
String releaseKeyVersion = "6A385B124DEF4096AF1361A85B16C204";
String someTargetAttestationToken = "someAttestationToken";
ReleaseKeyOptions releaseKeyOptions = new ReleaseKeyOptions()
.setAlgorithm(KeyExportEncryptionAlgorithm.RSA_AES_KEY_WRAP_256)
.setNonce("someNonce");
keyAsyncClient.releaseKeyWithResponse("keyName", releaseKeyVersion, someTargetAttestationToken,
releaseKeyOptions)
.subscribe(releaseKeyResponse ->
System.out.printf("Response received successfully with status code: %d. Signed object containing"
+ "released key: %s%n", releaseKeyResponse.getStatusCode(),
releaseKeyResponse.getValue().getValue()));
Parameters:
null
, essa chamada será equivalente a chamar releaseKey(String name, String targetAttestationToken), com a versão mais recente da chave sendo lançada.
Returns:
restoreKeyBackup
public Mono
Restaura um backup em KeyVaultKey um cofre. Importa um backup KeyVaultKey anterior no Azure Key Vault, restaurando o , seu KeyVaultKeyidentificador de chave, atributos e políticas de controle de acesso. A operação de restauração pode ser usada para importar um backup KeyVaultKeyanterior. Versões individuais de um KeyVaultKey não podem ser restauradas. O KeyVaultKey é restaurado em sua totalidade com o mesmo nome de chave que tinha quando foi feito backup. Se o nome da chave não estiver disponível no cofre de chaves de destino, a operação de restauração será rejeitada. Embora o nome da chave seja retido durante a restauração, o identificador de chave final será alterado se o KeyVaultKey for restaurado para um cofre diferente. A restauração irá restaurar todas as versões e preservar os identificadores de versão. A operação de restauração está sujeita a restrições de segurança: o cofre de chaves de destino deve pertencer à mesma Assinatura do Microsoft Azure que o cofre de chaves de origem. O usuário deve ter a restore
permissão no cofre de chaves de destino. Essa operação requer a keys/restore
permissão.
Exemplos de código
Restaura o KeyVaultKey no cofre de chaves de seu backup. Assina a chamada de forma assíncrona e imprime os detalhes da chave restaurada quando uma resposta é recebida.
Passe a matriz de Bytes de Backup de Chave para a operação de restauração.
keyAsyncClient.restoreKeyBackup(keyBackupByteArray)
.contextWrite(Context.of("key1", "value1", "key2", "value2"))
.subscribe(restoreKeyResponse ->
System.out.printf("Restored key with name: %s and: id %s%n", restoreKeyResponse.getName(),
restoreKeyResponse.getId()));
Parameters:
Returns:
restoreKeyBackupWithResponse
public Mono
Restaura um backup em KeyVaultKey um cofre. Importa um backup KeyVaultKey anterior no Azure Key Vault, restaurando o , seu KeyVaultKeyidentificador de chave, atributos e políticas de controle de acesso. A operação de restauração pode ser usada para importar um backup KeyVaultKeyanterior. Versões individuais de um KeyVaultKey não podem ser restauradas. O KeyVaultKey é restaurado em sua totalidade com o mesmo nome de chave que tinha quando foi feito backup. Se o nome da chave não estiver disponível no cofre de chaves de destino, a operação de restauração será rejeitada. Embora o nome da chave seja retido durante a restauração, o identificador de chave final será alterado se o KeyVaultKey for restaurado para um cofre diferente. A restauração irá restaurar todas as versões e preservar os identificadores de versão. A operação de restauração está sujeita a restrições de segurança: o cofre de chaves de destino deve pertencer à mesma Assinatura do Microsoft Azure que o cofre de chaves de origem. O usuário deve ter a restore
permissão no cofre de chaves de destino. Essa operação requer a keys/restore
permissão.
Exemplos de código
Restaura o KeyVaultKey no cofre de chaves de seu backup. Assina a chamada de forma assíncrona e imprime os detalhes da chave restaurada quando uma resposta é recebida.
Passe a matriz de Bytes de Backup de Chave para a operação de restauração.
keyAsyncClient.restoreKeyBackupWithResponse(keyBackupByteArray)
.contextWrite(Context.of("key1", "value1", "key2", "value2"))
.subscribe(restoreKeyBackupResponse ->
System.out.printf("Restored key with name: %s and: id %s%n",
restoreKeyBackupResponse.getValue().getName(), restoreKeyBackupResponse.getValue().getId()));
Parameters:
Returns:
rotateKey
public Mono
Gira um KeyVaultKey. A operação de rotação de chave fará isso com base em KeyRotationPolicy. Essa operação requer a keys/rotate
permissão.
Exemplos de código
Gira um KeyVaultKey. Imprime KeyVaultKey os detalhes.
keyAsyncClient.rotateKey("keyName")
.subscribe(key ->
System.out.printf("Rotated key with name: %s and version:%s%n", key.getName(),
key.getProperties().getVersion()));
Parameters:
Returns:
rotateKeyWithResponse
public Mono
Gira um KeyVaultKey. A operação de rotação de chave fará isso com base em KeyRotationPolicy. Essa operação requer a keys/rotate
permissão.
Exemplos de código
Gira um KeyVaultKey. Assina a chamada de forma assíncrona e imprime os Response<T> detalhes e KeyVaultKey quando uma resposta é recebida.
keyAsyncClient.rotateKeyWithResponse("keyName")
.subscribe(rotateKeyResponse ->
System.out.printf("Response received successfully with status code: %d. Rotated key with name: %s and"
+ "version: %s%n", rotateKeyResponse.getStatusCode(), rotateKeyResponse.getValue().getName(),
rotateKeyResponse.getValue().getProperties().getVersion()));
Parameters:
Returns:
updateKeyProperties
public Mono
Atualizações o KeyProperties e KeyOperation associado ao especificadoKeyVaultKey, mas não o material de chave criptográfica do especificado KeyVaultKey no cofre de chaves. As alterações de operação de atualização especificadas KeyProperties de um armazenado KeyVaultKey existente e KeyProperties que não são especificadas na solicitação permanecem inalteradas. O material de chave criptográfica de um KeyVaultKey próprio não pode ser alterado. Essa operação requer a keys/set
permissão.
Exemplos de código
Obtém a versão mais recente do KeyVaultKey, altera o tempo anterior e o atualiza no Key Vault do Azure. Assina a chamada de forma assíncrona e imprime os KeyVaultKey detalhes quando uma resposta é recebida.
keyAsyncClient.getKey("keyName")
.subscribe(key -> {
//Update the not before time of the key.
key.getProperties().setNotBefore(OffsetDateTime.now().plusDays(50));
keyAsyncClient.updateKeyProperties(key.getProperties(), KeyOperation.ENCRYPT,
KeyOperation.DECRYPT)
.contextWrite(Context.of("key1", "value1", "key2", "value2"))
.subscribe(updatedKey ->
System.out.printf("Updated key's \"not before time\": %s%n",
updatedKey.getProperties().getNotBefore().toString()));
});
Parameters:
Returns:
updateKeyPropertiesWithResponse
public Mono
Atualizações o KeyProperties e KeyOperation associado ao especificadoKeyVaultKey, mas não o material de chave criptográfica do especificado KeyVaultKey no cofre de chaves. As alterações de operação de atualização especificadas KeyProperties de um armazenado KeyVaultKey existente e KeyProperties que não são especificadas na solicitação permanecem inalteradas. O material de chave criptográfica de um KeyVaultKey próprio não pode ser alterado. Essa operação requer a keys/set
permissão.
Exemplos de código
Obtém a versão mais recente do KeyVaultKey, altera o tempo anterior e o atualiza no Key Vault do Azure. Assina a chamada de forma assíncrona e imprime os KeyVaultKey detalhes quando uma resposta é recebida.
keyAsyncClient.getKey("keyName")
.subscribe(getKeyResponse -> {
//Update the not before time of the key.
getKeyResponse.getProperties().setNotBefore(OffsetDateTime.now().plusDays(50));
keyAsyncClient.updateKeyPropertiesWithResponse(getKeyResponse.getProperties(), KeyOperation.ENCRYPT,
KeyOperation.DECRYPT)
.contextWrite(Context.of("key1", "value1", "key2", "value2"))
.subscribe(updateKeyResponse ->
System.out.printf("Updated key's \"not before time\": %s%n",
updateKeyResponse.getValue().getProperties().getNotBefore().toString()));
});
Parameters:
Returns:
updateKeyRotationPolicy
public Mono
Atualizações o KeyRotationPolicy da chave com o nome fornecido. Essa operação requer a keys/update
permissão .
Exemplos de código
Atualizações o KeyRotationPolicy de um determinado KeyVaultKey. Assina a chamada de forma assíncrona e imprime os KeyRotationPolicy detalhes quando uma resposta é recebida.
List<KeyRotationLifetimeAction> lifetimeActions = new ArrayList<>();
KeyRotationLifetimeAction rotateLifetimeAction = new KeyRotationLifetimeAction(KeyRotationPolicyAction.ROTATE)
.setTimeAfterCreate("P90D");
KeyRotationLifetimeAction notifyLifetimeAction = new KeyRotationLifetimeAction(KeyRotationPolicyAction.NOTIFY)
.setTimeBeforeExpiry("P45D");
lifetimeActions.add(rotateLifetimeAction);
lifetimeActions.add(notifyLifetimeAction);
KeyRotationPolicy keyRotationPolicy = new KeyRotationPolicy()
.setLifetimeActions(lifetimeActions)
.setExpiresIn("P6M");
keyAsyncClient.updateKeyRotationPolicy("keyName", keyRotationPolicy)
.subscribe(updatedPolicy ->
System.out.printf("Updated key rotation policy with id: %s%n", updatedPolicy.getId()));
Parameters:
Returns:
updateKeyRotationPolicyWithResponse
public Mono
Atualizações o KeyRotationPolicy da chave com o nome fornecido. Essa operação requer a keys/update
permissão .
Exemplos de código
Atualizações o KeyRotationPolicy de um determinado KeyVaultKey. Assina a chamada de forma assíncrona e imprime os Response<T> detalhes e KeyRotationPolicy quando uma resposta é recebida.
List<KeyRotationLifetimeAction> myLifetimeActions = new ArrayList<>();
KeyRotationLifetimeAction myRotateLifetimeAction = new KeyRotationLifetimeAction(KeyRotationPolicyAction.ROTATE)
.setTimeAfterCreate("P90D");
KeyRotationLifetimeAction myNotifyLifetimeAction = new KeyRotationLifetimeAction(KeyRotationPolicyAction.NOTIFY)
.setTimeBeforeExpiry("P45D");
myLifetimeActions.add(myRotateLifetimeAction);
myLifetimeActions.add(myNotifyLifetimeAction);
KeyRotationPolicy myKeyRotationPolicy = new KeyRotationPolicy()
.setLifetimeActions(myLifetimeActions)
.setExpiresIn("P6M");
keyAsyncClient.updateKeyRotationPolicyWithResponse("keyName", myKeyRotationPolicy)
.subscribe(myUpdatedPolicyResponse ->
System.out.printf("Response received successfully with status code: %d. Updated key rotation policy"
+ "with id: %s%n", myUpdatedPolicyResponse.getStatusCode(),
myUpdatedPolicyResponse.getValue().getId()));
Parameters:
Returns:
Aplica-se a
Azure SDK for Java