Class: Google::Apis::StorageV1::Bucket::Encryption::CustomerManagedEncryptionEnforcementConfig

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

Overview

If set, the new objects created in this bucket must comply with this enforcement config. Changing this has no effect on existing objects; it applies to new objects only. If omitted, the new objects are allowed to be encrypted with Customer Managed Encryption type by default.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ CustomerManagedEncryptionEnforcementConfig

Returns a new instance of CustomerManagedEncryptionEnforcementConfig.



648
649
650
# File 'lib/google/apis/storage_v1/classes.rb', line 648

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

Instance Attribute Details

#effective_timeDateTime

Server-determined value that indicates the time from which configuration was enforced and effective. This value is in RFC 3339 format. Corresponds to the JSON property effectiveTime

Returns:

  • (DateTime)


640
641
642
# File 'lib/google/apis/storage_v1/classes.rb', line 640

def effective_time
  @effective_time
end

#restriction_modeString

Restriction mode for Customer-Managed Encryption Keys. Defaults to NotRestricted. Corresponds to the JSON property restrictionMode

Returns:

  • (String)


646
647
648
# File 'lib/google/apis/storage_v1/classes.rb', line 646

def restriction_mode
  @restriction_mode
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



653
654
655
656
# File 'lib/google/apis/storage_v1/classes.rb', line 653

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