Module api

Module api 

Source

Structs§

AsymmetricDecryptRequest
Request message for KeyManagementService.AsymmetricDecrypt.
AsymmetricDecryptResponse
Response message for KeyManagementService.AsymmetricDecrypt.
AsymmetricSignRequest
Request message for KeyManagementService.AsymmetricSign.
AsymmetricSignResponse
Response message for KeyManagementService.AsymmetricSign.
AuditConfig
Specifies the audit configuration for a service. The configuration determines which permission types are logged, and what identities, if any, are exempted from logging. An AuditConfig must have one or more AuditLogConfigs. If there are AuditConfigs for both allServices and a specific service, the union of the two AuditConfigs is used for that service: the log_types specified in each AuditConfig are enabled, and the exempted_members in each AuditLogConfig are exempted. Example Policy with multiple AuditConfigs: { “audit_configs”: [ { “service”: “allServices”, “audit_log_configs”: [ { “log_type”: “DATA_READ”, “exempted_members”: [ “user:jose@example.com” ] }, { “log_type”: “DATA_WRITE” }, { “log_type”: “ADMIN_READ” } ] }, { “service”: “sampleservice.googleapis.com”, “audit_log_configs”: [ { “log_type”: “DATA_READ” }, { “log_type”: “DATA_WRITE”, “exempted_members”: [ “user:aliya@example.com” ] } ] } ] } For sampleservice, this policy enables DATA_READ, DATA_WRITE and ADMIN_READ logging. It also exempts jose@example.com from DATA_READ logging, and aliya@example.com from DATA_WRITE logging.
AuditLogConfig
Provides the configuration for logging a type of permissions. Example: { “audit_log_configs”: [ { “log_type”: “DATA_READ”, “exempted_members”: [ “user:jose@example.com” ] }, { “log_type”: “DATA_WRITE” } ] } This enables ‘DATA_READ’ and ‘DATA_WRITE’ logging, while exempting jose@example.com from DATA_READ logging.
AutokeyConfig
Cloud KMS Autokey configuration for a folder.
Binding
Associates members, or principals, with a role.
Certificate
A Certificate represents an X.509 certificate used to authenticate HTTPS connections to EKM replicas.
CertificateChains
Certificate chains needed to verify the attestation. Certificates in chains are PEM-encoded and are ordered based on https://tools.ietf.org/html/rfc5246#section-7.4.2.
CloudKMS
Central instance to access all CloudKMS related resource activities
CryptoKey
A CryptoKey represents a logical key that can be used for cryptographic operations. A CryptoKey is made up of zero or more versions, which represent the actual key material used in cryptographic operations.
CryptoKeyVersion
A CryptoKeyVersion represents an individual cryptographic key, and the associated key material. An ENABLED version can be used for cryptographic operations. For security reasons, the raw cryptographic key material represented by a CryptoKeyVersion can never be viewed or exported. It can only be used to encrypt, decrypt, or sign data when an authorized user or application invokes Cloud KMS.
CryptoKeyVersionTemplate
A CryptoKeyVersionTemplate specifies the properties to use when creating a new CryptoKeyVersion, either manually with CreateCryptoKeyVersion or automatically as a result of auto-rotation.
DecryptRequest
Request message for KeyManagementService.Decrypt.
DecryptResponse
Response message for KeyManagementService.Decrypt.
DestroyCryptoKeyVersionRequest
Request message for KeyManagementService.DestroyCryptoKeyVersion.
Digest
A Digest holds a cryptographic message digest.
EkmConfig
An EkmConfig is a singleton resource that represents configuration parameters that apply to all CryptoKeys and CryptoKeyVersions with a ProtectionLevel of EXTERNAL_VPC in a given project and location.
EkmConnection
An EkmConnection represents an individual EKM connection. It can be used for creating CryptoKeys and CryptoKeyVersions with a ProtectionLevel of EXTERNAL_VPC, as well as performing cryptographic operations using keys created within the EkmConnection.
EncryptRequest
Request message for KeyManagementService.Encrypt.
EncryptResponse
Response message for KeyManagementService.Encrypt.
Expr
Represents a textual expression in the Common Expression Language (CEL) syntax. CEL is a C-like expression language. The syntax and semantics of CEL are documented at https://github.com/google/cel-spec. Example (Comparison): title: “Summary size limit” description: “Determines if a summary is less than 100 chars” expression: “document.summary.size() < 100” Example (Equality): title: “Requestor is owner” description: “Determines if requestor is the document owner” expression: “document.owner == request.auth.claims.email” Example (Logic): title: “Public documents” description: “Determine whether the document should be publicly visible” expression: “document.type != ‘private’ && document.type != ‘internal’” Example (Data Manipulation): title: “Notification string” description: “Create a notification string with a timestamp.” expression: “’New message received at ’ + string(document.create_time)” The exact variables and functions that may be referenced within an expression are determined by the service that evaluates it. See the service documentation for additional information.
ExternalProtectionLevelOptions
ExternalProtectionLevelOptions stores a group of additional fields for configuring a CryptoKeyVersion that are specific to the EXTERNAL protection level and EXTERNAL_VPC protection levels.
FolderGetAutokeyConfigCall
Returns the AutokeyConfig for a folder.
FolderMethods
A builder providing access to all methods supported on folder resources. It is not used directly, but through the CloudKMS hub.
FolderUpdateAutokeyConfigCall
Updates the AutokeyConfig for a folder. The caller must have both cloudkms.autokeyConfigs.update permission on the parent folder and cloudkms.cryptoKeys.setIamPolicy permission on the provided key project. A KeyHandle creation in the folder’s descendant projects will use this configuration to determine where to create the resulting CryptoKey.
GenerateRandomBytesRequest
Request message for KeyManagementService.GenerateRandomBytes.
GenerateRandomBytesResponse
Response message for KeyManagementService.GenerateRandomBytes.
ImportCryptoKeyVersionRequest
Request message for KeyManagementService.ImportCryptoKeyVersion.
ImportJob
An ImportJob can be used to create CryptoKeys and CryptoKeyVersions using pre-existing key material, generated outside of Cloud KMS. When an ImportJob is created, Cloud KMS will generate a “wrapping key”, which is a public/private key pair. You use the wrapping key to encrypt (also known as wrap) the pre-existing key material to protect it during the import process. The nature of the wrapping key depends on the choice of import_method. When the wrapping key generation is complete, the state will be set to ACTIVE and the public_key can be fetched. The fetched public key can then be used to wrap your pre-existing key material. Once the key material is wrapped, it can be imported into a new CryptoKeyVersion in an existing CryptoKey by calling ImportCryptoKeyVersion. Multiple CryptoKeyVersions can be imported with a single ImportJob. Cloud KMS uses the private key portion of the wrapping key to unwrap the key material. Only Cloud KMS has access to the private key. An ImportJob expires 3 days after it is created. Once expired, Cloud KMS will no longer be able to import or unwrap any key material that was wrapped with the ImportJob’s public key. For more information, see Importing a key.
KeyAccessJustificationsPolicy
A KeyAccessJustificationsPolicy specifies zero or more allowed AccessReason values for encrypt, decrypt, and sign operations on a CryptoKey.
KeyHandle
Resource-oriented representation of a request to Cloud KMS Autokey and the resulting provisioning of a CryptoKey.
KeyOperationAttestation
Contains an HSM-generated attestation about a key operation. For more information, see [Verifying attestations] (https://cloud.google.com/kms/docs/attest-key).
KeyRing
A KeyRing is a toplevel logical grouping of CryptoKeys.
ListCryptoKeyVersionsResponse
Response message for KeyManagementService.ListCryptoKeyVersions.
ListCryptoKeysResponse
Response message for KeyManagementService.ListCryptoKeys.
ListEkmConnectionsResponse
Response message for EkmService.ListEkmConnections.
ListImportJobsResponse
Response message for KeyManagementService.ListImportJobs.
ListKeyHandlesResponse
Response message for Autokey.ListKeyHandles.
ListKeyRingsResponse
Response message for KeyManagementService.ListKeyRings.
ListLocationsResponse
The response message for Locations.ListLocations.
Location
A resource that represents a Google Cloud location.
MacSignRequest
Request message for KeyManagementService.MacSign.
MacSignResponse
Response message for KeyManagementService.MacSign.
MacVerifyRequest
Request message for KeyManagementService.MacVerify.
MacVerifyResponse
Response message for KeyManagementService.MacVerify.
Operation
This resource represents a long-running operation that is the result of a network API call.
Policy
An Identity and Access Management (IAM) policy, which specifies access controls for Google Cloud resources. A Policy is a collection of bindings. A binding binds one or more members, or principals, to a single role. Principals can be user accounts, service accounts, Google groups, and domains (such as G Suite). A role is a named list of permissions; each role can be an IAM predefined role or a user-created custom role. For some types of Google Cloud resources, a binding can also specify a condition, which is a logical expression that allows access to a resource only if the expression evaluates to true. A condition can add constraints based on attributes of the request, the resource, or both. To learn which resources support conditions in their IAM policies, see the IAM documentation. JSON example: { "bindings": [ { "role": "roles/resourcemanager.organizationAdmin", "members": [ "user:mike@example.com", "group:admins@example.com", "domain:google.com", "serviceAccount:my-project-id@appspot.gserviceaccount.com" ] }, { "role": "roles/resourcemanager.organizationViewer", "members": [ "user:eve@example.com" ], "condition": { "title": "expirable access", "description": "Does not grant access after Sep 2020", "expression": "request.time < timestamp('2020-10-01T00:00:00.000Z')", } } ], "etag": "BwWWja0YfJA=", "version": 3 } YAML example: bindings: - members: - user:mike@example.com - group:admins@example.com - domain:google.com - serviceAccount:my-project-id@appspot.gserviceaccount.com role: roles/resourcemanager.organizationAdmin - members: - user:eve@example.com role: roles/resourcemanager.organizationViewer condition: title: expirable access description: Does not grant access after Sep 2020 expression: request.time < timestamp('2020-10-01T00:00:00.000Z') etag: BwWWja0YfJA= version: 3 For a description of IAM and its features, see the IAM documentation.
ProjectLocationEkmConfigGetIamPolicyCall
Gets the access control policy for a resource. Returns an empty policy if the resource exists and does not have a policy set.
ProjectLocationEkmConfigSetIamPolicyCall
Sets the access control policy on the specified resource. Replaces any existing policy. Can return NOT_FOUND, INVALID_ARGUMENT, and PERMISSION_DENIED errors.
ProjectLocationEkmConfigTestIamPermissionCall
Returns permissions that a caller has on the specified resource. If the resource does not exist, this will return an empty set of permissions, not a NOT_FOUND error. Note: This operation is designed to be used for building permission-aware UIs and command-line tools, not for authorization checking. This operation may “fail open” without warning.
ProjectLocationEkmConnectionCreateCall
Creates a new EkmConnection in a given Project and Location.
ProjectLocationEkmConnectionGetCall
Returns metadata for a given EkmConnection.
ProjectLocationEkmConnectionGetIamPolicyCall
Gets the access control policy for a resource. Returns an empty policy if the resource exists and does not have a policy set.
ProjectLocationEkmConnectionListCall
Lists EkmConnections.
ProjectLocationEkmConnectionPatchCall
Updates an EkmConnection’s metadata.
ProjectLocationEkmConnectionSetIamPolicyCall
Sets the access control policy on the specified resource. Replaces any existing policy. Can return NOT_FOUND, INVALID_ARGUMENT, and PERMISSION_DENIED errors.
ProjectLocationEkmConnectionTestIamPermissionCall
Returns permissions that a caller has on the specified resource. If the resource does not exist, this will return an empty set of permissions, not a NOT_FOUND error. Note: This operation is designed to be used for building permission-aware UIs and command-line tools, not for authorization checking. This operation may “fail open” without warning.
ProjectLocationEkmConnectionVerifyConnectivityCall
Verifies that Cloud KMS can successfully connect to the external key manager specified by an EkmConnection. If there is an error connecting to the EKM, this method returns a FAILED_PRECONDITION status containing structured information as described at https://cloud.google.com/kms/docs/reference/ekm_errors.
ProjectLocationGenerateRandomByteCall
Generate random bytes using the Cloud KMS randomness source in the provided location.
ProjectLocationGetCall
Gets information about a location.
ProjectLocationGetEkmConfigCall
Returns the EkmConfig singleton resource for a given project and location.
ProjectLocationKeyHandleCreateCall
Creates a new KeyHandle, triggering the provisioning of a new CryptoKey for CMEK use with the given resource type in the configured key project and the same location. GetOperation should be used to resolve the resulting long-running operation and get the resulting KeyHandle and CryptoKey.
ProjectLocationKeyHandleGetCall
Returns the KeyHandle.
ProjectLocationKeyHandleListCall
Lists KeyHandles.
ProjectLocationKeyRingCreateCall
Create a new KeyRing in a given Project and Location.
ProjectLocationKeyRingCryptoKeyCreateCall
Create a new CryptoKey within a KeyRing. CryptoKey.purpose and CryptoKey.version_template.algorithm are required.
ProjectLocationKeyRingCryptoKeyCryptoKeyVersionAsymmetricDecryptCall
Decrypts data that was encrypted with a public key retrieved from GetPublicKey corresponding to a CryptoKeyVersion with CryptoKey.purpose ASYMMETRIC_DECRYPT.
ProjectLocationKeyRingCryptoKeyCryptoKeyVersionAsymmetricSignCall
Signs data using a CryptoKeyVersion with CryptoKey.purpose ASYMMETRIC_SIGN, producing a signature that can be verified with the public key retrieved from GetPublicKey.
ProjectLocationKeyRingCryptoKeyCryptoKeyVersionCreateCall
Create a new CryptoKeyVersion in a CryptoKey. The server will assign the next sequential id. If unset, state will be set to ENABLED.
ProjectLocationKeyRingCryptoKeyCryptoKeyVersionDestroyCall
Schedule a CryptoKeyVersion for destruction. Upon calling this method, CryptoKeyVersion.state will be set to DESTROY_SCHEDULED, and destroy_time will be set to the time destroy_scheduled_duration in the future. At that time, the state will automatically change to DESTROYED, and the key material will be irrevocably destroyed. Before the destroy_time is reached, RestoreCryptoKeyVersion may be called to reverse the process.
ProjectLocationKeyRingCryptoKeyCryptoKeyVersionGetCall
Returns metadata for a given CryptoKeyVersion.
ProjectLocationKeyRingCryptoKeyCryptoKeyVersionGetPublicKeyCall
Returns the public key for the given CryptoKeyVersion. The CryptoKey.purpose must be ASYMMETRIC_SIGN or ASYMMETRIC_DECRYPT.
ProjectLocationKeyRingCryptoKeyCryptoKeyVersionImportCall
Import wrapped key material into a CryptoKeyVersion. All requests must specify a CryptoKey. If a CryptoKeyVersion is additionally specified in the request, key material will be reimported into that version. Otherwise, a new version will be created, and will be assigned the next sequential id within the CryptoKey.
ProjectLocationKeyRingCryptoKeyCryptoKeyVersionListCall
Lists CryptoKeyVersions.
ProjectLocationKeyRingCryptoKeyCryptoKeyVersionMacSignCall
Signs data using a CryptoKeyVersion with CryptoKey.purpose MAC, producing a tag that can be verified by another source with the same key.
ProjectLocationKeyRingCryptoKeyCryptoKeyVersionMacVerifyCall
Verifies MAC tag using a CryptoKeyVersion with CryptoKey.purpose MAC, and returns a response that indicates whether or not the verification was successful.
ProjectLocationKeyRingCryptoKeyCryptoKeyVersionPatchCall
Update a CryptoKeyVersion’s metadata. state may be changed between ENABLED and DISABLED using this method. See DestroyCryptoKeyVersion and RestoreCryptoKeyVersion to move between other states.
ProjectLocationKeyRingCryptoKeyCryptoKeyVersionRawDecryptCall
Decrypts data that was originally encrypted using a raw cryptographic mechanism. The CryptoKey.purpose must be RAW_ENCRYPT_DECRYPT.
ProjectLocationKeyRingCryptoKeyCryptoKeyVersionRawEncryptCall
Encrypts data using portable cryptographic primitives. Most users should choose Encrypt and Decrypt rather than their raw counterparts. The CryptoKey.purpose must be RAW_ENCRYPT_DECRYPT.
ProjectLocationKeyRingCryptoKeyCryptoKeyVersionRestoreCall
Restore a CryptoKeyVersion in the DESTROY_SCHEDULED state. Upon restoration of the CryptoKeyVersion, state will be set to DISABLED, and destroy_time will be cleared.
ProjectLocationKeyRingCryptoKeyDecryptCall
Decrypts data that was protected by Encrypt. The CryptoKey.purpose must be ENCRYPT_DECRYPT.
ProjectLocationKeyRingCryptoKeyEncryptCall
Encrypts data, so that it can only be recovered by a call to Decrypt. The CryptoKey.purpose must be ENCRYPT_DECRYPT.
ProjectLocationKeyRingCryptoKeyGetCall
Returns metadata for a given CryptoKey, as well as its primary CryptoKeyVersion.
ProjectLocationKeyRingCryptoKeyGetIamPolicyCall
Gets the access control policy for a resource. Returns an empty policy if the resource exists and does not have a policy set.
ProjectLocationKeyRingCryptoKeyListCall
Lists CryptoKeys.
ProjectLocationKeyRingCryptoKeyPatchCall
Update a CryptoKey.
ProjectLocationKeyRingCryptoKeySetIamPolicyCall
Sets the access control policy on the specified resource. Replaces any existing policy. Can return NOT_FOUND, INVALID_ARGUMENT, and PERMISSION_DENIED errors.
ProjectLocationKeyRingCryptoKeyTestIamPermissionCall
Returns permissions that a caller has on the specified resource. If the resource does not exist, this will return an empty set of permissions, not a NOT_FOUND error. Note: This operation is designed to be used for building permission-aware UIs and command-line tools, not for authorization checking. This operation may “fail open” without warning.
ProjectLocationKeyRingCryptoKeyUpdatePrimaryVersionCall
Update the version of a CryptoKey that will be used in Encrypt. Returns an error if called on a key whose purpose is not ENCRYPT_DECRYPT.
ProjectLocationKeyRingGetCall
Returns metadata for a given KeyRing.
ProjectLocationKeyRingGetIamPolicyCall
Gets the access control policy for a resource. Returns an empty policy if the resource exists and does not have a policy set.
ProjectLocationKeyRingImportJobCreateCall
Create a new ImportJob within a KeyRing. ImportJob.import_method is required.
ProjectLocationKeyRingImportJobGetCall
Returns metadata for a given ImportJob.
ProjectLocationKeyRingImportJobGetIamPolicyCall
Gets the access control policy for a resource. Returns an empty policy if the resource exists and does not have a policy set.
ProjectLocationKeyRingImportJobListCall
Lists ImportJobs.
ProjectLocationKeyRingImportJobSetIamPolicyCall
Sets the access control policy on the specified resource. Replaces any existing policy. Can return NOT_FOUND, INVALID_ARGUMENT, and PERMISSION_DENIED errors.
ProjectLocationKeyRingImportJobTestIamPermissionCall
Returns permissions that a caller has on the specified resource. If the resource does not exist, this will return an empty set of permissions, not a NOT_FOUND error. Note: This operation is designed to be used for building permission-aware UIs and command-line tools, not for authorization checking. This operation may “fail open” without warning.
ProjectLocationKeyRingListCall
Lists KeyRings.
ProjectLocationKeyRingSetIamPolicyCall
Sets the access control policy on the specified resource. Replaces any existing policy. Can return NOT_FOUND, INVALID_ARGUMENT, and PERMISSION_DENIED errors.
ProjectLocationKeyRingTestIamPermissionCall
Returns permissions that a caller has on the specified resource. If the resource does not exist, this will return an empty set of permissions, not a NOT_FOUND error. Note: This operation is designed to be used for building permission-aware UIs and command-line tools, not for authorization checking. This operation may “fail open” without warning.
ProjectLocationListCall
Lists information about the supported locations for this service.
ProjectLocationOperationGetCall
Gets the latest state of a long-running operation. Clients can use this method to poll the operation result at intervals as recommended by the API service.
ProjectLocationUpdateEkmConfigCall
Updates the EkmConfig singleton resource for a given project and location.
ProjectMethods
A builder providing access to all methods supported on project resources. It is not used directly, but through the CloudKMS hub.
ProjectShowEffectiveAutokeyConfigCall
Returns the effective Cloud KMS Autokey configuration for a given project.
PublicKey
The public keys for a given CryptoKeyVersion. Obtained via GetPublicKey.
RawDecryptRequest
Request message for KeyManagementService.RawDecrypt.
RawDecryptResponse
Response message for KeyManagementService.RawDecrypt.
RawEncryptRequest
Request message for KeyManagementService.RawEncrypt.
RawEncryptResponse
Response message for KeyManagementService.RawEncrypt.
RestoreCryptoKeyVersionRequest
Request message for KeyManagementService.RestoreCryptoKeyVersion.
ServiceResolver
A ServiceResolver represents an EKM replica that can be reached within an EkmConnection.
SetIamPolicyRequest
Request message for SetIamPolicy method.
ShowEffectiveAutokeyConfigResponse
Response message for ShowEffectiveAutokeyConfig.
Status
The Status type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by gRPC. Each Status message contains three pieces of data: error code, error message, and error details. You can find out more about this error model and how to work with it in the API Design Guide.
TestIamPermissionsRequest
Request message for TestIamPermissions method.
TestIamPermissionsResponse
Response message for TestIamPermissions method.
UpdateCryptoKeyPrimaryVersionRequest
Request message for KeyManagementService.UpdateCryptoKeyPrimaryVersion.
VerifyConnectivityResponse
Response message for EkmService.VerifyConnectivity.
WrappingPublicKey
The public key component of the wrapping key. For details of the type of key this public key corresponds to, see the ImportMethod.

Enums§

Scope
Identifies the an OAuth2 authorization scope. A scope is needed when requesting an authorization token.