google-apis-securitycenter_v1 0.77.0 → 0.79.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -186,20 +186,43 @@ module Google
|
|
186
186
|
end
|
187
187
|
end
|
188
188
|
|
189
|
+
# Information about [Google Cloud Armor Adaptive Protection](https://cloud.
|
190
|
+
# google.com/armor/docs/cloud-armor-overview#google-cloud-armor-adaptive-
|
191
|
+
# protection).
|
192
|
+
class AdaptiveProtection
|
193
|
+
include Google::Apis::Core::Hashable
|
194
|
+
|
195
|
+
# A score of 0 means that there is low confidence that the detected event is an
|
196
|
+
# actual attack. A score of 1 means that there is high confidence that the
|
197
|
+
# detected event is an attack. See the [Adaptive Protection documentation](https:
|
198
|
+
# //cloud.google.com/armor/docs/adaptive-protection-overview#configure-alert-
|
199
|
+
# tuning) for further explanation.
|
200
|
+
# Corresponds to the JSON property `confidence`
|
201
|
+
# @return [Float]
|
202
|
+
attr_accessor :confidence
|
203
|
+
|
204
|
+
def initialize(**args)
|
205
|
+
update!(**args)
|
206
|
+
end
|
207
|
+
|
208
|
+
# Update properties of this object
|
209
|
+
def update!(**args)
|
210
|
+
@confidence = args[:confidence] if args.key?(:confidence)
|
211
|
+
end
|
212
|
+
end
|
213
|
+
|
189
214
|
# Represents an application associated with a finding.
|
190
215
|
class Application
|
191
216
|
include Google::Apis::Core::Hashable
|
192
217
|
|
193
218
|
# The base URI that identifies the network location of the application in which
|
194
|
-
# the vulnerability was detected.
|
195
|
-
# http://11.22.33.44:8080
|
219
|
+
# the vulnerability was detected. For example, `http://example.com`.
|
196
220
|
# Corresponds to the JSON property `baseUri`
|
197
221
|
# @return [String]
|
198
222
|
attr_accessor :base_uri
|
199
223
|
|
200
|
-
# The full URI with payload that can be used to reproduce the vulnerability.
|
201
|
-
#
|
202
|
-
# aMmYgI6H
|
224
|
+
# The full URI with payload that can be used to reproduce the vulnerability. For
|
225
|
+
# example, `http://example.com?p=aMmYgI6H`.
|
203
226
|
# Corresponds to the JSON property `fullUri`
|
204
227
|
# @return [String]
|
205
228
|
attr_accessor :full_uri
|
@@ -324,6 +347,37 @@ module Google
|
|
324
347
|
end
|
325
348
|
end
|
326
349
|
|
350
|
+
# Information about DDoS attack volume and classification.
|
351
|
+
class Attack
|
352
|
+
include Google::Apis::Core::Hashable
|
353
|
+
|
354
|
+
# Type of attack, for example, ‘SYN-flood’, ‘NTP-udp’, or ‘CHARGEN-udp’.
|
355
|
+
# Corresponds to the JSON property `classification`
|
356
|
+
# @return [String]
|
357
|
+
attr_accessor :classification
|
358
|
+
|
359
|
+
# Total BPS (bytes per second) volume of attack.
|
360
|
+
# Corresponds to the JSON property `volumeBps`
|
361
|
+
# @return [Fixnum]
|
362
|
+
attr_accessor :volume_bps
|
363
|
+
|
364
|
+
# Total PPS (packets per second) volume of attack.
|
365
|
+
# Corresponds to the JSON property `volumePps`
|
366
|
+
# @return [Fixnum]
|
367
|
+
attr_accessor :volume_pps
|
368
|
+
|
369
|
+
def initialize(**args)
|
370
|
+
update!(**args)
|
371
|
+
end
|
372
|
+
|
373
|
+
# Update properties of this object
|
374
|
+
def update!(**args)
|
375
|
+
@classification = args[:classification] if args.key?(:classification)
|
376
|
+
@volume_bps = args[:volume_bps] if args.key?(:volume_bps)
|
377
|
+
@volume_pps = args[:volume_pps] if args.key?(:volume_pps)
|
378
|
+
end
|
379
|
+
end
|
380
|
+
|
327
381
|
# An attack exposure contains the results of an attack path simulation run.
|
328
382
|
class AttackExposure
|
329
383
|
include Google::Apis::Core::Hashable
|
@@ -611,19 +665,133 @@ module Google
|
|
611
665
|
end
|
612
666
|
end
|
613
667
|
|
668
|
+
# An AWS account that is a member of an organization.
|
669
|
+
class AwsAccount
|
670
|
+
include Google::Apis::Core::Hashable
|
671
|
+
|
672
|
+
# The unique identifier (ID) of the account, containing exactly 12 digits.
|
673
|
+
# Corresponds to the JSON property `id`
|
674
|
+
# @return [String]
|
675
|
+
attr_accessor :id
|
676
|
+
|
677
|
+
# The friendly name of this account.
|
678
|
+
# Corresponds to the JSON property `name`
|
679
|
+
# @return [String]
|
680
|
+
attr_accessor :name
|
681
|
+
|
682
|
+
def initialize(**args)
|
683
|
+
update!(**args)
|
684
|
+
end
|
685
|
+
|
686
|
+
# Update properties of this object
|
687
|
+
def update!(**args)
|
688
|
+
@id = args[:id] if args.key?(:id)
|
689
|
+
@name = args[:name] if args.key?(:name)
|
690
|
+
end
|
691
|
+
end
|
692
|
+
|
693
|
+
# AWS metadata associated with the resource, only applicable if the finding's
|
694
|
+
# cloud provider is Amazon Web Services.
|
695
|
+
class AwsMetadata
|
696
|
+
include Google::Apis::Core::Hashable
|
697
|
+
|
698
|
+
# An AWS account that is a member of an organization.
|
699
|
+
# Corresponds to the JSON property `account`
|
700
|
+
# @return [Google::Apis::SecuritycenterV1::AwsAccount]
|
701
|
+
attr_accessor :account
|
702
|
+
|
703
|
+
# An organization is a collection of accounts that are centrally managed
|
704
|
+
# together using consolidated billing, organized hierarchically with
|
705
|
+
# organizational units (OUs), and controlled with policies.
|
706
|
+
# Corresponds to the JSON property `organization`
|
707
|
+
# @return [Google::Apis::SecuritycenterV1::AwsOrganization]
|
708
|
+
attr_accessor :organization
|
709
|
+
|
710
|
+
# A list of AWS organizational units associated with the resource, ordered from
|
711
|
+
# lowest level (closest to the account) to highest level.
|
712
|
+
# Corresponds to the JSON property `organizationalUnits`
|
713
|
+
# @return [Array<Google::Apis::SecuritycenterV1::AwsOrganizationalUnit>]
|
714
|
+
attr_accessor :organizational_units
|
715
|
+
|
716
|
+
def initialize(**args)
|
717
|
+
update!(**args)
|
718
|
+
end
|
719
|
+
|
720
|
+
# Update properties of this object
|
721
|
+
def update!(**args)
|
722
|
+
@account = args[:account] if args.key?(:account)
|
723
|
+
@organization = args[:organization] if args.key?(:organization)
|
724
|
+
@organizational_units = args[:organizational_units] if args.key?(:organizational_units)
|
725
|
+
end
|
726
|
+
end
|
727
|
+
|
728
|
+
# An organization is a collection of accounts that are centrally managed
|
729
|
+
# together using consolidated billing, organized hierarchically with
|
730
|
+
# organizational units (OUs), and controlled with policies.
|
731
|
+
class AwsOrganization
|
732
|
+
include Google::Apis::Core::Hashable
|
733
|
+
|
734
|
+
# The unique identifier (ID) for the organization. The regex pattern for an
|
735
|
+
# organization ID string requires "o-" followed by from 10 to 32 lowercase
|
736
|
+
# letters or digits.
|
737
|
+
# Corresponds to the JSON property `id`
|
738
|
+
# @return [String]
|
739
|
+
attr_accessor :id
|
740
|
+
|
741
|
+
def initialize(**args)
|
742
|
+
update!(**args)
|
743
|
+
end
|
744
|
+
|
745
|
+
# Update properties of this object
|
746
|
+
def update!(**args)
|
747
|
+
@id = args[:id] if args.key?(:id)
|
748
|
+
end
|
749
|
+
end
|
750
|
+
|
751
|
+
# An Organizational Unit (OU) is a container of AWS accounts within a root of an
|
752
|
+
# organization. Policies that are attached to an OU apply to all accounts
|
753
|
+
# contained in that OU and in any child OUs.
|
754
|
+
class AwsOrganizationalUnit
|
755
|
+
include Google::Apis::Core::Hashable
|
756
|
+
|
757
|
+
# The unique identifier (ID) associated with this OU. The regex pattern for an
|
758
|
+
# organizational unit ID string requires "ou-" followed by from 4 to 32
|
759
|
+
# lowercase letters or digits (the ID of the root that contains the OU). This
|
760
|
+
# string is followed by a second "-" dash and from 8 to 32 additional lowercase
|
761
|
+
# letters or digits. For example, "ou-ab12-cd34ef56".
|
762
|
+
# Corresponds to the JSON property `id`
|
763
|
+
# @return [String]
|
764
|
+
attr_accessor :id
|
765
|
+
|
766
|
+
# The friendly name of the OU.
|
767
|
+
# Corresponds to the JSON property `name`
|
768
|
+
# @return [String]
|
769
|
+
attr_accessor :name
|
770
|
+
|
771
|
+
def initialize(**args)
|
772
|
+
update!(**args)
|
773
|
+
end
|
774
|
+
|
775
|
+
# Update properties of this object
|
776
|
+
def update!(**args)
|
777
|
+
@id = args[:id] if args.key?(:id)
|
778
|
+
@name = args[:name] if args.key?(:name)
|
779
|
+
end
|
780
|
+
end
|
781
|
+
|
614
782
|
# Information related to Google Cloud Backup and DR Service findings.
|
615
783
|
class BackupDisasterRecovery
|
616
784
|
include Google::Apis::Core::Hashable
|
617
785
|
|
618
786
|
# The name of the Backup and DR appliance that captures, moves, and manages the
|
619
|
-
# lifecycle of backup data. For example,
|
787
|
+
# lifecycle of backup data. For example, `backup-server-57137`.
|
620
788
|
# Corresponds to the JSON property `appliance`
|
621
789
|
# @return [String]
|
622
790
|
attr_accessor :appliance
|
623
791
|
|
624
792
|
# The names of Backup and DR applications. An application is a VM, database, or
|
625
793
|
# file system on a managed host monitored by a backup and recovery appliance.
|
626
|
-
# For example,
|
794
|
+
# For example, `centos7-01-vol00`, `centos7-01-vol01`, `centos7-01-vol02`.
|
627
795
|
# Corresponds to the JSON property `applications`
|
628
796
|
# @return [Array<String>]
|
629
797
|
attr_accessor :applications
|
@@ -636,13 +804,13 @@ module Google
|
|
636
804
|
# The name of a Backup and DR template which comprises one or more backup
|
637
805
|
# policies. See the [Backup and DR documentation](https://cloud.google.com/
|
638
806
|
# backup-disaster-recovery/docs/concepts/backup-plan#temp) for more information.
|
639
|
-
# For example,
|
807
|
+
# For example, `snap-ov`.
|
640
808
|
# Corresponds to the JSON property `backupTemplate`
|
641
809
|
# @return [String]
|
642
810
|
attr_accessor :backup_template
|
643
811
|
|
644
|
-
# The backup type of the Backup and DR image. For example,
|
645
|
-
# Snapshot
|
812
|
+
# The backup type of the Backup and DR image. For example, `Snapshot`, `Remote
|
813
|
+
# Snapshot`, `OnVault`.
|
646
814
|
# Corresponds to the JSON property `backupType`
|
647
815
|
# @return [String]
|
648
816
|
attr_accessor :backup_type
|
@@ -652,14 +820,14 @@ module Google
|
|
652
820
|
# (for example, Compute Engine, SQL Server, Oracle DB, SMB file system, etc.),
|
653
821
|
# vCenter, or an ESX server. See the [Backup and DR documentation on hosts](
|
654
822
|
# https://cloud.google.com/backup-disaster-recovery/docs/configuration/manage-
|
655
|
-
# hosts-and-their-applications) for more information. For example,
|
823
|
+
# hosts-and-their-applications) for more information. For example, `centos7-01`.
|
656
824
|
# Corresponds to the JSON property `host`
|
657
825
|
# @return [String]
|
658
826
|
attr_accessor :host
|
659
827
|
|
660
828
|
# The names of Backup and DR policies that are associated with a template and
|
661
829
|
# that define when to run a backup, how frequently to run a backup, and how long
|
662
|
-
# to retain the backup image. For example,
|
830
|
+
# to retain the backup image. For example, `onvaults`.
|
663
831
|
# Corresponds to the JSON property `policies`
|
664
832
|
# @return [Array<String>]
|
665
833
|
attr_accessor :policies
|
@@ -667,7 +835,7 @@ module Google
|
|
667
835
|
# The names of Backup and DR advanced policy options of a policy applying to an
|
668
836
|
# application. See the [Backup and DR documentation on policy options](https://
|
669
837
|
# cloud.google.com/backup-disaster-recovery/docs/create-plan/policy-settings).
|
670
|
-
# For example,
|
838
|
+
# For example, `skipofflineappsincongrp, nounmap`.
|
671
839
|
# Corresponds to the JSON property `policyOptions`
|
672
840
|
# @return [Array<String>]
|
673
841
|
attr_accessor :policy_options
|
@@ -675,7 +843,7 @@ module Google
|
|
675
843
|
# The name of the Backup and DR resource profile that specifies the storage
|
676
844
|
# media for backups of application and VM data. See the [Backup and DR
|
677
845
|
# documentation on profiles](https://cloud.google.com/backup-disaster-recovery/
|
678
|
-
# docs/concepts/backup-plan#profile). For example,
|
846
|
+
# docs/concepts/backup-plan#profile). For example, `GCP`.
|
679
847
|
# Corresponds to the JSON property `profile`
|
680
848
|
# @return [String]
|
681
849
|
attr_accessor :profile
|
@@ -684,7 +852,7 @@ module Google
|
|
684
852
|
# appliance is storing data in. The storage pool could be of type Cloud, Primary,
|
685
853
|
# Snapshot, or OnVault. See the [Backup and DR documentation on storage pools](
|
686
854
|
# https://cloud.google.com/backup-disaster-recovery/docs/concepts/storage-pools).
|
687
|
-
# For example,
|
855
|
+
# For example, `DiskPoolOne`.
|
688
856
|
# Corresponds to the JSON property `storagePool`
|
689
857
|
# @return [String]
|
690
858
|
attr_accessor :storage_pool
|
@@ -883,6 +1051,61 @@ module Google
|
|
883
1051
|
end
|
884
1052
|
end
|
885
1053
|
|
1054
|
+
# Fields related to Google Cloud Armor findings.
|
1055
|
+
class CloudArmor
|
1056
|
+
include Google::Apis::Core::Hashable
|
1057
|
+
|
1058
|
+
# Information about [Google Cloud Armor Adaptive Protection](https://cloud.
|
1059
|
+
# google.com/armor/docs/cloud-armor-overview#google-cloud-armor-adaptive-
|
1060
|
+
# protection).
|
1061
|
+
# Corresponds to the JSON property `adaptiveProtection`
|
1062
|
+
# @return [Google::Apis::SecuritycenterV1::AdaptiveProtection]
|
1063
|
+
attr_accessor :adaptive_protection
|
1064
|
+
|
1065
|
+
# Information about DDoS attack volume and classification.
|
1066
|
+
# Corresponds to the JSON property `attack`
|
1067
|
+
# @return [Google::Apis::SecuritycenterV1::Attack]
|
1068
|
+
attr_accessor :attack
|
1069
|
+
|
1070
|
+
# Duration of attack from the start until the current moment (updated every 5
|
1071
|
+
# minutes).
|
1072
|
+
# Corresponds to the JSON property `duration`
|
1073
|
+
# @return [String]
|
1074
|
+
attr_accessor :duration
|
1075
|
+
|
1076
|
+
# Information about the requests relevant to the finding.
|
1077
|
+
# Corresponds to the JSON property `requests`
|
1078
|
+
# @return [Google::Apis::SecuritycenterV1::Requests]
|
1079
|
+
attr_accessor :requests
|
1080
|
+
|
1081
|
+
# Information about the [Google Cloud Armor security policy](https://cloud.
|
1082
|
+
# google.com/armor/docs/security-policy-overview) relevant to the finding.
|
1083
|
+
# Corresponds to the JSON property `securityPolicy`
|
1084
|
+
# @return [Google::Apis::SecuritycenterV1::SecurityPolicy]
|
1085
|
+
attr_accessor :security_policy
|
1086
|
+
|
1087
|
+
# Distinguish between volumetric & protocol DDoS attack and application layer
|
1088
|
+
# attacks. For example, “L3_4” for Layer 3 and Layer 4 DDoS attacks, or “L_7”
|
1089
|
+
# for Layer 7 DDoS attacks.
|
1090
|
+
# Corresponds to the JSON property `threatVector`
|
1091
|
+
# @return [String]
|
1092
|
+
attr_accessor :threat_vector
|
1093
|
+
|
1094
|
+
def initialize(**args)
|
1095
|
+
update!(**args)
|
1096
|
+
end
|
1097
|
+
|
1098
|
+
# Update properties of this object
|
1099
|
+
def update!(**args)
|
1100
|
+
@adaptive_protection = args[:adaptive_protection] if args.key?(:adaptive_protection)
|
1101
|
+
@attack = args[:attack] if args.key?(:attack)
|
1102
|
+
@duration = args[:duration] if args.key?(:duration)
|
1103
|
+
@requests = args[:requests] if args.key?(:requests)
|
1104
|
+
@security_policy = args[:security_policy] if args.key?(:security_policy)
|
1105
|
+
@threat_vector = args[:threat_vector] if args.key?(:threat_vector)
|
1106
|
+
end
|
1107
|
+
end
|
1108
|
+
|
886
1109
|
# The [data profile](https://cloud.google.com/dlp/docs/data-profiles) associated
|
887
1110
|
# with the finding.
|
888
1111
|
class CloudDlpDataProfile
|
@@ -1035,6 +1258,11 @@ module Google
|
|
1035
1258
|
# @return [String]
|
1036
1259
|
attr_accessor :category
|
1037
1260
|
|
1261
|
+
# The cloud provider for the compliance snapshot.
|
1262
|
+
# Corresponds to the JSON property `cloudProvider`
|
1263
|
+
# @return [String]
|
1264
|
+
attr_accessor :cloud_provider
|
1265
|
+
|
1038
1266
|
# The compliance standard (ie CIS).
|
1039
1267
|
# Corresponds to the JSON property `complianceStandard`
|
1040
1268
|
# @return [String]
|
@@ -1060,12 +1288,6 @@ module Google
|
|
1060
1288
|
# @return [String]
|
1061
1289
|
attr_accessor :name
|
1062
1290
|
|
1063
|
-
# The CRM resource display name that is closest to the snapshot the Findings
|
1064
|
-
# belong to.
|
1065
|
-
# Corresponds to the JSON property `projectDisplayName`
|
1066
|
-
# @return [String]
|
1067
|
-
attr_accessor :project_display_name
|
1068
|
-
|
1069
1291
|
# The snapshot time of the snapshot.
|
1070
1292
|
# Corresponds to the JSON property `snapshotTime`
|
1071
1293
|
# @return [String]
|
@@ -1078,12 +1300,12 @@ module Google
|
|
1078
1300
|
# Update properties of this object
|
1079
1301
|
def update!(**args)
|
1080
1302
|
@category = args[:category] if args.key?(:category)
|
1303
|
+
@cloud_provider = args[:cloud_provider] if args.key?(:cloud_provider)
|
1081
1304
|
@compliance_standard = args[:compliance_standard] if args.key?(:compliance_standard)
|
1082
1305
|
@compliance_version = args[:compliance_version] if args.key?(:compliance_version)
|
1083
1306
|
@count = args[:count] if args.key?(:count)
|
1084
1307
|
@leaf_container_resource = args[:leaf_container_resource] if args.key?(:leaf_container_resource)
|
1085
1308
|
@name = args[:name] if args.key?(:name)
|
1086
|
-
@project_display_name = args[:project_display_name] if args.key?(:project_display_name)
|
1087
1309
|
@snapshot_time = args[:snapshot_time] if args.key?(:snapshot_time)
|
1088
1310
|
end
|
1089
1311
|
end
|
@@ -1964,6 +2186,11 @@ module Google
|
|
1964
2186
|
# @return [String]
|
1965
2187
|
attr_accessor :category
|
1966
2188
|
|
2189
|
+
# Fields related to Google Cloud Armor findings.
|
2190
|
+
# Corresponds to the JSON property `cloudArmor`
|
2191
|
+
# @return [Google::Apis::SecuritycenterV1::CloudArmor]
|
2192
|
+
attr_accessor :cloud_armor
|
2193
|
+
|
1967
2194
|
# The [data profile](https://cloud.google.com/dlp/docs/data-profiles) associated
|
1968
2195
|
# with the finding.
|
1969
2196
|
# Corresponds to the JSON property `cloudDlpDataProfile`
|
@@ -2145,6 +2372,13 @@ module Google
|
|
2145
2372
|
# @return [String]
|
2146
2373
|
attr_accessor :next_steps
|
2147
2374
|
|
2375
|
+
# Represents a Jupyter notebook IPYNB file, such as a [Colab Enterprise notebook]
|
2376
|
+
# (https://cloud.google.com/colab/docs/introduction) file, that is associated
|
2377
|
+
# with a finding.
|
2378
|
+
# Corresponds to the JSON property `notebook`
|
2379
|
+
# @return [Google::Apis::SecuritycenterV1::Notebook]
|
2380
|
+
attr_accessor :notebook
|
2381
|
+
|
2148
2382
|
# Contains information about the org policies associated with the finding.
|
2149
2383
|
# Corresponds to the JSON property `orgPolicies`
|
2150
2384
|
# @return [Array<Google::Apis::SecuritycenterV1::OrgPolicy>]
|
@@ -2230,6 +2464,7 @@ module Google
|
|
2230
2464
|
@backup_disaster_recovery = args[:backup_disaster_recovery] if args.key?(:backup_disaster_recovery)
|
2231
2465
|
@canonical_name = args[:canonical_name] if args.key?(:canonical_name)
|
2232
2466
|
@category = args[:category] if args.key?(:category)
|
2467
|
+
@cloud_armor = args[:cloud_armor] if args.key?(:cloud_armor)
|
2233
2468
|
@cloud_dlp_data_profile = args[:cloud_dlp_data_profile] if args.key?(:cloud_dlp_data_profile)
|
2234
2469
|
@cloud_dlp_inspection = args[:cloud_dlp_inspection] if args.key?(:cloud_dlp_inspection)
|
2235
2470
|
@compliances = args[:compliances] if args.key?(:compliances)
|
@@ -2258,6 +2493,7 @@ module Google
|
|
2258
2493
|
@mute_update_time = args[:mute_update_time] if args.key?(:mute_update_time)
|
2259
2494
|
@name = args[:name] if args.key?(:name)
|
2260
2495
|
@next_steps = args[:next_steps] if args.key?(:next_steps)
|
2496
|
+
@notebook = args[:notebook] if args.key?(:notebook)
|
2261
2497
|
@org_policies = args[:org_policies] if args.key?(:org_policies)
|
2262
2498
|
@parent = args[:parent] if args.key?(:parent)
|
2263
2499
|
@parent_display_name = args[:parent_display_name] if args.key?(:parent_display_name)
|
@@ -2298,6 +2534,58 @@ module Google
|
|
2298
2534
|
end
|
2299
2535
|
end
|
2300
2536
|
|
2537
|
+
# GCP metadata associated with the resource, only applicable if the finding's
|
2538
|
+
# cloud provider is Google Cloud Platform.
|
2539
|
+
class GcpMetadata
|
2540
|
+
include Google::Apis::Core::Hashable
|
2541
|
+
|
2542
|
+
# Output only. Contains a Folder message for each folder in the assets ancestry.
|
2543
|
+
# The first folder is the deepest nested folder, and the last folder is the
|
2544
|
+
# folder directly under the Organization.
|
2545
|
+
# Corresponds to the JSON property `folders`
|
2546
|
+
# @return [Array<Google::Apis::SecuritycenterV1::GoogleCloudSecuritycenterV2Folder>]
|
2547
|
+
attr_accessor :folders
|
2548
|
+
|
2549
|
+
# The name of the organization that the resource belongs to.
|
2550
|
+
# Corresponds to the JSON property `organization`
|
2551
|
+
# @return [String]
|
2552
|
+
attr_accessor :organization
|
2553
|
+
|
2554
|
+
# The full resource name of resource's parent.
|
2555
|
+
# Corresponds to the JSON property `parent`
|
2556
|
+
# @return [String]
|
2557
|
+
attr_accessor :parent
|
2558
|
+
|
2559
|
+
# The human readable name of resource's parent.
|
2560
|
+
# Corresponds to the JSON property `parentDisplayName`
|
2561
|
+
# @return [String]
|
2562
|
+
attr_accessor :parent_display_name
|
2563
|
+
|
2564
|
+
# The full resource name of project that the resource belongs to.
|
2565
|
+
# Corresponds to the JSON property `project`
|
2566
|
+
# @return [String]
|
2567
|
+
attr_accessor :project
|
2568
|
+
|
2569
|
+
# The project ID that the resource belongs to.
|
2570
|
+
# Corresponds to the JSON property `projectDisplayName`
|
2571
|
+
# @return [String]
|
2572
|
+
attr_accessor :project_display_name
|
2573
|
+
|
2574
|
+
def initialize(**args)
|
2575
|
+
update!(**args)
|
2576
|
+
end
|
2577
|
+
|
2578
|
+
# Update properties of this object
|
2579
|
+
def update!(**args)
|
2580
|
+
@folders = args[:folders] if args.key?(:folders)
|
2581
|
+
@organization = args[:organization] if args.key?(:organization)
|
2582
|
+
@parent = args[:parent] if args.key?(:parent)
|
2583
|
+
@parent_display_name = args[:parent_display_name] if args.key?(:parent_display_name)
|
2584
|
+
@project = args[:project] if args.key?(:project)
|
2585
|
+
@project_display_name = args[:project_display_name] if args.key?(:project_display_name)
|
2586
|
+
end
|
2587
|
+
end
|
2588
|
+
|
2301
2589
|
# Represents a geographical location for a given access.
|
2302
2590
|
class Geolocation
|
2303
2591
|
include Google::Apis::Core::Hashable
|
@@ -2657,6 +2945,16 @@ module Google
|
|
2657
2945
|
# @return [Array<String>]
|
2658
2946
|
attr_accessor :assignees
|
2659
2947
|
|
2948
|
+
# The time when the case was closed, as reported by the external system.
|
2949
|
+
# Corresponds to the JSON property `caseCloseTime`
|
2950
|
+
# @return [String]
|
2951
|
+
attr_accessor :case_close_time
|
2952
|
+
|
2953
|
+
# The time when the case was created, as reported by the external system.
|
2954
|
+
# Corresponds to the JSON property `caseCreateTime`
|
2955
|
+
# @return [String]
|
2956
|
+
attr_accessor :case_create_time
|
2957
|
+
|
2660
2958
|
# The priority of the finding's corresponding case in the external system.
|
2661
2959
|
# Corresponds to the JSON property `casePriority`
|
2662
2960
|
# @return [String]
|
@@ -2710,6 +3008,8 @@ module Google
|
|
2710
3008
|
# Update properties of this object
|
2711
3009
|
def update!(**args)
|
2712
3010
|
@assignees = args[:assignees] if args.key?(:assignees)
|
3011
|
+
@case_close_time = args[:case_close_time] if args.key?(:case_close_time)
|
3012
|
+
@case_create_time = args[:case_create_time] if args.key?(:case_create_time)
|
2713
3013
|
@case_priority = args[:case_priority] if args.key?(:case_priority)
|
2714
3014
|
@case_sla = args[:case_sla] if args.key?(:case_sla)
|
2715
3015
|
@case_uri = args[:case_uri] if args.key?(:case_uri)
|
@@ -2874,6 +3174,17 @@ module Google
|
|
2874
3174
|
class GoogleCloudSecuritycenterV1Resource
|
2875
3175
|
include Google::Apis::Core::Hashable
|
2876
3176
|
|
3177
|
+
# AWS metadata associated with the resource, only applicable if the finding's
|
3178
|
+
# cloud provider is Amazon Web Services.
|
3179
|
+
# Corresponds to the JSON property `awsMetadata`
|
3180
|
+
# @return [Google::Apis::SecuritycenterV1::AwsMetadata]
|
3181
|
+
attr_accessor :aws_metadata
|
3182
|
+
|
3183
|
+
# Indicates which cloud provider the resource resides in.
|
3184
|
+
# Corresponds to the JSON property `cloudProvider`
|
3185
|
+
# @return [String]
|
3186
|
+
attr_accessor :cloud_provider
|
3187
|
+
|
2877
3188
|
# The human readable name of the resource.
|
2878
3189
|
# Corresponds to the JSON property `displayName`
|
2879
3190
|
# @return [String]
|
@@ -2886,12 +3197,23 @@ module Google
|
|
2886
3197
|
# @return [Array<Google::Apis::SecuritycenterV1::Folder>]
|
2887
3198
|
attr_accessor :folders
|
2888
3199
|
|
3200
|
+
# The region or location of the service (if applicable).
|
3201
|
+
# Corresponds to the JSON property `location`
|
3202
|
+
# @return [String]
|
3203
|
+
attr_accessor :location
|
3204
|
+
|
2889
3205
|
# The full resource name of the resource. See: https://cloud.google.com/apis/
|
2890
3206
|
# design/resource_names#full_resource_name
|
2891
3207
|
# Corresponds to the JSON property `name`
|
2892
3208
|
# @return [String]
|
2893
3209
|
attr_accessor :name
|
2894
3210
|
|
3211
|
+
# Indicates which organization or tenant in the cloud provider the finding
|
3212
|
+
# applies to.
|
3213
|
+
# Corresponds to the JSON property `organization`
|
3214
|
+
# @return [String]
|
3215
|
+
attr_accessor :organization
|
3216
|
+
|
2895
3217
|
# The full resource name of resource's parent.
|
2896
3218
|
# Corresponds to the JSON property `parent`
|
2897
3219
|
# @return [String]
|
@@ -2912,6 +3234,30 @@ module Google
|
|
2912
3234
|
# @return [String]
|
2913
3235
|
attr_accessor :project_display_name
|
2914
3236
|
|
3237
|
+
# Represents the path of resources leading up to the resource this finding is
|
3238
|
+
# about.
|
3239
|
+
# Corresponds to the JSON property `resourcePath`
|
3240
|
+
# @return [Google::Apis::SecuritycenterV1::ResourcePath]
|
3241
|
+
attr_accessor :resource_path
|
3242
|
+
|
3243
|
+
# A string representation of the resource path. For GCP, it has the format of:
|
3244
|
+
# organizations/`organization_id`/folders/`folder_id`/folders/`folder_id`/
|
3245
|
+
# projects/`project_id` where there can be any number of folders. For AWS, it
|
3246
|
+
# has the format of: org/`organization_id`/ou/`organizational_unit_id`/ou/`
|
3247
|
+
# organizational_unit_id`/account/`account_id` where there can be any number of
|
3248
|
+
# organizational units. For Azure, it has the format of: mg/`management_group_id`
|
3249
|
+
# /mg/`management_group_id`/subscription/`subscription_id`/rg/`
|
3250
|
+
# resource_group_name` where there can be any number of management groups.
|
3251
|
+
# Corresponds to the JSON property `resourcePathString`
|
3252
|
+
# @return [String]
|
3253
|
+
attr_accessor :resource_path_string
|
3254
|
+
|
3255
|
+
# The parent service or product from which the resource is provided, for example,
|
3256
|
+
# GKE or SNS.
|
3257
|
+
# Corresponds to the JSON property `service`
|
3258
|
+
# @return [String]
|
3259
|
+
attr_accessor :service
|
3260
|
+
|
2915
3261
|
# The full resource type of the resource.
|
2916
3262
|
# Corresponds to the JSON property `type`
|
2917
3263
|
# @return [String]
|
@@ -2923,13 +3269,20 @@ module Google
|
|
2923
3269
|
|
2924
3270
|
# Update properties of this object
|
2925
3271
|
def update!(**args)
|
3272
|
+
@aws_metadata = args[:aws_metadata] if args.key?(:aws_metadata)
|
3273
|
+
@cloud_provider = args[:cloud_provider] if args.key?(:cloud_provider)
|
2926
3274
|
@display_name = args[:display_name] if args.key?(:display_name)
|
2927
3275
|
@folders = args[:folders] if args.key?(:folders)
|
3276
|
+
@location = args[:location] if args.key?(:location)
|
2928
3277
|
@name = args[:name] if args.key?(:name)
|
3278
|
+
@organization = args[:organization] if args.key?(:organization)
|
2929
3279
|
@parent = args[:parent] if args.key?(:parent)
|
2930
3280
|
@parent_display_name = args[:parent_display_name] if args.key?(:parent_display_name)
|
2931
3281
|
@project = args[:project] if args.key?(:project)
|
2932
3282
|
@project_display_name = args[:project_display_name] if args.key?(:project_display_name)
|
3283
|
+
@resource_path = args[:resource_path] if args.key?(:resource_path)
|
3284
|
+
@resource_path_string = args[:resource_path_string] if args.key?(:resource_path_string)
|
3285
|
+
@service = args[:service] if args.key?(:service)
|
2933
3286
|
@type = args[:type] if args.key?(:type)
|
2934
3287
|
end
|
2935
3288
|
end
|
@@ -2958,6 +3311,11 @@ module Google
|
|
2958
3311
|
class GoogleCloudSecuritycenterV1ResourceValueConfig
|
2959
3312
|
include Google::Apis::Core::Hashable
|
2960
3313
|
|
3314
|
+
# Cloud provider this configuration applies to
|
3315
|
+
# Corresponds to the JSON property `cloudProvider`
|
3316
|
+
# @return [String]
|
3317
|
+
attr_accessor :cloud_provider
|
3318
|
+
|
2961
3319
|
# Output only. Timestamp this resource value config was created.
|
2962
3320
|
# Corresponds to the JSON property `createTime`
|
2963
3321
|
# @return [String]
|
@@ -3026,6 +3384,7 @@ module Google
|
|
3026
3384
|
|
3027
3385
|
# Update properties of this object
|
3028
3386
|
def update!(**args)
|
3387
|
+
@cloud_provider = args[:cloud_provider] if args.key?(:cloud_provider)
|
3029
3388
|
@create_time = args[:create_time] if args.key?(:create_time)
|
3030
3389
|
@description = args[:description] if args.key?(:description)
|
3031
3390
|
@name = args[:name] if args.key?(:name)
|
@@ -3655,20 +4014,43 @@ module Google
|
|
3655
4014
|
end
|
3656
4015
|
end
|
3657
4016
|
|
4017
|
+
# Information about [Google Cloud Armor Adaptive Protection](https://cloud.
|
4018
|
+
# google.com/armor/docs/cloud-armor-overview#google-cloud-armor-adaptive-
|
4019
|
+
# protection).
|
4020
|
+
class GoogleCloudSecuritycenterV2AdaptiveProtection
|
4021
|
+
include Google::Apis::Core::Hashable
|
4022
|
+
|
4023
|
+
# A score of 0 means that there is low confidence that the detected event is an
|
4024
|
+
# actual attack. A score of 1 means that there is high confidence that the
|
4025
|
+
# detected event is an attack. See the [Adaptive Protection documentation](https:
|
4026
|
+
# //cloud.google.com/armor/docs/adaptive-protection-overview#configure-alert-
|
4027
|
+
# tuning) for further explanation.
|
4028
|
+
# Corresponds to the JSON property `confidence`
|
4029
|
+
# @return [Float]
|
4030
|
+
attr_accessor :confidence
|
4031
|
+
|
4032
|
+
def initialize(**args)
|
4033
|
+
update!(**args)
|
4034
|
+
end
|
4035
|
+
|
4036
|
+
# Update properties of this object
|
4037
|
+
def update!(**args)
|
4038
|
+
@confidence = args[:confidence] if args.key?(:confidence)
|
4039
|
+
end
|
4040
|
+
end
|
4041
|
+
|
3658
4042
|
# Represents an application associated with a finding.
|
3659
4043
|
class GoogleCloudSecuritycenterV2Application
|
3660
4044
|
include Google::Apis::Core::Hashable
|
3661
4045
|
|
3662
4046
|
# The base URI that identifies the network location of the application in which
|
3663
|
-
# the vulnerability was detected.
|
3664
|
-
# http://11.22.33.44:8080
|
4047
|
+
# the vulnerability was detected. For example, `http://example.com`.
|
3665
4048
|
# Corresponds to the JSON property `baseUri`
|
3666
4049
|
# @return [String]
|
3667
4050
|
attr_accessor :base_uri
|
3668
4051
|
|
3669
4052
|
# The full URI with payload that could be used to reproduce the vulnerability.
|
3670
|
-
#
|
3671
|
-
# aMmYgI6H
|
4053
|
+
# For example, `http://example.com?p=aMmYgI6H`.
|
3672
4054
|
# Corresponds to the JSON property `fullUri`
|
3673
4055
|
# @return [String]
|
3674
4056
|
attr_accessor :full_uri
|
@@ -3684,6 +4066,37 @@ module Google
|
|
3684
4066
|
end
|
3685
4067
|
end
|
3686
4068
|
|
4069
|
+
# Information about DDoS attack volume and classification.
|
4070
|
+
class GoogleCloudSecuritycenterV2Attack
|
4071
|
+
include Google::Apis::Core::Hashable
|
4072
|
+
|
4073
|
+
# Type of attack, for example, ‘SYN-flood’, ‘NTP-udp’, or ‘CHARGEN-udp’.
|
4074
|
+
# Corresponds to the JSON property `classification`
|
4075
|
+
# @return [String]
|
4076
|
+
attr_accessor :classification
|
4077
|
+
|
4078
|
+
# Total BPS (bytes per second) volume of attack.
|
4079
|
+
# Corresponds to the JSON property `volumeBps`
|
4080
|
+
# @return [Fixnum]
|
4081
|
+
attr_accessor :volume_bps
|
4082
|
+
|
4083
|
+
# Total PPS (packets per second) volume of attack.
|
4084
|
+
# Corresponds to the JSON property `volumePps`
|
4085
|
+
# @return [Fixnum]
|
4086
|
+
attr_accessor :volume_pps
|
4087
|
+
|
4088
|
+
def initialize(**args)
|
4089
|
+
update!(**args)
|
4090
|
+
end
|
4091
|
+
|
4092
|
+
# Update properties of this object
|
4093
|
+
def update!(**args)
|
4094
|
+
@classification = args[:classification] if args.key?(:classification)
|
4095
|
+
@volume_bps = args[:volume_bps] if args.key?(:volume_bps)
|
4096
|
+
@volume_pps = args[:volume_pps] if args.key?(:volume_pps)
|
4097
|
+
end
|
4098
|
+
end
|
4099
|
+
|
3687
4100
|
# An attack exposure contains the results of an attack path simulation run.
|
3688
4101
|
class GoogleCloudSecuritycenterV2AttackExposure
|
3689
4102
|
include Google::Apis::Core::Hashable
|
@@ -3747,19 +4160,133 @@ module Google
|
|
3747
4160
|
end
|
3748
4161
|
end
|
3749
4162
|
|
4163
|
+
# An AWS account that is a member of an organization.
|
4164
|
+
class GoogleCloudSecuritycenterV2AwsAccount
|
4165
|
+
include Google::Apis::Core::Hashable
|
4166
|
+
|
4167
|
+
# The unique identifier (ID) of the account, containing exactly 12 digits.
|
4168
|
+
# Corresponds to the JSON property `id`
|
4169
|
+
# @return [String]
|
4170
|
+
attr_accessor :id
|
4171
|
+
|
4172
|
+
# The friendly name of this account.
|
4173
|
+
# Corresponds to the JSON property `name`
|
4174
|
+
# @return [String]
|
4175
|
+
attr_accessor :name
|
4176
|
+
|
4177
|
+
def initialize(**args)
|
4178
|
+
update!(**args)
|
4179
|
+
end
|
4180
|
+
|
4181
|
+
# Update properties of this object
|
4182
|
+
def update!(**args)
|
4183
|
+
@id = args[:id] if args.key?(:id)
|
4184
|
+
@name = args[:name] if args.key?(:name)
|
4185
|
+
end
|
4186
|
+
end
|
4187
|
+
|
4188
|
+
# AWS metadata associated with the resource, only applicable if the finding's
|
4189
|
+
# cloud provider is Amazon Web Services.
|
4190
|
+
class GoogleCloudSecuritycenterV2AwsMetadata
|
4191
|
+
include Google::Apis::Core::Hashable
|
4192
|
+
|
4193
|
+
# An AWS account that is a member of an organization.
|
4194
|
+
# Corresponds to the JSON property `account`
|
4195
|
+
# @return [Google::Apis::SecuritycenterV1::GoogleCloudSecuritycenterV2AwsAccount]
|
4196
|
+
attr_accessor :account
|
4197
|
+
|
4198
|
+
# An organization is a collection of accounts that are centrally managed
|
4199
|
+
# together using consolidated billing, organized hierarchically with
|
4200
|
+
# organizational units (OUs), and controlled with policies.
|
4201
|
+
# Corresponds to the JSON property `organization`
|
4202
|
+
# @return [Google::Apis::SecuritycenterV1::GoogleCloudSecuritycenterV2AwsOrganization]
|
4203
|
+
attr_accessor :organization
|
4204
|
+
|
4205
|
+
# A list of AWS organizational units associated with the resource, ordered from
|
4206
|
+
# lowest level (closest to the account) to highest level.
|
4207
|
+
# Corresponds to the JSON property `organizationalUnits`
|
4208
|
+
# @return [Array<Google::Apis::SecuritycenterV1::GoogleCloudSecuritycenterV2AwsOrganizationalUnit>]
|
4209
|
+
attr_accessor :organizational_units
|
4210
|
+
|
4211
|
+
def initialize(**args)
|
4212
|
+
update!(**args)
|
4213
|
+
end
|
4214
|
+
|
4215
|
+
# Update properties of this object
|
4216
|
+
def update!(**args)
|
4217
|
+
@account = args[:account] if args.key?(:account)
|
4218
|
+
@organization = args[:organization] if args.key?(:organization)
|
4219
|
+
@organizational_units = args[:organizational_units] if args.key?(:organizational_units)
|
4220
|
+
end
|
4221
|
+
end
|
4222
|
+
|
4223
|
+
# An organization is a collection of accounts that are centrally managed
|
4224
|
+
# together using consolidated billing, organized hierarchically with
|
4225
|
+
# organizational units (OUs), and controlled with policies.
|
4226
|
+
class GoogleCloudSecuritycenterV2AwsOrganization
|
4227
|
+
include Google::Apis::Core::Hashable
|
4228
|
+
|
4229
|
+
# The unique identifier (ID) for the organization. The regex pattern for an
|
4230
|
+
# organization ID string requires "o-" followed by from 10 to 32 lowercase
|
4231
|
+
# letters or digits.
|
4232
|
+
# Corresponds to the JSON property `id`
|
4233
|
+
# @return [String]
|
4234
|
+
attr_accessor :id
|
4235
|
+
|
4236
|
+
def initialize(**args)
|
4237
|
+
update!(**args)
|
4238
|
+
end
|
4239
|
+
|
4240
|
+
# Update properties of this object
|
4241
|
+
def update!(**args)
|
4242
|
+
@id = args[:id] if args.key?(:id)
|
4243
|
+
end
|
4244
|
+
end
|
4245
|
+
|
4246
|
+
# An Organizational Unit (OU) is a container of AWS accounts within a root of an
|
4247
|
+
# organization. Policies that are attached to an OU apply to all accounts
|
4248
|
+
# contained in that OU and in any child OUs.
|
4249
|
+
class GoogleCloudSecuritycenterV2AwsOrganizationalUnit
|
4250
|
+
include Google::Apis::Core::Hashable
|
4251
|
+
|
4252
|
+
# The unique identifier (ID) associated with this OU. The regex pattern for an
|
4253
|
+
# organizational unit ID string requires "ou-" followed by from 4 to 32
|
4254
|
+
# lowercase letters or digits (the ID of the root that contains the OU). This
|
4255
|
+
# string is followed by a second "-" dash and from 8 to 32 additional lowercase
|
4256
|
+
# letters or digits. For example, "ou-ab12-cd34ef56".
|
4257
|
+
# Corresponds to the JSON property `id`
|
4258
|
+
# @return [String]
|
4259
|
+
attr_accessor :id
|
4260
|
+
|
4261
|
+
# The friendly name of the OU.
|
4262
|
+
# Corresponds to the JSON property `name`
|
4263
|
+
# @return [String]
|
4264
|
+
attr_accessor :name
|
4265
|
+
|
4266
|
+
def initialize(**args)
|
4267
|
+
update!(**args)
|
4268
|
+
end
|
4269
|
+
|
4270
|
+
# Update properties of this object
|
4271
|
+
def update!(**args)
|
4272
|
+
@id = args[:id] if args.key?(:id)
|
4273
|
+
@name = args[:name] if args.key?(:name)
|
4274
|
+
end
|
4275
|
+
end
|
4276
|
+
|
3750
4277
|
# Information related to Google Cloud Backup and DR Service findings.
|
3751
4278
|
class GoogleCloudSecuritycenterV2BackupDisasterRecovery
|
3752
4279
|
include Google::Apis::Core::Hashable
|
3753
4280
|
|
3754
4281
|
# The name of the Backup and DR appliance that captures, moves, and manages the
|
3755
|
-
# lifecycle of backup data. For example,
|
4282
|
+
# lifecycle of backup data. For example, `backup-server-57137`.
|
3756
4283
|
# Corresponds to the JSON property `appliance`
|
3757
4284
|
# @return [String]
|
3758
4285
|
attr_accessor :appliance
|
3759
4286
|
|
3760
4287
|
# The names of Backup and DR applications. An application is a VM, database, or
|
3761
4288
|
# file system on a managed host monitored by a backup and recovery appliance.
|
3762
|
-
# For example,
|
4289
|
+
# For example, `centos7-01-vol00`, `centos7-01-vol01`, `centos7-01-vol02`.
|
3763
4290
|
# Corresponds to the JSON property `applications`
|
3764
4291
|
# @return [Array<String>]
|
3765
4292
|
attr_accessor :applications
|
@@ -3772,13 +4299,13 @@ module Google
|
|
3772
4299
|
# The name of a Backup and DR template which comprises one or more backup
|
3773
4300
|
# policies. See the [Backup and DR documentation](https://cloud.google.com/
|
3774
4301
|
# backup-disaster-recovery/docs/concepts/backup-plan#temp) for more information.
|
3775
|
-
# For example,
|
4302
|
+
# For example, `snap-ov`.
|
3776
4303
|
# Corresponds to the JSON property `backupTemplate`
|
3777
4304
|
# @return [String]
|
3778
4305
|
attr_accessor :backup_template
|
3779
4306
|
|
3780
|
-
# The backup type of the Backup and DR image. For example,
|
3781
|
-
# Snapshot
|
4307
|
+
# The backup type of the Backup and DR image. For example, `Snapshot`, `Remote
|
4308
|
+
# Snapshot`, `OnVault`.
|
3782
4309
|
# Corresponds to the JSON property `backupType`
|
3783
4310
|
# @return [String]
|
3784
4311
|
attr_accessor :backup_type
|
@@ -3788,14 +4315,14 @@ module Google
|
|
3788
4315
|
# (for example, Compute Engine, SQL Server, Oracle DB, SMB file system, etc.),
|
3789
4316
|
# vCenter, or an ESX server. See the [Backup and DR documentation on hosts](
|
3790
4317
|
# https://cloud.google.com/backup-disaster-recovery/docs/configuration/manage-
|
3791
|
-
# hosts-and-their-applications) for more information. For example,
|
4318
|
+
# hosts-and-their-applications) for more information. For example, `centos7-01`.
|
3792
4319
|
# Corresponds to the JSON property `host`
|
3793
4320
|
# @return [String]
|
3794
4321
|
attr_accessor :host
|
3795
4322
|
|
3796
4323
|
# The names of Backup and DR policies that are associated with a template and
|
3797
4324
|
# that define when to run a backup, how frequently to run a backup, and how long
|
3798
|
-
# to retain the backup image. For example,
|
4325
|
+
# to retain the backup image. For example, `onvaults`.
|
3799
4326
|
# Corresponds to the JSON property `policies`
|
3800
4327
|
# @return [Array<String>]
|
3801
4328
|
attr_accessor :policies
|
@@ -3803,7 +4330,7 @@ module Google
|
|
3803
4330
|
# The names of Backup and DR advanced policy options of a policy applying to an
|
3804
4331
|
# application. See the [Backup and DR documentation on policy options](https://
|
3805
4332
|
# cloud.google.com/backup-disaster-recovery/docs/create-plan/policy-settings).
|
3806
|
-
# For example,
|
4333
|
+
# For example, `skipofflineappsincongrp, nounmap`.
|
3807
4334
|
# Corresponds to the JSON property `policyOptions`
|
3808
4335
|
# @return [Array<String>]
|
3809
4336
|
attr_accessor :policy_options
|
@@ -3811,7 +4338,7 @@ module Google
|
|
3811
4338
|
# The name of the Backup and DR resource profile that specifies the storage
|
3812
4339
|
# media for backups of application and VM data. See the [Backup and DR
|
3813
4340
|
# documentation on profiles](https://cloud.google.com/backup-disaster-recovery/
|
3814
|
-
# docs/concepts/backup-plan#profile). For example,
|
4341
|
+
# docs/concepts/backup-plan#profile). For example, `GCP`.
|
3815
4342
|
# Corresponds to the JSON property `profile`
|
3816
4343
|
# @return [String]
|
3817
4344
|
attr_accessor :profile
|
@@ -3820,7 +4347,7 @@ module Google
|
|
3820
4347
|
# appliance is storing data in. The storage pool could be of type Cloud, Primary,
|
3821
4348
|
# Snapshot, or OnVault. See the [Backup and DR documentation on storage pools](
|
3822
4349
|
# https://cloud.google.com/backup-disaster-recovery/docs/concepts/storage-pools).
|
3823
|
-
# For example,
|
4350
|
+
# For example, `DiskPoolOne`.
|
3824
4351
|
# Corresponds to the JSON property `storagePool`
|
3825
4352
|
# @return [String]
|
3826
4353
|
attr_accessor :storage_pool
|
@@ -3979,6 +4506,61 @@ module Google
|
|
3979
4506
|
end
|
3980
4507
|
end
|
3981
4508
|
|
4509
|
+
# Fields related to Google Cloud Armor findings.
|
4510
|
+
class GoogleCloudSecuritycenterV2CloudArmor
|
4511
|
+
include Google::Apis::Core::Hashable
|
4512
|
+
|
4513
|
+
# Information about [Google Cloud Armor Adaptive Protection](https://cloud.
|
4514
|
+
# google.com/armor/docs/cloud-armor-overview#google-cloud-armor-adaptive-
|
4515
|
+
# protection).
|
4516
|
+
# Corresponds to the JSON property `adaptiveProtection`
|
4517
|
+
# @return [Google::Apis::SecuritycenterV1::GoogleCloudSecuritycenterV2AdaptiveProtection]
|
4518
|
+
attr_accessor :adaptive_protection
|
4519
|
+
|
4520
|
+
# Information about DDoS attack volume and classification.
|
4521
|
+
# Corresponds to the JSON property `attack`
|
4522
|
+
# @return [Google::Apis::SecuritycenterV1::GoogleCloudSecuritycenterV2Attack]
|
4523
|
+
attr_accessor :attack
|
4524
|
+
|
4525
|
+
# Duration of attack from the start until the current moment (updated every 5
|
4526
|
+
# minutes).
|
4527
|
+
# Corresponds to the JSON property `duration`
|
4528
|
+
# @return [String]
|
4529
|
+
attr_accessor :duration
|
4530
|
+
|
4531
|
+
# Information about the requests relevant to the finding.
|
4532
|
+
# Corresponds to the JSON property `requests`
|
4533
|
+
# @return [Google::Apis::SecuritycenterV1::GoogleCloudSecuritycenterV2Requests]
|
4534
|
+
attr_accessor :requests
|
4535
|
+
|
4536
|
+
# Information about the [Google Cloud Armor security policy](https://cloud.
|
4537
|
+
# google.com/armor/docs/security-policy-overview) relevant to the finding.
|
4538
|
+
# Corresponds to the JSON property `securityPolicy`
|
4539
|
+
# @return [Google::Apis::SecuritycenterV1::GoogleCloudSecuritycenterV2SecurityPolicy]
|
4540
|
+
attr_accessor :security_policy
|
4541
|
+
|
4542
|
+
# Distinguish between volumetric & protocol DDoS attack and application layer
|
4543
|
+
# attacks. For example, “L3_4” for Layer 3 and Layer 4 DDoS attacks, or “L_7”
|
4544
|
+
# for Layer 7 DDoS attacks.
|
4545
|
+
# Corresponds to the JSON property `threatVector`
|
4546
|
+
# @return [String]
|
4547
|
+
attr_accessor :threat_vector
|
4548
|
+
|
4549
|
+
def initialize(**args)
|
4550
|
+
update!(**args)
|
4551
|
+
end
|
4552
|
+
|
4553
|
+
# Update properties of this object
|
4554
|
+
def update!(**args)
|
4555
|
+
@adaptive_protection = args[:adaptive_protection] if args.key?(:adaptive_protection)
|
4556
|
+
@attack = args[:attack] if args.key?(:attack)
|
4557
|
+
@duration = args[:duration] if args.key?(:duration)
|
4558
|
+
@requests = args[:requests] if args.key?(:requests)
|
4559
|
+
@security_policy = args[:security_policy] if args.key?(:security_policy)
|
4560
|
+
@threat_vector = args[:threat_vector] if args.key?(:threat_vector)
|
4561
|
+
end
|
4562
|
+
end
|
4563
|
+
|
3982
4564
|
# The [data profile](https://cloud.google.com/dlp/docs/data-profiles) associated
|
3983
4565
|
# with the finding.
|
3984
4566
|
class GoogleCloudSecuritycenterV2CloudDlpDataProfile
|
@@ -4609,6 +5191,16 @@ module Google
|
|
4609
5191
|
# @return [Array<String>]
|
4610
5192
|
attr_accessor :assignees
|
4611
5193
|
|
5194
|
+
# The time when the case was closed, as reported by the external system.
|
5195
|
+
# Corresponds to the JSON property `caseCloseTime`
|
5196
|
+
# @return [String]
|
5197
|
+
attr_accessor :case_close_time
|
5198
|
+
|
5199
|
+
# The time when the case was created, as reported by the external system.
|
5200
|
+
# Corresponds to the JSON property `caseCreateTime`
|
5201
|
+
# @return [String]
|
5202
|
+
attr_accessor :case_create_time
|
5203
|
+
|
4612
5204
|
# The priority of the finding's corresponding case in the external system.
|
4613
5205
|
# Corresponds to the JSON property `casePriority`
|
4614
5206
|
# @return [String]
|
@@ -4666,6 +5258,8 @@ module Google
|
|
4666
5258
|
# Update properties of this object
|
4667
5259
|
def update!(**args)
|
4668
5260
|
@assignees = args[:assignees] if args.key?(:assignees)
|
5261
|
+
@case_close_time = args[:case_close_time] if args.key?(:case_close_time)
|
5262
|
+
@case_create_time = args[:case_create_time] if args.key?(:case_create_time)
|
4669
5263
|
@case_priority = args[:case_priority] if args.key?(:case_priority)
|
4670
5264
|
@case_sla = args[:case_sla] if args.key?(:case_sla)
|
4671
5265
|
@case_uri = args[:case_uri] if args.key?(:case_uri)
|
@@ -4783,6 +5377,11 @@ module Google
|
|
4783
5377
|
# @return [String]
|
4784
5378
|
attr_accessor :category
|
4785
5379
|
|
5380
|
+
# Fields related to Google Cloud Armor findings.
|
5381
|
+
# Corresponds to the JSON property `cloudArmor`
|
5382
|
+
# @return [Google::Apis::SecuritycenterV1::GoogleCloudSecuritycenterV2CloudArmor]
|
5383
|
+
attr_accessor :cloud_armor
|
5384
|
+
|
4786
5385
|
# The [data profile](https://cloud.google.com/dlp/docs/data-profiles) associated
|
4787
5386
|
# with the finding.
|
4788
5387
|
# Corresponds to the JSON property `cloudDlpDataProfile`
|
@@ -4969,6 +5568,13 @@ module Google
|
|
4969
5568
|
# @return [String]
|
4970
5569
|
attr_accessor :next_steps
|
4971
5570
|
|
5571
|
+
# Represents a Jupyter notebook IPYNB file, such as a [Colab Enterprise notebook]
|
5572
|
+
# (https://cloud.google.com/colab/docs/introduction) file, that is associated
|
5573
|
+
# with a finding.
|
5574
|
+
# Corresponds to the JSON property `notebook`
|
5575
|
+
# @return [Google::Apis::SecuritycenterV1::GoogleCloudSecuritycenterV2Notebook]
|
5576
|
+
attr_accessor :notebook
|
5577
|
+
|
4972
5578
|
# Contains information about the org policies associated with the finding.
|
4973
5579
|
# Corresponds to the JSON property `orgPolicies`
|
4974
5580
|
# @return [Array<Google::Apis::SecuritycenterV1::GoogleCloudSecuritycenterV2OrgPolicy>]
|
@@ -5059,6 +5665,7 @@ module Google
|
|
5059
5665
|
@backup_disaster_recovery = args[:backup_disaster_recovery] if args.key?(:backup_disaster_recovery)
|
5060
5666
|
@canonical_name = args[:canonical_name] if args.key?(:canonical_name)
|
5061
5667
|
@category = args[:category] if args.key?(:category)
|
5668
|
+
@cloud_armor = args[:cloud_armor] if args.key?(:cloud_armor)
|
5062
5669
|
@cloud_dlp_data_profile = args[:cloud_dlp_data_profile] if args.key?(:cloud_dlp_data_profile)
|
5063
5670
|
@cloud_dlp_inspection = args[:cloud_dlp_inspection] if args.key?(:cloud_dlp_inspection)
|
5064
5671
|
@compliances = args[:compliances] if args.key?(:compliances)
|
@@ -5087,6 +5694,7 @@ module Google
|
|
5087
5694
|
@mute_update_time = args[:mute_update_time] if args.key?(:mute_update_time)
|
5088
5695
|
@name = args[:name] if args.key?(:name)
|
5089
5696
|
@next_steps = args[:next_steps] if args.key?(:next_steps)
|
5697
|
+
@notebook = args[:notebook] if args.key?(:notebook)
|
5090
5698
|
@org_policies = args[:org_policies] if args.key?(:org_policies)
|
5091
5699
|
@parent = args[:parent] if args.key?(:parent)
|
5092
5700
|
@parent_display_name = args[:parent_display_name] if args.key?(:parent_display_name)
|
@@ -5101,6 +5709,32 @@ module Google
|
|
5101
5709
|
end
|
5102
5710
|
end
|
5103
5711
|
|
5712
|
+
# Message that contains the resource name and display name of a folder resource.
|
5713
|
+
class GoogleCloudSecuritycenterV2Folder
|
5714
|
+
include Google::Apis::Core::Hashable
|
5715
|
+
|
5716
|
+
# Full resource name of this folder. See: https://cloud.google.com/apis/design/
|
5717
|
+
# resource_names#full_resource_name
|
5718
|
+
# Corresponds to the JSON property `resourceFolder`
|
5719
|
+
# @return [String]
|
5720
|
+
attr_accessor :resource_folder
|
5721
|
+
|
5722
|
+
# The user defined display name for this folder.
|
5723
|
+
# Corresponds to the JSON property `resourceFolderDisplayName`
|
5724
|
+
# @return [String]
|
5725
|
+
attr_accessor :resource_folder_display_name
|
5726
|
+
|
5727
|
+
def initialize(**args)
|
5728
|
+
update!(**args)
|
5729
|
+
end
|
5730
|
+
|
5731
|
+
# Update properties of this object
|
5732
|
+
def update!(**args)
|
5733
|
+
@resource_folder = args[:resource_folder] if args.key?(:resource_folder)
|
5734
|
+
@resource_folder_display_name = args[:resource_folder_display_name] if args.key?(:resource_folder_display_name)
|
5735
|
+
end
|
5736
|
+
end
|
5737
|
+
|
5104
5738
|
# Represents a geographical location for a given access.
|
5105
5739
|
class GoogleCloudSecuritycenterV2Geolocation
|
5106
5740
|
include Google::Apis::Core::Hashable
|
@@ -5607,6 +6241,45 @@ module Google
|
|
5607
6241
|
end
|
5608
6242
|
end
|
5609
6243
|
|
6244
|
+
# Represents a Jupyter notebook IPYNB file, such as a [Colab Enterprise notebook]
|
6245
|
+
# (https://cloud.google.com/colab/docs/introduction) file, that is associated
|
6246
|
+
# with a finding.
|
6247
|
+
class GoogleCloudSecuritycenterV2Notebook
|
6248
|
+
include Google::Apis::Core::Hashable
|
6249
|
+
|
6250
|
+
# The user ID of the latest author to modify the notebook.
|
6251
|
+
# Corresponds to the JSON property `lastAuthor`
|
6252
|
+
# @return [String]
|
6253
|
+
attr_accessor :last_author
|
6254
|
+
|
6255
|
+
# The name of the notebook.
|
6256
|
+
# Corresponds to the JSON property `name`
|
6257
|
+
# @return [String]
|
6258
|
+
attr_accessor :name
|
6259
|
+
|
6260
|
+
# The most recent time the notebook was updated.
|
6261
|
+
# Corresponds to the JSON property `notebookUpdateTime`
|
6262
|
+
# @return [String]
|
6263
|
+
attr_accessor :notebook_update_time
|
6264
|
+
|
6265
|
+
# The source notebook service, for example, "Colab Enterprise".
|
6266
|
+
# Corresponds to the JSON property `service`
|
6267
|
+
# @return [String]
|
6268
|
+
attr_accessor :service
|
6269
|
+
|
6270
|
+
def initialize(**args)
|
6271
|
+
update!(**args)
|
6272
|
+
end
|
6273
|
+
|
6274
|
+
# Update properties of this object
|
6275
|
+
def update!(**args)
|
6276
|
+
@last_author = args[:last_author] if args.key?(:last_author)
|
6277
|
+
@name = args[:name] if args.key?(:name)
|
6278
|
+
@notebook_update_time = args[:notebook_update_time] if args.key?(:notebook_update_time)
|
6279
|
+
@service = args[:service] if args.key?(:service)
|
6280
|
+
end
|
6281
|
+
end
|
6282
|
+
|
5610
6283
|
# Cloud SCC's Notification
|
5611
6284
|
class GoogleCloudSecuritycenterV2NotificationMessage
|
5612
6285
|
include Google::Apis::Core::Hashable
|
@@ -5789,13 +6462,13 @@ module Google
|
|
5789
6462
|
include Google::Apis::Core::Hashable
|
5790
6463
|
|
5791
6464
|
# The detected value that violates the deployed posture, for example, `false` or
|
5792
|
-
# `allowed_values=`"projects/22831892
|
6465
|
+
# `allowed_values=`"projects/22831892"``.
|
5793
6466
|
# Corresponds to the JSON property `detectedValue`
|
5794
6467
|
# @return [String]
|
5795
6468
|
attr_accessor :detected_value
|
5796
6469
|
|
5797
6470
|
# The value of this field that was configured in a posture, for example, `true`
|
5798
|
-
# or `allowed_values=`"projects/29831892
|
6471
|
+
# or `allowed_values=`"projects/29831892"``.
|
5799
6472
|
# Corresponds to the JSON property `expectedValue`
|
5800
6473
|
# @return [String]
|
5801
6474
|
attr_accessor :expected_value
|
@@ -5953,21 +6626,105 @@ module Google
|
|
5953
6626
|
end
|
5954
6627
|
end
|
5955
6628
|
|
6629
|
+
# Information about the requests relevant to the finding.
|
6630
|
+
class GoogleCloudSecuritycenterV2Requests
|
6631
|
+
include Google::Apis::Core::Hashable
|
6632
|
+
|
6633
|
+
# Allowed RPS (requests per second) over the long term.
|
6634
|
+
# Corresponds to the JSON property `longTermAllowed`
|
6635
|
+
# @return [Fixnum]
|
6636
|
+
attr_accessor :long_term_allowed
|
6637
|
+
|
6638
|
+
# Denied RPS (requests per second) over the long term.
|
6639
|
+
# Corresponds to the JSON property `longTermDenied`
|
6640
|
+
# @return [Fixnum]
|
6641
|
+
attr_accessor :long_term_denied
|
6642
|
+
|
6643
|
+
# For 'Increasing deny ratio', the ratio is the denied traffic divided by the
|
6644
|
+
# allowed traffic. For 'Allowed traffic spike', the ratio is the allowed traffic
|
6645
|
+
# in the short term divided by allowed traffic in the long term.
|
6646
|
+
# Corresponds to the JSON property `ratio`
|
6647
|
+
# @return [Float]
|
6648
|
+
attr_accessor :ratio
|
6649
|
+
|
6650
|
+
# Allowed RPS (requests per second) in the short term.
|
6651
|
+
# Corresponds to the JSON property `shortTermAllowed`
|
6652
|
+
# @return [Fixnum]
|
6653
|
+
attr_accessor :short_term_allowed
|
6654
|
+
|
6655
|
+
def initialize(**args)
|
6656
|
+
update!(**args)
|
6657
|
+
end
|
6658
|
+
|
6659
|
+
# Update properties of this object
|
6660
|
+
def update!(**args)
|
6661
|
+
@long_term_allowed = args[:long_term_allowed] if args.key?(:long_term_allowed)
|
6662
|
+
@long_term_denied = args[:long_term_denied] if args.key?(:long_term_denied)
|
6663
|
+
@ratio = args[:ratio] if args.key?(:ratio)
|
6664
|
+
@short_term_allowed = args[:short_term_allowed] if args.key?(:short_term_allowed)
|
6665
|
+
end
|
6666
|
+
end
|
6667
|
+
|
5956
6668
|
# Information related to the Google Cloud resource.
|
5957
6669
|
class GoogleCloudSecuritycenterV2Resource
|
5958
6670
|
include Google::Apis::Core::Hashable
|
5959
6671
|
|
6672
|
+
# AWS metadata associated with the resource, only applicable if the finding's
|
6673
|
+
# cloud provider is Amazon Web Services.
|
6674
|
+
# Corresponds to the JSON property `awsMetadata`
|
6675
|
+
# @return [Google::Apis::SecuritycenterV1::GoogleCloudSecuritycenterV2AwsMetadata]
|
6676
|
+
attr_accessor :aws_metadata
|
6677
|
+
|
6678
|
+
# Indicates which cloud provider the finding is from.
|
6679
|
+
# Corresponds to the JSON property `cloudProvider`
|
6680
|
+
# @return [String]
|
6681
|
+
attr_accessor :cloud_provider
|
6682
|
+
|
5960
6683
|
# The human readable name of the resource.
|
5961
6684
|
# Corresponds to the JSON property `displayName`
|
5962
6685
|
# @return [String]
|
5963
6686
|
attr_accessor :display_name
|
5964
6687
|
|
6688
|
+
# GCP metadata associated with the resource, only applicable if the finding's
|
6689
|
+
# cloud provider is Google Cloud Platform.
|
6690
|
+
# Corresponds to the JSON property `gcpMetadata`
|
6691
|
+
# @return [Google::Apis::SecuritycenterV1::GcpMetadata]
|
6692
|
+
attr_accessor :gcp_metadata
|
6693
|
+
|
6694
|
+
# The region or location of the service (if applicable).
|
6695
|
+
# Corresponds to the JSON property `location`
|
6696
|
+
# @return [String]
|
6697
|
+
attr_accessor :location
|
6698
|
+
|
5965
6699
|
# The full resource name of the resource. See: https://cloud.google.com/apis/
|
5966
6700
|
# design/resource_names#full_resource_name
|
5967
6701
|
# Corresponds to the JSON property `name`
|
5968
6702
|
# @return [String]
|
5969
6703
|
attr_accessor :name
|
5970
6704
|
|
6705
|
+
# Represents the path of resources leading up to the resource this finding is
|
6706
|
+
# about.
|
6707
|
+
# Corresponds to the JSON property `resourcePath`
|
6708
|
+
# @return [Google::Apis::SecuritycenterV1::GoogleCloudSecuritycenterV2ResourcePath]
|
6709
|
+
attr_accessor :resource_path
|
6710
|
+
|
6711
|
+
# A string representation of the resource path. For GCP, it has the format of:
|
6712
|
+
# organizations/`organization_id`/folders/`folder_id`/folders/`folder_id`/
|
6713
|
+
# projects/`project_id` where there can be any number of folders. For AWS, it
|
6714
|
+
# has the format of: org/`organization_id`/ou/`organizational_unit_id`/ou/`
|
6715
|
+
# organizational_unit_id`/account/`account_id` where there can be any number of
|
6716
|
+
# organizational units. For Azure, it has the format of: mg/`management_group_id`
|
6717
|
+
# /mg/`management_group_id`/subscription/`subscription_id`/rg/`
|
6718
|
+
# resource_group_name` where there can be any number of management groups.
|
6719
|
+
# Corresponds to the JSON property `resourcePathString`
|
6720
|
+
# @return [String]
|
6721
|
+
attr_accessor :resource_path_string
|
6722
|
+
|
6723
|
+
# The service or resource provider associated with the resource.
|
6724
|
+
# Corresponds to the JSON property `service`
|
6725
|
+
# @return [String]
|
6726
|
+
attr_accessor :service
|
6727
|
+
|
5971
6728
|
# The full resource type of the resource.
|
5972
6729
|
# Corresponds to the JSON property `type`
|
5973
6730
|
# @return [String]
|
@@ -5979,17 +6736,82 @@ module Google
|
|
5979
6736
|
|
5980
6737
|
# Update properties of this object
|
5981
6738
|
def update!(**args)
|
6739
|
+
@aws_metadata = args[:aws_metadata] if args.key?(:aws_metadata)
|
6740
|
+
@cloud_provider = args[:cloud_provider] if args.key?(:cloud_provider)
|
5982
6741
|
@display_name = args[:display_name] if args.key?(:display_name)
|
6742
|
+
@gcp_metadata = args[:gcp_metadata] if args.key?(:gcp_metadata)
|
6743
|
+
@location = args[:location] if args.key?(:location)
|
5983
6744
|
@name = args[:name] if args.key?(:name)
|
6745
|
+
@resource_path = args[:resource_path] if args.key?(:resource_path)
|
6746
|
+
@resource_path_string = args[:resource_path_string] if args.key?(:resource_path_string)
|
6747
|
+
@service = args[:service] if args.key?(:service)
|
5984
6748
|
@type = args[:type] if args.key?(:type)
|
5985
6749
|
end
|
5986
6750
|
end
|
5987
6751
|
|
6752
|
+
# Represents the path of resources leading up to the resource this finding is
|
6753
|
+
# about.
|
6754
|
+
class GoogleCloudSecuritycenterV2ResourcePath
|
6755
|
+
include Google::Apis::Core::Hashable
|
6756
|
+
|
6757
|
+
# The list of nodes that make the up resource path, ordered from lowest level to
|
6758
|
+
# highest level.
|
6759
|
+
# Corresponds to the JSON property `nodes`
|
6760
|
+
# @return [Array<Google::Apis::SecuritycenterV1::GoogleCloudSecuritycenterV2ResourcePathNode>]
|
6761
|
+
attr_accessor :nodes
|
6762
|
+
|
6763
|
+
def initialize(**args)
|
6764
|
+
update!(**args)
|
6765
|
+
end
|
6766
|
+
|
6767
|
+
# Update properties of this object
|
6768
|
+
def update!(**args)
|
6769
|
+
@nodes = args[:nodes] if args.key?(:nodes)
|
6770
|
+
end
|
6771
|
+
end
|
6772
|
+
|
6773
|
+
# A node within the resource path. Each node represents a resource within the
|
6774
|
+
# resource hierarchy.
|
6775
|
+
class GoogleCloudSecuritycenterV2ResourcePathNode
|
6776
|
+
include Google::Apis::Core::Hashable
|
6777
|
+
|
6778
|
+
# The display name of the resource this node represents.
|
6779
|
+
# Corresponds to the JSON property `displayName`
|
6780
|
+
# @return [String]
|
6781
|
+
attr_accessor :display_name
|
6782
|
+
|
6783
|
+
# The ID of the resource this node represents.
|
6784
|
+
# Corresponds to the JSON property `id`
|
6785
|
+
# @return [String]
|
6786
|
+
attr_accessor :id
|
6787
|
+
|
6788
|
+
# The type of resource this node represents.
|
6789
|
+
# Corresponds to the JSON property `nodeType`
|
6790
|
+
# @return [String]
|
6791
|
+
attr_accessor :node_type
|
6792
|
+
|
6793
|
+
def initialize(**args)
|
6794
|
+
update!(**args)
|
6795
|
+
end
|
6796
|
+
|
6797
|
+
# Update properties of this object
|
6798
|
+
def update!(**args)
|
6799
|
+
@display_name = args[:display_name] if args.key?(:display_name)
|
6800
|
+
@id = args[:id] if args.key?(:id)
|
6801
|
+
@node_type = args[:node_type] if args.key?(:node_type)
|
6802
|
+
end
|
6803
|
+
end
|
6804
|
+
|
5988
6805
|
# A resource value config (RVC) is a mapping configuration of user's resources
|
5989
6806
|
# to resource values. Used in Attack path simulations.
|
5990
6807
|
class GoogleCloudSecuritycenterV2ResourceValueConfig
|
5991
6808
|
include Google::Apis::Core::Hashable
|
5992
6809
|
|
6810
|
+
# Cloud provider this configuration applies to
|
6811
|
+
# Corresponds to the JSON property `cloudProvider`
|
6812
|
+
# @return [String]
|
6813
|
+
attr_accessor :cloud_provider
|
6814
|
+
|
5993
6815
|
# Output only. Timestamp this resource value config was created.
|
5994
6816
|
# Corresponds to the JSON property `createTime`
|
5995
6817
|
# @return [String]
|
@@ -6059,6 +6881,7 @@ module Google
|
|
6059
6881
|
|
6060
6882
|
# Update properties of this object
|
6061
6883
|
def update!(**args)
|
6884
|
+
@cloud_provider = args[:cloud_provider] if args.key?(:cloud_provider)
|
6062
6885
|
@create_time = args[:create_time] if args.key?(:create_time)
|
6063
6886
|
@description = args[:description] if args.key?(:description)
|
6064
6887
|
@name = args[:name] if args.key?(:name)
|
@@ -6143,17 +6966,17 @@ module Google
|
|
6143
6966
|
include Google::Apis::Core::Hashable
|
6144
6967
|
|
6145
6968
|
# The canonical name of the marks. The following list shows some examples: + `
|
6146
|
-
# organizations/`organization_id`/assets/`asset_id`/securityMarks
|
6969
|
+
# organizations/`organization_id`/assets/`asset_id`/securityMarks` + `
|
6147
6970
|
# organizations/`organization_id`/sources/`source_id`/findings/`finding_id`/
|
6148
|
-
# securityMarks
|
6149
|
-
# locations/`location`/findings/`finding_id`/securityMarks
|
6150
|
-
# folder_id`/assets/`asset_id`/securityMarks
|
6151
|
-
# source_id`/findings/`finding_id`/securityMarks
|
6152
|
-
# `source_id`/locations/`location`/findings/`finding_id`/securityMarks
|
6153
|
-
# projects/`project_number`/assets/`asset_id`/securityMarks
|
6154
|
-
# project_number`/sources/`source_id`/findings/`finding_id`/securityMarks
|
6971
|
+
# securityMarks` + `organizations/`organization_id`/sources/`source_id`/
|
6972
|
+
# locations/`location`/findings/`finding_id`/securityMarks` + `folders/`
|
6973
|
+
# folder_id`/assets/`asset_id`/securityMarks` + `folders/`folder_id`/sources/`
|
6974
|
+
# source_id`/findings/`finding_id`/securityMarks` + `folders/`folder_id`/sources/
|
6975
|
+
# `source_id`/locations/`location`/findings/`finding_id`/securityMarks` + `
|
6976
|
+
# projects/`project_number`/assets/`asset_id`/securityMarks` + `projects/`
|
6977
|
+
# project_number`/sources/`source_id`/findings/`finding_id`/securityMarks` + `
|
6155
6978
|
# projects/`project_number`/sources/`source_id`/locations/`location`/findings/`
|
6156
|
-
# finding_id`/securityMarks
|
6979
|
+
# finding_id`/securityMarks`
|
6157
6980
|
# Corresponds to the JSON property `canonicalName`
|
6158
6981
|
# @return [String]
|
6159
6982
|
attr_accessor :canonical_name
|
@@ -6189,6 +7012,42 @@ module Google
|
|
6189
7012
|
end
|
6190
7013
|
end
|
6191
7014
|
|
7015
|
+
# Information about the [Google Cloud Armor security policy](https://cloud.
|
7016
|
+
# google.com/armor/docs/security-policy-overview) relevant to the finding.
|
7017
|
+
class GoogleCloudSecuritycenterV2SecurityPolicy
|
7018
|
+
include Google::Apis::Core::Hashable
|
7019
|
+
|
7020
|
+
# The name of the Google Cloud Armor security policy, for example, "my-security-
|
7021
|
+
# policy".
|
7022
|
+
# Corresponds to the JSON property `name`
|
7023
|
+
# @return [String]
|
7024
|
+
attr_accessor :name
|
7025
|
+
|
7026
|
+
# Whether or not the associated rule or policy is in preview mode.
|
7027
|
+
# Corresponds to the JSON property `preview`
|
7028
|
+
# @return [Boolean]
|
7029
|
+
attr_accessor :preview
|
7030
|
+
alias_method :preview?, :preview
|
7031
|
+
|
7032
|
+
# The type of Google Cloud Armor security policy for example, ‘backend security
|
7033
|
+
# policy’, ‘edge security policy’, ‘network edge security policy’, or ‘always-on
|
7034
|
+
# DDoS protection’.
|
7035
|
+
# Corresponds to the JSON property `type`
|
7036
|
+
# @return [String]
|
7037
|
+
attr_accessor :type
|
7038
|
+
|
7039
|
+
def initialize(**args)
|
7040
|
+
update!(**args)
|
7041
|
+
end
|
7042
|
+
|
7043
|
+
# Update properties of this object
|
7044
|
+
def update!(**args)
|
7045
|
+
@name = args[:name] if args.key?(:name)
|
7046
|
+
@preview = args[:preview] if args.key?(:preview)
|
7047
|
+
@type = args[:type] if args.key?(:type)
|
7048
|
+
end
|
7049
|
+
end
|
7050
|
+
|
6192
7051
|
# Represents a posture that is deployed on Google Cloud by the Security Command
|
6193
7052
|
# Center Posture Management service. A posture contains one or more policy sets.
|
6194
7053
|
# A policy set is a group of policies that enforce a set of security rules on
|
@@ -7716,6 +8575,45 @@ module Google
|
|
7716
8575
|
end
|
7717
8576
|
end
|
7718
8577
|
|
8578
|
+
# Represents a Jupyter notebook IPYNB file, such as a [Colab Enterprise notebook]
|
8579
|
+
# (https://cloud.google.com/colab/docs/introduction) file, that is associated
|
8580
|
+
# with a finding.
|
8581
|
+
class Notebook
|
8582
|
+
include Google::Apis::Core::Hashable
|
8583
|
+
|
8584
|
+
# The user ID of the latest author to modify the notebook.
|
8585
|
+
# Corresponds to the JSON property `lastAuthor`
|
8586
|
+
# @return [String]
|
8587
|
+
attr_accessor :last_author
|
8588
|
+
|
8589
|
+
# The name of the notebook.
|
8590
|
+
# Corresponds to the JSON property `name`
|
8591
|
+
# @return [String]
|
8592
|
+
attr_accessor :name
|
8593
|
+
|
8594
|
+
# The most recent time the notebook was updated.
|
8595
|
+
# Corresponds to the JSON property `notebookUpdateTime`
|
8596
|
+
# @return [String]
|
8597
|
+
attr_accessor :notebook_update_time
|
8598
|
+
|
8599
|
+
# The source notebook service, for example, "Colab Enterprise".
|
8600
|
+
# Corresponds to the JSON property `service`
|
8601
|
+
# @return [String]
|
8602
|
+
attr_accessor :service
|
8603
|
+
|
8604
|
+
def initialize(**args)
|
8605
|
+
update!(**args)
|
8606
|
+
end
|
8607
|
+
|
8608
|
+
# Update properties of this object
|
8609
|
+
def update!(**args)
|
8610
|
+
@last_author = args[:last_author] if args.key?(:last_author)
|
8611
|
+
@name = args[:name] if args.key?(:name)
|
8612
|
+
@notebook_update_time = args[:notebook_update_time] if args.key?(:notebook_update_time)
|
8613
|
+
@service = args[:service] if args.key?(:service)
|
8614
|
+
end
|
8615
|
+
end
|
8616
|
+
|
7719
8617
|
# Cloud Security Command Center (Cloud SCC) notification configs. A notification
|
7720
8618
|
# config is a Cloud SCC resource that contains the configuration to send
|
7721
8619
|
# notifications for create/update events of findings, assets and etc.
|
@@ -8135,19 +9033,19 @@ module Google
|
|
8135
9033
|
end
|
8136
9034
|
end
|
8137
9035
|
|
8138
|
-
# The policy field that violates the deployed posture and its expected and
|
9036
|
+
# The policy field that violates the deployed posture and its expected and
|
8139
9037
|
# detected values.
|
8140
9038
|
class PolicyDriftDetails
|
8141
9039
|
include Google::Apis::Core::Hashable
|
8142
9040
|
|
8143
9041
|
# The detected value that violates the deployed posture, for example, `false` or
|
8144
|
-
# `allowed_values=`"projects/22831892
|
9042
|
+
# `allowed_values=`"projects/22831892"``.
|
8145
9043
|
# Corresponds to the JSON property `detectedValue`
|
8146
9044
|
# @return [String]
|
8147
9045
|
attr_accessor :detected_value
|
8148
9046
|
|
8149
9047
|
# The value of this field that was configured in a posture, for example, `true`
|
8150
|
-
# or `allowed_values=`"projects/29831892
|
9048
|
+
# or `allowed_values=`"projects/29831892"``.
|
8151
9049
|
# Corresponds to the JSON property `expectedValue`
|
8152
9050
|
# @return [String]
|
8153
9051
|
attr_accessor :expected_value
|
@@ -8330,11 +9228,61 @@ module Google
|
|
8330
9228
|
end
|
8331
9229
|
end
|
8332
9230
|
|
9231
|
+
# Information about the requests relevant to the finding.
|
9232
|
+
class Requests
|
9233
|
+
include Google::Apis::Core::Hashable
|
9234
|
+
|
9235
|
+
# Allowed RPS (requests per second) over the long term.
|
9236
|
+
# Corresponds to the JSON property `longTermAllowed`
|
9237
|
+
# @return [Fixnum]
|
9238
|
+
attr_accessor :long_term_allowed
|
9239
|
+
|
9240
|
+
# Denied RPS (requests per second) over the long term.
|
9241
|
+
# Corresponds to the JSON property `longTermDenied`
|
9242
|
+
# @return [Fixnum]
|
9243
|
+
attr_accessor :long_term_denied
|
9244
|
+
|
9245
|
+
# For 'Increasing deny ratio', the ratio is the denied traffic divided by the
|
9246
|
+
# allowed traffic. For 'Allowed traffic spike', the ratio is the allowed traffic
|
9247
|
+
# in the short term divided by allowed traffic in the long term.
|
9248
|
+
# Corresponds to the JSON property `ratio`
|
9249
|
+
# @return [Float]
|
9250
|
+
attr_accessor :ratio
|
9251
|
+
|
9252
|
+
# Allowed RPS (requests per second) in the short term.
|
9253
|
+
# Corresponds to the JSON property `shortTermAllowed`
|
9254
|
+
# @return [Fixnum]
|
9255
|
+
attr_accessor :short_term_allowed
|
9256
|
+
|
9257
|
+
def initialize(**args)
|
9258
|
+
update!(**args)
|
9259
|
+
end
|
9260
|
+
|
9261
|
+
# Update properties of this object
|
9262
|
+
def update!(**args)
|
9263
|
+
@long_term_allowed = args[:long_term_allowed] if args.key?(:long_term_allowed)
|
9264
|
+
@long_term_denied = args[:long_term_denied] if args.key?(:long_term_denied)
|
9265
|
+
@ratio = args[:ratio] if args.key?(:ratio)
|
9266
|
+
@short_term_allowed = args[:short_term_allowed] if args.key?(:short_term_allowed)
|
9267
|
+
end
|
9268
|
+
end
|
9269
|
+
|
8333
9270
|
# Information related to the Google Cloud resource that is associated with this
|
8334
9271
|
# finding.
|
8335
9272
|
class Resource
|
8336
9273
|
include Google::Apis::Core::Hashable
|
8337
9274
|
|
9275
|
+
# AWS metadata associated with the resource, only applicable if the finding's
|
9276
|
+
# cloud provider is Amazon Web Services.
|
9277
|
+
# Corresponds to the JSON property `awsMetadata`
|
9278
|
+
# @return [Google::Apis::SecuritycenterV1::AwsMetadata]
|
9279
|
+
attr_accessor :aws_metadata
|
9280
|
+
|
9281
|
+
# Indicates which cloud provider the finding is from.
|
9282
|
+
# Corresponds to the JSON property `cloudProvider`
|
9283
|
+
# @return [String]
|
9284
|
+
attr_accessor :cloud_provider
|
9285
|
+
|
8338
9286
|
# The human readable name of the resource.
|
8339
9287
|
# Corresponds to the JSON property `displayName`
|
8340
9288
|
# @return [String]
|
@@ -8347,12 +9295,22 @@ module Google
|
|
8347
9295
|
# @return [Array<Google::Apis::SecuritycenterV1::Folder>]
|
8348
9296
|
attr_accessor :folders
|
8349
9297
|
|
9298
|
+
# The region or location of the service (if applicable).
|
9299
|
+
# Corresponds to the JSON property `location`
|
9300
|
+
# @return [String]
|
9301
|
+
attr_accessor :location
|
9302
|
+
|
8350
9303
|
# The full resource name of the resource. See: https://cloud.google.com/apis/
|
8351
9304
|
# design/resource_names#full_resource_name
|
8352
9305
|
# Corresponds to the JSON property `name`
|
8353
9306
|
# @return [String]
|
8354
9307
|
attr_accessor :name
|
8355
9308
|
|
9309
|
+
# Indicates which organization / tenant the finding is for.
|
9310
|
+
# Corresponds to the JSON property `organization`
|
9311
|
+
# @return [String]
|
9312
|
+
attr_accessor :organization
|
9313
|
+
|
8356
9314
|
# The human readable name of resource's parent.
|
8357
9315
|
# Corresponds to the JSON property `parentDisplayName`
|
8358
9316
|
# @return [String]
|
@@ -8373,6 +9331,29 @@ module Google
|
|
8373
9331
|
# @return [String]
|
8374
9332
|
attr_accessor :project_name
|
8375
9333
|
|
9334
|
+
# Represents the path of resources leading up to the resource this finding is
|
9335
|
+
# about.
|
9336
|
+
# Corresponds to the JSON property `resourcePath`
|
9337
|
+
# @return [Google::Apis::SecuritycenterV1::ResourcePath]
|
9338
|
+
attr_accessor :resource_path
|
9339
|
+
|
9340
|
+
# A string representation of the resource path. For GCP, it has the format of:
|
9341
|
+
# org/`organization_id`/folder/`folder_id`/folder/`folder_id`/project/`
|
9342
|
+
# project_id` where there can be any number of folders. For AWS, it has the
|
9343
|
+
# format of: org/`organization_id`/ou/`organizational_unit_id`/ou/`
|
9344
|
+
# organizational_unit_id`/account/`account_id` where there can be any number of
|
9345
|
+
# organizational units. For Azure, it has the format of: mg/`management_group_id`
|
9346
|
+
# /mg/`management_group_id`/subscription/`subscription_id`/rg/`
|
9347
|
+
# resource_group_name` where there can be any number of management groups.
|
9348
|
+
# Corresponds to the JSON property `resourcePathString`
|
9349
|
+
# @return [String]
|
9350
|
+
attr_accessor :resource_path_string
|
9351
|
+
|
9352
|
+
# The service or resource provider associated with the resource.
|
9353
|
+
# Corresponds to the JSON property `service`
|
9354
|
+
# @return [String]
|
9355
|
+
attr_accessor :service
|
9356
|
+
|
8376
9357
|
# The full resource type of the resource.
|
8377
9358
|
# Corresponds to the JSON property `type`
|
8378
9359
|
# @return [String]
|
@@ -8384,17 +9365,77 @@ module Google
|
|
8384
9365
|
|
8385
9366
|
# Update properties of this object
|
8386
9367
|
def update!(**args)
|
9368
|
+
@aws_metadata = args[:aws_metadata] if args.key?(:aws_metadata)
|
9369
|
+
@cloud_provider = args[:cloud_provider] if args.key?(:cloud_provider)
|
8387
9370
|
@display_name = args[:display_name] if args.key?(:display_name)
|
8388
9371
|
@folders = args[:folders] if args.key?(:folders)
|
9372
|
+
@location = args[:location] if args.key?(:location)
|
8389
9373
|
@name = args[:name] if args.key?(:name)
|
9374
|
+
@organization = args[:organization] if args.key?(:organization)
|
8390
9375
|
@parent_display_name = args[:parent_display_name] if args.key?(:parent_display_name)
|
8391
9376
|
@parent_name = args[:parent_name] if args.key?(:parent_name)
|
8392
9377
|
@project_display_name = args[:project_display_name] if args.key?(:project_display_name)
|
8393
9378
|
@project_name = args[:project_name] if args.key?(:project_name)
|
9379
|
+
@resource_path = args[:resource_path] if args.key?(:resource_path)
|
9380
|
+
@resource_path_string = args[:resource_path_string] if args.key?(:resource_path_string)
|
9381
|
+
@service = args[:service] if args.key?(:service)
|
8394
9382
|
@type = args[:type] if args.key?(:type)
|
8395
9383
|
end
|
8396
9384
|
end
|
8397
9385
|
|
9386
|
+
# Represents the path of resources leading up to the resource this finding is
|
9387
|
+
# about.
|
9388
|
+
class ResourcePath
|
9389
|
+
include Google::Apis::Core::Hashable
|
9390
|
+
|
9391
|
+
# The list of nodes that make the up resource path, ordered from lowest level to
|
9392
|
+
# highest level.
|
9393
|
+
# Corresponds to the JSON property `nodes`
|
9394
|
+
# @return [Array<Google::Apis::SecuritycenterV1::ResourcePathNode>]
|
9395
|
+
attr_accessor :nodes
|
9396
|
+
|
9397
|
+
def initialize(**args)
|
9398
|
+
update!(**args)
|
9399
|
+
end
|
9400
|
+
|
9401
|
+
# Update properties of this object
|
9402
|
+
def update!(**args)
|
9403
|
+
@nodes = args[:nodes] if args.key?(:nodes)
|
9404
|
+
end
|
9405
|
+
end
|
9406
|
+
|
9407
|
+
# A node within the resource path. Each node represents a resource within the
|
9408
|
+
# resource hierarchy.
|
9409
|
+
class ResourcePathNode
|
9410
|
+
include Google::Apis::Core::Hashable
|
9411
|
+
|
9412
|
+
# The display name of the resource this node represents.
|
9413
|
+
# Corresponds to the JSON property `displayName`
|
9414
|
+
# @return [String]
|
9415
|
+
attr_accessor :display_name
|
9416
|
+
|
9417
|
+
# The ID of the resource this node represents.
|
9418
|
+
# Corresponds to the JSON property `id`
|
9419
|
+
# @return [String]
|
9420
|
+
attr_accessor :id
|
9421
|
+
|
9422
|
+
# The type of resource this node represents.
|
9423
|
+
# Corresponds to the JSON property `nodeType`
|
9424
|
+
# @return [String]
|
9425
|
+
attr_accessor :node_type
|
9426
|
+
|
9427
|
+
def initialize(**args)
|
9428
|
+
update!(**args)
|
9429
|
+
end
|
9430
|
+
|
9431
|
+
# Update properties of this object
|
9432
|
+
def update!(**args)
|
9433
|
+
@display_name = args[:display_name] if args.key?(:display_name)
|
9434
|
+
@id = args[:id] if args.key?(:id)
|
9435
|
+
@node_type = args[:node_type] if args.key?(:node_type)
|
9436
|
+
end
|
9437
|
+
end
|
9438
|
+
|
8398
9439
|
# Metadata about a ResourceValueConfig. For example, id and name.
|
8399
9440
|
class ResourceValueConfigMetadata
|
8400
9441
|
include Google::Apis::Core::Hashable
|
@@ -8613,6 +9654,42 @@ module Google
|
|
8613
9654
|
end
|
8614
9655
|
end
|
8615
9656
|
|
9657
|
+
# Information about the [Google Cloud Armor security policy](https://cloud.
|
9658
|
+
# google.com/armor/docs/security-policy-overview) relevant to the finding.
|
9659
|
+
class SecurityPolicy
|
9660
|
+
include Google::Apis::Core::Hashable
|
9661
|
+
|
9662
|
+
# The name of the Google Cloud Armor security policy, for example, "my-security-
|
9663
|
+
# policy".
|
9664
|
+
# Corresponds to the JSON property `name`
|
9665
|
+
# @return [String]
|
9666
|
+
attr_accessor :name
|
9667
|
+
|
9668
|
+
# Whether or not the associated rule or policy is in preview mode.
|
9669
|
+
# Corresponds to the JSON property `preview`
|
9670
|
+
# @return [Boolean]
|
9671
|
+
attr_accessor :preview
|
9672
|
+
alias_method :preview?, :preview
|
9673
|
+
|
9674
|
+
# The type of Google Cloud Armor security policy for example, ‘backend security
|
9675
|
+
# policy’, ‘edge security policy’, ‘network edge security policy’, or ‘always-on
|
9676
|
+
# DDoS protection’.
|
9677
|
+
# Corresponds to the JSON property `type`
|
9678
|
+
# @return [String]
|
9679
|
+
attr_accessor :type
|
9680
|
+
|
9681
|
+
def initialize(**args)
|
9682
|
+
update!(**args)
|
9683
|
+
end
|
9684
|
+
|
9685
|
+
# Update properties of this object
|
9686
|
+
def update!(**args)
|
9687
|
+
@name = args[:name] if args.key?(:name)
|
9688
|
+
@preview = args[:preview] if args.key?(:preview)
|
9689
|
+
@type = args[:type] if args.key?(:type)
|
9690
|
+
end
|
9691
|
+
end
|
9692
|
+
|
8616
9693
|
# Represents a posture that is deployed on Google Cloud by the Security Command
|
8617
9694
|
# Center Posture Management service. A posture contains one or more policy sets.
|
8618
9695
|
# A policy set is a group of policies that enforce a set of security rules on
|
@@ -8966,6 +10043,11 @@ module Google
|
|
8966
10043
|
class Simulation
|
8967
10044
|
include Google::Apis::Core::Hashable
|
8968
10045
|
|
10046
|
+
# Indicates which cloud provider was used in this simulation.
|
10047
|
+
# Corresponds to the JSON property `cloudProvider`
|
10048
|
+
# @return [String]
|
10049
|
+
attr_accessor :cloud_provider
|
10050
|
+
|
8969
10051
|
# Output only. Time simulation was created
|
8970
10052
|
# Corresponds to the JSON property `createTime`
|
8971
10053
|
# @return [String]
|
@@ -8988,6 +10070,7 @@ module Google
|
|
8988
10070
|
|
8989
10071
|
# Update properties of this object
|
8990
10072
|
def update!(**args)
|
10073
|
+
@cloud_provider = args[:cloud_provider] if args.key?(:cloud_provider)
|
8991
10074
|
@create_time = args[:create_time] if args.key?(:create_time)
|
8992
10075
|
@name = args[:name] if args.key?(:name)
|
8993
10076
|
@resource_value_configs_metadata = args[:resource_value_configs_metadata] if args.key?(:resource_value_configs_metadata)
|
@@ -9379,6 +10462,63 @@ module Google
|
|
9379
10462
|
end
|
9380
10463
|
end
|
9381
10464
|
|
10465
|
+
# Vulnerability count by severity.
|
10466
|
+
class VulnerabilityCountBySeverity
|
10467
|
+
include Google::Apis::Core::Hashable
|
10468
|
+
|
10469
|
+
# Key is the Severity enum.
|
10470
|
+
# Corresponds to the JSON property `severityToFindingCount`
|
10471
|
+
# @return [Hash<String,Fixnum>]
|
10472
|
+
attr_accessor :severity_to_finding_count
|
10473
|
+
|
10474
|
+
def initialize(**args)
|
10475
|
+
update!(**args)
|
10476
|
+
end
|
10477
|
+
|
10478
|
+
# Update properties of this object
|
10479
|
+
def update!(**args)
|
10480
|
+
@severity_to_finding_count = args[:severity_to_finding_count] if args.key?(:severity_to_finding_count)
|
10481
|
+
end
|
10482
|
+
end
|
10483
|
+
|
10484
|
+
# Result containing the properties and count of a VulnerabilitySnapshot request.
|
10485
|
+
class VulnerabilitySnapshot
|
10486
|
+
include Google::Apis::Core::Hashable
|
10487
|
+
|
10488
|
+
# The cloud provider for the vulnerability snapshot.
|
10489
|
+
# Corresponds to the JSON property `cloudProvider`
|
10490
|
+
# @return [String]
|
10491
|
+
attr_accessor :cloud_provider
|
10492
|
+
|
10493
|
+
# Vulnerability count by severity.
|
10494
|
+
# Corresponds to the JSON property `findingCount`
|
10495
|
+
# @return [Google::Apis::SecuritycenterV1::VulnerabilityCountBySeverity]
|
10496
|
+
attr_accessor :finding_count
|
10497
|
+
|
10498
|
+
# Identifier. The vulnerability snapshot name. Format: //locations//
|
10499
|
+
# vulnerabilitySnapshots/
|
10500
|
+
# Corresponds to the JSON property `name`
|
10501
|
+
# @return [String]
|
10502
|
+
attr_accessor :name
|
10503
|
+
|
10504
|
+
# The time that the snapshot was taken.
|
10505
|
+
# Corresponds to the JSON property `snapshotTime`
|
10506
|
+
# @return [String]
|
10507
|
+
attr_accessor :snapshot_time
|
10508
|
+
|
10509
|
+
def initialize(**args)
|
10510
|
+
update!(**args)
|
10511
|
+
end
|
10512
|
+
|
10513
|
+
# Update properties of this object
|
10514
|
+
def update!(**args)
|
10515
|
+
@cloud_provider = args[:cloud_provider] if args.key?(:cloud_provider)
|
10516
|
+
@finding_count = args[:finding_count] if args.key?(:finding_count)
|
10517
|
+
@name = args[:name] if args.key?(:name)
|
10518
|
+
@snapshot_time = args[:snapshot_time] if args.key?(:snapshot_time)
|
10519
|
+
end
|
10520
|
+
end
|
10521
|
+
|
9382
10522
|
# A signature corresponding to a YARA rule.
|
9383
10523
|
class YaraRuleSignature
|
9384
10524
|
include Google::Apis::Core::Hashable
|