Class: Google::Apis::WorkstationsV1beta::CustomerEncryptionKey

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

Overview

A customer-managed encryption key for the Compute Engine resources of this workstation configuration.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ CustomerEncryptionKey

Returns a new instance of CustomerEncryptionKey.



282
283
284
# File 'lib/google/apis/workstations_v1beta/classes.rb', line 282

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

Instance Attribute Details

#kms_keyString

Immutable. The name of the Google Cloud KMS encryption key. For example, projects/PROJECT_ID/locations/REGION/keyRings/KEY_RING/cryptoKeys/KEY_NAME. Corresponds to the JSON property kmsKey

Returns:

  • (String)


270
271
272
# File 'lib/google/apis/workstations_v1beta/classes.rb', line 270

def kms_key
  @kms_key
end

#kms_key_service_accountString

Immutable. The service account to use with the specified KMS key. We recommend that you use a separate service account and follow KMS best practices. For more information, see Separation of duties and gcloud kms keys add-iam-policy-binding --member. Corresponds to the JSON property kmsKeyServiceAccount

Returns:

  • (String)


280
281
282
# File 'lib/google/apis/workstations_v1beta/classes.rb', line 280

def 
  @kms_key_service_account
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



287
288
289
290
# File 'lib/google/apis/workstations_v1beta/classes.rb', line 287

def update!(**args)
  @kms_key = args[:kms_key] if args.key?(:kms_key)
  @kms_key_service_account = args[:kms_key_service_account] if args.key?(:kms_key_service_account)
end