google-cloud-dlp-v2 1.0.0 → 1.2.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -312,6 +312,15 @@ module Google
312
312
 
313
313
  # tsv
314
314
  TSV = 13
315
+
316
+ # Audio file types. Only used for profiling.
317
+ AUDIO = 15
318
+
319
+ # Video file types. Only used for profiling.
320
+ VIDEO = 16
321
+
322
+ # Executable file types. Only used for profiling.
323
+ EXECUTABLE = 17
315
324
  end
316
325
  end
317
326
 
@@ -422,6 +431,7 @@ module Google
422
431
  # No more than 10 labels can be associated with a given finding.
423
432
  #
424
433
  # Examples:
434
+ #
425
435
  # * `"environment" : "production"`
426
436
  # * `"pipeline" : "etl"`
427
437
  # @!attribute [rw] job_create_time
@@ -670,10 +680,10 @@ module Google
670
680
  # processing
671
681
  # location](https://cloud.google.com/sensitive-data-protection/docs/specifying-location):
672
682
  #
673
- # + Projects scope, location specified:<br/>
674
- # `projects/`<var>PROJECT_ID</var>`/locations/`<var>LOCATION_ID</var>
675
- # + Projects scope, no location specified (defaults to global):<br/>
676
- # `projects/`<var>PROJECT_ID</var>
683
+ # + Projects scope, location specified:
684
+ # `projects/{project_id}/locations/{location_id}`
685
+ # + Projects scope, no location specified (defaults to global):
686
+ # `projects/{project_id}`
677
687
  #
678
688
  # The following example `parent` string specifies a parent project with the
679
689
  # identifier `example-project`, and specifies the `europe-west3` location
@@ -762,10 +772,10 @@ module Google
762
772
  # processing
763
773
  # location](https://cloud.google.com/sensitive-data-protection/docs/specifying-location):
764
774
  #
765
- # + Projects scope, location specified:<br/>
766
- # `projects/`<var>PROJECT_ID</var>`/locations/`<var>LOCATION_ID</var>
767
- # + Projects scope, no location specified (defaults to global):<br/>
768
- # `projects/`<var>PROJECT_ID</var>
775
+ # + Projects scope, location specified:
776
+ # `projects/{project_id}/locations/{location_id}`
777
+ # + Projects scope, no location specified (defaults to global):
778
+ # `projects/{project_id}`
769
779
  #
770
780
  # The following example `parent` string specifies a parent project with the
771
781
  # identifier `example-project`, and specifies the `europe-west3` location
@@ -835,10 +845,10 @@ module Google
835
845
  # processing
836
846
  # location](https://cloud.google.com/sensitive-data-protection/docs/specifying-location):
837
847
  #
838
- # + Projects scope, location specified:<br/>
839
- # `projects/`<var>PROJECT_ID</var>`/locations/`<var>LOCATION_ID</var>
840
- # + Projects scope, no location specified (defaults to global):<br/>
841
- # `projects/`<var>PROJECT_ID</var>
848
+ # + Projects scope, location specified:
849
+ # `projects/{project_id}/locations/{location_id}`
850
+ # + Projects scope, no location specified (defaults to global):
851
+ # `projects/{project_id}`
842
852
  #
843
853
  # The following example `parent` string specifies a parent project with the
844
854
  # identifier `example-project`, and specifies the `europe-west3` location
@@ -908,10 +918,10 @@ module Google
908
918
  # processing
909
919
  # location](https://cloud.google.com/sensitive-data-protection/docs/specifying-location):
910
920
  #
911
- # + Projects scope, location specified:<br/>
912
- # `projects/`<var>PROJECT_ID</var>`/locations/`<var>LOCATION_ID</var>
913
- # + Projects scope, no location specified (defaults to global):<br/>
914
- # `projects/`<var>PROJECT_ID</var>
921
+ # + Projects scope, location specified:
922
+ # `projects/{project_id}/locations/{location_id}`
923
+ # + Projects scope, no location specified (defaults to global):
924
+ # `projects/{project_id}`
915
925
  #
916
926
  # The following example `parent` string specifies a parent project with the
917
927
  # identifier `example-project`, and specifies the `europe-west3` location
@@ -1074,6 +1084,9 @@ module Google
1074
1084
  # @!attribute [rw] column_profile
1075
1085
  # @return [::Google::Cloud::Dlp::V2::ColumnDataProfile]
1076
1086
  # Column data profile column
1087
+ # @!attribute [rw] file_store_profile
1088
+ # @return [::Google::Cloud::Dlp::V2::FileStoreDataProfile]
1089
+ # File store data profile column.
1077
1090
  class DataProfileBigQueryRowSchema
1078
1091
  include ::Google::Protobuf::MessageExts
1079
1092
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -1212,12 +1225,18 @@ module Google
1212
1225
  # The infoType is typically used in Argentina.
1213
1226
  ARGENTINA = 2
1214
1227
 
1228
+ # The infoType is typically used in Armenia.
1229
+ ARMENIA = 51
1230
+
1215
1231
  # The infoType is typically used in Australia.
1216
1232
  AUSTRALIA = 3
1217
1233
 
1218
1234
  # The infoType is typically used in Azerbaijan.
1219
1235
  AZERBAIJAN = 48
1220
1236
 
1237
+ # The infoType is typically used in Belarus.
1238
+ BELARUS = 50
1239
+
1221
1240
  # The infoType is typically used in Belgium.
1222
1241
  BELGIUM = 4
1223
1242
 
@@ -1419,7 +1438,7 @@ module Google
1419
1438
  #
1420
1439
  # The format of this value is as follows:
1421
1440
  #
1422
- # locations/<var>LOCATION_ID</var>
1441
+ # `locations/{location_id}`
1423
1442
  # @!attribute [rw] language_code
1424
1443
  # @return [::String]
1425
1444
  # BCP-47 language code for localized infoType friendly
@@ -2545,9 +2564,10 @@ module Google
2545
2564
 
2546
2565
  # Generalization function that buckets values based on ranges. The ranges and
2547
2566
  # replacement values are dynamically provided by the user for custom behavior,
2548
- # such as 1-30 -> LOW 31-65 -> MEDIUM 66-100 -> HIGH
2549
- # This can be used on
2550
- # data of type: number, long, string, timestamp.
2567
+ # such as 1-30 -> LOW, 31-65 -> MEDIUM, 66-100 -> HIGH.
2568
+ #
2569
+ # This can be used on data of type: number, long, string, timestamp.
2570
+ #
2551
2571
  # If the bound `Value` type differs from the type of data being transformed, we
2552
2572
  # will first attempt converting the type of the data to be transformed to match
2553
2573
  # the type of the bound before comparing.
@@ -2630,8 +2650,7 @@ module Google
2630
2650
  # This must be encoded as ASCII.
2631
2651
  # The order of characters does not matter.
2632
2652
  # The full list of allowed characters is:
2633
- # <code>0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz
2634
- # ~`!@#$%^&*()_-+={[}]|\:;"'<,>.?/</code>
2653
+ # ``0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz~`!@#$%^&*()_-+={[}]|\:;"'<,>.?/``
2635
2654
  # @!attribute [rw] radix
2636
2655
  # @return [::Integer]
2637
2656
  # The native way to select the alphabet. Must be in the range [2, 95].
@@ -3237,9 +3256,24 @@ module Google
3237
3256
  # @return [::Array<::Google::Protobuf::Timestamp>]
3238
3257
  # The times the error occurred. List includes the oldest timestamp and the
3239
3258
  # last 9 timestamps.
3259
+ # @!attribute [rw] extra_info
3260
+ # @return [::Google::Cloud::Dlp::V2::Error::ErrorExtraInfo]
3261
+ # Additional information about the error.
3240
3262
  class Error
3241
3263
  include ::Google::Protobuf::MessageExts
3242
3264
  extend ::Google::Protobuf::MessageExts::ClassMethods
3265
+
3266
+ # Additional information about the error.
3267
+ module ErrorExtraInfo
3268
+ # Unused.
3269
+ ERROR_INFO_UNSPECIFIED = 0
3270
+
3271
+ # Image scan is not available in the region.
3272
+ IMAGE_SCAN_UNAVAILABLE_IN_REGION = 1
3273
+
3274
+ # File store cluster is not supported for profile generation.
3275
+ FILE_STORE_CLUSTER_UNSUPPORTED = 2
3276
+ end
3243
3277
  end
3244
3278
 
3245
3279
  # Contains a configuration to make API calls on a repeating basis.
@@ -3442,7 +3476,7 @@ module Google
3442
3476
  # @!attribute [rw] cloud_storage_output
3443
3477
  # @return [::String]
3444
3478
  # Required. User settable Cloud Storage bucket and folders to store
3445
- # de-identified files. This field must be set for cloud storage
3479
+ # de-identified files. This field must be set for Cloud Storage
3446
3480
  # deidentification. The output Cloud Storage bucket must be different
3447
3481
  # from the input bucket. De-identified files will overwrite files in the
3448
3482
  # output path.
@@ -3451,12 +3485,12 @@ module Google
3451
3485
  # @!attribute [rw] file_types_to_transform
3452
3486
  # @return [::Array<::Google::Cloud::Dlp::V2::FileType>]
3453
3487
  # List of user-specified file type groups to transform. If specified, only
3454
- # the files with these filetypes will be transformed. If empty, all
3488
+ # the files with these file types will be transformed. If empty, all
3455
3489
  # supported files will be transformed. Supported types may be automatically
3456
3490
  # added over time. If a file type is set in this field that isn't supported
3457
3491
  # by the Deidentify action then the job will fail and will not be
3458
- # successfully created/started. Currently the only filetypes supported are:
3459
- # IMAGES, TEXT_FILES, CSV, TSV.
3492
+ # successfully created/started. Currently the only file types supported
3493
+ # are: IMAGES, TEXT_FILES, CSV, TSV.
3460
3494
  class Deidentify
3461
3495
  include ::Google::Protobuf::MessageExts
3462
3496
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -3520,14 +3554,14 @@ module Google
3520
3554
  # (project or organization) and whether you have [specified a processing
3521
3555
  # location](https://cloud.google.com/sensitive-data-protection/docs/specifying-location):
3522
3556
  #
3523
- # + Projects scope, location specified:<br/>
3524
- # `projects/`<var>PROJECT_ID</var>`/locations/`<var>LOCATION_ID</var>
3525
- # + Projects scope, no location specified (defaults to global):<br/>
3526
- # `projects/`<var>PROJECT_ID</var>
3527
- # + Organizations scope, location specified:<br/>
3528
- # `organizations/`<var>ORG_ID</var>`/locations/`<var>LOCATION_ID</var>
3529
- # + Organizations scope, no location specified (defaults to global):<br/>
3530
- # `organizations/`<var>ORG_ID</var>
3557
+ # + Projects scope, location specified:
3558
+ # `projects/{project_id}/locations/{location_id}`
3559
+ # + Projects scope, no location specified (defaults to global):
3560
+ # `projects/{project_id}`
3561
+ # + Organizations scope, location specified:
3562
+ # `organizations/{org_id}/locations/{location_id}`
3563
+ # + Organizations scope, no location specified (defaults to global):
3564
+ # `organizations/{org_id}`
3531
3565
  #
3532
3566
  # The following example `parent` string specifies a parent project with the
3533
3567
  # identifier `example-project`, and specifies the `europe-west3` location
@@ -3588,14 +3622,14 @@ module Google
3588
3622
  # (project or organization) and whether you have [specified a processing
3589
3623
  # location](https://cloud.google.com/sensitive-data-protection/docs/specifying-location):
3590
3624
  #
3591
- # + Projects scope, location specified:<br/>
3592
- # `projects/`<var>PROJECT_ID</var>`/locations/`<var>LOCATION_ID</var>
3593
- # + Projects scope, no location specified (defaults to global):<br/>
3594
- # `projects/`<var>PROJECT_ID</var>
3595
- # + Organizations scope, location specified:<br/>
3596
- # `organizations/`<var>ORG_ID</var>`/locations/`<var>LOCATION_ID</var>
3597
- # + Organizations scope, no location specified (defaults to global):<br/>
3598
- # `organizations/`<var>ORG_ID</var>
3625
+ # + Projects scope, location specified:
3626
+ # `projects/{project_id}/locations/{location_id}`
3627
+ # + Projects scope, no location specified (defaults to global):
3628
+ # `projects/{project_id}`
3629
+ # + Organizations scope, location specified:
3630
+ # `organizations/{org_id}/locations/{location_id}`
3631
+ # + Organizations scope, no location specified (defaults to global):
3632
+ # `organizations/{org_id}`
3599
3633
  #
3600
3634
  # The following example `parent` string specifies a parent project with the
3601
3635
  # identifier `example-project`, and specifies the `europe-west3` location
@@ -3612,7 +3646,7 @@ module Google
3612
3646
  # returns a page of max size 100.
3613
3647
  # @!attribute [rw] order_by
3614
3648
  # @return [::String]
3615
- # Comma separated list of fields to order by,
3649
+ # Comma-separated list of fields to order by,
3616
3650
  # followed by `asc` or `desc` postfix. This list is case insensitive. The
3617
3651
  # default sorting order is ascending. Redundant space characters are
3618
3652
  # insignificant.
@@ -3666,10 +3700,10 @@ module Google
3666
3700
  # processing
3667
3701
  # location](https://cloud.google.com/sensitive-data-protection/docs/specifying-location):
3668
3702
  #
3669
- # + Projects scope, location specified:<br/>
3670
- # `projects/`<var>PROJECT_ID</var>`/locations/`<var>LOCATION_ID</var>
3671
- # + Projects scope, no location specified (defaults to global):<br/>
3672
- # `projects/`<var>PROJECT_ID</var>
3703
+ # + Projects scope, location specified:
3704
+ # `projects/{project_id}/locations/{location_id}`
3705
+ # + Projects scope, no location specified (defaults to global):
3706
+ # `projects/{project_id}`
3673
3707
  #
3674
3708
  # The following example `parent` string specifies a parent project with the
3675
3709
  # identifier `example-project`, and specifies the `europe-west3` location
@@ -3734,8 +3768,13 @@ module Google
3734
3768
  # @return [::String]
3735
3769
  # Required. Parent resource name.
3736
3770
  #
3737
- # The format of this value is as follows:
3738
- # `projects/`<var>PROJECT_ID</var>`/locations/`<var>LOCATION_ID</var>
3771
+ # The format of this value varies depending on the scope of the request
3772
+ # (project or organization):
3773
+ #
3774
+ # + Projects scope:
3775
+ # `projects/{project_id}/locations/{location_id}`
3776
+ # + Organizations scope:
3777
+ # `organizations/{org_id}/locations/{location_id}`
3739
3778
  #
3740
3779
  # The following example `parent` string specifies a parent project with the
3741
3780
  # identifier `example-project`, and specifies the `europe-west3` location
@@ -3788,7 +3827,7 @@ module Google
3788
3827
  # Required. Parent resource name.
3789
3828
  #
3790
3829
  # The format of this value is as follows:
3791
- # `projects/`<var>PROJECT_ID</var>`/locations/`<var>LOCATION_ID</var>
3830
+ # `projects/{project_id}/locations/{location_id}`
3792
3831
  #
3793
3832
  # The following example `parent` string specifies a parent project with the
3794
3833
  # identifier `example-project`, and specifies the `europe-west3` location
@@ -3805,7 +3844,7 @@ module Google
3805
3844
  # Size of the page. This value can be limited by a server.
3806
3845
  # @!attribute [rw] order_by
3807
3846
  # @return [::String]
3808
- # Comma separated list of config fields to order by,
3847
+ # Comma-separated list of config fields to order by,
3809
3848
  # followed by `asc` or `desc` postfix. This list is case insensitive. The
3810
3849
  # default sorting order is ascending. Redundant space characters are
3811
3850
  # insignificant.
@@ -3856,10 +3895,10 @@ module Google
3856
3895
  # processing
3857
3896
  # location](https://cloud.google.com/sensitive-data-protection/docs/specifying-location):
3858
3897
  #
3859
- # + Projects scope, location specified:<br/>
3860
- # `projects/`<var>PROJECT_ID</var>`/locations/`<var>LOCATION_ID</var>
3861
- # + Projects scope, no location specified (defaults to global):<br/>
3862
- # `projects/`<var>PROJECT_ID</var>
3898
+ # + Projects scope, location specified:
3899
+ # `projects/{project_id}/locations/{location_id}`
3900
+ # + Projects scope, no location specified (defaults to global):
3901
+ # `projects/{project_id}`
3863
3902
  #
3864
3903
  # The following example `parent` string specifies a parent project with the
3865
3904
  # identifier `example-project`, and specifies the `europe-west3` location
@@ -3896,10 +3935,10 @@ module Google
3896
3935
  # processing
3897
3936
  # location](https://cloud.google.com/sensitive-data-protection/docs/specifying-location):
3898
3937
  #
3899
- # + Projects scope, location specified:<br/>
3900
- # `projects/`<var>PROJECT_ID</var>`/locations/`<var>LOCATION_ID</var>
3901
- # + Projects scope, no location specified (defaults to global):<br/>
3902
- # `projects/`<var>PROJECT_ID</var>
3938
+ # + Projects scope, location specified:
3939
+ # `projects/{project_id}/locations/{location_id}`
3940
+ # + Projects scope, no location specified (defaults to global):
3941
+ # `projects/{project_id}`
3903
3942
  #
3904
3943
  # The following example `parent` string specifies a parent project with the
3905
3944
  # identifier `example-project`, and specifies the `europe-west3` location
@@ -3916,7 +3955,7 @@ module Google
3916
3955
  # Size of the page. This value can be limited by a server.
3917
3956
  # @!attribute [rw] order_by
3918
3957
  # @return [::String]
3919
- # Comma separated list of triggeredJob fields to order by,
3958
+ # Comma-separated list of triggeredJob fields to order by,
3920
3959
  # followed by `asc` or `desc` postfix. This list is case insensitive. The
3921
3960
  # default sorting order is ascending. Redundant space characters are
3922
3961
  # insignificant.
@@ -4018,6 +4057,9 @@ module Google
4018
4057
  # @!attribute [rw] pub_sub_notification
4019
4058
  # @return [::Google::Cloud::Dlp::V2::DataProfileAction::PubSubNotification]
4020
4059
  # Publish a message into the Pub/Sub topic.
4060
+ # @!attribute [rw] tag_resources
4061
+ # @return [::Google::Cloud::Dlp::V2::DataProfileAction::TagResources]
4062
+ # Tags the profiled resources with the specified tag values.
4021
4063
  class DataProfileAction
4022
4064
  include ::Google::Protobuf::MessageExts
4023
4065
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -4074,6 +4116,66 @@ module Google
4074
4116
 
4075
4117
  # The name of the profiled resource.
4076
4118
  RESOURCE_NAME = 2
4119
+
4120
+ # The full file store data profile.
4121
+ FILE_STORE_PROFILE = 3
4122
+ end
4123
+ end
4124
+
4125
+ # If set, attaches the [tags]
4126
+ # (https://cloud.google.com/resource-manager/docs/tags/tags-overview)
4127
+ # provided to profiled resources. Tags support [access
4128
+ # control](https://cloud.google.com/iam/docs/tags-access-control). You can
4129
+ # conditionally grant or deny access to a resource based on whether the
4130
+ # resource has a specific tag.
4131
+ # @!attribute [rw] tag_conditions
4132
+ # @return [::Array<::Google::Cloud::Dlp::V2::DataProfileAction::TagResources::TagCondition>]
4133
+ # The tags to associate with different conditions.
4134
+ # @!attribute [rw] profile_generations_to_tag
4135
+ # @return [::Array<::Google::Cloud::Dlp::V2::ProfileGeneration>]
4136
+ # The profile generations for which the tag should be attached to
4137
+ # resources. If you attach a tag to only new profiles, then if the
4138
+ # sensitivity score of a profile subsequently changes, its tag doesn't
4139
+ # change. By default, this field includes only new profiles. To include
4140
+ # both new and updated profiles for tagging, this field should explicitly
4141
+ # include both `PROFILE_GENERATION_NEW` and `PROFILE_GENERATION_UPDATE`.
4142
+ # @!attribute [rw] lower_data_risk_to_low
4143
+ # @return [::Boolean]
4144
+ # Whether applying a tag to a resource should lower the risk of the profile
4145
+ # for that resource. For example, in conjunction with an [IAM deny
4146
+ # policy](https://cloud.google.com/iam/docs/deny-overview), you can deny
4147
+ # all principals a permission if a tag value is present, mitigating the
4148
+ # risk of the resource. This also lowers the data risk of resources at the
4149
+ # lower levels of the resource hierarchy. For example, reducing the data
4150
+ # risk of a table data profile also reduces the data risk of the
4151
+ # constituent column data profiles.
4152
+ class TagResources
4153
+ include ::Google::Protobuf::MessageExts
4154
+ extend ::Google::Protobuf::MessageExts::ClassMethods
4155
+
4156
+ # The tag to attach to profiles matching the condition. At most one
4157
+ # `TagCondition` can be specified per sensitivity level.
4158
+ # @!attribute [rw] tag
4159
+ # @return [::Google::Cloud::Dlp::V2::DataProfileAction::TagResources::TagValue]
4160
+ # The tag value to attach to resources.
4161
+ # @!attribute [rw] sensitivity_score
4162
+ # @return [::Google::Cloud::Dlp::V2::SensitivityScore]
4163
+ # Conditions attaching the tag to a resource on its profile having this
4164
+ # sensitivity score.
4165
+ class TagCondition
4166
+ include ::Google::Protobuf::MessageExts
4167
+ extend ::Google::Protobuf::MessageExts::ClassMethods
4168
+ end
4169
+
4170
+ # A value of a tag.
4171
+ # @!attribute [rw] namespaced_value
4172
+ # @return [::String]
4173
+ # The namespaced name for the tag value to attach to resources. Must be
4174
+ # in the format `{parent_id}/{tag_key_short_name}/{short_name}`, for
4175
+ # example, "123456/environment/prod".
4176
+ class TagValue
4177
+ include ::Google::Protobuf::MessageExts
4178
+ extend ::Google::Protobuf::MessageExts::ClassMethods
4077
4179
  end
4078
4180
  end
4079
4181
 
@@ -4191,7 +4293,7 @@ module Google
4191
4293
  # The ID of an organization to scan.
4192
4294
  # @!attribute [rw] folder_id
4193
4295
  # @return [::Integer]
4194
- # The ID of the Folder within an organization to scan.
4296
+ # The ID of the folder within an organization to scan.
4195
4297
  class DataProfileLocation
4196
4298
  include ::Google::Protobuf::MessageExts
4197
4299
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -4303,6 +4405,10 @@ module Google
4303
4405
  # Discovery target that looks for credentials and secrets stored in cloud
4304
4406
  # resource metadata and reports them as vulnerabilities to Security Command
4305
4407
  # Center. Only one target of this type is allowed.
4408
+ # @!attribute [rw] cloud_storage_target
4409
+ # @return [::Google::Cloud::Dlp::V2::CloudStorageDiscoveryTarget]
4410
+ # Cloud Storage target for Discovery. The first target to match a table
4411
+ # will be the one applied.
4306
4412
  class DiscoveryTarget
4307
4413
  include ::Google::Protobuf::MessageExts
4308
4414
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -4420,6 +4526,15 @@ module Google
4420
4526
  # @!attribute [rw] table_modified_cadence
4421
4527
  # @return [::Google::Cloud::Dlp::V2::DiscoveryTableModifiedCadence]
4422
4528
  # Governs when to update data profiles when a table is modified.
4529
+ # @!attribute [rw] inspect_template_modified_cadence
4530
+ # @return [::Google::Cloud::Dlp::V2::DiscoveryInspectTemplateModifiedCadence]
4531
+ # Governs when to update data profiles when the inspection rules
4532
+ # defined by the `InspectTemplate` change.
4533
+ # If not set, changing the template will not cause a data profile to update.
4534
+ # @!attribute [rw] refresh_frequency
4535
+ # @return [::Google::Cloud::Dlp::V2::DataProfileUpdateFrequency]
4536
+ # Frequency at which profiles should be updated, regardless of whether the
4537
+ # underlying resource has changed. Defaults to never.
4423
4538
  class DiscoveryGenerationCadence
4424
4539
  include ::Google::Protobuf::MessageExts
4425
4540
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -4455,6 +4570,17 @@ module Google
4455
4570
  extend ::Google::Protobuf::MessageExts::ClassMethods
4456
4571
  end
4457
4572
 
4573
+ # The cadence at which to update data profiles when the inspection rules
4574
+ # defined by the `InspectTemplate` change.
4575
+ # @!attribute [rw] frequency
4576
+ # @return [::Google::Cloud::Dlp::V2::DataProfileUpdateFrequency]
4577
+ # How frequently data profiles can be updated when the template is modified.
4578
+ # Defaults to never.
4579
+ class DiscoveryInspectTemplateModifiedCadence
4580
+ include ::Google::Protobuf::MessageExts
4581
+ extend ::Google::Protobuf::MessageExts::ClassMethods
4582
+ end
4583
+
4458
4584
  # Target used to match against for discovery with Cloud SQL tables.
4459
4585
  # @!attribute [rw] filter
4460
4586
  # @return [::Google::Cloud::Dlp::V2::DiscoveryCloudSqlFilter]
@@ -4676,6 +4802,224 @@ module Google
4676
4802
  extend ::Google::Protobuf::MessageExts::ClassMethods
4677
4803
  end
4678
4804
 
4805
+ # Target used to match against for discovery with Cloud Storage buckets.
4806
+ # @!attribute [rw] filter
4807
+ # @return [::Google::Cloud::Dlp::V2::DiscoveryCloudStorageFilter]
4808
+ # Required. The buckets the generation_cadence applies to. The first target
4809
+ # with a matching filter will be the one to apply to a bucket.
4810
+ # @!attribute [rw] conditions
4811
+ # @return [::Google::Cloud::Dlp::V2::DiscoveryFileStoreConditions]
4812
+ # Optional. In addition to matching the filter, these conditions must be true
4813
+ # before a profile is generated.
4814
+ # @!attribute [rw] generation_cadence
4815
+ # @return [::Google::Cloud::Dlp::V2::DiscoveryCloudStorageGenerationCadence]
4816
+ # Optional. How often and when to update profiles. New buckets that match
4817
+ # both the filter and conditions are scanned as quickly as possible
4818
+ # depending on system capacity.
4819
+ # @!attribute [rw] disabled
4820
+ # @return [::Google::Cloud::Dlp::V2::Disabled]
4821
+ # Optional. Disable profiling for buckets that match this filter.
4822
+ class CloudStorageDiscoveryTarget
4823
+ include ::Google::Protobuf::MessageExts
4824
+ extend ::Google::Protobuf::MessageExts::ClassMethods
4825
+ end
4826
+
4827
+ # Determines which buckets will have profiles generated within an organization
4828
+ # or project. Includes the ability to filter by regular expression patterns
4829
+ # on project ID and bucket name.
4830
+ # @!attribute [rw] collection
4831
+ # @return [::Google::Cloud::Dlp::V2::FileStoreCollection]
4832
+ # Optional. A specific set of buckets for this filter to apply to.
4833
+ # @!attribute [rw] cloud_storage_resource_reference
4834
+ # @return [::Google::Cloud::Dlp::V2::CloudStorageResourceReference]
4835
+ # Optional. The bucket to scan. Targets including this can only include one
4836
+ # target (the target with this bucket). This enables profiling the contents
4837
+ # of a single bucket, while the other options allow for easy profiling of
4838
+ # many bucets within a project or an organization.
4839
+ # @!attribute [rw] others
4840
+ # @return [::Google::Cloud::Dlp::V2::AllOtherResources]
4841
+ # Optional. Catch-all. This should always be the last target in the list
4842
+ # because anything above it will apply first. Should only appear once in a
4843
+ # configuration. If none is specified, a default one will be added
4844
+ # automatically.
4845
+ class DiscoveryCloudStorageFilter
4846
+ include ::Google::Protobuf::MessageExts
4847
+ extend ::Google::Protobuf::MessageExts::ClassMethods
4848
+ end
4849
+
4850
+ # Match file stores (e.g. buckets) using regex filters.
4851
+ # @!attribute [rw] include_regexes
4852
+ # @return [::Google::Cloud::Dlp::V2::FileStoreRegexes]
4853
+ # Optional. A collection of regular expressions to match a file store
4854
+ # against.
4855
+ class FileStoreCollection
4856
+ include ::Google::Protobuf::MessageExts
4857
+ extend ::Google::Protobuf::MessageExts::ClassMethods
4858
+ end
4859
+
4860
+ # A collection of regular expressions to determine what file store to match
4861
+ # against.
4862
+ # @!attribute [rw] patterns
4863
+ # @return [::Array<::Google::Cloud::Dlp::V2::FileStoreRegex>]
4864
+ # Required. The group of regular expression patterns to match against one or
4865
+ # more file stores. Maximum of 100 entries. The sum of all regular
4866
+ # expression's length can't exceed 10 KiB.
4867
+ class FileStoreRegexes
4868
+ include ::Google::Protobuf::MessageExts
4869
+ extend ::Google::Protobuf::MessageExts::ClassMethods
4870
+ end
4871
+
4872
+ # A pattern to match against one or more file stores.
4873
+ # @!attribute [rw] cloud_storage_regex
4874
+ # @return [::Google::Cloud::Dlp::V2::CloudStorageRegex]
4875
+ # Optional. Regex for Cloud Storage.
4876
+ class FileStoreRegex
4877
+ include ::Google::Protobuf::MessageExts
4878
+ extend ::Google::Protobuf::MessageExts::ClassMethods
4879
+ end
4880
+
4881
+ # A pattern to match against one or more file stores. At least one
4882
+ # pattern must be specified. Regular expressions use RE2
4883
+ # [syntax](https://github.com/google/re2/wiki/Syntax); a guide can be found
4884
+ # under the google/re2 repository on GitHub.
4885
+ # @!attribute [rw] project_id_regex
4886
+ # @return [::String]
4887
+ # Optional. For organizations, if unset, will match all projects.
4888
+ # @!attribute [rw] bucket_name_regex
4889
+ # @return [::String]
4890
+ # Optional. Regex to test the bucket name against. If empty, all buckets
4891
+ # match. Example: "marketing2021" or "(marketing)\d\\{4}" will both match the
4892
+ # bucket gs://marketing2021
4893
+ class CloudStorageRegex
4894
+ include ::Google::Protobuf::MessageExts
4895
+ extend ::Google::Protobuf::MessageExts::ClassMethods
4896
+ end
4897
+
4898
+ # Identifies a single Cloud Storage bucket.
4899
+ # @!attribute [rw] bucket_name
4900
+ # @return [::String]
4901
+ # Required. The bucket to scan.
4902
+ # @!attribute [rw] project_id
4903
+ # @return [::String]
4904
+ # Required. If within a project-level config, then this must match the
4905
+ # config's project id.
4906
+ class CloudStorageResourceReference
4907
+ include ::Google::Protobuf::MessageExts
4908
+ extend ::Google::Protobuf::MessageExts::ClassMethods
4909
+ end
4910
+
4911
+ # How often existing buckets should have their profiles refreshed.
4912
+ # New buckets are scanned as quickly as possible depending on system
4913
+ # capacity.
4914
+ # @!attribute [rw] refresh_frequency
4915
+ # @return [::Google::Cloud::Dlp::V2::DataProfileUpdateFrequency]
4916
+ # Optional. Data changes in Cloud Storage can't trigger reprofiling. If you
4917
+ # set this field, profiles are refreshed at this frequency regardless of
4918
+ # whether the underlying buckets have changed. Defaults to never.
4919
+ # @!attribute [rw] inspect_template_modified_cadence
4920
+ # @return [::Google::Cloud::Dlp::V2::DiscoveryInspectTemplateModifiedCadence]
4921
+ # Optional. Governs when to update data profiles when the inspection rules
4922
+ # defined by the `InspectTemplate` change.
4923
+ # If not set, changing the template will not cause a data profile to update.
4924
+ class DiscoveryCloudStorageGenerationCadence
4925
+ include ::Google::Protobuf::MessageExts
4926
+ extend ::Google::Protobuf::MessageExts::ClassMethods
4927
+ end
4928
+
4929
+ # Requirements that must be true before a Cloud Storage bucket or object is
4930
+ # scanned in discovery for the first time. There is an AND relationship between
4931
+ # the top-level attributes.
4932
+ # @!attribute [rw] included_object_attributes
4933
+ # @return [::Array<::Google::Cloud::Dlp::V2::DiscoveryCloudStorageConditions::CloudStorageObjectAttribute>]
4934
+ # Required. Only objects with the specified attributes will be scanned. If an
4935
+ # object has one of the specified attributes but is inside an excluded
4936
+ # bucket, it will not be scanned. Defaults to [ALL_SUPPORTED_OBJECTS]. A
4937
+ # profile will be created even if no objects match the
4938
+ # included_object_attributes.
4939
+ # @!attribute [rw] included_bucket_attributes
4940
+ # @return [::Array<::Google::Cloud::Dlp::V2::DiscoveryCloudStorageConditions::CloudStorageBucketAttribute>]
4941
+ # Required. Only objects with the specified attributes will be scanned.
4942
+ # Defaults to [ALL_SUPPORTED_BUCKETS] if unset.
4943
+ class DiscoveryCloudStorageConditions
4944
+ include ::Google::Protobuf::MessageExts
4945
+ extend ::Google::Protobuf::MessageExts::ClassMethods
4946
+
4947
+ # The attribute of an object. See
4948
+ # https://cloud.google.com/storage/docs/storage-classes for more information
4949
+ # on storage classes.
4950
+ module CloudStorageObjectAttribute
4951
+ # Unused.
4952
+ CLOUD_STORAGE_OBJECT_ATTRIBUTE_UNSPECIFIED = 0
4953
+
4954
+ # Scan objects regardless of the attribute.
4955
+ ALL_SUPPORTED_OBJECTS = 1
4956
+
4957
+ # Scan objects with the standard storage class.
4958
+ STANDARD = 2
4959
+
4960
+ # Scan objects with the nearline storage class. This will incur retrieval
4961
+ # fees.
4962
+ NEARLINE = 3
4963
+
4964
+ # Scan objects with the coldline storage class. This will incur retrieval
4965
+ # fees.
4966
+ COLDLINE = 4
4967
+
4968
+ # Scan objects with the archive storage class. This will incur retrieval
4969
+ # fees.
4970
+ ARCHIVE = 5
4971
+
4972
+ # Scan objects with the regional storage class.
4973
+ REGIONAL = 6
4974
+
4975
+ # Scan objects with the multi-regional storage class.
4976
+ MULTI_REGIONAL = 7
4977
+
4978
+ # Scan objects with the dual-regional storage class. This will incur
4979
+ # retrieval fees.
4980
+ DURABLE_REDUCED_AVAILABILITY = 8
4981
+ end
4982
+
4983
+ # The attribute of a bucket.
4984
+ module CloudStorageBucketAttribute
4985
+ # Unused.
4986
+ CLOUD_STORAGE_BUCKET_ATTRIBUTE_UNSPECIFIED = 0
4987
+
4988
+ # Scan buckets regardless of the attribute.
4989
+ ALL_SUPPORTED_BUCKETS = 1
4990
+
4991
+ # Buckets with autoclass disabled
4992
+ # (https://cloud.google.com/storage/docs/autoclass). Only one of
4993
+ # AUTOCLASS_DISABLED or AUTOCLASS_ENABLED should be set.
4994
+ AUTOCLASS_DISABLED = 2
4995
+
4996
+ # Buckets with autoclass enabled
4997
+ # (https://cloud.google.com/storage/docs/autoclass). Only one of
4998
+ # AUTOCLASS_DISABLED or AUTOCLASS_ENABLED should be set. Scanning
4999
+ # Autoclass-enabled buckets can affect object storage classes.
5000
+ AUTOCLASS_ENABLED = 3
5001
+ end
5002
+ end
5003
+
5004
+ # Requirements that must be true before a file store is scanned in discovery
5005
+ # for the first time. There is an AND relationship between the top-level
5006
+ # attributes.
5007
+ # @!attribute [rw] created_after
5008
+ # @return [::Google::Protobuf::Timestamp]
5009
+ # Optional. File store must have been created after this date. Used to avoid
5010
+ # backfilling.
5011
+ # @!attribute [rw] min_age
5012
+ # @return [::Google::Protobuf::Duration]
5013
+ # Optional. Minimum age a file store must have. If set, the value must be 1
5014
+ # hour or greater.
5015
+ # @!attribute [rw] cloud_storage_conditions
5016
+ # @return [::Google::Cloud::Dlp::V2::DiscoveryCloudStorageConditions]
5017
+ # Optional. Cloud Storage conditions.
5018
+ class DiscoveryFileStoreConditions
5019
+ include ::Google::Protobuf::MessageExts
5020
+ extend ::Google::Protobuf::MessageExts::ClassMethods
5021
+ end
5022
+
4679
5023
  # The location to begin a discovery scan. Denotes an organization ID or folder
4680
5024
  # ID within an organization.
4681
5025
  # @!attribute [rw] organization_id
@@ -4683,12 +5027,18 @@ module Google
4683
5027
  # The ID of an organization to scan.
4684
5028
  # @!attribute [rw] folder_id
4685
5029
  # @return [::Integer]
4686
- # The ID of the Folder within an organization to scan.
5030
+ # The ID of the folder within an organization to be scanned.
4687
5031
  class DiscoveryStartingLocation
4688
5032
  include ::Google::Protobuf::MessageExts
4689
5033
  extend ::Google::Protobuf::MessageExts::ClassMethods
4690
5034
  end
4691
5035
 
5036
+ # Match discovery resources not covered by any other filter.
5037
+ class AllOtherResources
5038
+ include ::Google::Protobuf::MessageExts
5039
+ extend ::Google::Protobuf::MessageExts::ClassMethods
5040
+ end
5041
+
4692
5042
  # Combines all of the information about a DLP job.
4693
5043
  # @!attribute [rw] name
4694
5044
  # @return [::String]
@@ -4778,10 +5128,10 @@ module Google
4778
5128
  # processing
4779
5129
  # location](https://cloud.google.com/sensitive-data-protection/docs/specifying-location):
4780
5130
  #
4781
- # + Projects scope, location specified:<br/>
4782
- # `projects/`<var>PROJECT_ID</var>`/locations/`<var>LOCATION_ID</var>
4783
- # + Projects scope, no location specified (defaults to global):<br/>
4784
- # `projects/`<var>PROJECT_ID</var>
5131
+ # + Projects scope, location specified:
5132
+ # `projects/{project_id}/locations/{location_id}`
5133
+ # + Projects scope, no location specified (defaults to global):
5134
+ # `projects/{project_id}`
4785
5135
  #
4786
5136
  # The following example `parent` string specifies a parent project with the
4787
5137
  # identifier `example-project`, and specifies the `europe-west3` location
@@ -4829,7 +5179,7 @@ module Google
4829
5179
  # The type of job. Defaults to `DlpJobType.INSPECT`
4830
5180
  # @!attribute [rw] order_by
4831
5181
  # @return [::String]
4832
- # Comma separated list of fields to order by,
5182
+ # Comma-separated list of fields to order by,
4833
5183
  # followed by `asc` or `desc` postfix. This list is case insensitive. The
4834
5184
  # default sorting order is ascending. Redundant space characters are
4835
5185
  # insignificant.
@@ -4898,14 +5248,14 @@ module Google
4898
5248
  # (project or organization) and whether you have [specified a processing
4899
5249
  # location](https://cloud.google.com/sensitive-data-protection/docs/specifying-location):
4900
5250
  #
4901
- # + Projects scope, location specified:<br/>
4902
- # `projects/`<var>PROJECT_ID</var>`/locations/`<var>LOCATION_ID</var>
4903
- # + Projects scope, no location specified (defaults to global):<br/>
4904
- # `projects/`<var>PROJECT_ID</var>
4905
- # + Organizations scope, location specified:<br/>
4906
- # `organizations/`<var>ORG_ID</var>`/locations/`<var>LOCATION_ID</var>
4907
- # + Organizations scope, no location specified (defaults to global):<br/>
4908
- # `organizations/`<var>ORG_ID</var>
5251
+ # + Projects scope, location specified:
5252
+ # `projects/{project_id}/locations/{location_id}`
5253
+ # + Projects scope, no location specified (defaults to global):
5254
+ # `projects/{project_id}`
5255
+ # + Organizations scope, location specified:
5256
+ # `organizations/{org_id}/locations/{location_id}`
5257
+ # + Organizations scope, no location specified (defaults to global):
5258
+ # `organizations/{org_id}`
4909
5259
  #
4910
5260
  # The following example `parent` string specifies a parent project with the
4911
5261
  # identifier `example-project`, and specifies the `europe-west3` location
@@ -4967,14 +5317,14 @@ module Google
4967
5317
  # (project or organization) and whether you have [specified a processing
4968
5318
  # location](https://cloud.google.com/sensitive-data-protection/docs/specifying-location):
4969
5319
  #
4970
- # + Projects scope, location specified:<br/>
4971
- # `projects/`<var>PROJECT_ID</var>`/locations/`<var>LOCATION_ID</var>
4972
- # + Projects scope, no location specified (defaults to global):<br/>
4973
- # `projects/`<var>PROJECT_ID</var>
4974
- # + Organizations scope, location specified:<br/>
4975
- # `organizations/`<var>ORG_ID</var>`/locations/`<var>LOCATION_ID</var>
4976
- # + Organizations scope, no location specified (defaults to global):<br/>
4977
- # `organizations/`<var>ORG_ID</var>
5320
+ # + Projects scope, location specified:
5321
+ # `projects/{project_id}/locations/{location_id}`
5322
+ # + Projects scope, no location specified (defaults to global):
5323
+ # `projects/{project_id}`
5324
+ # + Organizations scope, location specified:
5325
+ # `organizations/{org_id}/locations/{location_id}`
5326
+ # + Organizations scope, no location specified (defaults to global):
5327
+ # `organizations/{org_id}`
4978
5328
  #
4979
5329
  # The following example `parent` string specifies a parent project with the
4980
5330
  # identifier `example-project`, and specifies the `europe-west3` location
@@ -4991,7 +5341,7 @@ module Google
4991
5341
  # returns a page of max size 100.
4992
5342
  # @!attribute [rw] order_by
4993
5343
  # @return [::String]
4994
- # Comma separated list of fields to order by,
5344
+ # Comma-separated list of fields to order by,
4995
5345
  # followed by `asc` or `desc` postfix. This list is case insensitive. The
4996
5346
  # default sorting order is ascending. Redundant space characters are
4997
5347
  # insignificant.
@@ -5164,14 +5514,14 @@ module Google
5164
5514
  # (project or organization) and whether you have [specified a processing
5165
5515
  # location](https://cloud.google.com/sensitive-data-protection/docs/specifying-location):
5166
5516
  #
5167
- # + Projects scope, location specified:<br/>
5168
- # `projects/`<var>PROJECT_ID</var>`/locations/`<var>LOCATION_ID</var>
5169
- # + Projects scope, no location specified (defaults to global):<br/>
5170
- # `projects/`<var>PROJECT_ID</var>
5171
- # + Organizations scope, location specified:<br/>
5172
- # `organizations/`<var>ORG_ID</var>`/locations/`<var>LOCATION_ID</var>
5173
- # + Organizations scope, no location specified (defaults to global):<br/>
5174
- # `organizations/`<var>ORG_ID</var>
5517
+ # + Projects scope, location specified:
5518
+ # `projects/{project_id}/locations/{location_id}`
5519
+ # + Projects scope, no location specified (defaults to global):
5520
+ # `projects/{project_id}`
5521
+ # + Organizations scope, location specified:
5522
+ # `organizations/{org_id}/locations/{location_id}`
5523
+ # + Organizations scope, no location specified (defaults to global):
5524
+ # `organizations/{org_id}`
5175
5525
  #
5176
5526
  # The following example `parent` string specifies a parent project with the
5177
5527
  # identifier `example-project`, and specifies the `europe-west3` location
@@ -5234,10 +5584,10 @@ module Google
5234
5584
  # (project or organization) and whether you have [specified a processing
5235
5585
  # location](https://cloud.google.com/sensitive-data-protection/docs/specifying-location):
5236
5586
  #
5237
- # + Projects scope, location specified:<br/>
5238
- # `projects/`<var>PROJECT_ID</var>`/locations/`<var>LOCATION_ID</var>
5239
- # + Projects scope, no location specified (defaults to global):<br/>
5240
- # `projects/`<var>PROJECT_ID</var>
5587
+ # + Projects scope, location specified:
5588
+ # `projects/{project_id}/locations/{location_id}`
5589
+ # + Projects scope, no location specified (defaults to global):
5590
+ # `projects/{project_id}`
5241
5591
  #
5242
5592
  # The following example `parent` string specifies a parent project with the
5243
5593
  # identifier `example-project`, and specifies the `europe-west3` location
@@ -5254,7 +5604,7 @@ module Google
5254
5604
  # returns a page of max size 100.
5255
5605
  # @!attribute [rw] order_by
5256
5606
  # @return [::String]
5257
- # Comma separated list of fields to order by,
5607
+ # Comma-separated list of fields to order by,
5258
5608
  # followed by `asc` or `desc` postfix. This list is case insensitive. The
5259
5609
  # default sorting order is ascending. Redundant space characters are
5260
5610
  # insignificant.
@@ -5377,6 +5727,7 @@ module Google
5377
5727
  # No more than 10 labels can be associated with a given finding.
5378
5728
  #
5379
5729
  # Examples:
5730
+ #
5380
5731
  # * `"environment" : "production"`
5381
5732
  # * `"pipeline" : "etl"`
5382
5733
  class HybridFindingDetails
@@ -5412,7 +5763,7 @@ module Google
5412
5763
  # returns a page of max size 100.
5413
5764
  # @!attribute [rw] order_by
5414
5765
  # @return [::String]
5415
- # Comma separated list of fields to order by, followed by `asc` or `desc`
5766
+ # Comma-separated list of fields to order by, followed by `asc` or `desc`
5416
5767
  # postfix. This list is case insensitive. The default sorting order is
5417
5768
  # ascending. Redundant space characters are insignificant. Only one order
5418
5769
  # field at a time is allowed.
@@ -5483,7 +5834,7 @@ module Google
5483
5834
  # returns a page of max size 100.
5484
5835
  # @!attribute [rw] order_by
5485
5836
  # @return [::String]
5486
- # Comma separated list of fields to order by, followed by `asc` or `desc`
5837
+ # Comma-separated list of fields to order by, followed by `asc` or `desc`
5487
5838
  # postfix. This list is case insensitive. The default sorting order is
5488
5839
  # ascending. Redundant space characters are insignificant. Only one order
5489
5840
  # field at a time is allowed.
@@ -5565,12 +5916,13 @@ module Google
5565
5916
  # returns a page of max size 100.
5566
5917
  # @!attribute [rw] order_by
5567
5918
  # @return [::String]
5568
- # Comma separated list of fields to order by, followed by `asc` or `desc`
5919
+ # Comma-separated list of fields to order by, followed by `asc` or `desc`
5569
5920
  # postfix. This list is case insensitive. The default sorting order is
5570
5921
  # ascending. Redundant space characters are insignificant. Only one order
5571
5922
  # field at a time is allowed.
5572
5923
  #
5573
5924
  # Examples:
5925
+ #
5574
5926
  # * `project_id asc`
5575
5927
  # * `table_id`
5576
5928
  # * `sensitivity_level desc`
@@ -5652,6 +6004,9 @@ module Google
5652
6004
  # data found.
5653
6005
  RISK_LOW = 10
5654
6006
 
6007
+ # Unable to determine risk.
6008
+ RISK_UNKNOWN = 12
6009
+
5655
6010
  # Medium risk - Sensitive data may be present but additional access or fine
5656
6011
  # grain access restrictions appear to be present. Consider limiting
5657
6012
  # access even further or transform data to mask.
@@ -5684,6 +6039,12 @@ module Google
5684
6039
  # @!attribute [rw] profile_status
5685
6040
  # @return [::Google::Cloud::Dlp::V2::ProfileStatus]
5686
6041
  # Success or error status of the last attempt to profile the project.
6042
+ # @!attribute [rw] table_data_profile_count
6043
+ # @return [::Integer]
6044
+ # The number of table data profiles generated for this project.
6045
+ # @!attribute [rw] file_store_data_profile_count
6046
+ # @return [::Integer]
6047
+ # The number of file store data profiles generated for this project.
5687
6048
  class ProjectDataProfile
5688
6049
  include ::Google::Protobuf::MessageExts
5689
6050
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -5725,7 +6086,7 @@ module Google
5725
6086
  # The resource type that was profiled.
5726
6087
  # @!attribute [rw] project_data_profile
5727
6088
  # @return [::String]
5728
- # The resource name to the project data profile for this table.
6089
+ # The resource name of the project data profile for this table.
5729
6090
  # @!attribute [rw] dataset_project_id
5730
6091
  # @return [::String]
5731
6092
  # The Google Cloud project ID that owns the resource.
@@ -6031,6 +6392,188 @@ module Google
6031
6392
  end
6032
6393
  end
6033
6394
 
6395
+ # The profile for a file store.
6396
+ #
6397
+ # * Cloud Storage: maps 1:1 with a bucket.
6398
+ # @!attribute [rw] name
6399
+ # @return [::String]
6400
+ # The name of the profile.
6401
+ # @!attribute [rw] data_source_type
6402
+ # @return [::Google::Cloud::Dlp::V2::DataSourceType]
6403
+ # The resource type that was profiled.
6404
+ # @!attribute [rw] project_data_profile
6405
+ # @return [::String]
6406
+ # The resource name of the project data profile for this file store.
6407
+ # @!attribute [rw] project_id
6408
+ # @return [::String]
6409
+ # The Google Cloud project ID that owns the resource.
6410
+ # @!attribute [rw] file_store_location
6411
+ # @return [::String]
6412
+ # The location of the file store.
6413
+ #
6414
+ # * Cloud Storage:
6415
+ # https://cloud.google.com/storage/docs/locations#available-locations
6416
+ # @!attribute [rw] data_storage_locations
6417
+ # @return [::Array<::String>]
6418
+ # For resources that have multiple storage locations, these are those
6419
+ # regions. For Cloud Storage this is the list of regions chosen for
6420
+ # dual-region storage. `file_store_location` will normally be the
6421
+ # corresponding multi-region for the list of individual locations. The first
6422
+ # region is always picked as the processing and storage location for the data
6423
+ # profile.
6424
+ # @!attribute [rw] location_type
6425
+ # @return [::String]
6426
+ # The location type of the bucket (region, dual-region, multi-region, etc).
6427
+ # If dual-region, expect data_storage_locations to be populated.
6428
+ # @!attribute [rw] file_store_path
6429
+ # @return [::String]
6430
+ # The file store path.
6431
+ #
6432
+ # * Cloud Storage: `gs://{bucket}`
6433
+ # @!attribute [rw] full_resource
6434
+ # @return [::String]
6435
+ # The resource name of the resource profiled.
6436
+ # https://cloud.google.com/apis/design/resource_names#full_resource_name
6437
+ # @!attribute [rw] config_snapshot
6438
+ # @return [::Google::Cloud::Dlp::V2::DataProfileConfigSnapshot]
6439
+ # The snapshot of the configurations used to generate the profile.
6440
+ # @!attribute [rw] profile_status
6441
+ # @return [::Google::Cloud::Dlp::V2::ProfileStatus]
6442
+ # Success or error status from the most recent profile generation attempt.
6443
+ # May be empty if the profile is still being generated.
6444
+ # @!attribute [rw] state
6445
+ # @return [::Google::Cloud::Dlp::V2::FileStoreDataProfile::State]
6446
+ # State of a profile.
6447
+ # @!attribute [rw] profile_last_generated
6448
+ # @return [::Google::Protobuf::Timestamp]
6449
+ # The last time the profile was generated.
6450
+ # @!attribute [rw] resource_visibility
6451
+ # @return [::Google::Cloud::Dlp::V2::ResourceVisibility]
6452
+ # How broadly a resource has been shared.
6453
+ # @!attribute [rw] sensitivity_score
6454
+ # @return [::Google::Cloud::Dlp::V2::SensitivityScore]
6455
+ # The sensitivity score of this resource.
6456
+ # @!attribute [rw] data_risk_level
6457
+ # @return [::Google::Cloud::Dlp::V2::DataRiskLevel]
6458
+ # The data risk level of this resource.
6459
+ # @!attribute [rw] create_time
6460
+ # @return [::Google::Protobuf::Timestamp]
6461
+ # The time the file store was first created.
6462
+ # @!attribute [rw] last_modified_time
6463
+ # @return [::Google::Protobuf::Timestamp]
6464
+ # The time the file store was last modified.
6465
+ # @!attribute [rw] file_cluster_summaries
6466
+ # @return [::Array<::Google::Cloud::Dlp::V2::FileClusterSummary>]
6467
+ # FileClusterSummary per each cluster.
6468
+ # @!attribute [rw] resource_attributes
6469
+ # @return [::Google::Protobuf::Map{::String => ::Google::Cloud::Dlp::V2::Value}]
6470
+ # Attributes of the resource being profiled.
6471
+ # Currently used attributes:
6472
+ #
6473
+ # * customer_managed_encryption: boolean
6474
+ # - true: the resource is encrypted with a customer-managed key.
6475
+ # - false: the resource is encrypted with a provider-managed key.
6476
+ # @!attribute [rw] resource_labels
6477
+ # @return [::Google::Protobuf::Map{::String => ::String}]
6478
+ # The labels applied to the resource at the time the profile was generated.
6479
+ # @!attribute [rw] file_store_info_type_summaries
6480
+ # @return [::Array<::Google::Cloud::Dlp::V2::FileStoreInfoTypeSummary>]
6481
+ # InfoTypes detected in this file store.
6482
+ # @!attribute [rw] file_store_is_empty
6483
+ # @return [::Boolean]
6484
+ # The file store does not have any files.
6485
+ class FileStoreDataProfile
6486
+ include ::Google::Protobuf::MessageExts
6487
+ extend ::Google::Protobuf::MessageExts::ClassMethods
6488
+
6489
+ # @!attribute [rw] key
6490
+ # @return [::String]
6491
+ # @!attribute [rw] value
6492
+ # @return [::Google::Cloud::Dlp::V2::Value]
6493
+ class ResourceAttributesEntry
6494
+ include ::Google::Protobuf::MessageExts
6495
+ extend ::Google::Protobuf::MessageExts::ClassMethods
6496
+ end
6497
+
6498
+ # @!attribute [rw] key
6499
+ # @return [::String]
6500
+ # @!attribute [rw] value
6501
+ # @return [::String]
6502
+ class ResourceLabelsEntry
6503
+ include ::Google::Protobuf::MessageExts
6504
+ extend ::Google::Protobuf::MessageExts::ClassMethods
6505
+ end
6506
+
6507
+ # Possible states of a profile. New items may be added.
6508
+ module State
6509
+ # Unused.
6510
+ STATE_UNSPECIFIED = 0
6511
+
6512
+ # The profile is currently running. Once a profile has finished it will
6513
+ # transition to DONE.
6514
+ RUNNING = 1
6515
+
6516
+ # The profile is no longer generating.
6517
+ # If profile_status.status.code is 0, the profile succeeded, otherwise, it
6518
+ # failed.
6519
+ DONE = 2
6520
+ end
6521
+ end
6522
+
6523
+ # Information regarding the discovered InfoType.
6524
+ # @!attribute [rw] info_type
6525
+ # @return [::Google::Cloud::Dlp::V2::InfoType]
6526
+ # The InfoType seen.
6527
+ class FileStoreInfoTypeSummary
6528
+ include ::Google::Protobuf::MessageExts
6529
+ extend ::Google::Protobuf::MessageExts::ClassMethods
6530
+ end
6531
+
6532
+ # Information regarding the discovered file extension.
6533
+ # @!attribute [rw] file_extension
6534
+ # @return [::String]
6535
+ # The file extension if set. (aka .pdf, .jpg, .txt)
6536
+ class FileExtensionInfo
6537
+ include ::Google::Protobuf::MessageExts
6538
+ extend ::Google::Protobuf::MessageExts::ClassMethods
6539
+ end
6540
+
6541
+ # The file cluster summary.
6542
+ # @!attribute [rw] file_cluster_type
6543
+ # @return [::Google::Cloud::Dlp::V2::FileClusterType]
6544
+ # The file cluster type.
6545
+ # @!attribute [rw] file_store_info_type_summaries
6546
+ # @return [::Array<::Google::Cloud::Dlp::V2::FileStoreInfoTypeSummary>]
6547
+ # InfoTypes detected in this cluster.
6548
+ # @!attribute [rw] sensitivity_score
6549
+ # @return [::Google::Cloud::Dlp::V2::SensitivityScore]
6550
+ # The sensitivity score of this cluster. The score will be SENSITIVITY_LOW
6551
+ # if nothing has been scanned.
6552
+ # @!attribute [rw] data_risk_level
6553
+ # @return [::Google::Cloud::Dlp::V2::DataRiskLevel]
6554
+ # The data risk level of this cluster. RISK_LOW if nothing has been
6555
+ # scanned.
6556
+ # @!attribute [rw] errors
6557
+ # @return [::Array<::Google::Cloud::Dlp::V2::Error>]
6558
+ # A list of errors detected while scanning this cluster. The list is
6559
+ # truncated to 10 per cluster.
6560
+ # @!attribute [rw] file_extensions_scanned
6561
+ # @return [::Array<::Google::Cloud::Dlp::V2::FileExtensionInfo>]
6562
+ # A sample of file types scanned in this cluster. Empty if no files were
6563
+ # scanned.
6564
+ # @!attribute [rw] file_extensions_seen
6565
+ # @return [::Array<::Google::Cloud::Dlp::V2::FileExtensionInfo>]
6566
+ # A sample of file types seen in this cluster. Empty if no files were seen.
6567
+ # @!attribute [rw] no_files_exist
6568
+ # @return [::Boolean]
6569
+ # True if no files exist in this cluster. If the bucket had more files than
6570
+ # could be listed, this will be false even if no files for this cluster
6571
+ # were seen and file_extensions_seen is empty.
6572
+ class FileClusterSummary
6573
+ include ::Google::Protobuf::MessageExts
6574
+ extend ::Google::Protobuf::MessageExts::ClassMethods
6575
+ end
6576
+
6034
6577
  # Request to get a project data profile.
6035
6578
  # @!attribute [rw] name
6036
6579
  # @return [::String]
@@ -6041,6 +6584,109 @@ module Google
6041
6584
  extend ::Google::Protobuf::MessageExts::ClassMethods
6042
6585
  end
6043
6586
 
6587
+ # Request to get a file store data profile.
6588
+ # @!attribute [rw] name
6589
+ # @return [::String]
6590
+ # Required. Resource name, for example
6591
+ # `organizations/12345/locations/us/fileStoreDataProfiles/53234423`.
6592
+ class GetFileStoreDataProfileRequest
6593
+ include ::Google::Protobuf::MessageExts
6594
+ extend ::Google::Protobuf::MessageExts::ClassMethods
6595
+ end
6596
+
6597
+ # Request to list the file store profiles generated for a given organization or
6598
+ # project.
6599
+ # @!attribute [rw] parent
6600
+ # @return [::String]
6601
+ # Required. Resource name of the organization or project, for
6602
+ # example `organizations/433245324/locations/europe` or
6603
+ # `projects/project-id/locations/asia`.
6604
+ # @!attribute [rw] page_token
6605
+ # @return [::String]
6606
+ # Optional. Page token to continue retrieval.
6607
+ # @!attribute [rw] page_size
6608
+ # @return [::Integer]
6609
+ # Optional. Size of the page. This value can be limited by the server. If
6610
+ # zero, server returns a page of max size 100.
6611
+ # @!attribute [rw] order_by
6612
+ # @return [::String]
6613
+ # Optional. Comma-separated list of fields to order by, followed by `asc` or
6614
+ # `desc` postfix. This list is case insensitive. The default sorting order is
6615
+ # ascending. Redundant space characters are insignificant. Only one order
6616
+ # field at a time is allowed.
6617
+ #
6618
+ # Examples:
6619
+ #
6620
+ # * `project_id asc`
6621
+ # * `name`
6622
+ # * `sensitivity_level desc`
6623
+ #
6624
+ # Supported fields are:
6625
+ #
6626
+ # - `project_id`: The Google Cloud project ID.
6627
+ # - `sensitivity_level`: How sensitive the data in a table is, at most.
6628
+ # - `data_risk_level`: How much risk is associated with this data.
6629
+ # - `profile_last_generated`: When the profile was last updated in epoch
6630
+ # seconds.
6631
+ # - `last_modified`: The last time the resource was modified.
6632
+ # - `resource_visibility`: Visibility restriction for this resource.
6633
+ # - `name`: The name of the profile.
6634
+ # - `create_time`: The time the file store was first created.
6635
+ # @!attribute [rw] filter
6636
+ # @return [::String]
6637
+ # Optional. Allows filtering.
6638
+ #
6639
+ # Supported syntax:
6640
+ #
6641
+ # * Filter expressions are made up of one or more restrictions.
6642
+ # * Restrictions can be combined by `AND` or `OR` logical operators. A
6643
+ # sequence of restrictions implicitly uses `AND`.
6644
+ # * A restriction has the form of `{field} {operator} {value}`.
6645
+ # * Supported fields/values:
6646
+ # - `project_id` - The Google Cloud project ID.
6647
+ # - `file_store_path` - The path like "gs://bucket".
6648
+ # - `sensitivity_level` - HIGH|MODERATE|LOW
6649
+ # - `data_risk_level` - HIGH|MODERATE|LOW
6650
+ # - `resource_visibility`: PUBLIC|RESTRICTED
6651
+ # - `status_code` - an RPC status code as defined in
6652
+ # https://github.com/googleapis/googleapis/blob/master/google/rpc/code.proto
6653
+ # * The operator must be `=` or `!=`.
6654
+ #
6655
+ # Examples:
6656
+ #
6657
+ # * `project_id = 12345 AND status_code = 1`
6658
+ # * `project_id = 12345 AND sensitivity_level = HIGH`
6659
+ # * `project_id = 12345 AND resource_visibility = PUBLIC`
6660
+ # * `file_store_path = "gs://mybucket"`
6661
+ #
6662
+ # The length of this field should be no more than 500 characters.
6663
+ class ListFileStoreDataProfilesRequest
6664
+ include ::Google::Protobuf::MessageExts
6665
+ extend ::Google::Protobuf::MessageExts::ClassMethods
6666
+ end
6667
+
6668
+ # List of file store data profiles generated for a given organization or
6669
+ # project.
6670
+ # @!attribute [rw] file_store_data_profiles
6671
+ # @return [::Array<::Google::Cloud::Dlp::V2::FileStoreDataProfile>]
6672
+ # List of data profiles.
6673
+ # @!attribute [rw] next_page_token
6674
+ # @return [::String]
6675
+ # The next page token.
6676
+ class ListFileStoreDataProfilesResponse
6677
+ include ::Google::Protobuf::MessageExts
6678
+ extend ::Google::Protobuf::MessageExts::ClassMethods
6679
+ end
6680
+
6681
+ # Request message for DeleteFileStoreProfile.
6682
+ # @!attribute [rw] name
6683
+ # @return [::String]
6684
+ # Required. Resource name of the file store data profile.
6685
+ class DeleteFileStoreDataProfileRequest
6686
+ include ::Google::Protobuf::MessageExts
6687
+ extend ::Google::Protobuf::MessageExts::ClassMethods
6688
+ end
6689
+
6044
6690
  # Request to get a table data profile.
6045
6691
  # @!attribute [rw] name
6046
6692
  # @return [::String]
@@ -6126,6 +6772,11 @@ module Google
6126
6772
  # If `DetailLevel` is `TABLE_PROFILE` this will be fully populated.
6127
6773
  # Otherwise, if `DetailLevel` is `RESOURCE_NAME`, then only `name` and
6128
6774
  # `full_resource` will be populated.
6775
+ # @!attribute [rw] file_store_profile
6776
+ # @return [::Google::Cloud::Dlp::V2::FileStoreDataProfile]
6777
+ # If `DetailLevel` is `FILE_STORE_PROFILE` this will be fully populated.
6778
+ # Otherwise, if `DetailLevel` is `RESOURCE_NAME`, then only `name` and
6779
+ # `file_store_path` will be populated.
6129
6780
  # @!attribute [rw] event
6130
6781
  # @return [::Google::Cloud::Dlp::V2::DataProfileAction::EventType]
6131
6782
  # The event that caused the Pub/Sub message to be sent.
@@ -6137,8 +6788,15 @@ module Google
6137
6788
  # Request message for CreateConnection.
6138
6789
  # @!attribute [rw] parent
6139
6790
  # @return [::String]
6140
- # Required. Parent resource name in the format:
6141
- # `projects/{project}/locations/{location}`.
6791
+ # Required. Parent resource name.
6792
+ #
6793
+ # The format of this value varies depending on the scope of the request
6794
+ # (project or organization):
6795
+ #
6796
+ # + Projects scope:
6797
+ # `projects/{project_id}/locations/{location_id}`
6798
+ # + Organizations scope:
6799
+ # `organizations/{org_id}/locations/{location_id}`
6142
6800
  # @!attribute [rw] connection
6143
6801
  # @return [::Google::Cloud::Dlp::V2::Connection]
6144
6802
  # Required. The connection resource.
@@ -6160,8 +6818,9 @@ module Google
6160
6818
  # Request message for ListConnections.
6161
6819
  # @!attribute [rw] parent
6162
6820
  # @return [::String]
6163
- # Required. Parent name, for example:
6164
- # `projects/project-id/locations/global`.
6821
+ # Required. Resource name of the organization or project, for
6822
+ # example, `organizations/433245324/locations/europe` or
6823
+ # `projects/project-id/locations/asia`.
6165
6824
  # @!attribute [rw] page_size
6166
6825
  # @return [::Integer]
6167
6826
  # Optional. Number of results per page, max 1000.
@@ -6180,8 +6839,9 @@ module Google
6180
6839
  # Request message for SearchConnections.
6181
6840
  # @!attribute [rw] parent
6182
6841
  # @return [::String]
6183
- # Required. Parent name, typically an organization, without location.
6184
- # For example: `organizations/12345678`.
6842
+ # Required. Resource name of the organization or project with a wildcard
6843
+ # location, for example, `organizations/433245324/locations/-` or
6844
+ # `projects/project-id/locations/-`.
6185
6845
  # @!attribute [rw] page_size
6186
6846
  # @return [::Integer]
6187
6847
  # Optional. Number of results per page, max 1000.
@@ -6361,6 +7021,49 @@ module Google
6361
7021
  extend ::Google::Protobuf::MessageExts::ClassMethods
6362
7022
  end
6363
7023
 
7024
+ # Message used to identify file cluster type being profiled.
7025
+ # @!attribute [rw] cluster
7026
+ # @return [::Google::Cloud::Dlp::V2::FileClusterType::Cluster]
7027
+ # Cluster type.
7028
+ class FileClusterType
7029
+ include ::Google::Protobuf::MessageExts
7030
+ extend ::Google::Protobuf::MessageExts::ClassMethods
7031
+
7032
+ # Cluster type. Each cluster corresponds to a set of file types.
7033
+ # Over time, new types may be added and files may move between clusters.
7034
+ module Cluster
7035
+ # Unused.
7036
+ CLUSTER_UNSPECIFIED = 0
7037
+
7038
+ # Unsupported files.
7039
+ CLUSTER_UNKNOWN = 1
7040
+
7041
+ # Plain text.
7042
+ CLUSTER_TEXT = 2
7043
+
7044
+ # Structured data like CSV, TSV etc.
7045
+ CLUSTER_STRUCTURED_DATA = 3
7046
+
7047
+ # Source code.
7048
+ CLUSTER_SOURCE_CODE = 4
7049
+
7050
+ # Rich document like docx, xlsx etc.
7051
+ CLUSTER_RICH_DOCUMENT = 5
7052
+
7053
+ # Images like jpeg, bmp.
7054
+ CLUSTER_IMAGE = 6
7055
+
7056
+ # Archives and containers like .zip, .tar etc.
7057
+ CLUSTER_ARCHIVE = 7
7058
+
7059
+ # Multimedia like .mp4, .avi etc.
7060
+ CLUSTER_MULTIMEDIA = 8
7061
+
7062
+ # Executable files like .exe, .class, .apk etc.
7063
+ CLUSTER_EXECUTABLE = 9
7064
+ end
7065
+ end
7066
+
6364
7067
  # Enum of possible outcomes of transformations. SUCCESS if transformation and
6365
7068
  # storing of transformation was successful, otherwise, reason for not
6366
7069
  # transforming.
@@ -6451,6 +7154,18 @@ module Google
6451
7154
  REDACT_IMAGE = 14
6452
7155
  end
6453
7156
 
7157
+ # Whether a profile being created is the first generation or an update.
7158
+ module ProfileGeneration
7159
+ # Unused.
7160
+ PROFILE_GENERATION_UNSPECIFIED = 0
7161
+
7162
+ # The profile is the first profile for the resource.
7163
+ PROFILE_GENERATION_NEW = 1
7164
+
7165
+ # The profile is an update to a previous profile.
7166
+ PROFILE_GENERATION_UPDATE = 2
7167
+ end
7168
+
6454
7169
  # Over time new types may be added. Currently VIEW, MATERIALIZED_VIEW,
6455
7170
  # and SNAPSHOT are not supported.
6456
7171
  module BigQueryTableTypeCollection
@@ -6657,7 +7372,7 @@ module Google
6657
7372
 
6658
7373
  # May contain public items.
6659
7374
  # For example, if a Cloud Storage bucket has uniform bucket level access
6660
- # disabled, some objects inside it may be public.
7375
+ # disabled, some objects inside it may be public, but none are known yet.
6661
7376
  RESOURCE_VISIBILITY_INCONCLUSIVE = 15
6662
7377
 
6663
7378
  # Visible only to specific users.