次の方法で共有


KeyAsyncClient クラス

  • java.lang.Object
    • com.azure.security.keyvault.keys.KeyAsyncClient

public final class KeyAsyncClient

にはKeyAsyncClient、Azure Key Vaultで管理KeyVaultKeyする非同期メソッドが用意されています。 クライアントは、 の作成、取得、更新、削除、消去、バックアップ、復元、一覧表示、解放、ローテーションを KeyVaultKeyサポートしています。 クライアントでは、論理的な削除が有効なキー コンテナーの一覧表示 DeletedKey もサポートされています。

作業の開始

Azure Key Vault サービスと対話するには、 クラスのインスタンス、コンテナー URLKeyAsyncClient、資格情報オブジェクトを作成する必要があります。

このドキュメントに示す例では、認証に DefaultAzureCredential という名前の資格情報オブジェクトを使用します。これは、ローカルの開発環境や運用環境を含むほとんどのシナリオに適しています。 また、運用環境での認証には マネージド ID を 使用することをお勧めします。 認証のさまざまな方法とそれに対応する資格情報の種類の詳細については、 Azure ID のドキュメントを参照してください

サンプル: 非同期キー クライアントの構築

次のコード サンプルは、 を使用してKeyClientBuilderの作成KeyAsyncClientを示しています。

KeyAsyncClient keyAsyncClient = new KeyClientBuilder()
     .vaultUrl("<your-key-vault-url>")
     .credential(new DefaultAzureCredentialBuilder().build())
     .buildAsyncClient();

暗号化キーを作成する

KeyAsyncClient 使用して、キー コンテナーにキーを作成できます。

コード サンプル:

次のコード サンプルでは、 API を使用して、キー コンテナーに暗号化キーを非同期的に作成する方法を createKey(String name, KeyType keyType) 示します。

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()));

メモ: 同期サンプルについては、 を KeyClient参照してください。


暗号化キーを取得する

KeyAsyncClient 使用して、キー コンテナーからキーを取得できます。

コード サンプル:

次のコード サンプルは、API を使用してキー コンテナーからキーを非同期的に取得する方法を getKey(String name) 示しています。

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()));

メモ: 同期サンプルについては、 を KeyClient参照してください。


暗号化キーを削除する

KeyAsyncClient 使用して、キー コンテナーからキーを削除できます。

コード サンプル:

次のコード サンプルは、API を使用してキー コンテナーからキーを非同期的に削除する方法を beginDeleteKey(String name) 示しています。

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());
     });

メモ: 同期サンプルについては、 を KeyClient参照してください。

メソッドの概要

修飾子と型 メソッドと説明
Mono<byte[]> backupKey(String name)

指定した KeyVaultKey のバックアップをクライアントにダウンロードするように要求します。

Mono<Response<byte[]>> backupKeyWithResponse(String name)

指定した KeyVaultKey のバックアップをクライアントにダウンロードするように要求します。

PollerFlux<DeletedKey,Void> beginDeleteKey(String name)

KeyVaultKeyキー コンテナーから任意の型の を削除します。

PollerFlux<KeyVaultKey,Void> beginRecoverDeletedKey(String name)

キー コンテナー内の を KeyVaultKey 最新バージョンに回復し、論理的な削除が有効なコンテナーでのみ実行できます。

Mono<KeyVaultKey> createEcKey(CreateEcKeyOptions createEcKeyOptions)

KeyVaultKey しい を作成し、キー コンテナーに格納します。

Mono<Response<KeyVaultKey>> createEcKeyWithResponse(CreateEcKeyOptions createEcKeyOptions)

KeyVaultKey しい を作成し、キー コンテナーに格納します。

Mono<KeyVaultKey> createKey(CreateKeyOptions createKeyOptions)

KeyVaultKey しい を作成し、キー コンテナーに格納します。

Mono<KeyVaultKey> createKey(String name, KeyType keyType)

KeyVaultKey しい を作成し、キー コンテナーに格納します。

Mono<Response<KeyVaultKey>> createKeyWithResponse(CreateKeyOptions createKeyOptions)

KeyVaultKey しい を作成し、キー コンテナーに格納します。

Mono<KeyVaultKey> createOctKey(CreateOctKeyOptions createOctKeyOptions)

キー コンテナーに新 KeyVaultKey しい を作成して格納します。

Mono<Response<KeyVaultKey>> createOctKeyWithResponse(CreateOctKeyOptions createOctKeyOptions)

キー コンテナーに新 KeyVaultKey しい を作成して格納します。

Mono<KeyVaultKey> createRsaKey(CreateRsaKeyOptions createRsaKeyOptions)

/** 新 KeyVaultKey しい を作成し、キー コンテナーに格納します。

Mono<Response<KeyVaultKey>> createRsaKeyWithResponse(CreateRsaKeyOptions createRsaKeyOptions)

KeyVaultKey しい を作成し、キー コンテナーに格納します。

CryptographyAsyncClient getCryptographyAsyncClient(String keyName)

指定した CryptographyAsyncClient キーの最新バージョンの を作成します。

CryptographyAsyncClient getCryptographyAsyncClient(String keyName, String keyVersion)

特定の CryptographyAsyncClient キー バージョンの を作成します。

Mono<DeletedKey> getDeletedKey(String name)

のパブリック部分を KeyVaultKey取得します。

Mono<Response<DeletedKey>> getDeletedKeyWithResponse(String name)

のパブリック部分を KeyVaultKey取得します。

Mono<KeyVaultKey> getKey(String name)

指定した KeyVaultKey キー バージョンとキー バージョンの公開部分を取得します。

Mono<KeyVaultKey> getKey(String name, String version)

指定した KeyVaultKey キー バージョンとキー バージョンの公開部分を取得します。

Mono<KeyRotationPolicy> getKeyRotationPolicy(String keyName)

指定した名前の KeyRotationPolicyKeyVaultKey を取得します。

Mono<Response<KeyRotationPolicy>> getKeyRotationPolicyWithResponse(String keyName)

指定した名前の KeyRotationPolicyKeyVaultKey を取得します。

Mono<Response<KeyVaultKey>> getKeyWithResponse(String name, String version)

指定した KeyVaultKey キー バージョンとキー バージョンの公開部分を取得します。

Mono<byte[]> getRandomBytes(int count)

マネージド HSM からランダムな値を含む要求されたバイト数を取得します。

Mono<Response<byte[]>> getRandomBytesWithResponse(int count)

マネージド HSM からランダムな値を含む要求されたバイト数を取得します。

String getVaultUrl()

サービス要求の送信先となるコンテナー エンドポイント URL を取得します。

Mono<KeyVaultKey> importKey(ImportKeyOptions importKeyOptions)

外部で作成された JsonWebKey をインポートし、キー コンテナーに格納します。

Mono<KeyVaultKey> importKey(String name, JsonWebKey keyMaterial)

外部で作成された JsonWebKey をインポートし、キー コンテナーに格納します。

Mono<Response<KeyVaultKey>> importKeyWithResponse(ImportKeyOptions importKeyOptions)

外部で作成された JsonWebKey をインポートし、キー コンテナーに格納します。

PagedFlux<DeletedKey> listDeletedKeys()

キー コンテナーの一覧 DeletedKey

PagedFlux<KeyProperties> listPropertiesOfKeyVersions(String name)

指定した KeyVaultKeyのすべてのバージョンを一覧表示します。

PagedFlux<KeyProperties> listPropertiesOfKeys()

キー コンテナーの一覧 KeyVaultKey

Mono<Void> purgeDeletedKey(String name)

回復の可能性なしに、指定された KeyVaultKey を完全に削除します。

Mono<Response<Void>> purgeDeletedKeyWithResponse(String name)

回復の可能性なしに、指定された KeyVaultKey を完全に削除します。

Mono<ReleaseKeyResult> releaseKey(String name, String targetAttestationToken)

の最新バージョンを KeyVaultKeyリリースします。

Mono<ReleaseKeyResult> releaseKey(String name, String version, String targetAttestationToken)

キーを解放します。

Mono<Response<ReleaseKeyResult>> releaseKeyWithResponse(String name, String version, String targetAttestationToken, ReleaseKeyOptions releaseKeyOptions)

キーを解放します。

Mono<KeyVaultKey> restoreKeyBackup(byte[] backup)

バックアップ KeyVaultKey された をコンテナーに復元します。

Mono<Response<KeyVaultKey>> restoreKeyBackupWithResponse(byte[] backup)

バックアップ KeyVaultKey された をコンテナーに復元します。

Mono<KeyVaultKey> rotateKey(String name)

を回転します KeyVaultKey

Mono<Response<KeyVaultKey>> rotateKeyWithResponse(String name)

を回転します KeyVaultKey

Mono<KeyVaultKey> updateKeyProperties(KeyProperties keyProperties, KeyOperation[] keyOperations)

を更新KeyPropertiesし、KeyOperation指定した KeyVaultKeyに関連付けられていますが、キー コンテナーで指定された KeyVaultKey の暗号化キー マテリアルには関連付けられません。

Mono<Response<KeyVaultKey>> updateKeyPropertiesWithResponse(KeyProperties keyProperties, KeyOperation[] keyOperations)

を更新KeyPropertiesし、KeyOperation指定した KeyVaultKeyに関連付けられていますが、キー コンテナーで指定された KeyVaultKey の暗号化キー マテリアルには関連付けられません。

Mono<KeyRotationPolicy> updateKeyRotationPolicy(String keyName, KeyRotationPolicy keyRotationPolicy)

指定した名前のキーの をKeyRotationPolicy更新します。

Mono<Response<KeyRotationPolicy>> updateKeyRotationPolicyWithResponse(String keyName, KeyRotationPolicy keyRotationPolicy)

指定した名前のキーの をKeyRotationPolicy更新します。

メソッドの継承元: java.lang.Object

メソッドの詳細

backupKey

public Mono backupKey(String name)

指定した KeyVaultKey のバックアップをクライアントにダウンロードするように要求します。 キー バックアップ操作では、KeyVaultKey保護された形式で Azure Key Vaultから をエクスポートします。 この操作では、Azure Key Vault システムの外部で使用できる形式のキー マテリアルは返されません。返されるキーマテリアルは、Azure Key Vault HSM または Azure Key Vault自体に対して保護されます。 この操作の目的は、クライアントが 1 つの Azure Key Vault インスタンスで を生成KeyVaultKeyし、 をKeyVaultKeyバックアップしてから、別の Azure Key Vault インスタンスに復元できるようにすることです。 バックアップ操作は、Azure Key Vaultから保護された形式でエクスポートKeyTypeするために使用できます。 の個々のバージョンを KeyVaultKey バックアップすることはできません。 Backup/Restore 地理的境界内でのみ実行できます。は、ある地理的領域からのバックアップを別の地理的領域に復元できないことを意味します。 たとえば、米国の地理的領域からのバックアップを EU の地理的領域に復元することはできません。 この操作には、アクセス許可が必要です key/backup

コード サンプル

キー コンテナーから を KeyVaultKey バックアップします。 呼び出しを非同期的にサブスクライブし、応答で返されるキーのバックアップ バイト配列の長さを出力します。

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:

name - KeyVaultKey の名前。

Returns:

Monoバックアップされたキー BLOB を格納している 。

backupKeyWithResponse

public Mono> backupKeyWithResponse(String name)

指定した KeyVaultKey のバックアップをクライアントにダウンロードするように要求します。 キー バックアップ操作では、KeyVaultKey保護された形式で Azure Key Vaultから をエクスポートします。 この操作では、Azure Key Vault システムの外部で使用できる形式のキー マテリアルは返されません。返されるキーマテリアルは、Azure Key Vault HSM または Azure Key Vault自体に対して保護されます。 この操作の目的は、クライアントが 1 つの Azure Key Vault インスタンスで を生成KeyVaultKeyし、 をKeyVaultKeyバックアップしてから、別の Azure Key Vault インスタンスに復元できるようにすることです。 バックアップ操作は、Azure Key Vaultから保護された形式でエクスポートKeyTypeするために使用できます。 の個々のバージョンを KeyVaultKey バックアップすることはできません。 Backup/Restore 地理的境界内でのみ実行できます。は、ある地理的領域からのバックアップを別の地理的領域に復元できないことを意味します。 たとえば、米国の地理的領域からのバックアップを EU の地理的領域に復元することはできません。 この操作には、アクセス許可が必要です key/backup

コード サンプル

キー コンテナーから を KeyVaultKey バックアップします。 呼び出しを非同期的にサブスクライブし、応答で返されるキーのバックアップ バイト配列の長さを出力します。

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:

name - KeyVaultKey の名前。

Returns:

MonoバックアップされたResponse<T>キー BLOB をvalue含む を含む 。

beginDeleteKey

public PollerFlux beginDeleteKey(String name)

KeyVaultKeyキー コンテナーから任意の型の を削除します。 キー コンテナー KeyVaultKey で論理的な削除が有効になっている場合、 は削除済み状態になり、完全削除のために消去する必要があります。それ以外の場合は、 KeyVaultKey は完全に削除されます。 削除操作は、Azure Key VaultにKeyVaultKey格納されているすべてのに適用されますが、 の個々のKeyVaultKeyバージョンには適用できません。 この操作により、 に関連付KeyVaultKeyけられている暗号化マテリアルが削除されます。つまりKeyVaultKey、 は、、または Encrypt/Decrypt 操作ではSign/VerifyWrap/Unwrap使用できません。 この操作には、アクセス許可が必要です keys/delete

コード サンプル

Azure Key Vault内の をKeyVaultKey削除します。 呼び出しを非同期的にサブスクライブし、応答が KeyVaultKey 受信されたときに詳細を出力します。

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:

name - 削除する の KeyVaultKey 名前。

Returns:

PollerFlux<T,U>状態をポーリングする DeletedKey

beginRecoverDeletedKey

public PollerFlux beginRecoverDeletedKey(String name)

キー コンテナー内の を KeyVaultKey 最新バージョンに回復し、論理的な削除が有効なコンテナーでのみ実行できます。 を回復 KeyVaultKey しようとすると、エラーが返されます。 これは、論理的な削除が有効なコンテナーでの削除操作の逆であると考えてください。 この操作には、アクセス許可が必要です keys/recover

コード サンプル

論理的な削除が KeyVaultKey 有効になっているキー コンテナーから を回復します。 呼び出しを非同期的にサブスクライブし、応答が受信されたときに回復されたキーの詳細を出力します。

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:

name - 回復する の KeyVaultKey 名前。

Returns:

PollerFlux<T,U>状態をポーリングする KeyVaultKey

createEcKey

public Mono createEcKey(CreateEcKeyOptions createEcKeyOptions)

KeyVaultKey しい を作成し、キー コンテナーに格納します。 EC キーの作成操作を使用して、Azure Key Vaultで任意の EC KeyType を作成できます。 KeyVaultKey指定した名前の が既に存在する場合、Azure Key Vault は の新しいバージョンを作成しますKeyVaultKey。 アクセス許可が必要です keys/create

CreateEcKeyOptions パラメーターは必須です。 は getCurveName() 、必要に応じて指定できます。 指定しない場合、既定値P_256は Azure Key Vaultによって使用されます。 と notBeforeexpires値は省略可能です。 フィールドはenabled、指定されていない場合、Azure Key Vault によって にtrue設定されます。

keyType 、作成するキーの KeyVaultKey 種類を示します。 指定できる値は、 EC と です EC_HSM

コード サンプル

Web キー曲線を使用して新しい KeyVaultKeyP_384 作成します。 キーは 1 日でアクティブになり、1 年で期限切れになります。 呼び出しを非同期的にサブスクライブし、応答が受信されたときに新しく KeyVaultKey 詳細を出力します。

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:

createEcKeyOptions - 作成 CreateEcKeyOptions される に関する情報を KeyVaultKey 格納している 。

Returns:

MonoKeyVaultKey含む 。

createEcKeyWithResponse

public Mono> createEcKeyWithResponse(CreateEcKeyOptions createEcKeyOptions)

KeyVaultKey しい を作成し、キー コンテナーに格納します。 EC キーの作成操作を使用して、Azure Key Vaultで任意の EC KeyType を作成できます。 KeyVaultKey指定した名前の が既に存在する場合、Azure Key Vault は の新しいバージョンを作成しますKeyVaultKey。 アクセス許可が必要です keys/create

CreateEcKeyOptions パラメーターは必須です。 は getCurveName() 、必要に応じて指定できます。 指定しない場合、既定値P_256は Azure Key Vaultによって使用されます。 と notBeforeexpires値は省略可能です。 フィールドはenabled、指定されていない場合、Azure Key Vault によって にtrue設定されます。

keyType 、作成するキーの KeyVaultKey 種類を示します。 指定できる値は、 EC と です EC_HSM

コード サンプル

Web キー曲線を使用して新しい KeyVaultKeyP_384 作成します。 キーは 1 日でアクティブになり、1 年で期限切れになります。 呼び出しを非同期的にサブスクライブし、応答が受信されたときに新しく KeyVaultKey 詳細を出力します。

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:

createEcKeyOptions - 作成 CreateEcKeyOptions される に関する情報を KeyVaultKey 格納している 。

Returns:

Monoを含む をResponse<T>value含む KeyVaultKey

createKey

public Mono createKey(CreateKeyOptions createKeyOptions)

KeyVaultKey しい を作成し、キー コンテナーに格納します。 キーの作成操作を使用して、Azure Key Vault内の 任意の をKeyType作成できます。 KeyVaultKey指定した名前の が既に存在する場合、Azure Key Vault は の新しいバージョンを作成しますKeyVaultKey。 アクセス許可が必要です keys/create

CreateKeyOptions パラメーターは必須です。 と getNotBefore()getExpiresOn()値は省略可能です。 フィールドはisEnabled()、指定されていない場合、Azure Key Vault によって にtrue設定されます。

getKeyType() 、作成する の KeyVaultKey 種類を示します。 使用可能な値は、EC、、EC_HSMRSARSA_HSMOCT、および OCT_HSMです。

コード サンプル

1 日でアクティブ化され、1 年で期限切れになる新しい KeyVaultKey を作成します。 呼び出しを非同期的にサブスクライブし、応答が受信されたときに新しく KeyVaultKey 詳細を出力します。

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:

createKeyOptions - 作成 CreateKeyOptions される に関する情報を KeyVaultKey 格納している 。

Returns:

MonoKeyVaultKey含む 。

createKey

public Mono createKey(String name, KeyType keyType)

KeyVaultKey しい を作成し、キー コンテナーに格納します。 キーの作成操作を使用して、Azure Key Vault内の 任意の をKeyType作成できます。 KeyVaultKey指定した名前の が既に存在する場合、Azure Key Vault は の新しいバージョンを作成しますKeyVaultKey。 アクセス許可が必要です keys/create

KeyType 、作成する の KeyVaultKey 種類を示します。 使用可能な値は、EC、、EC_HSMRSARSA_HSMOCT、および OCT_HSMです。

コード サンプル

新しい KeyVaultKey を作成します。 呼び出しを非同期的にサブスクライブし、応答が受信されたときに新しく KeyVaultKey 詳細を出力します。

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:

name - 作成される の KeyVaultKey 名前。
keyType - 作成する の KeyVaultKey 型。 有効な値については、「」を参照してください KeyType

Returns:

MonoKeyVaultKey含む 。

createKeyWithResponse

public Mono> createKeyWithResponse(CreateKeyOptions createKeyOptions)

KeyVaultKey しい を作成し、キー コンテナーに格納します。 キーの作成操作を使用して、Azure Key Vault内の 任意の をKeyType作成できます。 KeyVaultKey指定した名前の が既に存在する場合、Azure Key Vault は の新しいバージョンを作成しますKeyVaultKey。 アクセス許可が必要です keys/create

KeyType 、作成する の KeyVaultKey 種類を示します。 使用可能な値は、EC、、EC_HSMRSARSA_HSMOCT、および OCT_HSMです。

コード サンプル

新しい KeyVaultKey を作成します。 呼び出しを非同期的にサブスクライブし、応答が受信されたときに新しく KeyVaultKey 詳細を出力します。

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:

createKeyOptions - 作成 CreateKeyOptions される に関する情報を KeyVaultKey 格納している 。

Returns:

Monoを含む をResponse<T>value含む KeyVaultKey

createOctKey

public Mono createOctKey(CreateOctKeyOptions createOctKeyOptions)

キー コンテナーに新 KeyVaultKey しい を作成して格納します。 KeyVaultKey指定された名前の が既に存在する場合は、Azure Key Vaultによって新しいバージョンのキーが作成されます。 この操作には、アクセス許可が必要です keys/create

CreateOctKeyOptions パラメーターは必須です。 と notBeforeexpires値は省略可能です。 フィールドはenabled、指定されていない場合、Azure Key Vault によって にtrue設定されます。

keyType 、作成するキーの KeyVaultKey 種類を示します。 指定できる値は、 OCT と です OCT_HSM

コード サンプル

新しい KeyVaultKey を作成します。 は KeyVaultKey 1 日でアクティブになり、1 年で期限切れになります。 呼び出しを非同期的にサブスクライブし、応答が受信されたときに新しく KeyVaultKey の詳細を出力します。

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:

createOctKeyOptions - 作成 CreateOctKeyOptions される に関する情報を KeyVaultKey 格納している 。

Returns:

MonoKeyVaultKey含む 。

createOctKeyWithResponse

public Mono> createOctKeyWithResponse(CreateOctKeyOptions createOctKeyOptions)

キー コンテナーに新 KeyVaultKey しい を作成して格納します。 KeyVaultKey指定された名前の が既に存在する場合は、Azure Key Vaultによって新しいバージョンのキーが作成されます。 この操作には、アクセス許可が必要です keys/create

CreateOctKeyOptions パラメーターは必須です。 と notBeforeexpires値は省略可能です。 フィールドはenabled、指定されていない場合、Azure Key Vault によって にtrue設定されます。

keyType 、作成するキーの KeyVaultKey 種類を示します。 指定できる値は、 OCT と です OCT_HSM

コード サンプル

新しい KeyVaultKey を作成します。 は KeyVaultKey 1 日でアクティブになり、1 年で期限切れになります。 呼び出しを非同期的にサブスクライブし、応答が受信されたときに新しく KeyVaultKey の詳細を出力します。

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:

createOctKeyOptions - 作成 CreateOctKeyOptions される に関する情報を KeyVaultKey 格納している 。

Returns:

Monoを含む をResponse<T>value含む KeyVaultKey

createRsaKey

public Mono createRsaKey(CreateRsaKeyOptions createRsaKeyOptions)

/** 新 KeyVaultKey しい を作成し、キー コンテナーに格納します。 RSA キーの作成操作を使用して、Azure Key Vaultで任意の RSA キーの種類を作成できます。 KeyVaultKey指定した名前の が既に存在する場合、Azure Key Vault は の新しいバージョンを作成しますKeyVaultKey。 アクセス許可が必要です keys/create

CreateRsaKeyOptions パラメーターは必須です。 は getKeySize() 、必要に応じて指定できます。 と notBeforeexpires値は省略可能です。 フィールドはenabled、指定されていない場合、Azure Key Vault によって にtrue設定されます。

keyType 、作成する の KeyVaultKey 種類を示します。 指定できる値は、 RSA と です RSA_HSM

コード サンプル

1 日でアクティブ化され、1 年で期限切れになるサイズ 2048 の新しい KeyVaultKey を作成します。 呼び出しを非同期的にサブスクライブし、応答が受信されたときに新しく KeyVaultKey 詳細を出力します。

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:

createRsaKeyOptions - 作成 CreateRsaKeyOptions される に関する情報を KeyVaultKey 格納している 。

Returns:

MonoKeyVaultKey含む 。

createRsaKeyWithResponse

public Mono> createRsaKeyWithResponse(CreateRsaKeyOptions createRsaKeyOptions)

KeyVaultKey しい を作成し、キー コンテナーに格納します。 RSA キーの作成操作を使用して、Azure Key Vaultで任意の RSA キーの種類を作成できます。 KeyVaultKey指定した名前の が既に存在する場合、Azure Key Vault は の新しいバージョンを作成しますKeyVaultKey。 アクセス許可が必要です keys/create

CreateRsaKeyOptions パラメーターは必須です。 は getKeySize() 、必要に応じて指定できます。 と notBeforeexpires値は省略可能です。 フィールドはenabled、指定されていない場合、Azure Key Vault によって にtrue設定されます。

keyType 、作成する の KeyVaultKey 種類を示します。 指定できる値は、 RSA と です RSA_HSM

コード サンプル

1 日でアクティブ化され、1 年で期限切れになるサイズ 2048 の新しい KeyVaultKey を作成します。 非同期的に呼び出しをサブスクライブし、応答が受信されたときに新しい KeyVaultKey 詳細を出力します。

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:

createRsaKeyOptions - 作成 CreateRsaKeyOptions される に関する情報を KeyVaultKey 格納している 。

Returns:

Monoを含む をResponse<T>value含む KeyVaultKey

getCryptographyAsyncClient

public CryptographyAsyncClient getCryptographyAsyncClient(String keyName)

指定した CryptographyAsyncClient キーの最新バージョンの を作成します。

、、 などのDecryptUnwrapVerify操作を実行するときに正しい動作を保証するには、対応する逆演算に使用CryptographyAsyncClientされた特定のキー バージョンに対して作成された を使用することをお勧めします。 EncryptWrapSign

キー バージョンは、クライアントを構築する前に、 または を介してgetCryptographyAsyncClient(String keyName, String keyVersion)渡された にkeyIdentifier(String keyId)含まれていることkeyIdentifierを確認することで提供できます。

Parameters:

keyName - キーの名前です。

Returns:

指定された名前の CryptographyAsyncClient キーの最新バージョンに関連付けられている のインスタンス。

getCryptographyAsyncClient

public CryptographyAsyncClient getCryptographyAsyncClient(String keyName, String keyVersion)

特定の CryptographyAsyncClient キー バージョンの を作成します。

Parameters:

keyName - キーの名前です。
keyVersion - キーのバージョン。

Returns:

指定された名前とバージョンを持つキーに関連付けられている のインスタンス CryptographyAsyncClient 。 が null または空の場合keyVersion、クライアントは最新バージョンのキーを使用します。

getDeletedKey

public Mono getDeletedKey(String name)

のパブリック部分を KeyVaultKey取得します。 削除されたキーの取得操作は、論理的な削除が有効なコンテナーに適用されます。 この操作には アクセス許可が必要です keys/get

コード サンプル

KeyVaultKey論理的な削除が有効になっているキー コンテナーから を取得します。 非同期的に呼び出しをサブスクライブし、応答が KeyVaultKey 受信されたときに詳細を出力します。

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:

name - 削除された KeyVaultKeyの名前。

Returns:

MonoDeletedKey含む 。

getDeletedKeyWithResponse

public Mono> getDeletedKeyWithResponse(String name)

のパブリック部分を KeyVaultKey取得します。 削除されたキーの取得操作は、論理的な削除が有効なコンテナーに適用されます。 この操作には アクセス許可が必要です keys/get

コード サンプル

KeyVaultKey論理的な削除が有効になっているキー コンテナーから を取得します。 非同期的に呼び出しをサブスクライブし、応答が KeyVaultKey 受信されたときに詳細を出力します。

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:

name - 削除された KeyVaultKeyの名前。

Returns:

Monoを含む をResponse<T>value含む DeletedKey

getKey

public Mono getKey(String name)

指定した KeyVaultKey キー バージョンとキー バージョンの公開部分を取得します。 キーの取得操作はすべてに KeyType 適用でき、アクセス許可が keys/get 必要です。

コード サンプル

キー コンテナー内の の特定の KeyVaultKey バージョンを取得します。 非同期的に呼び出しをサブスクライブし、応答が KeyVaultKey 受信されたときに詳細を出力します。

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:

name - の名前を KeyVaultKeynullすることはできません。

Returns:

Mono要求された KeyVaultKeyを含む 。 キーの内容は、 が null または 空の場合nameですnull

getKey

public Mono getKey(String name, String version)

指定した KeyVaultKey キー バージョンとキー バージョンの公開部分を取得します。 キーの取得操作はすべてに KeyType 適用でき、アクセス許可が keys/get 必要です。

コード サンプル

キー コンテナー内の の特定の KeyVaultKey バージョンを取得します。 非同期的に呼び出しをサブスクライブし、応答が KeyVaultKey 受信されたときに詳細を出力します。

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:

name - の名前を KeyVaultKeynullすることはできません。
version - 取得するキーのバージョン。 これが空の String または null の場合、この呼び出しは、 を呼び出すこと getKey(String name)と同じであり、最新バージョンが取得されます。

Returns:

Mono要求された KeyVaultKeyを含む 。 キーの内容は、 null と の両方nameが または 空の場合ですnullversion

getKeyRotationPolicy

public Mono getKeyRotationPolicy(String keyName)

指定した名前の KeyRotationPolicyKeyVaultKey を取得します。 この操作には アクセス許可が必要です keys/get

コード サンプル

指定KeyVaultKeyした の をKeyRotationPolicy取得します。 非同期的に呼び出しをサブスクライブし、応答が KeyRotationPolicy 受信されたときに詳細を出力します。

keyAsyncClient.getKeyRotationPolicy("keyName")
     .subscribe(keyRotationPolicy ->
         System.out.printf("Retrieved key rotation policy with id: %s%n", keyRotationPolicy.getId()));

Parameters:

keyName - KeyVaultKey の名前。

Returns:

Monoキーの をKeyRotationPolicy含む 。

getKeyRotationPolicyWithResponse

public Mono> getKeyRotationPolicyWithResponse(String keyName)

指定した名前の KeyRotationPolicyKeyVaultKey を取得します。 この操作には アクセス許可が必要です keys/get

コード サンプル

指定KeyVaultKeyした の をKeyRotationPolicy取得します。 呼び出しを非同期的にサブスクライブし、応答が受信されたときに と KeyRotationPolicyResponse<T>詳細を出力します。

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:

keyName - KeyVaultKey の名前。

Returns:

Monoこの操作の が Response<T> 格納され、キーの がKeyRotationPolicy格納されている 。

getKeyWithResponse

public Mono> getKeyWithResponse(String name, String version)

指定した KeyVaultKey キー バージョンとキー バージョンの公開部分を取得します。 キーの取得操作はすべてに KeyType 適用でき、アクセス許可が keys/get 必要です。

コード サンプル

キー コンテナー内の の特定の KeyVaultKey バージョンを取得します。 非同期的に呼び出しをサブスクライブし、応答が KeyVaultKey 受信されたときに詳細を出力します。

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:

name - の名前を KeyVaultKeynullすることはできません。
version - 取得するキーのバージョン。 これが空の String または null の場合、この呼び出しは、 を呼び出すこと getKey(String name)と同じであり、最新バージョンが取得されます。

Returns:

Mono要求された KeyVaultKeyResponse<T>value含む を含む 。 キーの内容は、 null と の両方nameが または 空の場合ですnullversion

getRandomBytes

public Mono getRandomBytes(int count)

マネージド HSM からランダムな値を含む要求されたバイト数を取得します。

コード サンプル

マネージド HSM からランダムな値を含むバイト数を取得します。 取得したバイトを base64Url 形式で出力します。

int amount = 16;
 keyAsyncClient.getRandomBytes(amount)
     .subscribe(randomBytes ->
         System.out.printf("Retrieved %d random bytes: %s%n", amount, Arrays.toString(randomBytes)));

Parameters:

count - 要求されたランダム バイト数。

Returns:

Monoマネージド HSM からのランダムな値を含む要求されたバイト数を格納する 。

getRandomBytesWithResponse

public Mono> getRandomBytesWithResponse(int count)

マネージド HSM からランダムな値を含む要求されたバイト数を取得します。

コード サンプル

マネージド HSM からランダムな値を含むバイト数を取得します。 Response<T> 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:

count - 要求されたランダム バイト数。

Returns:

Monoこの操作の をResponse<T>含む と、マネージド HSM からのランダムな値を含む要求されたバイト数。

getVaultUrl

public String getVaultUrl()

サービス要求の送信先となるコンテナー エンドポイント URL を取得します。

Returns:

コンテナー エンドポイントの URL

importKey

public Mono importKey(ImportKeyOptions importKeyOptions)

外部で作成された JsonWebKey をインポートし、キー コンテナーに格納します。 インポート キー操作は、Azure Key Vaultに任意のをKeyTypeインポートするために使用できます。 KeyVaultKey指定した名前の が既に存在する場合、Azure Key Vault は の新しいバージョンを作成しますKeyVaultKey。 この操作には アクセス許可が必要です keys/import

ImportKeyOptionsは必須で、そのフィールドnamegetKey()を にすることはできませんnullexpiresの と notBeforekeyImportOptions値は省略可能です。 指定しない場合、フィールドに値は設定されません。 フィールドが enabledtrue設定され、isHardwareProtected()フィールドが指定されていない場合は、Azure Key Vault によって フィールドが にfalse設定されます。

コード サンプル

キー コンテナーに新 KeyVaultKey しい をインポートします。 非同期的に呼び出しをサブスクライブし、応答が受信されたときに新しい KeyVaultKey 詳細を出力します。

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:

importKeyOptions - ImportKeyOptionsインポートされる に関する情報をJsonWebKey格納している 。

Returns:

MonoKeyVaultKey含む 。

importKey

public Mono importKey(String name, JsonWebKey keyMaterial)

外部で作成された JsonWebKey をインポートし、キー コンテナーに格納します。 インポート キー操作は、Azure Key Vaultに任意のをKeyTypeインポートするために使用できます。 KeyVaultKey指定した名前の が既に存在する場合、Azure Key Vault は の新しいバージョンを作成しますKeyVaultKey。 この操作には アクセス許可が必要です keys/import

コード サンプル

キー コンテナーに新 KeyVaultKey しい をインポートします。 非同期的に呼び出しをサブスクライブし、応答が受信されたときに新しい KeyVaultKey 詳細を出力します。

keyAsyncClient.importKey("keyName", jsonWebKeyToImport)
     .subscribe(keyVaultKey ->
         System.out.printf("Imported key with name: %s and id: %s%n", keyVaultKey.getName(),
             keyVaultKey.getId()));

Parameters:

name - インポートされたキーの名前。
keyMaterial - インポートする Json Web キー。

Returns:

Monoを含む をResponse<T>value含む KeyVaultKey

importKeyWithResponse

public Mono> importKeyWithResponse(ImportKeyOptions importKeyOptions)

外部で作成された JsonWebKey をインポートし、キー コンテナーに格納します。 インポート キー操作は、Azure Key Vaultに任意のをKeyTypeインポートするために使用できます。 KeyVaultKey指定した名前の が既に存在する場合、Azure Key Vault は の新しいバージョンを作成しますKeyVaultKey。 この操作には アクセス許可が必要です keys/import

ImportKeyOptionsは必須で、そのフィールドnamegetKey()を にすることはできませんnullexpiresの と notBeforekeyImportOptions値は省略可能です。 指定しない場合、フィールドに値は設定されません。 フィールドが enabledtrue設定され、isHardwareProtected()フィールドが指定されていない場合は、Azure Key Vault によって フィールドが にfalse設定されます。

コード サンプル

キー コンテナーに新 KeyVaultKey しい をインポートします。 非同期的に呼び出しをサブスクライブし、応答が受信されたときに新しい KeyVaultKey 詳細を出力します。

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:

importKeyOptions - ImportKeyOptionsインポートされる に関する情報をJsonWebKey格納している 。

Returns:

Monoを含む をResponse<T>value含む KeyVaultKey

listDeletedKeys

public PagedFlux listDeletedKeys()

キー コンテナーの一覧 DeletedKey 。 はDeletedKey、 のパブリック部分DeletedKeyを含む構造体としてJsonWebKey取得されます。 削除されたキーの取得操作は、論理的な削除が有効になっているコンテナーに適用されます。 この操作には アクセス許可が必要です keys/list

コード サンプル

キー コンテナー内 DeletedKey の を一覧表示します。 呼び出しを非同期的にサブスクライブし、応答が受信されたときにそれぞれの DeletedKey 回復 ID を出力します。

keyAsyncClient.listDeletedKeys()
     .contextWrite(Context.of("key1", "value1", "key2", "value2"))
     .subscribe(deletedKey ->
         System.out.printf("Deleted key's recovery id:%s%n", deletedKey.getRecoveryId()));

Returns:

PagedFlux<T>コンテナー内のすべての をDeletedKey含む 。

listPropertiesOfKeyVersions

public PagedFlux listPropertiesOfKeyVersions(String name)

指定した KeyVaultKeyのすべてのバージョンを一覧表示します。 flux 内の個々のキー応答は、応答で提供される KeyProperties キー識別子、属性、タグとしてのみで表されます。 重要な品目の値は応答で指定されません。 この操作には アクセス許可が必要です keys/list

コード サンプル

この情報から、すべてのバージョンのキー マテリアルを使用してキーを取得できます。 内で を Flux 使用してgetKey(String name, String version)Flux#flatMap(Function)、 を KeyProperties 格納している にFluxKeyVaultKey変換します。

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:

name - KeyVaultKey の名前。

Returns:

PagedFlux<T>コンテナーでKeyProperties指定KeyVaultKeyされた のすべてのバージョンの を格納している 。 Flux のキーがキー name コンテナーに存在しない場合は空です。

listPropertiesOfKeys

public PagedFlux listPropertiesOfKeys()

キー コンテナーの一覧 KeyVaultKey 。 格納されている のパブリック部分を KeyVaultKey 含む構造体として JsonWebKey 、キー コンテナー内の の一覧を取得します KeyVaultKey。 リスト操作はすべてに KeyType 適用でき、リスト内の個々 KeyVaultKey の応答は、応答で提供されるキー識別子、属性、タグとしてのみ によって KeyProperties 表されます。 キーマテリアルと個々のキーバージョンは応答に一覧表示されません。 この操作には アクセス許可が必要です keys/list

コード サンプル

この情報から重要な資料を取得 KeyVaultKey できます。 内で を Flux 使用してgetKey(String name, String version)Flux#flatMap(Function)、 を KeyProperties 格納している にFluxKeyVaultKey変換します。

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:

PagedFlux<T>コンテナー内のすべてのキーを格納KeyPropertiesしている 。

purgeDeletedKey

public Mono purgeDeletedKey(String name)

回復の可能性なしに、指定された KeyVaultKey を完全に削除します。 削除されたキーの消去操作は、論理的な削除が有効なコンテナーに適用されます。 この操作には アクセス許可が必要です keys/purge

コード サンプル

論理的な削除が KeyVaultKey 有効になっているキー コンテナーから を消去します。 非同期的に呼び出しをサブスクライブし、応答が受信されたときにサーバー応答から状態コードを出力します。

keyAsyncClient.purgeDeletedKey("deletedKeyName")
     .subscribe(ignored ->
         System.out.println("Successfully purged deleted key"));

Parameters:

name - KeyVaultKey の名前。

Returns:

空の Mono

purgeDeletedKeyWithResponse

public Mono> purgeDeletedKeyWithResponse(String name)

回復の可能性なしに、指定された KeyVaultKey を完全に削除します。 削除されたキーの消去操作は、論理的な削除が有効なコンテナーに適用されます。 この操作には アクセス許可が必要です keys/purge

コード サンプル

論理的な削除が KeyVaultKey 有効になっているキー コンテナーから を消去します。 非同期的に呼び出しをサブスクライブし、応答が受信されたときにサーバー応答から状態コードを出力します。

keyAsyncClient.purgeDeletedKeyWithResponse("deletedKeyName")
     .contextWrite(Context.of("key1", "value1", "key2", "value2"))
     .subscribe(purgeDeletedKeyResponse ->
         System.out.printf("Purge response status code: %d%n", purgeDeletedKeyResponse.getStatusCode()));

Parameters:

name - KeyVaultKey の名前。

Returns:

Mono状態コードと HTTP ヘッダーを含む応答を含む 。

releaseKey

public Mono releaseKey(String name, String targetAttestationToken)

の最新バージョンを KeyVaultKeyリリースします。

KeyVaultKey エクスポート可能である必要があります。 この操作には アクセス許可が必要です keys/release

コード サンプル

KeyVaultKey を解放します。 呼び出しを非同期的にサブスクライブし、応答が受信されたときに を含む KeyVaultKey 署名済みオブジェクトを出力します。

String targetAttestationToken = "someAttestationToken";
 ReleaseKeyResult releaseKeyResult = keyClient.releaseKey("keyName", targetAttestationToken);

 System.out.printf("Signed object containing released key: %s%n", releaseKeyResult);

Parameters:

name - 解放する の KeyVaultKey 名前。
targetAttestationToken - リリースのターゲット KeyVaultKey の構成証明アサーション。

Returns:

Mono解放されたキーをReleaseKeyResult含む を格納している 。

releaseKey

public Mono releaseKey(String name, String version, String targetAttestationToken)

キーを解放します。

キーはエクスポート可能である必要があります。 この操作には、'keys/release' アクセス許可が必要です。

コード サンプル

KeyVaultKey を解放します。 呼び出しを非同期的にサブスクライブし、応答が受信されたときに を含む KeyVaultKey 署名済みオブジェクトを出力します。

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:

name - 解放する の KeyVaultKey 名前。
version - 取得するキーのバージョン。 これが空または nullの場合、この呼び出しは、 を呼び出すこと releaseKey(String name, String targetAttestationToken)と同じであり、最新のキー バージョンがリリースされます。
targetAttestationToken - キー リリースのターゲットの構成証明アサーション。

Returns:

Mono解放されたキーをReleaseKeyResult含む を格納している 。

releaseKeyWithResponse

public Mono> releaseKeyWithResponse(String name, String version, String targetAttestationToken, ReleaseKeyOptions releaseKeyOptions)

キーを解放します。

キーはエクスポート可能である必要があります。 この操作には、'keys/release' アクセス許可が必要です。

コード サンプル

KeyVaultKey を解放します。 呼び出しを非同期的にサブスクライブし、応答が Response<T> 受信されたときに を含む KeyVaultKey 詳細と署名されたオブジェクトを出力します。

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:

name - 解放するキーの名前。
version - 取得するキーのバージョン。 これが空または nullの場合、この呼び出しは、 を呼び出すこと releaseKey(String name, String targetAttestationToken)と同じであり、最新のキー バージョンがリリースされます。
targetAttestationToken - キー リリースのターゲットの構成証明アサーション。
releaseKeyOptions - を解放するためのKeyVaultKey追加ReleaseKeyOptions

Returns:

Monoこの操作の をResponse<T>含む と、ReleaseKeyResult解放されたキーを含む 。

restoreKeyBackup

public Mono restoreKeyBackup(byte[] backup)

バックアップ KeyVaultKey された をコンテナーに復元します。 以前にバックアップKeyVaultKeyした を Azure Key VaultにインポートしKeyVaultKey、そのキー識別子、属性、アクセス制御ポリシーを復元します。 復元操作は、以前にバックアップ KeyVaultKeyされた をインポートするために使用できます。 の個々のバージョンを KeyVaultKey 復元することはできません。 は KeyVaultKey 、バックアップ時と同じキー名で完全に復元されます。 ターゲット キー コンテナーでキー名を使用できない場合、復元操作は拒否されます。 復元中にキー名が保持されている間、 が別のコンテナーに復元されると KeyVaultKey 、最終的なキー識別子が変更されます。 復元操作はすべてのバージョンを復元し、バージョン識別子を保持します。 復元操作にはセキュリティ制約が適用されます。ターゲット キー コンテナーは、ソース キー コンテナーと同じ Microsoft Azure サブスクリプションによって所有されている必要があります。 ユーザーは、ターゲット キー コンテナーのアクセス許可を持っている restore 必要があります。 この操作には アクセス許可が必要です keys/restore

コード サンプル

KeyVaultKeyキー コンテナー内の をバックアップから復元します。 呼び出しを非同期的にサブスクライブし、応答が受信されたときに復元されたキーの詳細を出力します。

キー バックアップ バイト配列を復元操作に渡します。

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:

backup - に関連付 KeyVaultKeyけられているバックアップ BLOB。

Returns:

MonoKeyVaultKey含む 。

restoreKeyBackupWithResponse

public Mono> restoreKeyBackupWithResponse(byte[] backup)

バックアップ KeyVaultKey された をコンテナーに復元します。 以前にバックアップKeyVaultKeyした を Azure Key VaultにインポートしKeyVaultKey、そのキー識別子、属性、アクセス制御ポリシーを復元します。 復元操作は、以前にバックアップ KeyVaultKeyされた をインポートするために使用できます。 の個々のバージョンを KeyVaultKey 復元することはできません。 は KeyVaultKey 、バックアップ時と同じキー名で完全に復元されます。 ターゲット キー コンテナーでキー名を使用できない場合、復元操作は拒否されます。 復元中にキー名が保持されている間、 が別のコンテナーに復元されると KeyVaultKey 、最終的なキー識別子が変更されます。 復元操作はすべてのバージョンを復元し、バージョン識別子を保持します。 復元操作にはセキュリティ制約が適用されます。ターゲット キー コンテナーは、ソース キー コンテナーと同じ Microsoft Azure サブスクリプションによって所有されている必要があります。 ユーザーは、ターゲット キー コンテナーのアクセス許可を持っている restore 必要があります。 この操作には アクセス許可が必要です keys/restore

コード サンプル

KeyVaultKeyキー コンテナー内の をバックアップから復元します。 呼び出しを非同期的にサブスクライブし、応答が受信されたときに復元されたキーの詳細を出力します。

キー バックアップ バイト配列を復元操作に渡します。

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:

backup - に関連付 KeyVaultKeyけられているバックアップ BLOB。

Returns:

Monoを含む をResponse<T>value含む KeyVaultKey

rotateKey

public Mono rotateKey(String name)

を回転します KeyVaultKey。 回転キー操作は、 に KeyRotationPolicy基づいて行われます。 この操作には アクセス許可が必要です keys/rotate

コード サンプル

を回転します KeyVaultKey。 詳細を出力します KeyVaultKey

keyAsyncClient.rotateKey("keyName")
     .subscribe(key ->
         System.out.printf("Rotated key with name: %s and version:%s%n", key.getName(),
             key.getProperties().getVersion()));

Parameters:

name - 回転する の KeyVaultKey 名前。 システムは、指定された KeyVaultKeyに新しいバージョンを生成します。

Returns:

回転した KeyVaultKeyの新しいバージョン。

rotateKeyWithResponse

public Mono> rotateKeyWithResponse(String name)

を回転します KeyVaultKey。 回転キー操作は、 に KeyRotationPolicy基づいて行われます。 この操作には アクセス許可が必要です keys/rotate

コード サンプル

を回転します KeyVaultKey。 呼び出しを非同期的にサブスクライブし、応答が受信されたときに と KeyVaultKeyResponse<T>詳細を出力します。

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:

name - 回転する の KeyVaultKey 名前。 システムは、指定された KeyVaultKeyに新しいバージョンを生成します。

Returns:

Monoこの操作の をResponse<T>含む と、回転した の新しいバージョンを格納している KeyVaultKey

updateKeyProperties

public Mono updateKeyProperties(KeyProperties keyProperties, KeyOperation[] keyOperations)

を更新KeyPropertiesし、KeyOperation指定した KeyVaultKeyに関連付けられていますが、キー コンテナーで指定された KeyVaultKey の暗号化キー マテリアルには関連付けられません。 既存の格納されているKeyVaultKey更新操作の変更KeyPropertiesと、KeyProperties要求で指定されていない変更は変更されません。 それ自体の暗号化キー マテリアルは KeyVaultKey 変更できません。 この操作には アクセス許可が必要です keys/set

コード サンプル

の最新バージョンをKeyVaultKey取得し、notBefore 時間を変更し、Azure Key Vaultで更新します。 非同期的に呼び出しをサブスクライブし、応答が KeyVaultKey 受信されたときに詳細を出力します。

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:

keyProperties - KeyProperties更新されたプロパティを持つ オブジェクト。
keyOperations - キーに関連付ける更新 KeyOperation

Returns:

MonoKeyVaultKey含む 。

updateKeyPropertiesWithResponse

public Mono> updateKeyPropertiesWithResponse(KeyProperties keyProperties, KeyOperation[] keyOperations)

を更新KeyPropertiesし、KeyOperation指定した KeyVaultKeyに関連付けられていますが、キー コンテナーで指定された KeyVaultKey の暗号化キー マテリアルには関連付けられません。 既存の格納されているKeyVaultKey更新操作の変更KeyPropertiesと、KeyProperties要求で指定されていない変更は変更されません。 それ自体の暗号化キー マテリアルは KeyVaultKey 変更できません。 この操作には アクセス許可が必要です keys/set

コード サンプル

の最新バージョンをKeyVaultKey取得し、notBefore 時間を変更し、Azure Key Vaultで更新します。 非同期的に呼び出しをサブスクライブし、応答が KeyVaultKey 受信されたときに詳細を出力します。

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:

keyProperties - KeyProperties更新されたプロパティを持つ オブジェクト。
keyOperations - キーに関連付ける更新 KeyOperation

Returns:

Monoを含む をResponse<T>value含む KeyVaultKey

updateKeyRotationPolicy

public Mono updateKeyRotationPolicy(String keyName, KeyRotationPolicy keyRotationPolicy)

指定した名前のキーの をKeyRotationPolicy更新します。 この操作には アクセス許可が必要です keys/update

コード サンプル

指定KeyVaultKeyした の をKeyRotationPolicy更新します。 非同期的に呼び出しをサブスクライブし、応答が KeyRotationPolicy 受信されたときに詳細を出力します。

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:

keyName - KeyVaultKey の名前。
keyRotationPolicy - KeyRotationPolicyキーの 。

Returns:

Monoキーの をKeyRotationPolicy含む 。

updateKeyRotationPolicyWithResponse

public Mono> updateKeyRotationPolicyWithResponse(String keyName, KeyRotationPolicy keyRotationPolicy)

指定した名前のキーの をKeyRotationPolicy更新します。 この操作には アクセス許可が必要です keys/update

コード サンプル

指定KeyVaultKeyした の をKeyRotationPolicy更新します。 呼び出しを非同期的にサブスクライブし、応答が受信されたときに と KeyRotationPolicyResponse<T>詳細を出力します。

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:

keyName - KeyVaultKey の名前。
keyRotationPolicy - KeyRotationPolicyキーの 。

Returns:

Monoこの操作の が Response<T> 格納され、キーの がKeyRotationPolicy格納されている 。

適用対象