Package Classes (2.21.4)

Summary of entries of Classes for cloudkms.

Classes

EkmServiceAsyncClient

Google Cloud Key Management EKM Service

Manages external cryptographic keys and operations using those keys. Implements a REST model with the following objects:

  • EkmConnection

EkmServiceClient

Google Cloud Key Management EKM Service

Manages external cryptographic keys and operations using those keys. Implements a REST model with the following objects:

  • EkmConnection

ListEkmConnectionsAsyncPager

A pager for iterating through list_ekm_connections requests.

This class thinly wraps an initial ListEkmConnectionsResponse object, and provides an __aiter__ method to iterate through its ekm_connections field.

If there are more pages, the __aiter__ method will make additional ListEkmConnections requests and continue to iterate through the ekm_connections field on the corresponding responses.

All the usual ListEkmConnectionsResponse attributes are available on the pager. If multiple requests are made, only the most recent response is retained, and thus used for attribute lookup.

ListEkmConnectionsPager

A pager for iterating through list_ekm_connections requests.

This class thinly wraps an initial ListEkmConnectionsResponse object, and provides an __iter__ method to iterate through its ekm_connections field.

If there are more pages, the __iter__ method will make additional ListEkmConnections requests and continue to iterate through the ekm_connections field on the corresponding responses.

All the usual ListEkmConnectionsResponse attributes are available on the pager. If multiple requests are made, only the most recent response is retained, and thus used for attribute lookup.

KeyManagementServiceAsyncClient

Google Cloud Key Management Service

Manages cryptographic keys and operations using those keys. Implements a REST model with the following objects:

  • KeyRing
  • CryptoKey
  • CryptoKeyVersion
  • ImportJob

If you are using manual gRPC libraries, see Using gRPC with Cloud KMS <https://cloud.google.com/kms/docs/grpc>__.

KeyManagementServiceClient

Google Cloud Key Management Service

Manages cryptographic keys and operations using those keys. Implements a REST model with the following objects:

  • KeyRing
  • CryptoKey
  • CryptoKeyVersion
  • ImportJob

If you are using manual gRPC libraries, see Using gRPC with Cloud KMS <https://cloud.google.com/kms/docs/grpc>__.

ListCryptoKeyVersionsAsyncPager

A pager for iterating through list_crypto_key_versions requests.

This class thinly wraps an initial ListCryptoKeyVersionsResponse object, and provides an __aiter__ method to iterate through its crypto_key_versions field.

If there are more pages, the __aiter__ method will make additional ListCryptoKeyVersions requests and continue to iterate through the crypto_key_versions field on the corresponding responses.

All the usual ListCryptoKeyVersionsResponse attributes are available on the pager. If multiple requests are made, only the most recent response is retained, and thus used for attribute lookup.

ListCryptoKeyVersionsPager

A pager for iterating through list_crypto_key_versions requests.

This class thinly wraps an initial ListCryptoKeyVersionsResponse object, and provides an __iter__ method to iterate through its crypto_key_versions field.

If there are more pages, the __iter__ method will make additional ListCryptoKeyVersions requests and continue to iterate through the crypto_key_versions field on the corresponding responses.

All the usual ListCryptoKeyVersionsResponse attributes are available on the pager. If multiple requests are made, only the most recent response is retained, and thus used for attribute lookup.

ListCryptoKeysAsyncPager

A pager for iterating through list_crypto_keys requests.

This class thinly wraps an initial ListCryptoKeysResponse object, and provides an __aiter__ method to iterate through its crypto_keys field.

If there are more pages, the __aiter__ method will make additional ListCryptoKeys requests and continue to iterate through the crypto_keys field on the corresponding responses.

All the usual ListCryptoKeysResponse attributes are available on the pager. If multiple requests are made, only the most recent response is retained, and thus used for attribute lookup.

ListCryptoKeysPager

A pager for iterating through list_crypto_keys requests.

This class thinly wraps an initial ListCryptoKeysResponse object, and provides an __iter__ method to iterate through its crypto_keys field.

If there are more pages, the __iter__ method will make additional ListCryptoKeys requests and continue to iterate through the crypto_keys field on the corresponding responses.

All the usual ListCryptoKeysResponse attributes are available on the pager. If multiple requests are made, only the most recent response is retained, and thus used for attribute lookup.

ListImportJobsAsyncPager

A pager for iterating through list_import_jobs requests.

This class thinly wraps an initial ListImportJobsResponse object, and provides an __aiter__ method to iterate through its import_jobs field.

If there are more pages, the __aiter__ method will make additional ListImportJobs requests and continue to iterate through the import_jobs field on the corresponding responses.

All the usual ListImportJobsResponse attributes are available on the pager. If multiple requests are made, only the most recent response is retained, and thus used for attribute lookup.

ListImportJobsPager

A pager for iterating through list_import_jobs requests.

This class thinly wraps an initial ListImportJobsResponse object, and provides an __iter__ method to iterate through its import_jobs field.

If there are more pages, the __iter__ method will make additional ListImportJobs requests and continue to iterate through the import_jobs field on the corresponding responses.

All the usual ListImportJobsResponse attributes are available on the pager. If multiple requests are made, only the most recent response is retained, and thus used for attribute lookup.

ListKeyRingsAsyncPager

A pager for iterating through list_key_rings requests.

This class thinly wraps an initial ListKeyRingsResponse object, and provides an __aiter__ method to iterate through its key_rings field.

If there are more pages, the __aiter__ method will make additional ListKeyRings requests and continue to iterate through the key_rings field on the corresponding responses.

All the usual ListKeyRingsResponse attributes are available on the pager. If multiple requests are made, only the most recent response is retained, and thus used for attribute lookup.

ListKeyRingsPager

A pager for iterating through list_key_rings requests.

This class thinly wraps an initial ListKeyRingsResponse object, and provides an __iter__ method to iterate through its key_rings field.

If there are more pages, the __iter__ method will make additional ListKeyRings requests and continue to iterate through the key_rings field on the corresponding responses.

All the usual ListKeyRingsResponse attributes are available on the pager. If multiple requests are made, only the most recent response is retained, and thus used for attribute lookup.

AsymmetricDecryptRequest

Request message for KeyManagementService.AsymmetricDecrypt.

AsymmetricDecryptResponse

Response message for KeyManagementService.AsymmetricDecrypt.

AsymmetricSignRequest

Request message for KeyManagementService.AsymmetricSign.

AsymmetricSignResponse

Response message for KeyManagementService.AsymmetricSign.

Certificate

A Certificate represents an X.509 certificate used to authenticate HTTPS connections to EKM replicas.

CreateCryptoKeyRequest

Request message for KeyManagementService.CreateCryptoKey.

CreateCryptoKeyVersionRequest

Request message for KeyManagementService.CreateCryptoKeyVersion.

CreateEkmConnectionRequest

Request message for EkmService.CreateEkmConnection.

CreateImportJobRequest

Request message for KeyManagementService.CreateImportJob.

CreateKeyRingRequest

Request message for KeyManagementService.CreateKeyRing.

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.

.. _oneof: https://proto-plus-python.readthedocs.io/en/stable/fields.html#oneofs-mutually-exclusive-fields

CryptoKeyPurpose

CryptoKeyPurpose describes the cryptographic capabilities of a CryptoKey. A given key can only be used for the operations allowed by its purpose. For more information, see Key purposes <https://cloud.google.com/kms/docs/algorithms#key_purposes>__.

Values: CRYPTO_KEY_PURPOSE_UNSPECIFIED (0): Not specified. ENCRYPT_DECRYPT (1): CryptoKeys with this purpose may be used with Encrypt and Decrypt. ASYMMETRIC_SIGN (5): CryptoKeys with this purpose may be used with AsymmetricSign and GetPublicKey. ASYMMETRIC_DECRYPT (6): CryptoKeys with this purpose may be used with AsymmetricDecrypt and GetPublicKey. RAW_ENCRYPT_DECRYPT (7): CryptoKeys with this purpose may be used with RawEncrypt and RawDecrypt. This purpose is meant to be used for interoperable symmetric encryption and does not support automatic CryptoKey rotation. MAC (9): CryptoKeys with this purpose may be used with MacSign.

LabelsEntry

The abstract base class for a message.

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.

CryptoKeyVersionAlgorithm

The algorithm of the CryptoKeyVersion, indicating what parameters must be used for each cryptographic operation.

The GOOGLE_SYMMETRIC_ENCRYPTION algorithm is usable with CryptoKey.purpose ENCRYPT_DECRYPT.

Algorithms beginning with RSA_SIGN_ are usable with CryptoKey.purpose ASYMMETRIC_SIGN.

The fields in the name after RSA_SIGN_ correspond to the following parameters: padding algorithm, modulus bit length, and digest algorithm.

For PSS, the salt length used is equal to the length of digest algorithm. For example, RSA_SIGN_PSS_2048_SHA256 will use PSS with a salt length of 256 bits or 32 bytes.

Algorithms beginning with RSA_DECRYPT_ are usable with CryptoKey.purpose ASYMMETRIC_DECRYPT.

The fields in the name after RSA_DECRYPT_ correspond to the following parameters: padding algorithm, modulus bit length, and digest algorithm.

Algorithms beginning with EC_SIGN_ are usable with CryptoKey.purpose ASYMMETRIC_SIGN.

The fields in the name after EC_SIGN_ correspond to the following parameters: elliptic curve, digest algorithm.

Algorithms beginning with HMAC_ are usable with CryptoKey.purpose MAC.

The suffix following HMAC_ corresponds to the hash algorithm being used (eg. SHA256).

For more information, see Key purposes and algorithms.

Values: CRYPTO_KEY_VERSION_ALGORITHM_UNSPECIFIED (0): Not specified. GOOGLE_SYMMETRIC_ENCRYPTION (1): Creates symmetric encryption keys. AES_128_GCM (41): AES-GCM (Galois Counter Mode) using 128-bit keys. AES_256_GCM (19): AES-GCM (Galois Counter Mode) using 256-bit keys. AES_128_CBC (42): AES-CBC (Cipher Block Chaining Mode) using 128-bit keys. AES_256_CBC (43): AES-CBC (Cipher Block Chaining Mode) using 256-bit keys. AES_128_CTR (44): AES-CTR (Counter Mode) using 128-bit keys. AES_256_CTR (45): AES-CTR (Counter Mode) using 256-bit keys. RSA_SIGN_PSS_2048_SHA256 (2): RSASSA-PSS 2048 bit key with a SHA256 digest. RSA_SIGN_PSS_3072_SHA256 (3): RSASSA-PSS 3072 bit key with a SHA256 digest. RSA_SIGN_PSS_4096_SHA256 (4): RSASSA-PSS 4096 bit key with a SHA256 digest. RSA_SIGN_PSS_4096_SHA512 (15): RSASSA-PSS 4096 bit key with a SHA512 digest. RSA_SIGN_PKCS1_2048_SHA256 (5): RSASSA-PKCS1-v1_5 with a 2048 bit key and a SHA256 digest. RSA_SIGN_PKCS1_3072_SHA256 (6): RSASSA-PKCS1-v1_5 with a 3072 bit key and a SHA256 digest. RSA_SIGN_PKCS1_4096_SHA256 (7): RSASSA-PKCS1-v1_5 with a 4096 bit key and a SHA256 digest. RSA_SIGN_PKCS1_4096_SHA512 (16): RSASSA-PKCS1-v1_5 with a 4096 bit key and a SHA512 digest. RSA_SIGN_RAW_PKCS1_2048 (28): RSASSA-PKCS1-v1_5 signing without encoding, with a 2048 bit key. RSA_SIGN_RAW_PKCS1_3072 (29): RSASSA-PKCS1-v1_5 signing without encoding, with a 3072 bit key. RSA_SIGN_RAW_PKCS1_4096 (30): RSASSA-PKCS1-v1_5 signing without encoding, with a 4096 bit key. RSA_DECRYPT_OAEP_2048_SHA256 (8): RSAES-OAEP 2048 bit key with a SHA256 digest. RSA_DECRYPT_OAEP_3072_SHA256 (9): RSAES-OAEP 3072 bit key with a SHA256 digest. RSA_DECRYPT_OAEP_4096_SHA256 (10): RSAES-OAEP 4096 bit key with a SHA256 digest. RSA_DECRYPT_OAEP_4096_SHA512 (17): RSAES-OAEP 4096 bit key with a SHA512 digest. RSA_DECRYPT_OAEP_2048_SHA1 (37): RSAES-OAEP 2048 bit key with a SHA1 digest. RSA_DECRYPT_OAEP_3072_SHA1 (38): RSAES-OAEP 3072 bit key with a SHA1 digest. RSA_DECRYPT_OAEP_4096_SHA1 (39): RSAES-OAEP 4096 bit key with a SHA1 digest. EC_SIGN_P256_SHA256 (12): ECDSA on the NIST P-256 curve with a SHA256 digest. Other hash functions can also be used: https://cloud.google.com/kms/docs/create-validate-signatures#ecdsa_support_for_other_hash_algorithms EC_SIGN_P384_SHA384 (13): ECDSA on the NIST P-384 curve with a SHA384 digest. Other hash functions can also be used: https://cloud.google.com/kms/docs/create-validate-signatures#ecdsa_support_for_other_hash_algorithms EC_SIGN_SECP256K1_SHA256 (31): ECDSA on the non-NIST secp256k1 curve. This curve is only supported for HSM protection level. Other hash functions can also be used: https://cloud.google.com/kms/docs/create-validate-signatures#ecdsa_support_for_other_hash_algorithms HMAC_SHA256 (32): HMAC-SHA256 signing with a 256 bit key. HMAC_SHA1 (33): HMAC-SHA1 signing with a 160 bit key. HMAC_SHA384 (34): HMAC-SHA384 signing with a 384 bit key. HMAC_SHA512 (35): HMAC-SHA512 signing with a 512 bit key. HMAC_SHA224 (36): HMAC-SHA224 signing with a 224 bit key. EXTERNAL_SYMMETRIC_ENCRYPTION (18): Algorithm representing symmetric encryption by an external key manager.

CryptoKeyVersionState

The state of a CryptoKeyVersion, indicating if it can be used.

Values: CRYPTO_KEY_VERSION_STATE_UNSPECIFIED (0): Not specified. PENDING_GENERATION (5): This version is still being generated. It may not be used, enabled, disabled, or destroyed yet. Cloud KMS will automatically mark this version ENABLED as soon as the version is ready. ENABLED (1): This version may be used for cryptographic operations. DISABLED (2): This version may not be used, but the key material is still available, and the version can be placed back into the ENABLED state. DESTROYED (3): This version is destroyed, and the key material is no longer stored. This version may only become ENABLED again if this version is reimport_eligible and the original key material is reimported with a call to KeyManagementService.ImportCryptoKeyVersion. DESTROY_SCHEDULED (4): This version is scheduled for destruction, and will be destroyed soon. Call RestoreCryptoKeyVersion to put it back into the DISABLED state. PENDING_IMPORT (6): This version is still being imported. It may not be used, enabled, disabled, or destroyed yet. Cloud KMS will automatically mark this version ENABLED as soon as the version is ready. IMPORT_FAILED (7): This version was not imported successfully. It may not be used, enabled, disabled, or destroyed. The submitted key material has been discarded. Additional details can be found in CryptoKeyVersion.import_failure_reason. GENERATION_FAILED (8): This version was not generated successfully. It may not be used, enabled, disabled, or destroyed. Additional details can be found in CryptoKeyVersion.generation_failure_reason. PENDING_EXTERNAL_DESTRUCTION (9): This version was destroyed, and it may not be used or enabled again. Cloud KMS is waiting for the corresponding key material residing in an external key manager to be destroyed. EXTERNAL_DESTRUCTION_FAILED (10): This version was destroyed, and it may not be used or enabled again. However, Cloud KMS could not confirm that the corresponding key material residing in an external key manager was destroyed. Additional details can be found in CryptoKeyVersion.external_destruction_failure_reason.

CryptoKeyVersionView

A view for CryptoKeyVersions. Controls the level of detail returned for CryptoKeyVersions in KeyManagementService.ListCryptoKeyVersions and KeyManagementService.ListCryptoKeys.

Values: CRYPTO_KEY_VERSION_VIEW_UNSPECIFIED (0): Default view for each CryptoKeyVersion. Does not include the attestation field. FULL (1): Provides all fields in each CryptoKeyVersion, including the attestation.

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.

This message has oneof_ fields (mutually exclusive fields). For each oneof, at most one member field can be set at the same time. Setting any member of the oneof automatically clears all other members.

.. _oneof: https://proto-plus-python.readthedocs.io/en/stable/fields.html#oneofs-mutually-exclusive-fields

EkmConfig

An EkmConfig is a singleton resource that represents configuration parameters that apply to all CryptoKeys and CryptoKeyVersions with a ProtectionLevel of EXTERNAL_VPC][CryptoKeyVersion.ProtectionLevel.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][CryptoKeyVersion.ProtectionLevel.EXTERNAL_VPC], as well as performing cryptographic operations using keys created within the EkmConnection.

KeyManagementMode

KeyManagementMode describes who can perform control plane cryptographic operations using this EkmConnection.

Values: KEY_MANAGEMENT_MODE_UNSPECIFIED (0): Not specified. MANUAL (1): EKM-side key management operations on CryptoKeys created with this EkmConnection must be initiated from the EKM directly and cannot be performed from Cloud KMS. This means that:

    -  When creating a
       <xref uid="google.cloud.kms.v1.CryptoKeyVersion">CryptoKeyVersion</xref>
       associated with this
       <xref uid="google.cloud.kms.v1.EkmConnection">EkmConnection</xref>, the
       caller must supply the key path of pre-existing external
       key material that will be linked to the
       <xref uid="google.cloud.kms.v1.CryptoKeyVersion">CryptoKeyVersion</xref>.
    -  Destruction of external key material cannot be requested
       via the Cloud KMS API and must be performed directly in
       the EKM.
    -  Automatic rotation of key material is not supported.
CLOUD_KMS (2):
    All <xref uid="google.cloud.kms.v1.CryptoKey">CryptoKeys</xref> created with
    this <xref uid="google.cloud.kms.v1.EkmConnection">EkmConnection</xref> use
    EKM-side key management operations initiated from Cloud KMS.
    This means that:

    -  When a
       <xref uid="google.cloud.kms.v1.CryptoKeyVersion">CryptoKeyVersion</xref>
       associated with this
       <xref uid="google.cloud.kms.v1.EkmConnection">EkmConnection</xref> is
       created, the EKM automatically generates new key material
       and a new key path. The caller cannot supply the key path
       of pre-existing external key material.
    -  Destruction of external key material associated with this
       <xref uid="google.cloud.kms.v1.EkmConnection">EkmConnection</xref> can be
       requested by calling
       `DestroyCryptoKeyVersion][EkmService.DestroyCryptoKeyVersion]`.
    -  Automatic rotation of key material is supported.

ServiceResolver

A ServiceResolver represents an EKM replica that can be reached within an EkmConnection.

EncryptRequest

Request message for KeyManagementService.Encrypt.

EncryptResponse

Response message for KeyManagementService.Encrypt.

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.

GenerateRandomBytesRequest

Request message for KeyManagementService.GenerateRandomBytes.

GenerateRandomBytesResponse

Response message for KeyManagementService.GenerateRandomBytes.

GetCryptoKeyRequest

Request message for KeyManagementService.GetCryptoKey.

GetCryptoKeyVersionRequest

Request message for KeyManagementService.GetCryptoKeyVersion.

GetEkmConfigRequest

Request message for EkmService.GetEkmConfig.

GetEkmConnectionRequest

Request message for EkmService.GetEkmConnection.

GetImportJobRequest

Request message for KeyManagementService.GetImportJob.

GetKeyRingRequest

Request message for KeyManagementService.GetKeyRing.

GetPublicKeyRequest

Request message for KeyManagementService.GetPublicKey.

ImportCryptoKeyVersionRequest

Request message for KeyManagementService.ImportCryptoKeyVersion.

.. _oneof: https://proto-plus-python.readthedocs.io/en/stable/fields.html#oneofs-mutually-exclusive-fields

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 <https://cloud.google.com/kms/docs/importing-a-key>__.

ImportJobState

The state of the ImportJob, indicating if it can be used.

Values: IMPORT_JOB_STATE_UNSPECIFIED (0): Not specified. PENDING_GENERATION (1): The wrapping key for this job is still being generated. It may not be used. Cloud KMS will automatically mark this job as ACTIVE as soon as the wrapping key is generated. ACTIVE (2): This job may be used in CreateCryptoKey and CreateCryptoKeyVersion requests. EXPIRED (3): This job can no longer be used and may not leave this state once entered.

ImportMethod

ImportMethod describes the key wrapping method chosen for this ImportJob.

Values: IMPORT_METHOD_UNSPECIFIED (0): Not specified. RSA_OAEP_3072_SHA1_AES_256 (1): This ImportMethod represents the CKM_RSA_AES_KEY_WRAP key wrapping scheme defined in the PKCS #11 standard. In summary, this involves wrapping the raw key with an ephemeral AES key, and wrapping the ephemeral AES key with a 3072 bit RSA key. For more details, see RSA AES key wrap mechanism <http://docs.oasis-open.org/pkcs11/pkcs11-curr/v2.40/cos01/pkcs11-curr-v2.40-cos01.html#_Toc408226908>. RSA_OAEP_4096_SHA1_AES_256 (2): This ImportMethod represents the CKM_RSA_AES_KEY_WRAP key wrapping scheme defined in the PKCS #11 standard. In summary, this involves wrapping the raw key with an ephemeral AES key, and wrapping the ephemeral AES key with a 4096 bit RSA key. For more details, see RSA AES key wrap mechanism <http://docs.oasis-open.org/pkcs11/pkcs11-curr/v2.40/cos01/pkcs11-curr-v2.40-cos01.html#_Toc408226908>. RSA_OAEP_3072_SHA256_AES_256 (3): This ImportMethod represents the CKM_RSA_AES_KEY_WRAP key wrapping scheme defined in the PKCS #11 standard. In summary, this involves wrapping the raw key with an ephemeral AES key, and wrapping the ephemeral AES key with a 3072 bit RSA key. For more details, see RSA AES key wrap mechanism <http://docs.oasis-open.org/pkcs11/pkcs11-curr/v2.40/cos01/pkcs11-curr-v2.40-cos01.html#_Toc408226908>. RSA_OAEP_4096_SHA256_AES_256 (4): This ImportMethod represents the CKM_RSA_AES_KEY_WRAP key wrapping scheme defined in the PKCS #11 standard. In summary, this involves wrapping the raw key with an ephemeral AES key, and wrapping the ephemeral AES key with a 4096 bit RSA key. For more details, see RSA AES key wrap mechanism <http://docs.oasis-open.org/pkcs11/pkcs11-curr/v2.40/cos01/pkcs11-curr-v2.40-cos01.html#_Toc408226908>. RSA_OAEP_3072_SHA256 (5): This ImportMethod represents RSAES-OAEP with a 3072 bit RSA key. The key material to be imported is wrapped directly with the RSA key. Due to technical limitations of RSA wrapping, this method cannot be used to wrap RSA keys for import. RSA_OAEP_4096_SHA256 (6): This ImportMethod represents RSAES-OAEP with a 4096 bit RSA key. The key material to be imported is wrapped directly with the RSA key. Due to technical limitations of RSA wrapping, this method cannot be used to wrap RSA keys for import.

WrappingPublicKey

The public key component of the wrapping key. For details of the type of key this public key corresponds to, see the ImportMethod.

KeyOperationAttestation

Contains an HSM-generated attestation about a key operation. For more information, see Verifying attestations.

AttestationFormat

Attestation formats provided by the HSM.

Values: ATTESTATION_FORMAT_UNSPECIFIED (0): Not specified. CAVIUM_V1_COMPRESSED (3): Cavium HSM attestation compressed with gzip. Note that this format is defined by Cavium and subject to change at any time.

    See
    https://www.marvell.com/products/security-solutions/nitrox-hs-adapters/software-key-attestation.html.
CAVIUM_V2_COMPRESSED (4):
    Cavium HSM attestation V2 compressed with
    gzip. This is a new format introduced in
    Cavium's version 3.2-08.

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.

KeyRing

A KeyRing is a toplevel logical grouping of CryptoKeys.

ListCryptoKeyVersionsRequest

Request message for KeyManagementService.ListCryptoKeyVersions.

ListCryptoKeyVersionsResponse

Response message for KeyManagementService.ListCryptoKeyVersions.

ListCryptoKeysRequest

Request message for KeyManagementService.ListCryptoKeys.

ListCryptoKeysResponse

Response message for KeyManagementService.ListCryptoKeys.

ListEkmConnectionsRequest

Request message for EkmService.ListEkmConnections.

ListEkmConnectionsResponse

Response message for EkmService.ListEkmConnections.

ListImportJobsRequest

Request message for KeyManagementService.ListImportJobs.

ListImportJobsResponse

Response message for KeyManagementService.ListImportJobs.

ListKeyRingsRequest

Request message for KeyManagementService.ListKeyRings.

ListKeyRingsResponse

Response message for KeyManagementService.ListKeyRings.

LocationMetadata

Cloud KMS metadata for the given google.cloud.location.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.

ProtectionLevel

ProtectionLevel specifies how cryptographic operations are performed. For more information, see Protection levels.

Values: PROTECTION_LEVEL_UNSPECIFIED (0): Not specified. SOFTWARE (1): Crypto operations are performed in software. HSM (2): Crypto operations are performed in a Hardware Security Module. EXTERNAL (3): Crypto operations are performed by an external key manager. EXTERNAL_VPC (4): Crypto operations are performed in an EKM-over-VPC backend.

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.

UpdateCryptoKeyPrimaryVersionRequest

Request message for KeyManagementService.UpdateCryptoKeyPrimaryVersion.

UpdateCryptoKeyRequest

Request message for KeyManagementService.UpdateCryptoKey.

UpdateCryptoKeyVersionRequest

Request message for KeyManagementService.UpdateCryptoKeyVersion.

UpdateEkmConfigRequest

Request message for EkmService.UpdateEkmConfig.

UpdateEkmConnectionRequest

Request message for EkmService.UpdateEkmConnection.

VerifyConnectivityRequest

Request message for EkmService.VerifyConnectivity.

VerifyConnectivityResponse

Response message for EkmService.VerifyConnectivity.

Modules

pagers

API documentation for kms_v1.services.ekm_service.pagers module.

pagers

API documentation for kms_v1.services.key_management_service.pagers module.