public static List<String> toStringList(List<CryptoKeyName> values) { List<String> list = new ArrayList<String>(values.size()); for (CryptoKeyName value : values) { if (value == null) { list.add(""); } else { list.add(value.toString()); } } return list; }
/** * Lists [CryptoKeyVersions][google.cloud.kms.v1.CryptoKeyVersion]. * * <p>Sample code: * * <pre><code> * try (KeyManagementServiceClient keyManagementServiceClient = KeyManagementServiceClient.create()) { * CryptoKeyName parent = CryptoKeyName.of("[PROJECT]", "[LOCATION]", "[KEY_RING]", "[CRYPTO_KEY]"); * for (CryptoKeyVersion element : keyManagementServiceClient.listCryptoKeyVersions(parent).iterateAll()) { * // doThingsWith(element); * } * } * </code></pre> * * @param parent Required. The resource name of the [CryptoKey][google.cloud.kms.v1.CryptoKey] to * list, in the format `projects/*/locations/*/keyRings/*/cryptoKeys/*`. * @throws com.google.api.gax.rpc.ApiException if the remote call fails */ public final ListCryptoKeyVersionsPagedResponse listCryptoKeyVersions(CryptoKeyName parent) { ListCryptoKeyVersionsRequest request = ListCryptoKeyVersionsRequest.newBuilder() .setParent(parent == null ? null : parent.toString()) .build(); return listCryptoKeyVersions(request); }
/** * Returns metadata for a given [CryptoKey][google.cloud.kms.v1.CryptoKey], as well as its * [primary][google.cloud.kms.v1.CryptoKey.primary] * [CryptoKeyVersion][google.cloud.kms.v1.CryptoKeyVersion]. * * <p>Sample code: * * <pre><code> * try (KeyManagementServiceClient keyManagementServiceClient = KeyManagementServiceClient.create()) { * CryptoKeyName name = CryptoKeyName.of("[PROJECT]", "[LOCATION]", "[KEY_RING]", "[CRYPTO_KEY]"); * CryptoKey response = keyManagementServiceClient.getCryptoKey(name); * } * </code></pre> * * @param name The [name][google.cloud.kms.v1.CryptoKey.name] of the * [CryptoKey][google.cloud.kms.v1.CryptoKey] to get. * @throws com.google.api.gax.rpc.ApiException if the remote call fails */ public final CryptoKey getCryptoKey(CryptoKeyName name) { GetCryptoKeyRequest request = GetCryptoKeyRequest.newBuilder().setName(name == null ? null : name.toString()).build(); return getCryptoKey(request); }
public static String format(String project, String location, String keyRing, String cryptoKey) { return newBuilder() .setProject(project) .setLocation(location) .setKeyRing(keyRing) .setCryptoKey(cryptoKey) .build() .toString(); }
/** * Decrypts data that was protected by * [Encrypt][google.cloud.kms.v1.KeyManagementService.Encrypt]. The * [CryptoKey.purpose][google.cloud.kms.v1.CryptoKey.purpose] must be * [ENCRYPT_DECRYPT][google.cloud.kms.v1.CryptoKey.CryptoKeyPurpose.ENCRYPT_DECRYPT]. * * <p>Sample code: * * <pre><code> * try (KeyManagementServiceClient keyManagementServiceClient = KeyManagementServiceClient.create()) { * CryptoKeyName name = CryptoKeyName.of("[PROJECT]", "[LOCATION]", "[KEY_RING]", "[CRYPTO_KEY]"); * ByteString ciphertext = ByteString.copyFromUtf8(""); * DecryptResponse response = keyManagementServiceClient.decrypt(name, ciphertext); * } * </code></pre> * * @param name Required. The resource name of the [CryptoKey][google.cloud.kms.v1.CryptoKey] to * use for decryption. The server will choose the appropriate version. * @param ciphertext Required. The encrypted data originally returned in * [EncryptResponse.ciphertext][google.cloud.kms.v1.EncryptResponse.ciphertext]. * @throws com.google.api.gax.rpc.ApiException if the remote call fails */ public final DecryptResponse decrypt(CryptoKeyName name, ByteString ciphertext) { DecryptRequest request = DecryptRequest.newBuilder() .setName(name == null ? null : name.toString()) .setCiphertext(ciphertext) .build(); return decrypt(request); }
/** * Update the version of a [CryptoKey][google.cloud.kms.v1.CryptoKey] that will be used in * [Encrypt][google.cloud.kms.v1.KeyManagementService.Encrypt]. * * <p>Returns an error if called on an asymmetric key. * * <p>Sample code: * * <pre><code> * try (KeyManagementServiceClient keyManagementServiceClient = KeyManagementServiceClient.create()) { * CryptoKeyName name = CryptoKeyName.of("[PROJECT]", "[LOCATION]", "[KEY_RING]", "[CRYPTO_KEY]"); * String cryptoKeyVersionId = ""; * CryptoKey response = keyManagementServiceClient.updateCryptoKeyPrimaryVersion(name, cryptoKeyVersionId); * } * </code></pre> * * @param name The resource name of the [CryptoKey][google.cloud.kms.v1.CryptoKey] to update. * @param cryptoKeyVersionId The id of the child * [CryptoKeyVersion][google.cloud.kms.v1.CryptoKeyVersion] to use as primary. * @throws com.google.api.gax.rpc.ApiException if the remote call fails */ public final CryptoKey updateCryptoKeyPrimaryVersion( CryptoKeyName name, String cryptoKeyVersionId) { UpdateCryptoKeyPrimaryVersionRequest request = UpdateCryptoKeyPrimaryVersionRequest.newBuilder() .setName(name == null ? null : name.toString()) .setCryptoKeyVersionId(cryptoKeyVersionId) .build(); return updateCryptoKeyPrimaryVersion(request); }
.setParent(parent == null ? null : parent.toString()) .setCryptoKeyVersion(cryptoKeyVersion) .build();
@Test @SuppressWarnings("all") public void getCryptoKeyTest() { CryptoKeyName name2 = CryptoKeyName.of("[PROJECT]", "[LOCATION]", "[KEY_RING]", "[CRYPTO_KEY]"); CryptoKey expectedResponse = CryptoKey.newBuilder().setName(name2.toString()).build(); mockKeyManagementService.addResponse(expectedResponse); CryptoKeyName name = CryptoKeyName.of("[PROJECT]", "[LOCATION]", "[KEY_RING]", "[CRYPTO_KEY]"); CryptoKey actualResponse = client.getCryptoKey(name); Assert.assertEquals(expectedResponse, actualResponse); List<GeneratedMessageV3> actualRequests = mockKeyManagementService.getRequests(); Assert.assertEquals(1, actualRequests.size()); GetCryptoKeyRequest actualRequest = (GetCryptoKeyRequest) actualRequests.get(0); Assert.assertEquals(name, CryptoKeyName.parse(actualRequest.getName())); Assert.assertTrue( channelProvider.isHeaderSent( ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), GaxGrpcProperties.getDefaultApiClientHeaderPattern())); }
@Test @SuppressWarnings("all") public void updateCryptoKeyPrimaryVersionTest() { CryptoKeyName name2 = CryptoKeyName.of("[PROJECT]", "[LOCATION]", "[KEY_RING]", "[CRYPTO_KEY]"); CryptoKey expectedResponse = CryptoKey.newBuilder().setName(name2.toString()).build(); mockKeyManagementService.addResponse(expectedResponse); CryptoKeyName name = CryptoKeyName.of("[PROJECT]", "[LOCATION]", "[KEY_RING]", "[CRYPTO_KEY]"); String cryptoKeyVersionId = "cryptoKeyVersionId729489152"; CryptoKey actualResponse = client.updateCryptoKeyPrimaryVersion(name, cryptoKeyVersionId); Assert.assertEquals(expectedResponse, actualResponse); List<GeneratedMessageV3> actualRequests = mockKeyManagementService.getRequests(); Assert.assertEquals(1, actualRequests.size()); UpdateCryptoKeyPrimaryVersionRequest actualRequest = (UpdateCryptoKeyPrimaryVersionRequest) actualRequests.get(0); Assert.assertEquals(name, CryptoKeyName.parse(actualRequest.getName())); Assert.assertEquals(cryptoKeyVersionId, actualRequest.getCryptoKeyVersionId()); Assert.assertTrue( channelProvider.isHeaderSent( ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), GaxGrpcProperties.getDefaultApiClientHeaderPattern())); }
@Test @SuppressWarnings("all") public void updateCryptoKeyTest() { CryptoKeyName name = CryptoKeyName.of("[PROJECT]", "[LOCATION]", "[KEY_RING]", "[CRYPTO_KEY]"); CryptoKey expectedResponse = CryptoKey.newBuilder().setName(name.toString()).build(); mockKeyManagementService.addResponse(expectedResponse); CryptoKey cryptoKey = CryptoKey.newBuilder().build(); FieldMask updateMask = FieldMask.newBuilder().build(); CryptoKey actualResponse = client.updateCryptoKey(cryptoKey, updateMask); Assert.assertEquals(expectedResponse, actualResponse); List<GeneratedMessageV3> actualRequests = mockKeyManagementService.getRequests(); Assert.assertEquals(1, actualRequests.size()); UpdateCryptoKeyRequest actualRequest = (UpdateCryptoKeyRequest) actualRequests.get(0); Assert.assertEquals(cryptoKey, actualRequest.getCryptoKey()); Assert.assertEquals(updateMask, actualRequest.getUpdateMask()); Assert.assertTrue( channelProvider.isHeaderSent( ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), GaxGrpcProperties.getDefaultApiClientHeaderPattern())); }
public void createCryptoKeyTest() { CryptoKeyName name = CryptoKeyName.of("[PROJECT]", "[LOCATION]", "[KEY_RING]", "[CRYPTO_KEY]"); CryptoKey expectedResponse = CryptoKey.newBuilder().setName(name.toString()).build(); mockKeyManagementService.addResponse(expectedResponse);
throws StatusRuntimeException { String kmsKeyResourcePath = CryptoKeyName.of(projectId, location, keyRingName, keyName).toString(); try {
public static List<String> toStringList(List<CryptoKeyName> values) { List<String> list = new ArrayList<String>(values.size()); for (CryptoKeyName value : values) { if (value == null) { list.add(""); } else { list.add(value.toString()); } } return list; }
/** * Returns metadata for a given [CryptoKey][google.cloud.kms.v1.CryptoKey], as well as its * [primary][google.cloud.kms.v1.CryptoKey.primary] * [CryptoKeyVersion][google.cloud.kms.v1.CryptoKeyVersion]. * * <p>Sample code: * * <pre><code> * try (KeyManagementServiceClient keyManagementServiceClient = KeyManagementServiceClient.create()) { * CryptoKeyName name = CryptoKeyName.of("[PROJECT]", "[LOCATION]", "[KEY_RING]", "[CRYPTO_KEY]"); * CryptoKey response = keyManagementServiceClient.getCryptoKey(name); * } * </code></pre> * * @param name The [name][google.cloud.kms.v1.CryptoKey.name] of the * [CryptoKey][google.cloud.kms.v1.CryptoKey] to get. * @throws com.google.api.gax.rpc.ApiException if the remote call fails */ public final CryptoKey getCryptoKey(CryptoKeyName name) { GetCryptoKeyRequest request = GetCryptoKeyRequest.newBuilder().setName(name == null ? null : name.toString()).build(); return getCryptoKey(request); }
/** * Lists [CryptoKeyVersions][google.cloud.kms.v1.CryptoKeyVersion]. * * <p>Sample code: * * <pre><code> * try (KeyManagementServiceClient keyManagementServiceClient = KeyManagementServiceClient.create()) { * CryptoKeyName parent = CryptoKeyName.of("[PROJECT]", "[LOCATION]", "[KEY_RING]", "[CRYPTO_KEY]"); * for (CryptoKeyVersion element : keyManagementServiceClient.listCryptoKeyVersions(parent).iterateAll()) { * // doThingsWith(element); * } * } * </code></pre> * * @param parent Required. The resource name of the [CryptoKey][google.cloud.kms.v1.CryptoKey] to * list, in the format `projects/*/locations/*/keyRings/*/cryptoKeys/*`. * @throws com.google.api.gax.rpc.ApiException if the remote call fails */ public final ListCryptoKeyVersionsPagedResponse listCryptoKeyVersions(CryptoKeyName parent) { ListCryptoKeyVersionsRequest request = ListCryptoKeyVersionsRequest.newBuilder() .setParent(parent == null ? null : parent.toString()) .build(); return listCryptoKeyVersions(request); }
public static String format(String project, String location, String keyRing, String cryptoKey) { return newBuilder() .setProject(project) .setLocation(location) .setKeyRing(keyRing) .setCryptoKey(cryptoKey) .build() .toString(); }
/** * Decrypts data that was protected by * [Encrypt][google.cloud.kms.v1.KeyManagementService.Encrypt]. The * [CryptoKey.purpose][google.cloud.kms.v1.CryptoKey.purpose] must be * [ENCRYPT_DECRYPT][google.cloud.kms.v1.CryptoKey.CryptoKeyPurpose.ENCRYPT_DECRYPT]. * * <p>Sample code: * * <pre><code> * try (KeyManagementServiceClient keyManagementServiceClient = KeyManagementServiceClient.create()) { * CryptoKeyName name = CryptoKeyName.of("[PROJECT]", "[LOCATION]", "[KEY_RING]", "[CRYPTO_KEY]"); * ByteString ciphertext = ByteString.copyFromUtf8(""); * DecryptResponse response = keyManagementServiceClient.decrypt(name, ciphertext); * } * </code></pre> * * @param name Required. The resource name of the [CryptoKey][google.cloud.kms.v1.CryptoKey] to * use for decryption. The server will choose the appropriate version. * @param ciphertext Required. The encrypted data originally returned in * [EncryptResponse.ciphertext][google.cloud.kms.v1.EncryptResponse.ciphertext]. * @throws com.google.api.gax.rpc.ApiException if the remote call fails */ public final DecryptResponse decrypt(CryptoKeyName name, ByteString ciphertext) { DecryptRequest request = DecryptRequest.newBuilder() .setName(name == null ? null : name.toString()) .setCiphertext(ciphertext) .build(); return decrypt(request); }
/** * Update the version of a [CryptoKey][google.cloud.kms.v1.CryptoKey] that will be used in * [Encrypt][google.cloud.kms.v1.KeyManagementService.Encrypt]. * * <p>Returns an error if called on an asymmetric key. * * <p>Sample code: * * <pre><code> * try (KeyManagementServiceClient keyManagementServiceClient = KeyManagementServiceClient.create()) { * CryptoKeyName name = CryptoKeyName.of("[PROJECT]", "[LOCATION]", "[KEY_RING]", "[CRYPTO_KEY]"); * String cryptoKeyVersionId = ""; * CryptoKey response = keyManagementServiceClient.updateCryptoKeyPrimaryVersion(name, cryptoKeyVersionId); * } * </code></pre> * * @param name The resource name of the [CryptoKey][google.cloud.kms.v1.CryptoKey] to update. * @param cryptoKeyVersionId The id of the child * [CryptoKeyVersion][google.cloud.kms.v1.CryptoKeyVersion] to use as primary. * @throws com.google.api.gax.rpc.ApiException if the remote call fails */ public final CryptoKey updateCryptoKeyPrimaryVersion( CryptoKeyName name, String cryptoKeyVersionId) { UpdateCryptoKeyPrimaryVersionRequest request = UpdateCryptoKeyPrimaryVersionRequest.newBuilder() .setName(name == null ? null : name.toString()) .setCryptoKeyVersionId(cryptoKeyVersionId) .build(); return updateCryptoKeyPrimaryVersion(request); }
.setParent(parent == null ? null : parent.toString()) .setCryptoKeyVersion(cryptoKeyVersion) .build();