@@ -577,19 +577,135 @@ def update!(**args)
577
577
class Encryption
578
578
include Google ::Apis ::Core ::Hashable
579
579
580
+ # If set, the new objects created in this bucket must comply with this
581
+ # enforcement config. Changing this has no effect on existing objects; it
582
+ # applies to new objects only. If omitted, the new objects are allowed to be
583
+ # encrypted with Customer Managed Encryption type by default.
584
+ # Corresponds to the JSON property `customerManagedEncryptionEnforcementConfig`
585
+ # @return [Google::Apis::StorageV1::Bucket::Encryption::CustomerManagedEncryptionEnforcementConfig]
586
+ attr_accessor :customer_managed_encryption_enforcement_config
587
+
588
+ # If set, the new objects created in this bucket must comply with this
589
+ # enforcement config. Changing this has no effect on existing objects; it
590
+ # applies to new objects only. If omitted, the new objects are allowed to be
591
+ # encrypted with Customer Supplied Encryption type by default.
592
+ # Corresponds to the JSON property `customerSuppliedEncryptionEnforcementConfig`
593
+ # @return [Google::Apis::StorageV1::Bucket::Encryption::CustomerSuppliedEncryptionEnforcementConfig]
594
+ attr_accessor :customer_supplied_encryption_enforcement_config
595
+
580
596
# A Cloud KMS key that will be used to encrypt objects inserted into this bucket,
581
597
# if no encryption method is specified.
582
598
# Corresponds to the JSON property `defaultKmsKeyName`
583
599
# @return [String]
584
600
attr_accessor :default_kms_key_name
585
601
602
+ # If set, the new objects created in this bucket must comply with this
603
+ # enforcement config. Changing this has no effect on existing objects; it
604
+ # applies to new objects only. If omitted, the new objects are allowed to be
605
+ # encrypted with Google Managed Encryption type by default.
606
+ # Corresponds to the JSON property `googleManagedEncryptionEnforcementConfig`
607
+ # @return [Google::Apis::StorageV1::Bucket::Encryption::GoogleManagedEncryptionEnforcementConfig]
608
+ attr_accessor :google_managed_encryption_enforcement_config
609
+
586
610
def initialize ( **args )
587
611
update! ( **args )
588
612
end
589
613
590
614
# Update properties of this object
591
615
def update! ( **args )
616
+ @customer_managed_encryption_enforcement_config = args [ :customer_managed_encryption_enforcement_config ] if args . key? ( :customer_managed_encryption_enforcement_config )
617
+ @customer_supplied_encryption_enforcement_config = args [ :customer_supplied_encryption_enforcement_config ] if args . key? ( :customer_supplied_encryption_enforcement_config )
592
618
@default_kms_key_name = args [ :default_kms_key_name ] if args . key? ( :default_kms_key_name )
619
+ @google_managed_encryption_enforcement_config = args [ :google_managed_encryption_enforcement_config ] if args . key? ( :google_managed_encryption_enforcement_config )
620
+ end
621
+
622
+ # If set, the new objects created in this bucket must comply with this
623
+ # enforcement config. Changing this has no effect on existing objects; it
624
+ # applies to new objects only. If omitted, the new objects are allowed to be
625
+ # encrypted with Customer Managed Encryption type by default.
626
+ class CustomerManagedEncryptionEnforcementConfig
627
+ include Google ::Apis ::Core ::Hashable
628
+
629
+ # Server-determined value that indicates the time from which configuration was
630
+ # enforced and effective. This value is in RFC 3339 format.
631
+ # Corresponds to the JSON property `effectiveTime`
632
+ # @return [DateTime]
633
+ attr_accessor :effective_time
634
+
635
+ # Restriction mode for Customer-Managed Encryption Keys. Defaults to
636
+ # NotRestricted.
637
+ # Corresponds to the JSON property `restrictionMode`
638
+ # @return [String]
639
+ attr_accessor :restriction_mode
640
+
641
+ def initialize ( **args )
642
+ update! ( **args )
643
+ end
644
+
645
+ # Update properties of this object
646
+ def update! ( **args )
647
+ @effective_time = args [ :effective_time ] if args . key? ( :effective_time )
648
+ @restriction_mode = args [ :restriction_mode ] if args . key? ( :restriction_mode )
649
+ end
650
+ end
651
+
652
+ # If set, the new objects created in this bucket must comply with this
653
+ # enforcement config. Changing this has no effect on existing objects; it
654
+ # applies to new objects only. If omitted, the new objects are allowed to be
655
+ # encrypted with Customer Supplied Encryption type by default.
656
+ class CustomerSuppliedEncryptionEnforcementConfig
657
+ include Google ::Apis ::Core ::Hashable
658
+
659
+ # Server-determined value that indicates the time from which configuration was
660
+ # enforced and effective. This value is in RFC 3339 format.
661
+ # Corresponds to the JSON property `effectiveTime`
662
+ # @return [DateTime]
663
+ attr_accessor :effective_time
664
+
665
+ # Restriction mode for Customer-Supplied Encryption Keys. Defaults to
666
+ # NotRestricted.
667
+ # Corresponds to the JSON property `restrictionMode`
668
+ # @return [String]
669
+ attr_accessor :restriction_mode
670
+
671
+ def initialize ( **args )
672
+ update! ( **args )
673
+ end
674
+
675
+ # Update properties of this object
676
+ def update! ( **args )
677
+ @effective_time = args [ :effective_time ] if args . key? ( :effective_time )
678
+ @restriction_mode = args [ :restriction_mode ] if args . key? ( :restriction_mode )
679
+ end
680
+ end
681
+
682
+ # If set, the new objects created in this bucket must comply with this
683
+ # enforcement config. Changing this has no effect on existing objects; it
684
+ # applies to new objects only. If omitted, the new objects are allowed to be
685
+ # encrypted with Google Managed Encryption type by default.
686
+ class GoogleManagedEncryptionEnforcementConfig
687
+ include Google ::Apis ::Core ::Hashable
688
+
689
+ # Server-determined value that indicates the time from which configuration was
690
+ # enforced and effective. This value is in RFC 3339 format.
691
+ # Corresponds to the JSON property `effectiveTime`
692
+ # @return [DateTime]
693
+ attr_accessor :effective_time
694
+
695
+ # Restriction mode for Google-Managed Encryption Keys. Defaults to NotRestricted.
696
+ # Corresponds to the JSON property `restrictionMode`
697
+ # @return [String]
698
+ attr_accessor :restriction_mode
699
+
700
+ def initialize ( **args )
701
+ update! ( **args )
702
+ end
703
+
704
+ # Update properties of this object
705
+ def update! ( **args )
706
+ @effective_time = args [ :effective_time ] if args . key? ( :effective_time )
707
+ @restriction_mode = args [ :restriction_mode ] if args . key? ( :restriction_mode )
708
+ end
593
709
end
594
710
end
595
711
0 commit comments