Class: Google::Apis::IntegrationsV1::GoogleCloudIntegrationsV1alphaCloudKmsConfig

Inherits:
Object
  • Object
show all
Includes:
Core::Hashable, Core::JsonObjectSupport
Defined in:
lib/google/apis/integrations_v1/classes.rb,
lib/google/apis/integrations_v1/representations.rb,
lib/google/apis/integrations_v1/representations.rb

Overview

Configuration information for Client's Cloud KMS information

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ GoogleCloudIntegrationsV1alphaCloudKmsConfig

Returns a new instance of GoogleCloudIntegrationsV1alphaCloudKmsConfig.



7004
7005
7006
# File 'lib/google/apis/integrations_v1/classes.rb', line 7004

def initialize(**args)
   update!(**args)
end

Instance Attribute Details

#keyString

Required. A Cloud KMS key is a named object containing one or more key versions, along with metadata for the key. A key exists on exactly one key ring tied to a specific location. Corresponds to the JSON property key

Returns:

  • (String)


6973
6974
6975
# File 'lib/google/apis/integrations_v1/classes.rb', line 6973

def key
  @key
end

#key_versionString

Optional. Each version of a key contains key material used for encryption or signing. A key's version is represented by an integer, starting at 1. To decrypt data or verify a signature, you must use the same key version that was used to encrypt or sign the data. Corresponds to the JSON property keyVersion

Returns:

  • (String)


6981
6982
6983
# File 'lib/google/apis/integrations_v1/classes.rb', line 6981

def key_version
  @key_version
end

#kms_locationString

Required. Location name of the key ring, e.g. "us-west1". Corresponds to the JSON property kmsLocation

Returns:

  • (String)


6986
6987
6988
# File 'lib/google/apis/integrations_v1/classes.rb', line 6986

def kms_location
  @kms_location
end

#kms_project_idString

Optional. The gcp project id of the project where the kms key stored. If empty, the kms key is stored at the same project as customer's project and ecrypted with CMEK, otherwise, the kms key is stored in the tenant project and encrypted with GMEK Corresponds to the JSON property kmsProjectId

Returns:

  • (String)


6994
6995
6996
# File 'lib/google/apis/integrations_v1/classes.rb', line 6994

def kms_project_id
  @kms_project_id
end

#kms_ringString

Required. A key ring organizes keys in a specific Google Cloud location and allows you to manage access control on groups of keys. A key ring's name does not need to be unique across a Google Cloud project, but must be unique within a given location. Corresponds to the JSON property kmsRing

Returns:

  • (String)


7002
7003
7004
# File 'lib/google/apis/integrations_v1/classes.rb', line 7002

def kms_ring
  @kms_ring
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



7009
7010
7011
7012
7013
7014
7015
# File 'lib/google/apis/integrations_v1/classes.rb', line 7009

def update!(**args)
  @key = args[:key] if args.key?(:key)
  @key_version = args[:key_version] if args.key?(:key_version)
  @kms_location = args[:kms_location] if args.key?(:kms_location)
  @kms_project_id = args[:kms_project_id] if args.key?(:kms_project_id)
  @kms_ring = args[:kms_ring] if args.key?(:kms_ring)
end