次の方法で共有


KeyClient クラス

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

public final class KeyClient

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

作業の開始

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

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

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

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

KeyClient keyClient = new KeyClientBuilder()
     .vaultUrl("<your-key-vault-url>")
     .credential(new DefaultAzureCredentialBuilder().build())
     .buildClient();

暗号化キーを作成する

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

コード サンプル:

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

KeyVaultKey key = keyClient.createKey("keyName", KeyType.EC);
 System.out.printf("Created key with name: %s and id: %s%n", key.getName(), key.getId());

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


暗号化キーを取得する

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

コード サンプル:

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

KeyVaultKey keyWithVersionValue = keyClient.getKey("keyName");

 System.out.printf("Retrieved key with name: %s and: id %s%n", keyWithVersionValue.getName(),
     keyWithVersionValue.getId());

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


暗号化キーを削除する

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

コード サンプル:

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

SyncPoller<DeletedKey, Void> deleteKeyPoller = keyClient.beginDeleteKey("keyName");
 PollResponse<DeletedKey> deleteKeyPollResponse = deleteKeyPoller.poll();

 // Deleted date only works for SoftDelete Enabled Key Vault.
 DeletedKey deletedKey = deleteKeyPollResponse.getValue();

 System.out.printf("Key delete date: %s%n", deletedKey.getDeletedOn());
 System.out.printf("Deleted key's recovery id: %s%n", deletedKey.getRecoveryId());

 // Key is being deleted on the server.
 deleteKeyPoller.waitForCompletion();
 // Key is deleted

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

メソッドの概要

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

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

Response<byte[]> backupKeyWithResponse(String name, Context context)

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

SyncPoller<DeletedKey,Void> beginDeleteKey(String name)

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

SyncPoller<KeyVaultKey,Void> beginRecoverDeletedKey(String name)

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

KeyVaultKey createEcKey(CreateEcKeyOptions createEcKeyOptions)

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

Response<KeyVaultKey> createEcKeyWithResponse(CreateEcKeyOptions createEcKeyOptions, Context context)

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

KeyVaultKey createKey(CreateKeyOptions createKeyOptions)

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

KeyVaultKey createKey(String name, KeyType keyType)

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

Response<KeyVaultKey> createKeyWithResponse(CreateKeyOptions createKeyOptions, Context context)

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

KeyVaultKey createOctKey(CreateOctKeyOptions createOctKeyOptions)

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

Response<KeyVaultKey> createOctKeyWithResponse(CreateOctKeyOptions createOctKeyOptions, Context context)

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

KeyVaultKey createRsaKey(CreateRsaKeyOptions createRsaKeyOptions)

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

Response<KeyVaultKey> createRsaKeyWithResponse(CreateRsaKeyOptions createRsaKeyOptions, Context context)

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

CryptographyClient getCryptographyClient(String keyName)

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

CryptographyClient getCryptographyClient(String keyName, String keyVersion)

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

DeletedKey getDeletedKey(String name)

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

Response<DeletedKey> getDeletedKeyWithResponse(String name, Context context)

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

KeyVaultKey getKey(String name)

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

KeyVaultKey getKey(String name, String version)

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

KeyRotationPolicy getKeyRotationPolicy(String keyName)

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

Response<KeyRotationPolicy> getKeyRotationPolicyWithResponse(String keyName, Context context)

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

Response<KeyVaultKey> getKeyWithResponse(String name, String version, Context context)

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

byte[] getRandomBytes(int count)

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

Response<byte[]> getRandomBytesWithResponse(int count, Context context)

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

String getVaultUrl()

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

KeyVaultKey importKey(ImportKeyOptions importKeyOptions)

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

KeyVaultKey importKey(String name, JsonWebKey keyMaterial)

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

Response<KeyVaultKey> importKeyWithResponse(ImportKeyOptions importKeyOptions, Context context)

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

PagedIterable<DeletedKey> listDeletedKeys()

キー コンテナーの一覧 DeletedKey

PagedIterable<DeletedKey> listDeletedKeys(Context context)

キー コンテナーの一覧 DeletedKey

PagedIterable<KeyProperties> listPropertiesOfKeyVersions(String name)

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

PagedIterable<KeyProperties> listPropertiesOfKeyVersions(String name, Context context)

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

PagedIterable<KeyProperties> listPropertiesOfKeys()

キー コンテナーの一覧 KeyVaultKey

PagedIterable<KeyProperties> listPropertiesOfKeys(Context context)

キー コンテナーの一覧 KeyVaultKey

void purgeDeletedKey(String name)

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

Response<Void> purgeDeletedKeyWithResponse(String name, Context context)

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

ReleaseKeyResult releaseKey(String name, String targetAttestationToken)

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

ReleaseKeyResult releaseKey(String name, String version, String targetAttestationToken)

の特定のバージョンを解放します KeyVaultKey

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

KeyVaultKey を解放します。

KeyVaultKey restoreKeyBackup(byte[] backup)

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

Response<KeyVaultKey> restoreKeyBackupWithResponse(byte[] backup, Context context)

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

KeyVaultKey rotateKey(String name)

を回転します KeyVaultKey

Response<KeyVaultKey> rotateKeyWithResponse(String name, Context context)

を回転します KeyVaultKey

KeyVaultKey updateKeyProperties(KeyProperties keyProperties, KeyOperation[] keyOperations)

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

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

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

KeyRotationPolicy updateKeyRotationPolicy(String keyName, KeyRotationPolicy keyRotationPolicy)

指定した名前で の をKeyRotationPolicyKeyVaultKey更新します。

Response<KeyRotationPolicy> updateKeyRotationPolicyWithResponse(String keyName, KeyRotationPolicy keyRotationPolicy, Context context)

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

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

メソッドの詳細

backupKey

public byte[] 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 バックアップします。

byte[] keyBackup = keyClient.backupKey("keyName");

 System.out.printf("Key backup byte array length: %s%n", keyBackup.length);

Parameters:

name - KeyVaultKey の名前。

Returns:

バックアップされたキー BLOB。

backupKeyWithResponse

public Response backupKeyWithResponse(String name, Context context)

指定した 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 バックアップし、 で Response<T>返されるキーのバックアップ バイト配列の長さを出力します。

Response<byte[]> backupKeyResponse = keyClient.backupKeyWithResponse("keyName", new Context("key1", "value1"));

 System.out.printf("Key backup byte array length: %s%n", backupKeyResponse.getValue().length);

Parameters:

name - KeyVaultKey の名前。
context - サービス呼び出し中に をHttpPipeline介して渡される追加Context

Returns:

Response<T>バックアップされたvalueキー BLOB が格納されている 。

beginDeleteKey

public SyncPoller beginDeleteKey(String name)

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

コード サンプル

キー コンテナーから を KeyVaultKey 削除します。 の回復 ID を出力します KeyVaultKey

SyncPoller<DeletedKey, Void> deleteKeyPoller = keyClient.beginDeleteKey("keyName");
 PollResponse<DeletedKey> deleteKeyPollResponse = deleteKeyPoller.poll();

 // Deleted date only works for SoftDelete Enabled Key Vault.
 DeletedKey deletedKey = deleteKeyPollResponse.getValue();

 System.out.printf("Key delete date: %s%n", deletedKey.getDeletedOn());
 System.out.printf("Deleted key's recovery id: %s%n", deletedKey.getRecoveryId());

 // Key is being deleted on the server.
 deleteKeyPoller.waitForCompletion();
 // Key is deleted

Parameters:

name - 削除する の KeyVaultKey 名前。

Returns:

ポーリングして取得する A SyncPoller<T,U>DeletedKey

beginRecoverDeletedKey

public SyncPoller beginRecoverDeletedKey(String name)

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

コード サンプル

論理的な削除が KeyVaultKey 有効になっているキー コンテナーから を回復します。

SyncPoller<KeyVaultKey, Void> recoverKeyPoller = keyClient.beginRecoverDeletedKey("deletedKeyName");

 PollResponse<KeyVaultKey> recoverKeyPollResponse = recoverKeyPoller.poll();

 KeyVaultKey recoveredKey = recoverKeyPollResponse.getValue();
 System.out.printf("Recovered key name: %s%n", recoveredKey.getName());
 System.out.printf("Recovered key id: %s%n", recoveredKey.getId());

 // Key is being recovered on the server.
 recoverKeyPoller.waitForCompletion();
 // Key is recovered

Parameters:

name - 回復する の KeyVaultKey 名前。

Returns:

SyncPoller<T,U>をポーリングして取得KeyVaultKeyする 。

createEcKey

public KeyVaultKey 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));
 KeyVaultKey ecKey = keyClient.createEcKey(createEcKeyOptions);

 System.out.printf("Created key with name: %s and id: %s%n", ecKey.getName(), ecKey.getId());

Parameters:

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

Returns:

createEcKeyWithResponse

public Response createEcKeyWithResponse(CreateEcKeyOptions createEcKeyOptions, Context context)

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));
 Response<KeyVaultKey> createEcKeyResponse =
     keyClient.createEcKeyWithResponse(createEcKeyOptions, new Context("key1", "value1"));

 System.out.printf("Created key with name: %s and: id %s%n", createEcKeyResponse.getValue().getName(),
     createEcKeyResponse.getValue().getId());

Parameters:

createEcKeyOptions - 作成 CreateEcKeyOptions される に関する情報を KeyVaultKey 格納している 。
context - サービス呼び出し中に をHttpPipeline介して渡される追加Context

Returns:

Response<T>value格納されている KeyVaultKey

createKey

public KeyVaultKey createKey(CreateKeyOptions createKeyOptions)

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

CreateKeyOptions パラメーターは必須です。 と getNotBefore()getExpiresOn()値は省略可能です。 isEnabled() enabled} フィールドは、指定されていない場合、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));
 KeyVaultKey optionsKey = keyClient.createKey(createKeyOptions);

 System.out.printf("Created key with name: %s and id: %s%n", optionsKey.getName(), optionsKey.getId());

Parameters:

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

Returns:

createKey

public KeyVaultKey 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

KeyVaultKey key = keyClient.createKey("keyName", KeyType.EC);
 System.out.printf("Created key with name: %s and id: %s%n", key.getName(), key.getId());

Parameters:

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

Returns:

createKeyWithResponse

public Response createKeyWithResponse(CreateKeyOptions createKeyOptions, Context context)

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));
 Response<KeyVaultKey> createKeyResponse =
     keyClient.createKeyWithResponse(createKeyOptions, new Context("key1", "value1"));

 System.out.printf("Created key with name: %s and: id %s%n", createKeyResponse.getValue().getName(),
     createKeyResponse.getValue().getId());

Parameters:

createKeyOptions - 作成 CreateKeyOptions される に関する情報を KeyVaultKey 格納している 。
context - サービス呼び出し中に をHttpPipeline介して渡される追加Context

Returns:

Response<T>value格納されている KeyVaultKey

createOctKey

public KeyVaultKey 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));
 KeyVaultKey octKey = keyClient.createOctKey(createOctKeyOptions);

 System.out.printf("Created key with name: %s and id: %s%n", octKey.getName(), octKey.getId());

Parameters:

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

Returns:

createOctKeyWithResponse

public Response createOctKeyWithResponse(CreateOctKeyOptions createOctKeyOptions, Context context)

キー コンテナーに新 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));
 Response<KeyVaultKey> createOctKeyResponse =
     keyClient.createOctKeyWithResponse(createOctKeyOptions, new Context("key1", "value1"));

 System.out.printf("Created key with name: %s and: id %s%n", createOctKeyResponse.getValue().getName(),
     createOctKeyResponse.getValue().getId());

Parameters:

createOctKeyOptions - 作成 CreateOctKeyOptions される に関する情報を KeyVaultKey 格納している 。
context - サービス呼び出し中に をHttpPipeline介して渡される追加Context

Returns:

Response<T>value格納されている KeyVaultKey

createRsaKey

public KeyVaultKey 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));
 KeyVaultKey rsaKey = keyClient.createRsaKey(createRsaKeyOptions);

 System.out.printf("Created key with name: %s and id: %s%n", rsaKey.getName(), rsaKey.getId());

Parameters:

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

Returns:

createRsaKeyWithResponse

public Response createRsaKeyWithResponse(CreateRsaKeyOptions createRsaKeyOptions, Context context)

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

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

keyType 、作成する の KeyVaultKey 種類を示します。 使用できる値は、 RSARSA_HSMです。

コード サンプル

1 日でアクティブ化され、1 年で期限切れになるサイズ 2048 の新しい KeyVaultKey を作成します。 の詳細を出力します KeyVaultKey

CreateRsaKeyOptions createRsaKeyOptions = new CreateRsaKeyOptions("keyName")
     .setKeySize(2048)
     .setNotBefore(OffsetDateTime.now().plusDays(1))
     .setExpiresOn(OffsetDateTime.now().plusYears(1));
 Response<KeyVaultKey> createRsaKeyResponse =
     keyClient.createRsaKeyWithResponse(createRsaKeyOptions, new Context("key1", "value1"));

 System.out.printf("Created key with name: %s and: id %s%n", createRsaKeyResponse.getValue().getName(),
     createRsaKeyResponse.getValue().getId());

Parameters:

createRsaKeyOptions - 作成 CreateRsaKeyOptions される に関する情報を KeyVaultKey 格納している 。
context - サービス呼び出し中に をHttpPipeline介して渡される追加Context

Returns:

Response<T>value含む KeyVaultKey

getCryptographyClient

public CryptographyClient getCryptographyClient(String keyName)

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

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

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

Parameters:

keyName - キーの名前です。

Returns:

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

getCryptographyClient

public CryptographyClient getCryptographyClient(String keyName, String keyVersion)

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

Parameters:

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

Returns:

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

getDeletedKey

public DeletedKey getDeletedKey(String name)

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

コード サンプル

KeyVaultKey論理的な削除が有効になっているキー コンテナーから を取得します。 の詳細を出力します KeyVaultKey

DeletedKey deletedKey = keyClient.getDeletedKey("keyName");

 System.out.printf("Deleted key's recovery id: %s%n", deletedKey.getRecoveryId());

Parameters:

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

Returns:

getDeletedKeyWithResponse

public Response getDeletedKeyWithResponse(String name, Context context)

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

コード サンプル

KeyVaultKey論理的な削除が有効になっているキー コンテナーから を取得します。 で返された の KeyVaultKey 詳細を出力します Response<T>

Response<DeletedKey> deletedKeyResponse =
     keyClient.getDeletedKeyWithResponse("keyName", new Context("key1", "value1"));

 System.out.printf("Deleted key with recovery id: %s%n", deletedKeyResponse.getValue().getRecoveryId());

Parameters:

name - 削除された KeyVaultKeyの名前。
context - サービス呼び出し中に をHttpPipeline介して渡される追加Context

Returns:

Response<T>value含む DeletedKey

getKey

public KeyVaultKey getKey(String name)

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

コード サンプル

キー コンテナー内の の特定の KeyVaultKey バージョンを取得します。 の詳細を出力します KeyVaultKey

KeyVaultKey keyWithVersionValue = keyClient.getKey("keyName");

 System.out.printf("Retrieved key with name: %s and: id %s%n", keyWithVersionValue.getName(),
     keyWithVersionValue.getId());

Parameters:

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

Returns:

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

getKey

public KeyVaultKey getKey(String name, String version)

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

コード サンプル

キー コンテナー内の の特定の KeyVaultKey バージョンを取得します。 の詳細を出力します KeyVaultKey

String keyVersion = "6A385B124DEF4096AF1361A85B16C204";
 KeyVaultKey keyWithVersion = keyClient.getKey("keyName", keyVersion);

 System.out.printf("Retrieved key with name: %s and: id %s%n", keyWithVersion.getName(),
     keyWithVersion.getId());

Parameters:

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

Returns:

要求された KeyVaultKey。 のKeyVaultKey内容は、 nullversion の両方nameが または 空の場合ですnull

getKeyRotationPolicy

public KeyRotationPolicy getKeyRotationPolicy(String keyName)

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

コード サンプル

指定KeyVaultKeyした の をKeyRotationPolicy取得します。 詳細を出力します KeyRotationPolicy

KeyRotationPolicy keyRotationPolicy = keyClient.getKeyRotationPolicy("keyName");

 System.out.printf("Retrieved key rotation policy with id: %s%n", keyRotationPolicy.getId());

Parameters:

keyName - KeyVaultKey の名前。

Returns:

getKeyRotationPolicyWithResponse

public Response getKeyRotationPolicyWithResponse(String keyName, Context context)

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

コード サンプル

指定KeyVaultKeyした の をKeyRotationPolicy取得します。 と の詳細をResponse<T>KeyRotationPolicy出力します。

Response<KeyRotationPolicy> keyRotationPolicyResponse =
     keyClient.getKeyRotationPolicyWithResponse("keyName", new Context("key1", "value1"));

 System.out.printf("Response received successfully with status code: %d. Retrieved key rotation policy"
     + "with id: %s%n", keyRotationPolicyResponse.getStatusCode(), keyRotationPolicyResponse.getValue().getId());

Parameters:

keyName - KeyVaultKey の名前。
context - サービス呼び出し中に をHttpPipeline介して渡される追加Context

Returns:

Response<T>の を含むKeyRotationPolicyこの操作の KeyVaultKey

getKeyWithResponse

public Response getKeyWithResponse(String name, String version, Context context)

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

コード サンプル

キー コンテナー内の の特定の KeyVaultKey バージョンを取得します。 の詳細を出力します KeyVaultKey

String keyVersion = "6A385B124DEF4096AF1361A85B16C204";
 Response<KeyVaultKey> getKeyResponse =
     keyClient.getKeyWithResponse("keyName", keyVersion, new Context("key1", "value1"));

 System.out.printf("Retrieved key with name: %s and: id %s%n", getKeyResponse.getValue().getName(),
     getKeyResponse.getValue().getId());

Parameters:

name - の名前を KeyVaultKeynullすることはできません。
version - 取得する の KeyVaultKey バージョン。 これが空の文字列または nullの場合、この呼び出しは、 を呼び出すこと getKey(String name)と同じであり、最新バージョンが取得されます。
context - サービス呼び出し中に をHttpPipeline介して渡される追加Context

Returns:

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

getRandomBytes

public byte[] getRandomBytes(int count)

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

コード サンプル

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

int amount = 16;
 byte[] randomBytes = keyClient.getRandomBytes(amount);

 System.out.printf("Retrieved %d random bytes: %s%n", amount, Arrays.toString(randomBytes));

Parameters:

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

Returns:

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

getRandomBytesWithResponse

public Response getRandomBytesWithResponse(int count, Context context)

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

コード サンプル

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

int amountOfBytes = 16;
 Response<byte[]> response =
     keyClient.getRandomBytesWithResponse(amountOfBytes, new Context("key1", "value1"));

 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 - 要求されたランダム バイト数。
context - サービス呼び出し中に をHttpPipeline介して渡される追加Context

Returns:

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

getVaultUrl

public String getVaultUrl()

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

Returns:

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

importKey

public KeyVaultKey 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);
 KeyVaultKey importedKey = keyClient.importKey(options);

 System.out.printf("Imported key with name: %s and id: %s%n", importedKey.getName(),
     importedKey.getId());

Parameters:

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

Returns:

importKey

public KeyVaultKey importKey(String name, JsonWebKey keyMaterial)

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

コード サンプル

キー コンテナーに新 KeyVaultKey しい をインポートします。 の詳細を出力します KeyVaultKey

KeyVaultKey key = keyClient.importKey("keyName", jsonWebKeyToImport);

 System.out.printf("Imported key with name: %s and id: %s%n", key.getName(), key.getId());

Parameters:

name - KeyVaultKey の名前。
keyMaterial - JsonWebKeyインポートされる 。

Returns:

importKeyWithResponse

public Response importKeyWithResponse(ImportKeyOptions importKeyOptions, Context context)

外部で作成された 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);
 Response<KeyVaultKey> response =
     keyClient.importKeyWithResponse(importKeyOptions, new Context("key1", "value1"));

 System.out.printf("Imported key with name: %s and id: %s%n", response.getValue().getName(),
     response.getValue().getId());

Parameters:

importKeyOptions - ImportKeyOptionsインポートされる に関する情報をJsonWebKey格納している 。
context - サービス呼び出し中に をHttpPipeline介して渡される追加Context

Returns:

Response<T>value含む KeyVaultKey

listDeletedKeys

public PagedIterable listDeletedKeys()

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

コード サンプル

キー コンテナー内の を DeletedKey 一覧表示し、それぞれの DeletedKey 回復 ID を出力します。

for (DeletedKey deletedKey : keyClient.listDeletedKeys()) {
     System.out.printf("Deleted key's recovery id:%s%n", deletedKey.getRecoveryId());
 }

削除されたキーをページごとに反復処理するコード サンプル

キー コンテナー内の DeletedKey by ページを反復処理し、削除された各キーの回復 ID を出力します。

keyClient.listDeletedKeys().iterableByPage().forEach(pagedResponse -> {
     System.out.printf("Got response details. Url: %s. Status code: %d.%n",
         pagedResponse.getRequest().getUrl(), pagedResponse.getStatusCode());
     pagedResponse.getElements().forEach(deletedKey ->
         System.out.printf("Deleted key's recovery id:%s%n", deletedKey.getRecoveryId()));
 });

Returns:

PagedIterable<T>コンテナー内のすべての 。DeletedKey

listDeletedKeys

public PagedIterable listDeletedKeys(Context context)

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

コード サンプル

キー コンテナー内の を DeletedKey 一覧表示し、それぞれの DeletedKey 回復 ID を出力します。

for (DeletedKey deletedKey : keyClient.listDeletedKeys(new Context("key1", "value1"))) {
     System.out.printf("Deleted key's recovery id:%s%n", deletedKey.getRecoveryId());
 }

削除されたキーをページごとに反復処理するコード サンプル

キー コンテナー内の DeletedKey by ページを反復処理し、削除された各キーの回復 ID を出力します。

keyClient.listDeletedKeys().iterableByPage().forEach(pagedResponse -> {
     System.out.printf("Got response details. Url: %s. Status code: %d.%n",
         pagedResponse.getRequest().getUrl(), pagedResponse.getStatusCode());
     pagedResponse.getElements().forEach(deletedKey ->
         System.out.printf("Deleted key's recovery id:%s%n", deletedKey.getRecoveryId()));
 });

Parameters:

context - サービス呼び出し中に をHttpPipeline介して渡される追加Context

Returns:

PagedIterable<T>コンテナー内のすべての 。DeletedKey

listPropertiesOfKeyVersions

public PagedIterable listPropertiesOfKeyVersions(String name)

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

この情報から各バージョンの重要な資料を取得 KeyVaultKey できます。 をループして を KeyProperties 呼び出します getKey(String name, String version)。 これにより、指定したバージョンに KeyVaultKey 含まれるキー マテリアルを含む が返されます。

for (KeyProperties keyProperties : keyClient.listPropertiesOfKeyVersions("keyName")) {
     KeyVaultKey key = keyClient.getKey(keyProperties.getName(), keyProperties.getVersion());

     System.out.printf("Retrieved key version: %s with name: %s and type: %s%n",
         key.getProperties().getVersion(), key.getName(), key.getKeyType());
 }

キー バージョンをページごとに反復処理するコード サンプル

この情報から各バージョンの重要な資料を取得 KeyVaultKey できます。 すべての by ページを KeyProperties 反復処理し、 を呼び出します getKey(String name, String version)。 これにより、指定したバージョンに KeyVaultKey 含まれるキー マテリアルを含む が返されます。

keyClient.listPropertiesOfKeyVersions("keyName").iterableByPage().forEach(pagedResponse -> {
     System.out.printf("Got response details. Url: %s. Status code: %d.%n",
         pagedResponse.getRequest().getUrl(), pagedResponse.getStatusCode());
     pagedResponse.getElements().forEach(keyProperties ->
         System.out.printf("Key name: %s. Key version: %s.%n", keyProperties.getName(),
             keyProperties.getVersion()));
 });

Parameters:

name - KeyVaultKey の名前。

Returns:

PagedIterable<T> コンテナー KeyProperties 内の指定されたキーのすべてのバージョンの 。 指定された name を持つ がKeyVaultKeyキー コンテナーに存在しない場合、リストは空です。

listPropertiesOfKeyVersions

public PagedIterable listPropertiesOfKeyVersions(String name, Context context)

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

この情報から各バージョンの重要な資料を取得 KeyVaultKey できます。 をループして を KeyProperties 呼び出します getKey(String name, String version)。 これにより、指定したバージョンに KeyVaultKey 含まれるキー マテリアルを含む が返されます。

for (KeyProperties keyProperties : keyClient.listPropertiesOfKeyVersions("keyName", new Context("key1", "value1"))) {
     KeyVaultKey key = keyClient.getKey(keyProperties.getName(), keyProperties.getVersion());

     System.out.printf("Retrieved key version: %s with name: %s and type: %s%n",
         key.getProperties().getVersion(), key.getName(), key.getKeyType());
 }

キー バージョンをページごとに反復処理するコード サンプル

この情報から各バージョンの重要な資料を取得 KeyVaultKey できます。 すべてのページを反復処理し、 KeyProperties を呼び出します getKey(String name, String version)。 これにより、指定したバージョンに KeyVaultKey 含まれるキーマテリアルを含む が返されます。

keyClient.listPropertiesOfKeyVersions("keyName").iterableByPage().forEach(pagedResponse -> {
     System.out.printf("Got response details. Url: %s. Status code: %d.%n",
         pagedResponse.getRequest().getUrl(), pagedResponse.getStatusCode());
     pagedResponse.getElements().forEach(keyProperties ->
         System.out.printf("Key name: %s. Key version: %s.%n", keyProperties.getName(),
             keyProperties.getVersion()));
 });

Parameters:

name - KeyVaultKey の名前。
context - サービス呼び出し中に をHttpPipeline介して渡される追加Context

Returns:

PagedIterable<T> コンテナー KeyProperties で指定された KeyVaultKey のすべてのバージョンの 。 指定された name を持つ がキー コンテナーに存在しない場合KeyVaultKey、リストは空です。

listPropertiesOfKeys

public PagedIterable listPropertiesOfKeys()

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

コード サンプル

この情報から重要な資料を取得 KeyVaultKey できます。 をループ処理し、 KeyProperties を呼び出します getKey(String name, String version)。 これにより、最新バージョンの時点で含まれているキーマテリアルを含む が返 KeyVaultKey されます。

for (KeyProperties keyProperties : keyClient.listPropertiesOfKeys()) {
     KeyVaultKey key = keyClient.getKey(keyProperties.getName(), keyProperties.getVersion());

     System.out.printf("Retrieved key with name: %s and type: %s%n", key.getName(), key.getKeyType());
 }

ページごとにキーを反復処理する

この情報から重要な資料を取得 KeyVaultKey できます。 すべてのページを反復処理し、 KeyProperties を呼び出します getKey(String name, String version)。 これにより、最新バージョンの時点で含まれているキーマテリアルを含む が返 KeyVaultKey されます。

keyClient.listPropertiesOfKeys().iterableByPage().forEach(pagedResponse -> {
     System.out.printf("Got response details. Url: %s. Status code: %d.%n",
         pagedResponse.getRequest().getUrl(), pagedResponse.getStatusCode());
     pagedResponse.getElements().forEach(keyProperties -> {
         KeyVaultKey key = keyClient.getKey(keyProperties.getName(), keyProperties.getVersion());

         System.out.printf("Retrieved key with name: %s and type: %s%n", key.getName(),
             key.getKeyType());
     });
 });

Returns:

PagedIterable<T>KeyPropertiesコンテナー内のすべての の KeyVaultKey

listPropertiesOfKeys

public PagedIterable listPropertiesOfKeys(Context context)

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

コード サンプル

この情報から重要な資料を取得 KeyVaultKey できます。 をループ処理し、 KeyProperties を呼び出します getKey(String name, String version)。 これにより、最新バージョンの時点で含まれているキーマテリアルを含む が返 KeyVaultKey されます。

for (KeyProperties keyProperties : keyClient.listPropertiesOfKeys(new Context("key1", "value1"))) {
     KeyVaultKey key = keyClient.getKey(keyProperties.getName(), keyProperties.getVersion());

     System.out.printf("Retrieved key with name: %s and type: %s%n", key.getName(),
         key.getKeyType());
 }

ページで反復処理

この情報から重要な資料を取得 KeyVaultKey できます。 すべてのページを反復処理し、 KeyProperties を呼び出します getKey(String name, String version)。 これにより、最新バージョンの時点で含まれているキーマテリアルを含む が返 KeyVaultKey されます。

keyClient.listPropertiesOfKeys().iterableByPage().forEach(pagedResponse -> {
     System.out.printf("Got response details. Url: %s. Status code: %d.%n",
         pagedResponse.getRequest().getUrl(), pagedResponse.getStatusCode());
     pagedResponse.getElements().forEach(keyProperties -> {
         KeyVaultKey key = keyClient.getKey(keyProperties.getName(), keyProperties.getVersion());

         System.out.printf("Retrieved key with name: %s and type: %s%n", key.getName(),
             key.getKeyType());
     });
 });

Parameters:

context - サービス呼び出し中に をHttpPipeline介して渡される追加Context

Returns:

PagedIterable<T>KeyPropertiesコンテナー内のすべての の KeyVaultKey

purgeDeletedKey

public void purgeDeletedKey(String name)

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

コード サンプル

論理的な削除が有効になっているキー コンテナーから を KeyVaultKey 消去します。

keyClient.purgeDeletedKey("deletedKeyName");

Parameters:

name - KeyVaultKey の名前。

purgeDeletedKeyWithResponse

public Response purgeDeletedKeyWithResponse(String name, Context context)

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

コード サンプル

論理的な削除が有効になっているキー コンテナーから を KeyVaultKey 消去します。

Response<Void> purgeDeletedKeyResponse = keyClient.purgeDeletedKeyWithResponse("deletedKeyName",
     new Context("key1", "value1"));

 System.out.printf("Purge response status code: %d%n", purgeDeletedKeyResponse.getStatusCode());

Parameters:

name - KeyVaultKey の名前。
context - サービス呼び出し中に をHttpPipeline介して渡される追加Context

Returns:

Response<T>状態コードと HTTP ヘッダーを含む 。

releaseKey

public ReleaseKeyResult releaseKey(String name, String targetAttestationToken)

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

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

コード サンプル

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:

を含むキー リリースの KeyVaultKey結果。

releaseKey

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

の特定のバージョンを解放します KeyVaultKey

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

コード サンプル

KeyVaultKey を解放します。 リリース キーを含む署名済みオブジェクトを出力します。

String myKeyVersion = "6A385B124DEF4096AF1361A85B16C204";
 String myTargetAttestationToken = "someAttestationToken";
 ReleaseKeyResult releaseKeyVersionResult =
     keyClient.releaseKey("keyName", myKeyVersion, myTargetAttestationToken);

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

Parameters:

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

Returns:

を含むキー リリースの KeyVaultKey結果。

releaseKeyWithResponse

public Response releaseKeyWithResponse(String name, String version, String targetAttestationToken, ReleaseKeyOptions releaseKeyOptions, Context context)

KeyVaultKey を解放します。

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

コード サンプル

KeyVaultKey を解放します。 リリース キーを Response<T> 含む詳細と署名付きオブジェクトを出力します。

String releaseKeyVersion = "6A385B124DEF4096AF1361A85B16C204";
 String someTargetAttestationToken = "someAttestationToken";
 ReleaseKeyOptions releaseKeyOptions = new ReleaseKeyOptions()
     .setAlgorithm(KeyExportEncryptionAlgorithm.RSA_AES_KEY_WRAP_256)
     .setNonce("someNonce");

 Response<ReleaseKeyResult> releaseKeyResultResponse =
     keyClient.releaseKeyWithResponse("keyName", releaseKeyVersion, someTargetAttestationToken,
         releaseKeyOptions, new Context("key1", "value1"));

 System.out.printf("Response received successfully with status code: %d. Signed object containing"
         + "released key: %s%n", releaseKeyResultResponse.getStatusCode(),
     releaseKeyResultResponse.getValue().getValue());

Parameters:

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

Returns:

Response<T>この操作の と をReleaseKeyResult含む 。KeyVaultKey

restoreKeyBackup

public KeyVaultKey restoreKeyBackup(byte[] backup)

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

コード サンプル

KeyVaultKeyキー コンテナー内の をバックアップから復元します。

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

byte[] keyBackupByteArray = {};
 KeyVaultKey keyResponse = keyClient.restoreKeyBackup(keyBackupByteArray);
 System.out.printf("Restored key with name: %s and: id %s%n", keyResponse.getName(), keyResponse.getId());

Parameters:

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

Returns:

restoreKeyBackupWithResponse

public Response restoreKeyBackupWithResponse(byte[] backup, Context context)

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

コード サンプル

KeyVaultKeyキー コンテナー内の をバックアップから復元します。 で返された の KeyVaultKey 詳細を出力します Response<T>

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

Response<KeyVaultKey> keyResponse = keyClient.restoreKeyBackupWithResponse(keyBackupByteArray,
     new Context("key1", "value1"));

 System.out.printf("Restored key with name: %s and: id %s%n",
     keyResponse.getValue().getName(), keyResponse.getValue().getId());

Parameters:

backup - に関連付 KeyVaultKeyけられているバックアップ BLOB。
context - サービス呼び出し中に をHttpPipeline介して渡される追加Context

Returns:

Response<T>value含む KeyVaultKey

rotateKey

public KeyVaultKey rotateKey(String name)

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

コード サンプル

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

KeyVaultKey key = keyClient.rotateKey("keyName");

 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 Response rotateKeyWithResponse(String name, Context context)

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

コード サンプル

を回転します KeyVaultKey。 と の詳細をResponse<T>KeyVaultKey出力します。

Response<KeyVaultKey> keyResponse = keyClient.rotateKeyWithResponse("keyName", new Context("key1", "value1"));

 System.out.printf("Response received successfully with status code: %d. Rotated key with name: %s and"
         + "version: %s%n", keyResponse.getStatusCode(), keyResponse.getValue().getName(),
     keyResponse.getValue().getProperties().getVersion());

Parameters:

name - 回転する の KeyVaultKey 名前。 システムは、指定された KeyVaultKeyに新しいバージョンを生成します。
context - サービス呼び出し中に をHttpPipeline介して渡される追加Context

Returns:

Response<T>回転された KeyVaultKeyの新しいバージョンを含むこの操作の 。

updateKeyProperties

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

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

コード サンプル

の最新バージョンを取得し、 KeyVaultKey有効期限を変更し KeyOperation 、キー コンテナー内の を KeyVaultKey 更新します。

KeyVaultKey key = keyClient.getKey("keyName");

 key.getProperties().setExpiresOn(OffsetDateTime.now().plusDays(60));

 KeyVaultKey updatedKey = keyClient.updateKeyProperties(key.getProperties(), KeyOperation.ENCRYPT,
     KeyOperation.DECRYPT);

 System.out.printf("Key is updated with name %s and id %s %n", updatedKey.getName(), updatedKey.getId());

Parameters:

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

Returns:

Response<T>value含む KeyVaultKey

updateKeyPropertiesWithResponse

public Response updateKeyPropertiesWithResponse(KeyProperties keyProperties, Context context, KeyOperation[] keyOperations)

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

コード サンプル

の最新バージョンを取得し、 KeyVaultKey有効期限を変更し KeyOperation 、キー コンテナー内の を KeyVaultKey 更新します。

KeyVaultKey key = keyClient.getKey("keyName");

 key.getProperties().setExpiresOn(OffsetDateTime.now().plusDays(60));

 Response<KeyVaultKey> updateKeyResponse =
     keyClient.updateKeyPropertiesWithResponse(key.getProperties(), new Context("key1", "value1"),
         KeyOperation.ENCRYPT, KeyOperation.DECRYPT);

 System.out.printf("Updated key with name: %s and id: %s%n", updateKeyResponse.getValue().getName(),
     updateKeyResponse.getValue().getId());

Parameters:

keyProperties - KeyProperties更新されたプロパティを持つ オブジェクト。
context - サービス呼び出し中に をHttpPipeline介して渡される追加Context
keyOperations - キーに関連付ける更新 KeyOperation

Returns:

Response<T>value含む KeyVaultKey

updateKeyRotationPolicy

public KeyRotationPolicy updateKeyRotationPolicy(String keyName, KeyRotationPolicy keyRotationPolicy)

指定した名前で の をKeyRotationPolicyKeyVaultKey更新します。 この操作には アクセス許可が必要です 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");

 KeyRotationPolicy updatedPolicy =
     keyClient.updateKeyRotationPolicy("keyName", keyRotationPolicy);

 System.out.printf("Updated key rotation policy with id: %s%n", updatedPolicy.getId());

Parameters:

keyName - KeyVaultKey の名前。
keyRotationPolicy - ke KeyRotationPolicyKeyVaultKeyy の 。

Returns:

updateKeyRotationPolicyWithResponse

public Response updateKeyRotationPolicyWithResponse(String keyName, KeyRotationPolicy keyRotationPolicy, Context context)

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

コード サンプル

指定KeyVaultKeyした の をKeyRotationPolicy更新します。 と の詳細をResponse<T>KeyRotationPolicy出力します。

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

 Response<KeyRotationPolicy> keyRotationPolicyResponse = keyClient.updateKeyRotationPolicyWithResponse(
     "keyName", myKeyRotationPolicy, new Context("key1", "value1"));

 System.out.printf("Response received successfully with status code: %d. Updated key rotation policy"
     + "with id: %s%n", keyRotationPolicyResponse.getStatusCode(), keyRotationPolicyResponse.getValue().getId());

Parameters:

keyName - KeyVaultKey の名前。
keyRotationPolicy - KeyRotationPolicyキーの 。
context - サービス呼び出し中に をHttpPipeline介して渡される追加Context

Returns:

Response<T>の を含むKeyRotationPolicyこの操作の KeyVaultKey

適用対象