google-apis-securitycenter_v1 0.82.0 → 0.84.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.
@@ -383,8 +383,8 @@ module Google
383
383
  include Google::Apis::Core::Hashable
384
384
 
385
385
  # The resource name of the attack path simulation result that contains the
386
- # details regarding this attack exposure score. Example: organizations/123/
387
- # simulations/456/attackExposureResults/789
386
+ # details regarding this attack exposure score. Example: `organizations/123/
387
+ # simulations/456/attackExposureResults/789`
388
388
  # Corresponds to the JSON property `attackExposureResult`
389
389
  # @return [String]
390
390
  attr_accessor :attack_exposure_result
@@ -519,14 +519,14 @@ module Google
519
519
  attr_accessor :display_name
520
520
 
521
521
  # The name of the resource at this point in the attack path. The format of the
522
- # name follows the Cloud Asset Inventory [resource name format]("https://cloud.
523
- # google.com/asset-inventory/docs/resource-name-format")
522
+ # name follows the Cloud Asset Inventory [resource name format](https://cloud.
523
+ # google.com/asset-inventory/docs/resource-name-format)
524
524
  # Corresponds to the JSON property `resource`
525
525
  # @return [String]
526
526
  attr_accessor :resource
527
527
 
528
528
  # The [supported resource type](https://cloud.google.com/asset-inventory/docs/
529
- # supported-asset-types")
529
+ # supported-asset-types)
530
530
  # Corresponds to the JSON property `resourceType`
531
531
  # @return [String]
532
532
  attr_accessor :resource_type
@@ -779,6 +779,110 @@ module Google
779
779
  end
780
780
  end
781
781
 
782
+ # Represents an Azure management group.
783
+ class AzureManagementGroup
784
+ include Google::Apis::Core::Hashable
785
+
786
+ # The display name of the Azure management group.
787
+ # Corresponds to the JSON property `displayName`
788
+ # @return [String]
789
+ attr_accessor :display_name
790
+
791
+ # The UUID of the Azure management group, for example, `20000000-0001-0000-0000-
792
+ # 000000000000`.
793
+ # Corresponds to the JSON property `id`
794
+ # @return [String]
795
+ attr_accessor :id
796
+
797
+ def initialize(**args)
798
+ update!(**args)
799
+ end
800
+
801
+ # Update properties of this object
802
+ def update!(**args)
803
+ @display_name = args[:display_name] if args.key?(:display_name)
804
+ @id = args[:id] if args.key?(:id)
805
+ end
806
+ end
807
+
808
+ # Azure metadata associated with the resource, only applicable if the finding's
809
+ # cloud provider is Microsoft Azure.
810
+ class AzureMetadata
811
+ include Google::Apis::Core::Hashable
812
+
813
+ # A list of Azure management groups associated with the resource, ordered from
814
+ # lowest level (closest to the subscription) to highest level.
815
+ # Corresponds to the JSON property `managementGroups`
816
+ # @return [Array<Google::Apis::SecuritycenterV1::AzureManagementGroup>]
817
+ attr_accessor :management_groups
818
+
819
+ # Represents an Azure resource group.
820
+ # Corresponds to the JSON property `resourceGroup`
821
+ # @return [Google::Apis::SecuritycenterV1::AzureResourceGroup]
822
+ attr_accessor :resource_group
823
+
824
+ # Represents an Azure subscription.
825
+ # Corresponds to the JSON property `subscription`
826
+ # @return [Google::Apis::SecuritycenterV1::AzureSubscription]
827
+ attr_accessor :subscription
828
+
829
+ def initialize(**args)
830
+ update!(**args)
831
+ end
832
+
833
+ # Update properties of this object
834
+ def update!(**args)
835
+ @management_groups = args[:management_groups] if args.key?(:management_groups)
836
+ @resource_group = args[:resource_group] if args.key?(:resource_group)
837
+ @subscription = args[:subscription] if args.key?(:subscription)
838
+ end
839
+ end
840
+
841
+ # Represents an Azure resource group.
842
+ class AzureResourceGroup
843
+ include Google::Apis::Core::Hashable
844
+
845
+ # The name of the Azure resource group. This is not a UUID.
846
+ # Corresponds to the JSON property `name`
847
+ # @return [String]
848
+ attr_accessor :name
849
+
850
+ def initialize(**args)
851
+ update!(**args)
852
+ end
853
+
854
+ # Update properties of this object
855
+ def update!(**args)
856
+ @name = args[:name] if args.key?(:name)
857
+ end
858
+ end
859
+
860
+ # Represents an Azure subscription.
861
+ class AzureSubscription
862
+ include Google::Apis::Core::Hashable
863
+
864
+ # The display name of the Azure subscription.
865
+ # Corresponds to the JSON property `displayName`
866
+ # @return [String]
867
+ attr_accessor :display_name
868
+
869
+ # The UUID of the Azure subscription, for example, `291bba3f-e0a5-47bc-a099-
870
+ # 3bdcb2a50a05`.
871
+ # Corresponds to the JSON property `id`
872
+ # @return [String]
873
+ attr_accessor :id
874
+
875
+ def initialize(**args)
876
+ update!(**args)
877
+ end
878
+
879
+ # Update properties of this object
880
+ def update!(**args)
881
+ @display_name = args[:display_name] if args.key?(:display_name)
882
+ @id = args[:id] if args.key?(:id)
883
+ end
884
+ end
885
+
782
886
  # Information related to Google Cloud Backup and DR Service findings.
783
887
  class BackupDisasterRecovery
784
888
  include Google::Apis::Core::Hashable
@@ -1815,10 +1919,10 @@ module Google
1815
1919
  attr_accessor :enablement_state
1816
1920
 
1817
1921
  # Output only. The resource name of the effective ETD custom module. Its format
1818
- # is: * "organizations/`organization`/eventThreatDetectionSettings/
1819
- # effectiveCustomModules/`module`". * "folders/`folder`/
1820
- # eventThreatDetectionSettings/effectiveCustomModules/`module`". * "projects/`
1821
- # project`/eventThreatDetectionSettings/effectiveCustomModules/`module`".
1922
+ # is: * `organizations/`organization`/eventThreatDetectionSettings/
1923
+ # effectiveCustomModules/`module``. * `folders/`folder`/
1924
+ # eventThreatDetectionSettings/effectiveCustomModules/`module``. * `projects/`
1925
+ # project`/eventThreatDetectionSettings/effectiveCustomModules/`module``.
1822
1926
  # Corresponds to the JSON property `name`
1823
1927
  # @return [String]
1824
1928
  attr_accessor :name
@@ -1928,10 +2032,10 @@ module Google
1928
2032
  attr_accessor :last_editor
1929
2033
 
1930
2034
  # Immutable. The resource name of the Event Threat Detection custom module. Its
1931
- # format is: * "organizations/`organization`/eventThreatDetectionSettings/
1932
- # customModules/`module`". * "folders/`folder`/eventThreatDetectionSettings/
1933
- # customModules/`module`". * "projects/`project`/eventThreatDetectionSettings/
1934
- # customModules/`module`".
2035
+ # format is: * `organizations/`organization`/eventThreatDetectionSettings/
2036
+ # customModules/`module``. * `folders/`folder`/eventThreatDetectionSettings/
2037
+ # customModules/`module``. * `projects/`project`/eventThreatDetectionSettings/
2038
+ # customModules/`module``.
1935
2039
  # Corresponds to the JSON property `name`
1936
2040
  # @return [String]
1937
2041
  attr_accessor :name
@@ -2293,6 +2397,13 @@ module Google
2293
2397
  # @return [String]
2294
2398
  attr_accessor :finding_class
2295
2399
 
2400
+ # Contains details about groups of which this finding is a member. A group is a
2401
+ # collection of findings that are related in some way. This field cannot be
2402
+ # updated. Its value is ignored in all update requests.
2403
+ # Corresponds to the JSON property `groupMemberships`
2404
+ # @return [Array<Google::Apis::SecuritycenterV1::GroupMembership>]
2405
+ attr_accessor :group_memberships
2406
+
2296
2407
  # Represents IAM bindings associated with the finding.
2297
2408
  # Corresponds to the JSON property `iamBindings`
2298
2409
  # @return [Array<Google::Apis::SecuritycenterV1::IamBinding>]
@@ -2447,6 +2558,13 @@ module Google
2447
2558
  # @return [String]
2448
2559
  attr_accessor :state
2449
2560
 
2561
+ # Contains details about a group of security issues that, when the issues occur
2562
+ # together, represent a greater risk than when the issues occur independently. A
2563
+ # group of such issues is referred to as a toxic combination.
2564
+ # Corresponds to the JSON property `toxicCombination`
2565
+ # @return [Google::Apis::SecuritycenterV1::ToxicCombination]
2566
+ attr_accessor :toxic_combination
2567
+
2450
2568
  # Refers to common vulnerability fields e.g. cve, cvss, cwe etc.
2451
2569
  # Corresponds to the JSON property `vulnerability`
2452
2570
  # @return [Google::Apis::SecuritycenterV1::Vulnerability]
@@ -2480,6 +2598,7 @@ module Google
2480
2598
  @external_uri = args[:external_uri] if args.key?(:external_uri)
2481
2599
  @files = args[:files] if args.key?(:files)
2482
2600
  @finding_class = args[:finding_class] if args.key?(:finding_class)
2601
+ @group_memberships = args[:group_memberships] if args.key?(:group_memberships)
2483
2602
  @iam_bindings = args[:iam_bindings] if args.key?(:iam_bindings)
2484
2603
  @indicator = args[:indicator] if args.key?(:indicator)
2485
2604
  @kernel_rootkit = args[:kernel_rootkit] if args.key?(:kernel_rootkit)
@@ -2504,6 +2623,7 @@ module Google
2504
2623
  @severity = args[:severity] if args.key?(:severity)
2505
2624
  @source_properties = args[:source_properties] if args.key?(:source_properties)
2506
2625
  @state = args[:state] if args.key?(:state)
2626
+ @toxic_combination = args[:toxic_combination] if args.key?(:toxic_combination)
2507
2627
  @vulnerability = args[:vulnerability] if args.key?(:vulnerability)
2508
2628
  end
2509
2629
  end
@@ -3063,12 +3183,12 @@ module Google
3063
3183
  # @return [String]
3064
3184
  attr_accessor :most_recent_editor
3065
3185
 
3066
- # This field will be ignored if provided on config creation. Format "
3067
- # organizations/`organization`/muteConfigs/`mute_config`" "folders/`folder`/
3068
- # muteConfigs/`mute_config`" "projects/`project`/muteConfigs/`mute_config`" "
3069
- # organizations/`organization`/locations/global/muteConfigs/`mute_config`" "
3070
- # folders/`folder`/locations/global/muteConfigs/`mute_config`" "projects/`
3071
- # project`/locations/global/muteConfigs/`mute_config`"
3186
+ # This field will be ignored if provided on config creation. Format `
3187
+ # organizations/`organization`/muteConfigs/`mute_config`` `folders/`folder`/
3188
+ # muteConfigs/`mute_config`` `projects/`project`/muteConfigs/`mute_config`` `
3189
+ # organizations/`organization`/locations/global/muteConfigs/`mute_config`` `
3190
+ # folders/`folder`/locations/global/muteConfigs/`mute_config`` `projects/`
3191
+ # project`/locations/global/muteConfigs/`mute_config``
3072
3192
  # Corresponds to the JSON property `name`
3073
3193
  # @return [String]
3074
3194
  attr_accessor :name
@@ -3180,6 +3300,12 @@ module Google
3180
3300
  # @return [Google::Apis::SecuritycenterV1::AwsMetadata]
3181
3301
  attr_accessor :aws_metadata
3182
3302
 
3303
+ # Azure metadata associated with the resource, only applicable if the finding's
3304
+ # cloud provider is Microsoft Azure.
3305
+ # Corresponds to the JSON property `azureMetadata`
3306
+ # @return [Google::Apis::SecuritycenterV1::AzureMetadata]
3307
+ attr_accessor :azure_metadata
3308
+
3183
3309
  # Indicates which cloud provider the resource resides in.
3184
3310
  # Corresponds to the JSON property `cloudProvider`
3185
3311
  # @return [String]
@@ -3241,13 +3367,14 @@ module Google
3241
3367
  attr_accessor :resource_path
3242
3368
 
3243
3369
  # A string representation of the resource path. For Google Cloud, it has the
3244
- # format of organizations/`organization_id`/folders/`folder_id`/folders/`
3245
- # folder_id`/projects/`project_id` where there can be any number of folders. For
3246
- # AWS, it 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.
3370
+ # format of `organizations/`organization_id`/folders/`folder_id`/folders/`
3371
+ # folder_id`/projects/`project_id`` where there can be any number of folders.
3372
+ # For AWS, it has the format of `org/`organization_id`/ou/`
3373
+ # organizational_unit_id`/ou/`organizational_unit_id`/account/`account_id``
3374
+ # where there can be any number of organizational units. For Azure, it has the
3375
+ # format of `mg/`management_group_id`/mg/`management_group_id`/subscription/`
3376
+ # subscription_id`/rg/`resource_group_name`` where there can be any number of
3377
+ # management groups.
3251
3378
  # Corresponds to the JSON property `resourcePathString`
3252
3379
  # @return [String]
3253
3380
  attr_accessor :resource_path_string
@@ -3270,6 +3397,7 @@ module Google
3270
3397
  # Update properties of this object
3271
3398
  def update!(**args)
3272
3399
  @aws_metadata = args[:aws_metadata] if args.key?(:aws_metadata)
3400
+ @azure_metadata = args[:azure_metadata] if args.key?(:azure_metadata)
3273
3401
  @cloud_provider = args[:cloud_provider] if args.key?(:cloud_provider)
3274
3402
  @display_name = args[:display_name] if args.key?(:display_name)
3275
3403
  @folders = args[:folders] if args.key?(:folders)
@@ -3331,18 +3459,18 @@ module Google
3331
3459
  # @return [String]
3332
3460
  attr_accessor :name
3333
3461
 
3334
- # List of resource labels to search for, evaluated with AND. For example, "
3335
- # resource_labels_selector": `"key": "value", "env": "prod"` will match
3336
- # resources with labels "key": "value" AND "env": "prod" https://cloud.google.
3462
+ # List of resource labels to search for, evaluated with `AND`. For example, `"
3463
+ # resource_labels_selector": `"key": "value", "env": "prod"`` will match
3464
+ # resources with labels "key": "value" `AND` "env": "prod" https://cloud.google.
3337
3465
  # com/resource-manager/docs/creating-managing-labels
3338
3466
  # Corresponds to the JSON property `resourceLabelsSelector`
3339
3467
  # @return [Hash<String,String>]
3340
3468
  attr_accessor :resource_labels_selector
3341
3469
 
3342
3470
  # Apply resource_value only to resources that match resource_type. resource_type
3343
- # will be checked with AND of other resources. For example, "storage.googleapis.
3344
- # com/Bucket" with resource_value "HIGH" will apply "HIGH" value only to "
3345
- # storage.googleapis.com/Bucket" resources.
3471
+ # will be checked with `AND` of other resources. For example, "storage.
3472
+ # googleapis.com/Bucket" with resource_value "HIGH" will apply "HIGH" value only
3473
+ # to "storage.googleapis.com/Bucket" resources.
3346
3474
  # Corresponds to the JSON property `resourceType`
3347
3475
  # @return [String]
3348
3476
  attr_accessor :resource_type
@@ -3354,7 +3482,7 @@ module Google
3354
3482
 
3355
3483
  # Project or folder to scope this configuration to. For example, "project/456"
3356
3484
  # would apply this configuration only to resources in "project/456" scope will
3357
- # be checked with AND of other resources.
3485
+ # be checked with `AND` of other resources.
3358
3486
  # Corresponds to the JSON property `scope`
3359
3487
  # @return [String]
3360
3488
  attr_accessor :scope
@@ -3366,9 +3494,10 @@ module Google
3366
3494
  # @return [Google::Apis::SecuritycenterV1::GoogleCloudSecuritycenterV1SensitiveDataProtectionMapping]
3367
3495
  attr_accessor :sensitive_data_protection_mapping
3368
3496
 
3369
- # Required. Tag values combined with AND to check against. Values in the form "
3370
- # tagValues/123" Example: [ "tagValues/123", "tagValues/456", "tagValues/789" ]
3371
- # https://cloud.google.com/resource-manager/docs/tags/tags-creating-and-managing
3497
+ # Required. Tag values combined with `AND` to check against. Values in the form "
3498
+ # tagValues/123" Example: `[ "tagValues/123", "tagValues/456", "tagValues/789" ]`
3499
+ # https://cloud.google.com/resource-manager/docs/tags/tags-creating-and-
3500
+ # managing
3372
3501
  # Corresponds to the JSON property `tagValues`
3373
3502
  # @return [Array<String>]
3374
3503
  attr_accessor :tag_values
@@ -4102,8 +4231,8 @@ module Google
4102
4231
  include Google::Apis::Core::Hashable
4103
4232
 
4104
4233
  # The resource name of the attack path simulation result that contains the
4105
- # details regarding this attack exposure score. Example: organizations/123/
4106
- # simulations/456/attackExposureResults/789
4234
+ # details regarding this attack exposure score. Example: `organizations/123/
4235
+ # simulations/456/attackExposureResults/789`
4107
4236
  # Corresponds to the JSON property `attackExposureResult`
4108
4237
  # @return [String]
4109
4238
  attr_accessor :attack_exposure_result
@@ -4274,6 +4403,110 @@ module Google
4274
4403
  end
4275
4404
  end
4276
4405
 
4406
+ # Represents an Azure management group.
4407
+ class GoogleCloudSecuritycenterV2AzureManagementGroup
4408
+ include Google::Apis::Core::Hashable
4409
+
4410
+ # The display name of the Azure management group.
4411
+ # Corresponds to the JSON property `displayName`
4412
+ # @return [String]
4413
+ attr_accessor :display_name
4414
+
4415
+ # The UUID of the Azure management group, for example, `20000000-0001-0000-0000-
4416
+ # 000000000000`.
4417
+ # Corresponds to the JSON property `id`
4418
+ # @return [String]
4419
+ attr_accessor :id
4420
+
4421
+ def initialize(**args)
4422
+ update!(**args)
4423
+ end
4424
+
4425
+ # Update properties of this object
4426
+ def update!(**args)
4427
+ @display_name = args[:display_name] if args.key?(:display_name)
4428
+ @id = args[:id] if args.key?(:id)
4429
+ end
4430
+ end
4431
+
4432
+ # Azure metadata associated with the resource, only applicable if the finding's
4433
+ # cloud provider is Microsoft Azure.
4434
+ class GoogleCloudSecuritycenterV2AzureMetadata
4435
+ include Google::Apis::Core::Hashable
4436
+
4437
+ # A list of Azure management groups associated with the resource, ordered from
4438
+ # lowest level (closest to the subscription) to highest level.
4439
+ # Corresponds to the JSON property `managementGroups`
4440
+ # @return [Array<Google::Apis::SecuritycenterV1::GoogleCloudSecuritycenterV2AzureManagementGroup>]
4441
+ attr_accessor :management_groups
4442
+
4443
+ # Represents an Azure resource group.
4444
+ # Corresponds to the JSON property `resourceGroup`
4445
+ # @return [Google::Apis::SecuritycenterV1::GoogleCloudSecuritycenterV2AzureResourceGroup]
4446
+ attr_accessor :resource_group
4447
+
4448
+ # Represents an Azure subscription.
4449
+ # Corresponds to the JSON property `subscription`
4450
+ # @return [Google::Apis::SecuritycenterV1::GoogleCloudSecuritycenterV2AzureSubscription]
4451
+ attr_accessor :subscription
4452
+
4453
+ def initialize(**args)
4454
+ update!(**args)
4455
+ end
4456
+
4457
+ # Update properties of this object
4458
+ def update!(**args)
4459
+ @management_groups = args[:management_groups] if args.key?(:management_groups)
4460
+ @resource_group = args[:resource_group] if args.key?(:resource_group)
4461
+ @subscription = args[:subscription] if args.key?(:subscription)
4462
+ end
4463
+ end
4464
+
4465
+ # Represents an Azure resource group.
4466
+ class GoogleCloudSecuritycenterV2AzureResourceGroup
4467
+ include Google::Apis::Core::Hashable
4468
+
4469
+ # The name of the Azure resource group. This is not a UUID.
4470
+ # Corresponds to the JSON property `name`
4471
+ # @return [String]
4472
+ attr_accessor :name
4473
+
4474
+ def initialize(**args)
4475
+ update!(**args)
4476
+ end
4477
+
4478
+ # Update properties of this object
4479
+ def update!(**args)
4480
+ @name = args[:name] if args.key?(:name)
4481
+ end
4482
+ end
4483
+
4484
+ # Represents an Azure subscription.
4485
+ class GoogleCloudSecuritycenterV2AzureSubscription
4486
+ include Google::Apis::Core::Hashable
4487
+
4488
+ # The display name of the Azure subscription.
4489
+ # Corresponds to the JSON property `displayName`
4490
+ # @return [String]
4491
+ attr_accessor :display_name
4492
+
4493
+ # The UUID of the Azure subscription, for example, `291bba3f-e0a5-47bc-a099-
4494
+ # 3bdcb2a50a05`.
4495
+ # Corresponds to the JSON property `id`
4496
+ # @return [String]
4497
+ attr_accessor :id
4498
+
4499
+ def initialize(**args)
4500
+ update!(**args)
4501
+ end
4502
+
4503
+ # Update properties of this object
4504
+ def update!(**args)
4505
+ @display_name = args[:display_name] if args.key?(:display_name)
4506
+ @id = args[:id] if args.key?(:id)
4507
+ end
4508
+ end
4509
+
4277
4510
  # Information related to Google Cloud Backup and DR Service findings.
4278
4511
  class GoogleCloudSecuritycenterV2BackupDisasterRecovery
4279
4512
  include Google::Apis::Core::Hashable
@@ -4382,7 +4615,7 @@ module Google
4382
4615
  attr_accessor :create_time
4383
4616
 
4384
4617
  # The dataset to write findings' updates to. Its format is "projects/[project_id]
4385
- # /datasets/[bigquery_dataset_id]". BigQuery Dataset unique ID must contain only
4618
+ # /datasets/[bigquery_dataset_id]". BigQuery dataset unique ID must contain only
4386
4619
  # letters (a-z, A-Z), numbers (0-9), or underscores (_).
4387
4620
  # Corresponds to the JSON property `dataset`
4388
4621
  # @return [String]
@@ -4414,13 +4647,13 @@ module Google
4414
4647
  # @return [String]
4415
4648
  attr_accessor :most_recent_editor
4416
4649
 
4417
- # The relative resource name of this export. See: https://cloud.google.com/apis/
4418
- # design/resource_names#relative_resource_name. The following list shows some
4419
- # examples: + `organizations/`organization_id`/locations/`location_id`/
4420
- # bigQueryExports/`export_id`` + `folders/`folder_id`/locations/`location_id`/
4421
- # bigQueryExports/`export_id`` + `projects/`project_id`/locations/`location_id`/
4422
- # bigQueryExports/`export_id`` This field is provided in responses, and is
4423
- # ignored when provided in create requests.
4650
+ # Identifier. The relative resource name of this export. See: https://cloud.
4651
+ # google.com/apis/design/resource_names#relative_resource_name. The following
4652
+ # list shows some examples: + `organizations/`organization_id`/locations/`
4653
+ # location_id`/bigQueryExports/`export_id`` + `folders/`folder_id`/locations/`
4654
+ # location_id`/bigQueryExports/`export_id`` + `projects/`project_id`/locations/`
4655
+ # location_id`/bigQueryExports/`export_id`` This field is provided in responses,
4656
+ # and is ignored when provided in create requests.
4424
4657
  # Corresponds to the JSON property `name`
4425
4658
  # @return [String]
4426
4659
  attr_accessor :name
@@ -5485,6 +5718,13 @@ module Google
5485
5718
  # @return [String]
5486
5719
  attr_accessor :finding_class
5487
5720
 
5721
+ # Contains details about groups of which this finding is a member. A group is a
5722
+ # collection of findings that are related in some way. This field cannot be
5723
+ # updated. Its value is ignored in all update requests.
5724
+ # Corresponds to the JSON property `groupMemberships`
5725
+ # @return [Array<Google::Apis::SecuritycenterV1::GoogleCloudSecuritycenterV2GroupMembership>]
5726
+ attr_accessor :group_memberships
5727
+
5488
5728
  # Represents IAM bindings associated with the finding.
5489
5729
  # Corresponds to the JSON property `iamBindings`
5490
5730
  # @return [Array<Google::Apis::SecuritycenterV1::GoogleCloudSecuritycenterV2IamBinding>]
@@ -5648,6 +5888,13 @@ module Google
5648
5888
  # @return [String]
5649
5889
  attr_accessor :state
5650
5890
 
5891
+ # Contains details about a group of security issues that, when the issues occur
5892
+ # together, represent a greater risk than when the issues occur independently. A
5893
+ # group of such issues is referred to as a toxic combination.
5894
+ # Corresponds to the JSON property `toxicCombination`
5895
+ # @return [Google::Apis::SecuritycenterV1::GoogleCloudSecuritycenterV2ToxicCombination]
5896
+ attr_accessor :toxic_combination
5897
+
5651
5898
  # Refers to common vulnerability fields e.g. cve, cvss, cwe etc.
5652
5899
  # Corresponds to the JSON property `vulnerability`
5653
5900
  # @return [Google::Apis::SecuritycenterV1::GoogleCloudSecuritycenterV2Vulnerability]
@@ -5681,6 +5928,7 @@ module Google
5681
5928
  @external_uri = args[:external_uri] if args.key?(:external_uri)
5682
5929
  @files = args[:files] if args.key?(:files)
5683
5930
  @finding_class = args[:finding_class] if args.key?(:finding_class)
5931
+ @group_memberships = args[:group_memberships] if args.key?(:group_memberships)
5684
5932
  @iam_bindings = args[:iam_bindings] if args.key?(:iam_bindings)
5685
5933
  @indicator = args[:indicator] if args.key?(:indicator)
5686
5934
  @kernel_rootkit = args[:kernel_rootkit] if args.key?(:kernel_rootkit)
@@ -5705,6 +5953,7 @@ module Google
5705
5953
  @severity = args[:severity] if args.key?(:severity)
5706
5954
  @source_properties = args[:source_properties] if args.key?(:source_properties)
5707
5955
  @state = args[:state] if args.key?(:state)
5956
+ @toxic_combination = args[:toxic_combination] if args.key?(:toxic_combination)
5708
5957
  @vulnerability = args[:vulnerability] if args.key?(:vulnerability)
5709
5958
  end
5710
5959
  end
@@ -5754,6 +6003,32 @@ module Google
5754
6003
  end
5755
6004
  end
5756
6005
 
6006
+ # Contains details about groups of which this finding is a member. A group is a
6007
+ # collection of findings that are related in some way.
6008
+ class GoogleCloudSecuritycenterV2GroupMembership
6009
+ include Google::Apis::Core::Hashable
6010
+
6011
+ # ID of the group.
6012
+ # Corresponds to the JSON property `groupId`
6013
+ # @return [String]
6014
+ attr_accessor :group_id
6015
+
6016
+ # Type of group.
6017
+ # Corresponds to the JSON property `groupType`
6018
+ # @return [String]
6019
+ attr_accessor :group_type
6020
+
6021
+ def initialize(**args)
6022
+ update!(**args)
6023
+ end
6024
+
6025
+ # Update properties of this object
6026
+ def update!(**args)
6027
+ @group_id = args[:group_id] if args.key?(:group_id)
6028
+ @group_type = args[:group_type] if args.key?(:group_type)
6029
+ end
6030
+ end
6031
+
5757
6032
  # Represents a particular IAM binding, which captures a member's role addition,
5758
6033
  # removal, or state.
5759
6034
  class GoogleCloudSecuritycenterV2IamBinding
@@ -6156,13 +6431,13 @@ module Google
6156
6431
  # @return [String]
6157
6432
  attr_accessor :most_recent_editor
6158
6433
 
6159
- # This field will be ignored if provided on config creation. The following list
6160
- # shows some examples of the format: + `organizations/`organization`/muteConfigs/
6161
- # `mute_config`` + `organizations/`organization`locations/`location`//
6162
- # muteConfigs/`mute_config`` + `folders/`folder`/muteConfigs/`mute_config`` + `
6163
- # folders/`folder`/locations/`location`/muteConfigs/`mute_config`` + `projects/`
6164
- # project`/muteConfigs/`mute_config`` + `projects/`project`/locations/`location`/
6165
- # muteConfigs/`mute_config``
6434
+ # Identifier. This field will be ignored if provided on config creation. The
6435
+ # following list shows some examples of the format: + `organizations/`
6436
+ # organization`/muteConfigs/`mute_config`` + `organizations/`organization`
6437
+ # locations/`location`//muteConfigs/`mute_config`` + `folders/`folder`/
6438
+ # muteConfigs/`mute_config`` + `folders/`folder`/locations/`location`/
6439
+ # muteConfigs/`mute_config`` + `projects/`project`/muteConfigs/`mute_config`` + `
6440
+ # projects/`project`/locations/`location`/muteConfigs/`mute_config``
6166
6441
  # Corresponds to the JSON property `name`
6167
6442
  # @return [String]
6168
6443
  attr_accessor :name
@@ -6675,6 +6950,12 @@ module Google
6675
6950
  # @return [Google::Apis::SecuritycenterV1::GoogleCloudSecuritycenterV2AwsMetadata]
6676
6951
  attr_accessor :aws_metadata
6677
6952
 
6953
+ # Azure metadata associated with the resource, only applicable if the finding's
6954
+ # cloud provider is Microsoft Azure.
6955
+ # Corresponds to the JSON property `azureMetadata`
6956
+ # @return [Google::Apis::SecuritycenterV1::GoogleCloudSecuritycenterV2AzureMetadata]
6957
+ attr_accessor :azure_metadata
6958
+
6678
6959
  # Indicates which cloud provider the finding is from.
6679
6960
  # Corresponds to the JSON property `cloudProvider`
6680
6961
  # @return [String]
@@ -6709,13 +6990,14 @@ module Google
6709
6990
  attr_accessor :resource_path
6710
6991
 
6711
6992
  # A string representation of the resource path. For Google Cloud, it has the
6712
- # format of organizations/`organization_id`/folders/`folder_id`/folders/`
6713
- # folder_id`/projects/`project_id` where there can be any number of folders. For
6714
- # AWS, it 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.
6993
+ # format of `organizations/`organization_id`/folders/`folder_id`/folders/`
6994
+ # folder_id`/projects/`project_id`` where there can be any number of folders.
6995
+ # For AWS, it has the format of `org/`organization_id`/ou/`
6996
+ # organizational_unit_id`/ou/`organizational_unit_id`/account/`account_id``
6997
+ # where there can be any number of organizational units. For Azure, it has the
6998
+ # format of `mg/`management_group_id`/mg/`management_group_id`/subscription/`
6999
+ # subscription_id`/rg/`resource_group_name`` where there can be any number of
7000
+ # management groups.
6719
7001
  # Corresponds to the JSON property `resourcePathString`
6720
7002
  # @return [String]
6721
7003
  attr_accessor :resource_path_string
@@ -6737,6 +7019,7 @@ module Google
6737
7019
  # Update properties of this object
6738
7020
  def update!(**args)
6739
7021
  @aws_metadata = args[:aws_metadata] if args.key?(:aws_metadata)
7022
+ @azure_metadata = args[:azure_metadata] if args.key?(:azure_metadata)
6740
7023
  @cloud_provider = args[:cloud_provider] if args.key?(:cloud_provider)
6741
7024
  @display_name = args[:display_name] if args.key?(:display_name)
6742
7025
  @gcp_metadata = args[:gcp_metadata] if args.key?(:gcp_metadata)
@@ -6822,36 +7105,36 @@ module Google
6822
7105
  # @return [String]
6823
7106
  attr_accessor :description
6824
7107
 
6825
- # Name for the resource value configuration
7108
+ # Identifier. Name for the resource value configuration
6826
7109
  # Corresponds to the JSON property `name`
6827
7110
  # @return [String]
6828
7111
  attr_accessor :name
6829
7112
 
6830
- # List of resource labels to search for, evaluated with AND. For example, "
7113
+ # List of resource labels to search for, evaluated with `AND`. For example, "
6831
7114
  # resource_labels_selector": `"key": "value", "env": "prod"` will match
6832
- # resources with labels "key": "value" AND "env": "prod" https://cloud.google.
7115
+ # resources with labels "key": "value" `AND` "env": "prod" https://cloud.google.
6833
7116
  # com/resource-manager/docs/creating-managing-labels
6834
7117
  # Corresponds to the JSON property `resourceLabelsSelector`
6835
7118
  # @return [Hash<String,String>]
6836
7119
  attr_accessor :resource_labels_selector
6837
7120
 
6838
7121
  # Apply resource_value only to resources that match resource_type. resource_type
6839
- # will be checked with AND of other resources. For example, "storage.googleapis.
6840
- # com/Bucket" with resource_value "HIGH" will apply "HIGH" value only to "
6841
- # storage.googleapis.com/Bucket" resources.
7122
+ # will be checked with `AND` of other resources. For example, "storage.
7123
+ # googleapis.com/Bucket" with resource_value "HIGH" will apply "HIGH" value only
7124
+ # to "storage.googleapis.com/Bucket" resources.
6842
7125
  # Corresponds to the JSON property `resourceType`
6843
7126
  # @return [String]
6844
7127
  attr_accessor :resource_type
6845
7128
 
6846
7129
  # Resource value level this expression represents Only required when there is no
6847
- # SDP mapping in the request
7130
+ # Sensitive Data Protection mapping in the request
6848
7131
  # Corresponds to the JSON property `resourceValue`
6849
7132
  # @return [String]
6850
7133
  attr_accessor :resource_value
6851
7134
 
6852
7135
  # Project or folder to scope this configuration to. For example, "project/456"
6853
- # would apply this configuration only to resources in "project/456" scope will
6854
- # be checked with AND of other resources.
7136
+ # would apply this configuration only to resources in "project/456" scope and
7137
+ # will be checked with `AND` of other resources.
6855
7138
  # Corresponds to the JSON property `scope`
6856
7139
  # @return [String]
6857
7140
  attr_accessor :scope
@@ -6863,9 +7146,9 @@ module Google
6863
7146
  # @return [Google::Apis::SecuritycenterV1::GoogleCloudSecuritycenterV2SensitiveDataProtectionMapping]
6864
7147
  attr_accessor :sensitive_data_protection_mapping
6865
7148
 
6866
- # Required. Tag values combined with AND to check against. Values in the form "
6867
- # tagValues/123" Example: [ "tagValues/123", "tagValues/456", "tagValues/789" ]
6868
- # https://cloud.google.com/resource-manager/docs/tags/tags-creating-and-managing
7149
+ # Tag values combined with `AND` to check against. Values in the form "tagValues/
7150
+ # 123" Example: `[ "tagValues/123", "tagValues/456", "tagValues/789" ]` https://
7151
+ # cloud.google.com/resource-manager/docs/tags/tags-creating-and-managing
6869
7152
  # Corresponds to the JSON property `tagValues`
6870
7153
  # @return [Array<String>]
6871
7154
  attr_accessor :tag_values
@@ -7256,6 +7539,37 @@ module Google
7256
7539
  end
7257
7540
  end
7258
7541
 
7542
+ # Contains details about a group of security issues that, when the issues occur
7543
+ # together, represent a greater risk than when the issues occur independently. A
7544
+ # group of such issues is referred to as a toxic combination.
7545
+ class GoogleCloudSecuritycenterV2ToxicCombination
7546
+ include Google::Apis::Core::Hashable
7547
+
7548
+ # The [Attack exposure score](https://cloud.google.com/security-command-center/
7549
+ # docs/attack-exposure-learn#attack_exposure_scores) of this toxic combination.
7550
+ # The score is a measure of how much this toxic combination exposes one or more
7551
+ # high-value resources to potential attack.
7552
+ # Corresponds to the JSON property `attackExposureScore`
7553
+ # @return [Float]
7554
+ attr_accessor :attack_exposure_score
7555
+
7556
+ # List of resource names of findings associated with this toxic combination. For
7557
+ # example, `organizations/123/sources/456/findings/789`.
7558
+ # Corresponds to the JSON property `relatedFindings`
7559
+ # @return [Array<String>]
7560
+ attr_accessor :related_findings
7561
+
7562
+ def initialize(**args)
7563
+ update!(**args)
7564
+ end
7565
+
7566
+ # Update properties of this object
7567
+ def update!(**args)
7568
+ @attack_exposure_score = args[:attack_exposure_score] if args.key?(:attack_exposure_score)
7569
+ @related_findings = args[:related_findings] if args.key?(:related_findings)
7570
+ end
7571
+ end
7572
+
7259
7573
  # Refers to common vulnerability fields e.g. cve, cvss, cwe etc.
7260
7574
  class GoogleCloudSecuritycenterV2Vulnerability
7261
7575
  include Google::Apis::Core::Hashable
@@ -7604,6 +7918,32 @@ module Google
7604
7918
  end
7605
7919
  end
7606
7920
 
7921
+ # Contains details about groups of which this finding is a member. A group is a
7922
+ # collection of findings that are related in some way.
7923
+ class GroupMembership
7924
+ include Google::Apis::Core::Hashable
7925
+
7926
+ # ID of the group.
7927
+ # Corresponds to the JSON property `groupId`
7928
+ # @return [String]
7929
+ attr_accessor :group_id
7930
+
7931
+ # Type of group.
7932
+ # Corresponds to the JSON property `groupType`
7933
+ # @return [String]
7934
+ attr_accessor :group_type
7935
+
7936
+ def initialize(**args)
7937
+ update!(**args)
7938
+ end
7939
+
7940
+ # Update properties of this object
7941
+ def update!(**args)
7942
+ @group_id = args[:group_id] if args.key?(:group_id)
7943
+ @group_type = args[:group_type] if args.key?(:group_type)
7944
+ end
7945
+ end
7946
+
7607
7947
  # Result containing the properties and count of a groupBy request.
7608
7948
  class GroupResult
7609
7949
  include Google::Apis::Core::Hashable
@@ -8871,8 +9211,8 @@ module Google
8871
9211
  class PathNodeAssociatedFinding
8872
9212
  include Google::Apis::Core::Hashable
8873
9213
 
8874
- # Canonical name of the associated findings. Example: organizations/123/sources/
8875
- # 456/findings/789
9214
+ # Canonical name of the associated findings. Example: `organizations/123/sources/
9215
+ # 456/findings/789`
8876
9216
  # Corresponds to the JSON property `canonicalFinding`
8877
9217
  # @return [String]
8878
9218
  attr_accessor :canonical_finding
@@ -9276,6 +9616,12 @@ module Google
9276
9616
  # @return [Google::Apis::SecuritycenterV1::AwsMetadata]
9277
9617
  attr_accessor :aws_metadata
9278
9618
 
9619
+ # Azure metadata associated with the resource, only applicable if the finding's
9620
+ # cloud provider is Microsoft Azure.
9621
+ # Corresponds to the JSON property `azureMetadata`
9622
+ # @return [Google::Apis::SecuritycenterV1::AzureMetadata]
9623
+ attr_accessor :azure_metadata
9624
+
9279
9625
  # Indicates which cloud provider the finding is from.
9280
9626
  # Corresponds to the JSON property `cloudProvider`
9281
9627
  # @return [String]
@@ -9336,13 +9682,13 @@ module Google
9336
9682
  attr_accessor :resource_path
9337
9683
 
9338
9684
  # A string representation of the resource path. For Google Cloud, it has the
9339
- # format of org/`organization_id`/folder/`folder_id`/folder/`folder_id`/project/`
9340
- # project_id` where there can be any number of folders. For AWS, it has the
9341
- # format of org/`organization_id`/ou/`organizational_unit_id`/ou/`
9342
- # organizational_unit_id`/account/`account_id` where there can be any number of
9343
- # organizational units. For Azure, it has the format of mg/`management_group_id`/
9344
- # mg/`management_group_id`/subscription/`subscription_id`/rg/`
9345
- # resource_group_name` where there can be any number of management groups.
9685
+ # format of `org/`organization_id`/folder/`folder_id`/folder/`folder_id`/project/
9686
+ # `project_id`` where there can be any number of folders. For AWS, it has the
9687
+ # format of `org/`organization_id`/ou/`organizational_unit_id`/ou/`
9688
+ # organizational_unit_id`/account/`account_id`` where there can be any number of
9689
+ # organizational units. For Azure, it has the format of `mg/`management_group_id`
9690
+ # /mg/`management_group_id`/subscription/`subscription_id`/rg/`
9691
+ # resource_group_name`` where there can be any number of management groups.
9346
9692
  # Corresponds to the JSON property `resourcePathString`
9347
9693
  # @return [String]
9348
9694
  attr_accessor :resource_path_string
@@ -9364,6 +9710,7 @@ module Google
9364
9710
  # Update properties of this object
9365
9711
  def update!(**args)
9366
9712
  @aws_metadata = args[:aws_metadata] if args.key?(:aws_metadata)
9713
+ @azure_metadata = args[:azure_metadata] if args.key?(:azure_metadata)
9367
9714
  @cloud_provider = args[:cloud_provider] if args.key?(:cloud_provider)
9368
9715
  @display_name = args[:display_name] if args.key?(:display_name)
9369
9716
  @folders = args[:folders] if args.key?(:folders)
@@ -10051,7 +10398,7 @@ module Google
10051
10398
  # @return [String]
10052
10399
  attr_accessor :create_time
10053
10400
 
10054
- # Full resource name of the Simulation: organizations/123/simulations/456
10401
+ # Full resource name of the Simulation: `organizations/123/simulations/456`
10055
10402
  # Corresponds to the JSON property `name`
10056
10403
  # @return [String]
10057
10404
  attr_accessor :name
@@ -10315,6 +10662,37 @@ module Google
10315
10662
  end
10316
10663
  end
10317
10664
 
10665
+ # Contains details about a group of security issues that, when the issues occur
10666
+ # together, represent a greater risk than when the issues occur independently. A
10667
+ # group of such issues is referred to as a toxic combination.
10668
+ class ToxicCombination
10669
+ include Google::Apis::Core::Hashable
10670
+
10671
+ # The [Attack exposure score](https://cloud.google.com/security-command-center/
10672
+ # docs/attack-exposure-learn#attack_exposure_scores) of this toxic combination.
10673
+ # The score is a measure of how much this toxic combination exposes one or more
10674
+ # high-value resources to potential attack.
10675
+ # Corresponds to the JSON property `attackExposureScore`
10676
+ # @return [Float]
10677
+ attr_accessor :attack_exposure_score
10678
+
10679
+ # List of resource names of findings associated with this toxic combination. For
10680
+ # example, `organizations/123/sources/456/findings/789`.
10681
+ # Corresponds to the JSON property `relatedFindings`
10682
+ # @return [Array<String>]
10683
+ attr_accessor :related_findings
10684
+
10685
+ def initialize(**args)
10686
+ update!(**args)
10687
+ end
10688
+
10689
+ # Update properties of this object
10690
+ def update!(**args)
10691
+ @attack_exposure_score = args[:attack_exposure_score] if args.key?(:attack_exposure_score)
10692
+ @related_findings = args[:related_findings] if args.key?(:related_findings)
10693
+ end
10694
+ end
10695
+
10318
10696
  # Request to validate an Event Threat Detection custom module.
10319
10697
  class ValidateEventThreatDetectionCustomModuleRequest
10320
10698
  include Google::Apis::Core::Hashable