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.



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

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)


633
634
635
# File 'lib/google/apis/storage_v1/classes.rb', line 633

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)


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

def restriction_mode
  @restriction_mode
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



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

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