Module google_cloudkms1::api[][src]

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.

Binding

Associates members with a role.

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.

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.

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.

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.

ListImportJobsResponse

Response message for KeyManagementService.ListImportJobs.

ListKeyRingsResponse

Response message for KeyManagementService.ListKeyRings.

ListLocationsResponse

The response message for Locations.ListLocations.

Location

A resource that represents Google Cloud Platform location.

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 to a single role. Members 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.

ProjectLocationGetCall

Gets information about a location.

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 a time 24 hours in the future, at which point the state will be changed 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

Imports a new CryptoKeyVersion into an existing CryptoKey using the wrapped key material provided in the request. The version ID will be assigned the next sequential id within the CryptoKey.

ProjectLocationKeyRingCryptoKeyCryptoKeyVersionListCall

Lists CryptoKeyVersions.

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.

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 an asymmetric key.

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.

ProjectMethods

A builder providing access to all methods supported on project resources. It is not used directly, but through the CloudKMS hub.

PublicKey

The public key for a given CryptoKeyVersion. Obtained via GetPublicKey.

RestoreCryptoKeyVersionRequest

Request message for KeyManagementService.RestoreCryptoKeyVersion.

SetIamPolicyRequest

Request message for SetIamPolicy method.

TestIamPermissionsRequest

Request message for TestIamPermissions method.

TestIamPermissionsResponse

Response message for TestIamPermissions method.

UpdateCryptoKeyPrimaryVersionRequest

Request message for KeyManagementService.UpdateCryptoKeyPrimaryVersion.

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.