@google-cloud/dlp 5.7.0 → 5.8.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.
- package/CHANGELOG.md +7 -0
- package/README.md +3 -0
- package/build/protos/google/privacy/dlp/v2/dlp.proto +702 -60
- package/build/protos/google/privacy/dlp/v2/storage.proto +4 -0
- package/build/protos/protos.d.ts +4858 -2365
- package/build/protos/protos.js +13798 -7179
- package/build/protos/protos.json +657 -4
- package/build/src/v2/dlp_service_client.d.ts +453 -96
- package/build/src/v2/dlp_service_client.js +388 -46
- package/build/src/v2/dlp_service_client_config.json +12 -0
- package/package.json +1 -1
|
@@ -798,6 +798,43 @@ service DlpService {
|
|
|
798
798
|
option (google.api.method_signature) = "name";
|
|
799
799
|
}
|
|
800
800
|
|
|
801
|
+
// Lists file store data profiles for an organization.
|
|
802
|
+
rpc ListFileStoreDataProfiles(ListFileStoreDataProfilesRequest)
|
|
803
|
+
returns (ListFileStoreDataProfilesResponse) {
|
|
804
|
+
option (google.api.http) = {
|
|
805
|
+
get: "/v2/{parent=organizations/*/locations/*}/fileStoreDataProfiles"
|
|
806
|
+
additional_bindings {
|
|
807
|
+
get: "/v2/{parent=projects/*/locations/*}/fileStoreDataProfiles"
|
|
808
|
+
}
|
|
809
|
+
};
|
|
810
|
+
option (google.api.method_signature) = "parent";
|
|
811
|
+
}
|
|
812
|
+
|
|
813
|
+
// Gets a file store data profile.
|
|
814
|
+
rpc GetFileStoreDataProfile(GetFileStoreDataProfileRequest)
|
|
815
|
+
returns (FileStoreDataProfile) {
|
|
816
|
+
option (google.api.http) = {
|
|
817
|
+
get: "/v2/{name=organizations/*/locations/*/fileStoreDataProfiles/*}"
|
|
818
|
+
additional_bindings {
|
|
819
|
+
get: "/v2/{name=projects/*/locations/*/fileStoreDataProfiles/*}"
|
|
820
|
+
}
|
|
821
|
+
};
|
|
822
|
+
option (google.api.method_signature) = "name";
|
|
823
|
+
}
|
|
824
|
+
|
|
825
|
+
// Delete a FileStoreDataProfile. Will not prevent the profile from being
|
|
826
|
+
// regenerated if the resource is still included in a discovery configuration.
|
|
827
|
+
rpc DeleteFileStoreDataProfile(DeleteFileStoreDataProfileRequest)
|
|
828
|
+
returns (google.protobuf.Empty) {
|
|
829
|
+
option (google.api.http) = {
|
|
830
|
+
delete: "/v2/{name=organizations/*/locations/*/fileStoreDataProfiles/*}"
|
|
831
|
+
additional_bindings {
|
|
832
|
+
delete: "/v2/{name=projects/*/locations/*/fileStoreDataProfiles/*}"
|
|
833
|
+
}
|
|
834
|
+
};
|
|
835
|
+
option (google.api.method_signature) = "name";
|
|
836
|
+
}
|
|
837
|
+
|
|
801
838
|
// Gets a table data profile.
|
|
802
839
|
rpc GetTableDataProfile(GetTableDataProfileRequest)
|
|
803
840
|
returns (TableDataProfile) {
|
|
@@ -1174,6 +1211,15 @@ message ByteContentItem {
|
|
|
1174
1211
|
|
|
1175
1212
|
// tsv
|
|
1176
1213
|
TSV = 13;
|
|
1214
|
+
|
|
1215
|
+
// Audio file types. Only used for profiling.
|
|
1216
|
+
AUDIO = 15;
|
|
1217
|
+
|
|
1218
|
+
// Video file types. Only used for profiling.
|
|
1219
|
+
VIDEO = 16;
|
|
1220
|
+
|
|
1221
|
+
// Executable file types. Only used for profiling.
|
|
1222
|
+
EXECUTABLE = 17;
|
|
1177
1223
|
}
|
|
1178
1224
|
|
|
1179
1225
|
// The type of data stored in the bytes string. Default will be TEXT_UTF8.
|
|
@@ -1288,6 +1334,7 @@ message Finding {
|
|
|
1288
1334
|
// No more than 10 labels can be associated with a given finding.
|
|
1289
1335
|
//
|
|
1290
1336
|
// Examples:
|
|
1337
|
+
//
|
|
1291
1338
|
// * `"environment" : "production"`
|
|
1292
1339
|
// * `"pipeline" : "etl"`
|
|
1293
1340
|
map<string, string> labels = 10;
|
|
@@ -1519,9 +1566,9 @@ message RedactImageRequest {
|
|
|
1519
1566
|
// processing
|
|
1520
1567
|
// location](https://cloud.google.com/sensitive-data-protection/docs/specifying-location):
|
|
1521
1568
|
//
|
|
1522
|
-
// + Projects scope, location specified
|
|
1569
|
+
// + Projects scope, location specified:
|
|
1523
1570
|
// `projects/`<var>PROJECT_ID</var>`/locations/`<var>LOCATION_ID</var>
|
|
1524
|
-
// + Projects scope, no location specified (defaults to global)
|
|
1571
|
+
// + Projects scope, no location specified (defaults to global):
|
|
1525
1572
|
// `projects/`<var>PROJECT_ID</var>
|
|
1526
1573
|
//
|
|
1527
1574
|
// The following example `parent` string specifies a parent project with the
|
|
@@ -1584,9 +1631,9 @@ message DeidentifyContentRequest {
|
|
|
1584
1631
|
// processing
|
|
1585
1632
|
// location](https://cloud.google.com/sensitive-data-protection/docs/specifying-location):
|
|
1586
1633
|
//
|
|
1587
|
-
// + Projects scope, location specified
|
|
1634
|
+
// + Projects scope, location specified:
|
|
1588
1635
|
// `projects/`<var>PROJECT_ID</var>`/locations/`<var>LOCATION_ID</var>
|
|
1589
|
-
// + Projects scope, no location specified (defaults to global)
|
|
1636
|
+
// + Projects scope, no location specified (defaults to global):
|
|
1590
1637
|
// `projects/`<var>PROJECT_ID</var>
|
|
1591
1638
|
//
|
|
1592
1639
|
// The following example `parent` string specifies a parent project with the
|
|
@@ -1653,9 +1700,9 @@ message ReidentifyContentRequest {
|
|
|
1653
1700
|
// processing
|
|
1654
1701
|
// location](https://cloud.google.com/sensitive-data-protection/docs/specifying-location):
|
|
1655
1702
|
//
|
|
1656
|
-
// + Projects scope, location specified
|
|
1703
|
+
// + Projects scope, location specified:
|
|
1657
1704
|
// `projects/`<var>PROJECT_ID</var>`/locations/`<var>LOCATION_ID</var>
|
|
1658
|
-
// + Projects scope, no location specified (defaults to global)
|
|
1705
|
+
// + Projects scope, no location specified (defaults to global):
|
|
1659
1706
|
// `projects/`<var>PROJECT_ID</var>
|
|
1660
1707
|
//
|
|
1661
1708
|
// The following example `parent` string specifies a parent project with the
|
|
@@ -1725,9 +1772,9 @@ message InspectContentRequest {
|
|
|
1725
1772
|
// processing
|
|
1726
1773
|
// location](https://cloud.google.com/sensitive-data-protection/docs/specifying-location):
|
|
1727
1774
|
//
|
|
1728
|
-
// + Projects scope, location specified
|
|
1775
|
+
// + Projects scope, location specified:
|
|
1729
1776
|
// `projects/`<var>PROJECT_ID</var>`/locations/`<var>LOCATION_ID</var>
|
|
1730
|
-
// + Projects scope, no location specified (defaults to global)
|
|
1777
|
+
// + Projects scope, no location specified (defaults to global):
|
|
1731
1778
|
// `projects/`<var>PROJECT_ID</var>
|
|
1732
1779
|
//
|
|
1733
1780
|
// The following example `parent` string specifies a parent project with the
|
|
@@ -1878,6 +1925,9 @@ message DataProfileBigQueryRowSchema {
|
|
|
1878
1925
|
|
|
1879
1926
|
// Column data profile column
|
|
1880
1927
|
ColumnDataProfile column_profile = 2;
|
|
1928
|
+
|
|
1929
|
+
// File store data profile column.
|
|
1930
|
+
FileStoreDataProfile file_store_profile = 3;
|
|
1881
1931
|
}
|
|
1882
1932
|
}
|
|
1883
1933
|
|
|
@@ -1986,12 +2036,18 @@ message InfoTypeCategory {
|
|
|
1986
2036
|
// The infoType is typically used in Argentina.
|
|
1987
2037
|
ARGENTINA = 2;
|
|
1988
2038
|
|
|
2039
|
+
// The infoType is typically used in Armenia.
|
|
2040
|
+
ARMENIA = 51;
|
|
2041
|
+
|
|
1989
2042
|
// The infoType is typically used in Australia.
|
|
1990
2043
|
AUSTRALIA = 3;
|
|
1991
2044
|
|
|
1992
2045
|
// The infoType is typically used in Azerbaijan.
|
|
1993
2046
|
AZERBAIJAN = 48;
|
|
1994
2047
|
|
|
2048
|
+
// The infoType is typically used in Belarus.
|
|
2049
|
+
BELARUS = 50;
|
|
2050
|
+
|
|
1995
2051
|
// The infoType is typically used in Belgium.
|
|
1996
2052
|
BELGIUM = 4;
|
|
1997
2053
|
|
|
@@ -3200,9 +3256,10 @@ message FixedSizeBucketingConfig {
|
|
|
3200
3256
|
|
|
3201
3257
|
// Generalization function that buckets values based on ranges. The ranges and
|
|
3202
3258
|
// replacement values are dynamically provided by the user for custom behavior,
|
|
3203
|
-
// such as 1-30 -> LOW 31-65 -> MEDIUM 66-100 -> HIGH
|
|
3204
|
-
//
|
|
3205
|
-
// data of type: number, long, string, timestamp.
|
|
3259
|
+
// such as 1-30 -> LOW, 31-65 -> MEDIUM, 66-100 -> HIGH.
|
|
3260
|
+
//
|
|
3261
|
+
// This can be used on data of type: number, long, string, timestamp.
|
|
3262
|
+
//
|
|
3206
3263
|
// If the bound `Value` type differs from the type of data being transformed, we
|
|
3207
3264
|
// will first attempt converting the type of the data to be transformed to match
|
|
3208
3265
|
// the type of the bound before comparing.
|
|
@@ -3933,12 +3990,27 @@ message DeidentifyTemplate {
|
|
|
3933
3990
|
// Details information about an error encountered during job execution or
|
|
3934
3991
|
// the results of an unsuccessful activation of the JobTrigger.
|
|
3935
3992
|
message Error {
|
|
3993
|
+
// Additional information about the error.
|
|
3994
|
+
enum ErrorExtraInfo {
|
|
3995
|
+
// Unused.
|
|
3996
|
+
ERROR_INFO_UNSPECIFIED = 0;
|
|
3997
|
+
|
|
3998
|
+
// Image scan is not available in the region.
|
|
3999
|
+
IMAGE_SCAN_UNAVAILABLE_IN_REGION = 1;
|
|
4000
|
+
|
|
4001
|
+
// File store cluster is not supported for profile generation.
|
|
4002
|
+
FILE_STORE_CLUSTER_UNSUPPORTED = 2;
|
|
4003
|
+
}
|
|
4004
|
+
|
|
3936
4005
|
// Detailed error codes and messages.
|
|
3937
4006
|
google.rpc.Status details = 1;
|
|
3938
4007
|
|
|
3939
4008
|
// The times the error occurred. List includes the oldest timestamp and the
|
|
3940
4009
|
// last 9 timestamps.
|
|
3941
4010
|
repeated google.protobuf.Timestamp timestamps = 2;
|
|
4011
|
+
|
|
4012
|
+
// Additional information about the error.
|
|
4013
|
+
ErrorExtraInfo extra_info = 4;
|
|
3942
4014
|
}
|
|
3943
4015
|
|
|
3944
4016
|
// Contains a configuration to make API calls on a repeating basis.
|
|
@@ -4114,7 +4186,7 @@ message Action {
|
|
|
4114
4186
|
// Where to store the output.
|
|
4115
4187
|
oneof output {
|
|
4116
4188
|
// Required. User settable Cloud Storage bucket and folders to store
|
|
4117
|
-
// de-identified files. This field must be set for
|
|
4189
|
+
// de-identified files. This field must be set for Cloud Storage
|
|
4118
4190
|
// deidentification. The output Cloud Storage bucket must be different
|
|
4119
4191
|
// from the input bucket. De-identified files will overwrite files in the
|
|
4120
4192
|
// output path.
|
|
@@ -4124,12 +4196,12 @@ message Action {
|
|
|
4124
4196
|
}
|
|
4125
4197
|
|
|
4126
4198
|
// List of user-specified file type groups to transform. If specified, only
|
|
4127
|
-
// the files with these
|
|
4199
|
+
// the files with these file types will be transformed. If empty, all
|
|
4128
4200
|
// supported files will be transformed. Supported types may be automatically
|
|
4129
4201
|
// added over time. If a file type is set in this field that isn't supported
|
|
4130
4202
|
// by the Deidentify action then the job will fail and will not be
|
|
4131
|
-
// successfully created/started. Currently the only
|
|
4132
|
-
// IMAGES, TEXT_FILES, CSV, TSV.
|
|
4203
|
+
// successfully created/started. Currently the only file types supported
|
|
4204
|
+
// are: IMAGES, TEXT_FILES, CSV, TSV.
|
|
4133
4205
|
repeated FileType file_types_to_transform = 8;
|
|
4134
4206
|
}
|
|
4135
4207
|
|
|
@@ -4208,13 +4280,13 @@ message CreateInspectTemplateRequest {
|
|
|
4208
4280
|
// (project or organization) and whether you have [specified a processing
|
|
4209
4281
|
// location](https://cloud.google.com/sensitive-data-protection/docs/specifying-location):
|
|
4210
4282
|
//
|
|
4211
|
-
// + Projects scope, location specified
|
|
4283
|
+
// + Projects scope, location specified:
|
|
4212
4284
|
// `projects/`<var>PROJECT_ID</var>`/locations/`<var>LOCATION_ID</var>
|
|
4213
|
-
// + Projects scope, no location specified (defaults to global)
|
|
4285
|
+
// + Projects scope, no location specified (defaults to global):
|
|
4214
4286
|
// `projects/`<var>PROJECT_ID</var>
|
|
4215
|
-
// + Organizations scope, location specified
|
|
4287
|
+
// + Organizations scope, location specified:
|
|
4216
4288
|
// `organizations/`<var>ORG_ID</var>`/locations/`<var>LOCATION_ID</var>
|
|
4217
|
-
// + Organizations scope, no location specified (defaults to global)
|
|
4289
|
+
// + Organizations scope, no location specified (defaults to global):
|
|
4218
4290
|
// `organizations/`<var>ORG_ID</var>
|
|
4219
4291
|
//
|
|
4220
4292
|
// The following example `parent` string specifies a parent project with the
|
|
@@ -4282,13 +4354,13 @@ message ListInspectTemplatesRequest {
|
|
|
4282
4354
|
// (project or organization) and whether you have [specified a processing
|
|
4283
4355
|
// location](https://cloud.google.com/sensitive-data-protection/docs/specifying-location):
|
|
4284
4356
|
//
|
|
4285
|
-
// + Projects scope, location specified
|
|
4357
|
+
// + Projects scope, location specified:
|
|
4286
4358
|
// `projects/`<var>PROJECT_ID</var>`/locations/`<var>LOCATION_ID</var>
|
|
4287
|
-
// + Projects scope, no location specified (defaults to global)
|
|
4359
|
+
// + Projects scope, no location specified (defaults to global):
|
|
4288
4360
|
// `projects/`<var>PROJECT_ID</var>
|
|
4289
|
-
// + Organizations scope, location specified
|
|
4361
|
+
// + Organizations scope, location specified:
|
|
4290
4362
|
// `organizations/`<var>ORG_ID</var>`/locations/`<var>LOCATION_ID</var>
|
|
4291
|
-
// + Organizations scope, no location specified (defaults to global)
|
|
4363
|
+
// + Organizations scope, no location specified (defaults to global):
|
|
4292
4364
|
// `organizations/`<var>ORG_ID</var>
|
|
4293
4365
|
//
|
|
4294
4366
|
// The following example `parent` string specifies a parent project with the
|
|
@@ -4311,7 +4383,7 @@ message ListInspectTemplatesRequest {
|
|
|
4311
4383
|
// returns a page of max size 100.
|
|
4312
4384
|
int32 page_size = 3;
|
|
4313
4385
|
|
|
4314
|
-
// Comma
|
|
4386
|
+
// Comma-separated list of fields to order by,
|
|
4315
4387
|
// followed by `asc` or `desc` postfix. This list is case insensitive. The
|
|
4316
4388
|
// default sorting order is ascending. Redundant space characters are
|
|
4317
4389
|
// insignificant.
|
|
@@ -4361,9 +4433,9 @@ message CreateJobTriggerRequest {
|
|
|
4361
4433
|
// processing
|
|
4362
4434
|
// location](https://cloud.google.com/sensitive-data-protection/docs/specifying-location):
|
|
4363
4435
|
//
|
|
4364
|
-
// + Projects scope, location specified
|
|
4436
|
+
// + Projects scope, location specified:
|
|
4365
4437
|
// `projects/`<var>PROJECT_ID</var>`/locations/`<var>LOCATION_ID</var>
|
|
4366
|
-
// + Projects scope, no location specified (defaults to global)
|
|
4438
|
+
// + Projects scope, no location specified (defaults to global):
|
|
4367
4439
|
// `projects/`<var>PROJECT_ID</var>
|
|
4368
4440
|
//
|
|
4369
4441
|
// The following example `parent` string specifies a parent project with the
|
|
@@ -4431,8 +4503,13 @@ message GetJobTriggerRequest {
|
|
|
4431
4503
|
message CreateDiscoveryConfigRequest {
|
|
4432
4504
|
// Required. Parent resource name.
|
|
4433
4505
|
//
|
|
4434
|
-
// The format of this value
|
|
4435
|
-
//
|
|
4506
|
+
// The format of this value varies depending on the scope of the request
|
|
4507
|
+
// (project or organization):
|
|
4508
|
+
//
|
|
4509
|
+
// + Projects scope:
|
|
4510
|
+
// `projects/`<var>PROJECT_ID</var>`/locations/`<var>LOCATION_ID</var>
|
|
4511
|
+
// + Organizations scope:
|
|
4512
|
+
// `organizations/`<var>ORG_ID</var>`/locations/`<var>LOCATION_ID</var>
|
|
4436
4513
|
//
|
|
4437
4514
|
// The following example `parent` string specifies a parent project with the
|
|
4438
4515
|
// identifier `example-project`, and specifies the `europe-west3` location
|
|
@@ -4513,7 +4590,7 @@ message ListDiscoveryConfigsRequest {
|
|
|
4513
4590
|
// Size of the page. This value can be limited by a server.
|
|
4514
4591
|
int32 page_size = 3;
|
|
4515
4592
|
|
|
4516
|
-
// Comma
|
|
4593
|
+
// Comma-separated list of config fields to order by,
|
|
4517
4594
|
// followed by `asc` or `desc` postfix. This list is case insensitive. The
|
|
4518
4595
|
// default sorting order is ascending. Redundant space characters are
|
|
4519
4596
|
// insignificant.
|
|
@@ -4560,9 +4637,9 @@ message CreateDlpJobRequest {
|
|
|
4560
4637
|
// processing
|
|
4561
4638
|
// location](https://cloud.google.com/sensitive-data-protection/docs/specifying-location):
|
|
4562
4639
|
//
|
|
4563
|
-
// + Projects scope, location specified
|
|
4640
|
+
// + Projects scope, location specified:
|
|
4564
4641
|
// `projects/`<var>PROJECT_ID</var>`/locations/`<var>LOCATION_ID</var>
|
|
4565
|
-
// + Projects scope, no location specified (defaults to global)
|
|
4642
|
+
// + Projects scope, no location specified (defaults to global):
|
|
4566
4643
|
// `projects/`<var>PROJECT_ID</var>
|
|
4567
4644
|
//
|
|
4568
4645
|
// The following example `parent` string specifies a parent project with the
|
|
@@ -4605,9 +4682,9 @@ message ListJobTriggersRequest {
|
|
|
4605
4682
|
// processing
|
|
4606
4683
|
// location](https://cloud.google.com/sensitive-data-protection/docs/specifying-location):
|
|
4607
4684
|
//
|
|
4608
|
-
// + Projects scope, location specified
|
|
4685
|
+
// + Projects scope, location specified:
|
|
4609
4686
|
// `projects/`<var>PROJECT_ID</var>`/locations/`<var>LOCATION_ID</var>
|
|
4610
|
-
// + Projects scope, no location specified (defaults to global)
|
|
4687
|
+
// + Projects scope, no location specified (defaults to global):
|
|
4611
4688
|
// `projects/`<var>PROJECT_ID</var>
|
|
4612
4689
|
//
|
|
4613
4690
|
// The following example `parent` string specifies a parent project with the
|
|
@@ -4630,7 +4707,7 @@ message ListJobTriggersRequest {
|
|
|
4630
4707
|
// Size of the page. This value can be limited by a server.
|
|
4631
4708
|
int32 page_size = 3;
|
|
4632
4709
|
|
|
4633
|
-
// Comma
|
|
4710
|
+
// Comma-separated list of triggeredJob fields to order by,
|
|
4634
4711
|
// followed by `asc` or `desc` postfix. This list is case insensitive. The
|
|
4635
4712
|
// default sorting order is ascending. Redundant space characters are
|
|
4636
4713
|
// insignificant.
|
|
@@ -4748,6 +4825,9 @@ message DataProfileAction {
|
|
|
4748
4825
|
|
|
4749
4826
|
// The name of the profiled resource.
|
|
4750
4827
|
RESOURCE_NAME = 2;
|
|
4828
|
+
|
|
4829
|
+
// The full file store data profile.
|
|
4830
|
+
FILE_STORE_PROFILE = 3;
|
|
4751
4831
|
}
|
|
4752
4832
|
|
|
4753
4833
|
// Cloud Pub/Sub topic to send notifications to.
|
|
@@ -4925,7 +5005,7 @@ message DataProfileLocation {
|
|
|
4925
5005
|
// The ID of an organization to scan.
|
|
4926
5006
|
int64 organization_id = 1;
|
|
4927
5007
|
|
|
4928
|
-
// The ID of the
|
|
5008
|
+
// The ID of the folder within an organization to scan.
|
|
4929
5009
|
int64 folder_id = 2;
|
|
4930
5010
|
}
|
|
4931
5011
|
}
|
|
@@ -5040,6 +5120,10 @@ message DiscoveryTarget {
|
|
|
5040
5120
|
// resource metadata and reports them as vulnerabilities to Security Command
|
|
5041
5121
|
// Center. Only one target of this type is allowed.
|
|
5042
5122
|
SecretsDiscoveryTarget secrets_target = 3;
|
|
5123
|
+
|
|
5124
|
+
// Cloud Storage target for Discovery. The first target to match a table
|
|
5125
|
+
// will be the one applied.
|
|
5126
|
+
CloudStorageDiscoveryTarget cloud_storage_target = 4;
|
|
5043
5127
|
}
|
|
5044
5128
|
}
|
|
5045
5129
|
|
|
@@ -5157,6 +5241,11 @@ message DiscoveryGenerationCadence {
|
|
|
5157
5241
|
|
|
5158
5242
|
// Governs when to update data profiles when a table is modified.
|
|
5159
5243
|
DiscoveryTableModifiedCadence table_modified_cadence = 2;
|
|
5244
|
+
|
|
5245
|
+
// Governs when to update data profiles when the inspection rules
|
|
5246
|
+
// defined by the `InspectTemplate` change.
|
|
5247
|
+
// If not set, changing the template will not cause a data profile to update.
|
|
5248
|
+
DiscoveryInspectTemplateModifiedCadence inspect_template_modified_cadence = 3;
|
|
5160
5249
|
}
|
|
5161
5250
|
|
|
5162
5251
|
// The cadence at which to update data profiles when a table is modified.
|
|
@@ -5208,6 +5297,14 @@ enum BigQuerySchemaModification {
|
|
|
5208
5297
|
SCHEMA_REMOVED_COLUMNS = 2;
|
|
5209
5298
|
}
|
|
5210
5299
|
|
|
5300
|
+
// The cadence at which to update data profiles when the inspection rules
|
|
5301
|
+
// defined by the `InspectTemplate` change.
|
|
5302
|
+
message DiscoveryInspectTemplateModifiedCadence {
|
|
5303
|
+
// How frequently data profiles can be updated when the template is modified.
|
|
5304
|
+
// Defaults to never.
|
|
5305
|
+
DataProfileUpdateFrequency frequency = 1;
|
|
5306
|
+
}
|
|
5307
|
+
|
|
5211
5308
|
// Target used to match against for discovery with Cloud SQL tables.
|
|
5212
5309
|
message CloudSqlDiscoveryTarget {
|
|
5213
5310
|
// Required. The tables the discovery cadence applies to. The first target
|
|
@@ -5410,6 +5507,225 @@ message DiscoveryCloudSqlGenerationCadence {
|
|
|
5410
5507
|
// Security Command Center.
|
|
5411
5508
|
message SecretsDiscoveryTarget {}
|
|
5412
5509
|
|
|
5510
|
+
// Target used to match against for discovery with Cloud Storage buckets.
|
|
5511
|
+
message CloudStorageDiscoveryTarget {
|
|
5512
|
+
// Required. The buckets the generation_cadence applies to. The first target
|
|
5513
|
+
// with a matching filter will be the one to apply to a bucket.
|
|
5514
|
+
DiscoveryCloudStorageFilter filter = 1
|
|
5515
|
+
[(google.api.field_behavior) = REQUIRED];
|
|
5516
|
+
|
|
5517
|
+
// Optional. In addition to matching the filter, these conditions must be true
|
|
5518
|
+
// before a profile is generated.
|
|
5519
|
+
DiscoveryFileStoreConditions conditions = 4
|
|
5520
|
+
[(google.api.field_behavior) = OPTIONAL];
|
|
5521
|
+
|
|
5522
|
+
// How often and when to update profiles.
|
|
5523
|
+
oneof cadence {
|
|
5524
|
+
// Optional. How often and when to update profiles. New buckets that match
|
|
5525
|
+
// both the filter and conditions are scanned as quickly as possible
|
|
5526
|
+
// depending on system capacity.
|
|
5527
|
+
DiscoveryCloudStorageGenerationCadence generation_cadence = 2
|
|
5528
|
+
[(google.api.field_behavior) = OPTIONAL];
|
|
5529
|
+
|
|
5530
|
+
// Optional. Disable profiling for buckets that match this filter.
|
|
5531
|
+
Disabled disabled = 3 [(google.api.field_behavior) = OPTIONAL];
|
|
5532
|
+
}
|
|
5533
|
+
}
|
|
5534
|
+
|
|
5535
|
+
// Determines which buckets will have profiles generated within an organization
|
|
5536
|
+
// or project. Includes the ability to filter by regular expression patterns
|
|
5537
|
+
// on project ID and bucket name.
|
|
5538
|
+
message DiscoveryCloudStorageFilter {
|
|
5539
|
+
// Whether the filter applies to a specific set of buckets or all
|
|
5540
|
+
// other buckets within the location being profiled. The first
|
|
5541
|
+
// filter to match will be applied, regardless of the condition. If none is
|
|
5542
|
+
// set, will default to `others`.
|
|
5543
|
+
oneof filter {
|
|
5544
|
+
// Optional. A specific set of buckets for this filter to apply to.
|
|
5545
|
+
FileStoreCollection collection = 1 [(google.api.field_behavior) = OPTIONAL];
|
|
5546
|
+
|
|
5547
|
+
// Optional. The bucket to scan. Targets including this can only include one
|
|
5548
|
+
// target (the target with this bucket). This enables profiling the contents
|
|
5549
|
+
// of a single bucket, while the other options allow for easy profiling of
|
|
5550
|
+
// many bucets within a project or an organization.
|
|
5551
|
+
CloudStorageResourceReference cloud_storage_resource_reference = 2
|
|
5552
|
+
[(google.api.field_behavior) = OPTIONAL];
|
|
5553
|
+
|
|
5554
|
+
// Optional. Catch-all. This should always be the last target in the list
|
|
5555
|
+
// because anything above it will apply first. Should only appear once in a
|
|
5556
|
+
// configuration. If none is specified, a default one will be added
|
|
5557
|
+
// automatically.
|
|
5558
|
+
AllOtherResources others = 100 [(google.api.field_behavior) = OPTIONAL];
|
|
5559
|
+
}
|
|
5560
|
+
}
|
|
5561
|
+
|
|
5562
|
+
// Match file stores (e.g. buckets) using regex filters.
|
|
5563
|
+
message FileStoreCollection {
|
|
5564
|
+
// The first filter containing a pattern that matches a file store will
|
|
5565
|
+
// be used.
|
|
5566
|
+
oneof pattern {
|
|
5567
|
+
// Optional. A collection of regular expressions to match a file store
|
|
5568
|
+
// against.
|
|
5569
|
+
FileStoreRegexes include_regexes = 1
|
|
5570
|
+
[(google.api.field_behavior) = OPTIONAL];
|
|
5571
|
+
}
|
|
5572
|
+
}
|
|
5573
|
+
|
|
5574
|
+
// A collection of regular expressions to determine what file store to match
|
|
5575
|
+
// against.
|
|
5576
|
+
message FileStoreRegexes {
|
|
5577
|
+
// Required. The group of regular expression patterns to match against one or
|
|
5578
|
+
// more file stores. Maximum of 100 entries. The sum of all regular
|
|
5579
|
+
// expression's length can't exceed 10 KiB.
|
|
5580
|
+
repeated FileStoreRegex patterns = 1 [(google.api.field_behavior) = REQUIRED];
|
|
5581
|
+
}
|
|
5582
|
+
|
|
5583
|
+
// A pattern to match against one or more file stores.
|
|
5584
|
+
message FileStoreRegex {
|
|
5585
|
+
// The type of resource regex to use.
|
|
5586
|
+
oneof resource_regex {
|
|
5587
|
+
// Optional. Regex for Cloud Storage.
|
|
5588
|
+
CloudStorageRegex cloud_storage_regex = 1
|
|
5589
|
+
[(google.api.field_behavior) = OPTIONAL];
|
|
5590
|
+
}
|
|
5591
|
+
}
|
|
5592
|
+
|
|
5593
|
+
// A pattern to match against one or more file stores. At least one
|
|
5594
|
+
// pattern must be specified. Regular expressions use RE2
|
|
5595
|
+
// [syntax](https://github.com/google/re2/wiki/Syntax); a guide can be found
|
|
5596
|
+
// under the google/re2 repository on GitHub.
|
|
5597
|
+
message CloudStorageRegex {
|
|
5598
|
+
// Optional. For organizations, if unset, will match all projects.
|
|
5599
|
+
string project_id_regex = 1 [(google.api.field_behavior) = OPTIONAL];
|
|
5600
|
+
|
|
5601
|
+
// Optional. Regex to test the bucket name against. If empty, all buckets
|
|
5602
|
+
// match. Example: "marketing2021" or "(marketing)\d{4}" will both match the
|
|
5603
|
+
// bucket gs://marketing2021
|
|
5604
|
+
string bucket_name_regex = 2 [(google.api.field_behavior) = OPTIONAL];
|
|
5605
|
+
}
|
|
5606
|
+
|
|
5607
|
+
// Identifies a single Cloud Storage bucket.
|
|
5608
|
+
message CloudStorageResourceReference {
|
|
5609
|
+
// Required. The bucket to scan.
|
|
5610
|
+
string bucket_name = 1 [(google.api.field_behavior) = REQUIRED];
|
|
5611
|
+
|
|
5612
|
+
// Required. If within a project-level config, then this must match the
|
|
5613
|
+
// config's project id.
|
|
5614
|
+
string project_id = 2 [(google.api.field_behavior) = REQUIRED];
|
|
5615
|
+
}
|
|
5616
|
+
|
|
5617
|
+
// How often existing buckets should have their profiles refreshed.
|
|
5618
|
+
// New buckets are scanned as quickly as possible depending on system
|
|
5619
|
+
// capacity.
|
|
5620
|
+
message DiscoveryCloudStorageGenerationCadence {
|
|
5621
|
+
// Optional. Data changes in Cloud Storage can't trigger reprofiling. If you
|
|
5622
|
+
// set this field, profiles are refreshed at this frequency regardless of
|
|
5623
|
+
// whether the underlying buckets have changed. Defaults to never.
|
|
5624
|
+
DataProfileUpdateFrequency refresh_frequency = 1
|
|
5625
|
+
[(google.api.field_behavior) = OPTIONAL];
|
|
5626
|
+
|
|
5627
|
+
// Optional. Governs when to update data profiles when the inspection rules
|
|
5628
|
+
// defined by the `InspectTemplate` change.
|
|
5629
|
+
// If not set, changing the template will not cause a data profile to update.
|
|
5630
|
+
DiscoveryInspectTemplateModifiedCadence inspect_template_modified_cadence = 2
|
|
5631
|
+
[(google.api.field_behavior) = OPTIONAL];
|
|
5632
|
+
}
|
|
5633
|
+
|
|
5634
|
+
// Requirements that must be true before a Cloud Storage bucket or object is
|
|
5635
|
+
// scanned in discovery for the first time. There is an AND relationship between
|
|
5636
|
+
// the top-level attributes.
|
|
5637
|
+
message DiscoveryCloudStorageConditions {
|
|
5638
|
+
// The attribute of an object. See
|
|
5639
|
+
// https://cloud.google.com/storage/docs/storage-classes for more information
|
|
5640
|
+
// on storage classes.
|
|
5641
|
+
enum CloudStorageObjectAttribute {
|
|
5642
|
+
// Unused.
|
|
5643
|
+
CLOUD_STORAGE_OBJECT_ATTRIBUTE_UNSPECIFIED = 0;
|
|
5644
|
+
|
|
5645
|
+
// Scan objects regardless of the attribute.
|
|
5646
|
+
ALL_SUPPORTED_OBJECTS = 1;
|
|
5647
|
+
|
|
5648
|
+
// Scan objects with the standard storage class.
|
|
5649
|
+
STANDARD = 2;
|
|
5650
|
+
|
|
5651
|
+
// Scan objects with the nearline storage class. This will incur retrieval
|
|
5652
|
+
// fees.
|
|
5653
|
+
NEARLINE = 3;
|
|
5654
|
+
|
|
5655
|
+
// Scan objects with the coldline storage class. This will incur retrieval
|
|
5656
|
+
// fees.
|
|
5657
|
+
COLDLINE = 4;
|
|
5658
|
+
|
|
5659
|
+
// Scan objects with the archive storage class. This will incur retrieval
|
|
5660
|
+
// fees.
|
|
5661
|
+
ARCHIVE = 5;
|
|
5662
|
+
|
|
5663
|
+
// Scan objects with the regional storage class.
|
|
5664
|
+
REGIONAL = 6;
|
|
5665
|
+
|
|
5666
|
+
// Scan objects with the multi-regional storage class.
|
|
5667
|
+
MULTI_REGIONAL = 7;
|
|
5668
|
+
|
|
5669
|
+
// Scan objects with the dual-regional storage class. This will incur
|
|
5670
|
+
// retrieval fees.
|
|
5671
|
+
DURABLE_REDUCED_AVAILABILITY = 8;
|
|
5672
|
+
}
|
|
5673
|
+
|
|
5674
|
+
// The attribute of a bucket.
|
|
5675
|
+
enum CloudStorageBucketAttribute {
|
|
5676
|
+
// Unused.
|
|
5677
|
+
CLOUD_STORAGE_BUCKET_ATTRIBUTE_UNSPECIFIED = 0;
|
|
5678
|
+
|
|
5679
|
+
// Scan buckets regardless of the attribute.
|
|
5680
|
+
ALL_SUPPORTED_BUCKETS = 1;
|
|
5681
|
+
|
|
5682
|
+
// Buckets with autoclass disabled
|
|
5683
|
+
// (https://cloud.google.com/storage/docs/autoclass). Only one of
|
|
5684
|
+
// AUTOCLASS_DISABLED or AUTOCLASS_ENABLED should be set.
|
|
5685
|
+
AUTOCLASS_DISABLED = 2;
|
|
5686
|
+
|
|
5687
|
+
// Buckets with autoclass enabled
|
|
5688
|
+
// (https://cloud.google.com/storage/docs/autoclass). Only one of
|
|
5689
|
+
// AUTOCLASS_DISABLED or AUTOCLASS_ENABLED should be set. Scanning
|
|
5690
|
+
// Autoclass-enabled buckets can affect object storage classes.
|
|
5691
|
+
AUTOCLASS_ENABLED = 3;
|
|
5692
|
+
}
|
|
5693
|
+
|
|
5694
|
+
// Required. Only objects with the specified attributes will be scanned. If an
|
|
5695
|
+
// object has one of the specified attributes but is inside an excluded
|
|
5696
|
+
// bucket, it will not be scanned. Defaults to [ALL_SUPPORTED_OBJECTS]. A
|
|
5697
|
+
// profile will be created even if no objects match the
|
|
5698
|
+
// included_object_attributes.
|
|
5699
|
+
repeated CloudStorageObjectAttribute included_object_attributes = 1
|
|
5700
|
+
[(google.api.field_behavior) = REQUIRED];
|
|
5701
|
+
|
|
5702
|
+
// Required. Only objects with the specified attributes will be scanned.
|
|
5703
|
+
// Defaults to [ALL_SUPPORTED_BUCKETS] if unset.
|
|
5704
|
+
repeated CloudStorageBucketAttribute included_bucket_attributes = 2
|
|
5705
|
+
[(google.api.field_behavior) = REQUIRED];
|
|
5706
|
+
}
|
|
5707
|
+
|
|
5708
|
+
// Requirements that must be true before a file store is scanned in discovery
|
|
5709
|
+
// for the first time. There is an AND relationship between the top-level
|
|
5710
|
+
// attributes.
|
|
5711
|
+
message DiscoveryFileStoreConditions {
|
|
5712
|
+
// Optional. File store must have been created after this date. Used to avoid
|
|
5713
|
+
// backfilling.
|
|
5714
|
+
google.protobuf.Timestamp created_after = 1
|
|
5715
|
+
[(google.api.field_behavior) = OPTIONAL];
|
|
5716
|
+
|
|
5717
|
+
// Optional. Minimum age a file store must have. If set, the value must be 1
|
|
5718
|
+
// hour or greater.
|
|
5719
|
+
google.protobuf.Duration min_age = 2 [(google.api.field_behavior) = OPTIONAL];
|
|
5720
|
+
|
|
5721
|
+
// File store specific conditions.
|
|
5722
|
+
oneof conditions {
|
|
5723
|
+
// Optional. Cloud Storage conditions.
|
|
5724
|
+
DiscoveryCloudStorageConditions cloud_storage_conditions = 3
|
|
5725
|
+
[(google.api.field_behavior) = OPTIONAL];
|
|
5726
|
+
}
|
|
5727
|
+
}
|
|
5728
|
+
|
|
5413
5729
|
// The location to begin a discovery scan. Denotes an organization ID or folder
|
|
5414
5730
|
// ID within an organization.
|
|
5415
5731
|
message DiscoveryStartingLocation {
|
|
@@ -5418,11 +5734,14 @@ message DiscoveryStartingLocation {
|
|
|
5418
5734
|
// The ID of an organization to scan.
|
|
5419
5735
|
int64 organization_id = 1;
|
|
5420
5736
|
|
|
5421
|
-
// The ID of the
|
|
5737
|
+
// The ID of the folder within an organization to scan.
|
|
5422
5738
|
int64 folder_id = 2;
|
|
5423
5739
|
}
|
|
5424
5740
|
}
|
|
5425
5741
|
|
|
5742
|
+
// Match discovery resources not covered by any other filter.
|
|
5743
|
+
message AllOtherResources {}
|
|
5744
|
+
|
|
5426
5745
|
// Combines all of the information about a DLP job.
|
|
5427
5746
|
message DlpJob {
|
|
5428
5747
|
option (google.api.resource) = {
|
|
@@ -5517,9 +5836,9 @@ message ListDlpJobsRequest {
|
|
|
5517
5836
|
// processing
|
|
5518
5837
|
// location](https://cloud.google.com/sensitive-data-protection/docs/specifying-location):
|
|
5519
5838
|
//
|
|
5520
|
-
// + Projects scope, location specified
|
|
5839
|
+
// + Projects scope, location specified:
|
|
5521
5840
|
// `projects/`<var>PROJECT_ID</var>`/locations/`<var>LOCATION_ID</var>
|
|
5522
|
-
// + Projects scope, no location specified (defaults to global)
|
|
5841
|
+
// + Projects scope, no location specified (defaults to global):
|
|
5523
5842
|
// `projects/`<var>PROJECT_ID</var>
|
|
5524
5843
|
//
|
|
5525
5844
|
// The following example `parent` string specifies a parent project with the
|
|
@@ -5573,7 +5892,7 @@ message ListDlpJobsRequest {
|
|
|
5573
5892
|
// The type of job. Defaults to `DlpJobType.INSPECT`
|
|
5574
5893
|
DlpJobType type = 5;
|
|
5575
5894
|
|
|
5576
|
-
// Comma
|
|
5895
|
+
// Comma-separated list of fields to order by,
|
|
5577
5896
|
// followed by `asc` or `desc` postfix. This list is case insensitive. The
|
|
5578
5897
|
// default sorting order is ascending. Redundant space characters are
|
|
5579
5898
|
// insignificant.
|
|
@@ -5636,13 +5955,13 @@ message CreateDeidentifyTemplateRequest {
|
|
|
5636
5955
|
// (project or organization) and whether you have [specified a processing
|
|
5637
5956
|
// location](https://cloud.google.com/sensitive-data-protection/docs/specifying-location):
|
|
5638
5957
|
//
|
|
5639
|
-
// + Projects scope, location specified
|
|
5958
|
+
// + Projects scope, location specified:
|
|
5640
5959
|
// `projects/`<var>PROJECT_ID</var>`/locations/`<var>LOCATION_ID</var>
|
|
5641
|
-
// + Projects scope, no location specified (defaults to global)
|
|
5960
|
+
// + Projects scope, no location specified (defaults to global):
|
|
5642
5961
|
// `projects/`<var>PROJECT_ID</var>
|
|
5643
|
-
// + Organizations scope, location specified
|
|
5962
|
+
// + Organizations scope, location specified:
|
|
5644
5963
|
// `organizations/`<var>ORG_ID</var>`/locations/`<var>LOCATION_ID</var>
|
|
5645
|
-
// + Organizations scope, no location specified (defaults to global)
|
|
5964
|
+
// + Organizations scope, no location specified (defaults to global):
|
|
5646
5965
|
// `organizations/`<var>ORG_ID</var>
|
|
5647
5966
|
//
|
|
5648
5967
|
// The following example `parent` string specifies a parent project with the
|
|
@@ -5712,13 +6031,13 @@ message ListDeidentifyTemplatesRequest {
|
|
|
5712
6031
|
// (project or organization) and whether you have [specified a processing
|
|
5713
6032
|
// location](https://cloud.google.com/sensitive-data-protection/docs/specifying-location):
|
|
5714
6033
|
//
|
|
5715
|
-
// + Projects scope, location specified
|
|
6034
|
+
// + Projects scope, location specified:
|
|
5716
6035
|
// `projects/`<var>PROJECT_ID</var>`/locations/`<var>LOCATION_ID</var>
|
|
5717
|
-
// + Projects scope, no location specified (defaults to global)
|
|
6036
|
+
// + Projects scope, no location specified (defaults to global):
|
|
5718
6037
|
// `projects/`<var>PROJECT_ID</var>
|
|
5719
|
-
// + Organizations scope, location specified
|
|
6038
|
+
// + Organizations scope, location specified:
|
|
5720
6039
|
// `organizations/`<var>ORG_ID</var>`/locations/`<var>LOCATION_ID</var>
|
|
5721
|
-
// + Organizations scope, no location specified (defaults to global)
|
|
6040
|
+
// + Organizations scope, no location specified (defaults to global):
|
|
5722
6041
|
// `organizations/`<var>ORG_ID</var>
|
|
5723
6042
|
//
|
|
5724
6043
|
// The following example `parent` string specifies a parent project with the
|
|
@@ -5741,7 +6060,7 @@ message ListDeidentifyTemplatesRequest {
|
|
|
5741
6060
|
// returns a page of max size 100.
|
|
5742
6061
|
int32 page_size = 3;
|
|
5743
6062
|
|
|
5744
|
-
// Comma
|
|
6063
|
+
// Comma-separated list of fields to order by,
|
|
5745
6064
|
// followed by `asc` or `desc` postfix. This list is case insensitive. The
|
|
5746
6065
|
// default sorting order is ascending. Redundant space characters are
|
|
5747
6066
|
// insignificant.
|
|
@@ -5909,13 +6228,13 @@ message CreateStoredInfoTypeRequest {
|
|
|
5909
6228
|
// (project or organization) and whether you have [specified a processing
|
|
5910
6229
|
// location](https://cloud.google.com/sensitive-data-protection/docs/specifying-location):
|
|
5911
6230
|
//
|
|
5912
|
-
// + Projects scope, location specified
|
|
6231
|
+
// + Projects scope, location specified:
|
|
5913
6232
|
// `projects/`<var>PROJECT_ID</var>`/locations/`<var>LOCATION_ID</var>
|
|
5914
|
-
// + Projects scope, no location specified (defaults to global)
|
|
6233
|
+
// + Projects scope, no location specified (defaults to global):
|
|
5915
6234
|
// `projects/`<var>PROJECT_ID</var>
|
|
5916
|
-
// + Organizations scope, location specified
|
|
6235
|
+
// + Organizations scope, location specified:
|
|
5917
6236
|
// `organizations/`<var>ORG_ID</var>`/locations/`<var>LOCATION_ID</var>
|
|
5918
|
-
// + Organizations scope, no location specified (defaults to global)
|
|
6237
|
+
// + Organizations scope, no location specified (defaults to global):
|
|
5919
6238
|
// `organizations/`<var>ORG_ID</var>
|
|
5920
6239
|
//
|
|
5921
6240
|
// The following example `parent` string specifies a parent project with the
|
|
@@ -5985,9 +6304,9 @@ message ListStoredInfoTypesRequest {
|
|
|
5985
6304
|
// (project or organization) and whether you have [specified a processing
|
|
5986
6305
|
// location](https://cloud.google.com/sensitive-data-protection/docs/specifying-location):
|
|
5987
6306
|
//
|
|
5988
|
-
// + Projects scope, location specified
|
|
6307
|
+
// + Projects scope, location specified:
|
|
5989
6308
|
// `projects/`<var>PROJECT_ID</var>`/locations/`<var>LOCATION_ID</var>
|
|
5990
|
-
// + Projects scope, no location specified (defaults to global)
|
|
6309
|
+
// + Projects scope, no location specified (defaults to global):
|
|
5991
6310
|
// `projects/`<var>PROJECT_ID</var>
|
|
5992
6311
|
//
|
|
5993
6312
|
// The following example `parent` string specifies a parent project with the
|
|
@@ -6010,7 +6329,7 @@ message ListStoredInfoTypesRequest {
|
|
|
6010
6329
|
// returns a page of max size 100.
|
|
6011
6330
|
int32 page_size = 3;
|
|
6012
6331
|
|
|
6013
|
-
// Comma
|
|
6332
|
+
// Comma-separated list of fields to order by,
|
|
6014
6333
|
// followed by `asc` or `desc` postfix. This list is case insensitive. The
|
|
6015
6334
|
// default sorting order is ascending. Redundant space characters are
|
|
6016
6335
|
// insignificant.
|
|
@@ -6126,6 +6445,7 @@ message HybridFindingDetails {
|
|
|
6126
6445
|
// No more than 10 labels can be associated with a given finding.
|
|
6127
6446
|
//
|
|
6128
6447
|
// Examples:
|
|
6448
|
+
//
|
|
6129
6449
|
// * `"environment" : "production"`
|
|
6130
6450
|
// * `"pipeline" : "etl"`
|
|
6131
6451
|
map<string, string> labels = 5;
|
|
@@ -6273,7 +6593,7 @@ message ListProjectDataProfilesRequest {
|
|
|
6273
6593
|
// returns a page of max size 100.
|
|
6274
6594
|
int32 page_size = 3;
|
|
6275
6595
|
|
|
6276
|
-
// Comma
|
|
6596
|
+
// Comma-separated list of fields to order by, followed by `asc` or `desc`
|
|
6277
6597
|
// postfix. This list is case insensitive. The default sorting order is
|
|
6278
6598
|
// ascending. Redundant space characters are insignificant. Only one order
|
|
6279
6599
|
// field at a time is allowed.
|
|
@@ -6343,7 +6663,7 @@ message ListTableDataProfilesRequest {
|
|
|
6343
6663
|
// returns a page of max size 100.
|
|
6344
6664
|
int32 page_size = 3;
|
|
6345
6665
|
|
|
6346
|
-
// Comma
|
|
6666
|
+
// Comma-separated list of fields to order by, followed by `asc` or `desc`
|
|
6347
6667
|
// postfix. This list is case insensitive. The default sorting order is
|
|
6348
6668
|
// ascending. Redundant space characters are insignificant. Only one order
|
|
6349
6669
|
// field at a time is allowed.
|
|
@@ -6424,12 +6744,13 @@ message ListColumnDataProfilesRequest {
|
|
|
6424
6744
|
// returns a page of max size 100.
|
|
6425
6745
|
int32 page_size = 3;
|
|
6426
6746
|
|
|
6427
|
-
// Comma
|
|
6747
|
+
// Comma-separated list of fields to order by, followed by `asc` or `desc`
|
|
6428
6748
|
// postfix. This list is case insensitive. The default sorting order is
|
|
6429
6749
|
// ascending. Redundant space characters are insignificant. Only one order
|
|
6430
6750
|
// field at a time is allowed.
|
|
6431
6751
|
//
|
|
6432
6752
|
// Examples:
|
|
6753
|
+
//
|
|
6433
6754
|
// * `project_id asc`
|
|
6434
6755
|
// * `table_id`
|
|
6435
6756
|
// * `sensitivity_level desc`
|
|
@@ -6500,6 +6821,9 @@ message DataRiskLevel {
|
|
|
6500
6821
|
// data found.
|
|
6501
6822
|
RISK_LOW = 10;
|
|
6502
6823
|
|
|
6824
|
+
// Unable to determine risk.
|
|
6825
|
+
RISK_UNKNOWN = 12;
|
|
6826
|
+
|
|
6503
6827
|
// Medium risk - Sensitive data may be present but additional access or fine
|
|
6504
6828
|
// grain access restrictions appear to be present. Consider limiting
|
|
6505
6829
|
// access even further or transform data to mask.
|
|
@@ -6541,6 +6865,12 @@ message ProjectDataProfile {
|
|
|
6541
6865
|
|
|
6542
6866
|
// Success or error status of the last attempt to profile the project.
|
|
6543
6867
|
ProfileStatus profile_status = 7;
|
|
6868
|
+
|
|
6869
|
+
// The number of table data profiles generated for this project.
|
|
6870
|
+
int64 table_data_profile_count = 9;
|
|
6871
|
+
|
|
6872
|
+
// The number of file store data profiles generated for this project.
|
|
6873
|
+
int64 file_store_data_profile_count = 10;
|
|
6544
6874
|
}
|
|
6545
6875
|
|
|
6546
6876
|
// How broadly the data in the resource has been shared. New items may be added
|
|
@@ -6554,7 +6884,7 @@ enum ResourceVisibility {
|
|
|
6554
6884
|
|
|
6555
6885
|
// May contain public items.
|
|
6556
6886
|
// For example, if a Cloud Storage bucket has uniform bucket level access
|
|
6557
|
-
// disabled, some objects inside it may be public.
|
|
6887
|
+
// disabled, some objects inside it may be public, but none are known yet.
|
|
6558
6888
|
RESOURCE_VISIBILITY_INCONCLUSIVE = 15;
|
|
6559
6889
|
|
|
6560
6890
|
// Visible only to specific users.
|
|
@@ -6613,7 +6943,7 @@ message TableDataProfile {
|
|
|
6613
6943
|
// The resource type that was profiled.
|
|
6614
6944
|
DataSourceType data_source_type = 36;
|
|
6615
6945
|
|
|
6616
|
-
// The resource name
|
|
6946
|
+
// The resource name of the project data profile for this table.
|
|
6617
6947
|
string project_data_profile = 2;
|
|
6618
6948
|
|
|
6619
6949
|
// The Google Cloud project ID that owns the resource.
|
|
@@ -6936,6 +7266,164 @@ message ColumnDataProfile {
|
|
|
6936
7266
|
ColumnPolicyState policy_state = 15;
|
|
6937
7267
|
}
|
|
6938
7268
|
|
|
7269
|
+
// The profile for a file store.
|
|
7270
|
+
//
|
|
7271
|
+
// * Cloud Storage: maps 1:1 with a bucket.
|
|
7272
|
+
message FileStoreDataProfile {
|
|
7273
|
+
option (google.api.resource) = {
|
|
7274
|
+
type: "dlp.googleapis.com/FileStoreDataProfile"
|
|
7275
|
+
pattern: "organizations/{organization}/locations/{location}/fileStoreDataProfiles/{file_store_data_profile}"
|
|
7276
|
+
pattern: "projects/{project}/locations/{location}/fileStoreDataProfiles/{file_store_data_profile}"
|
|
7277
|
+
};
|
|
7278
|
+
|
|
7279
|
+
// Possible states of a profile. New items may be added.
|
|
7280
|
+
enum State {
|
|
7281
|
+
// Unused.
|
|
7282
|
+
STATE_UNSPECIFIED = 0;
|
|
7283
|
+
|
|
7284
|
+
// The profile is currently running. Once a profile has finished it will
|
|
7285
|
+
// transition to DONE.
|
|
7286
|
+
RUNNING = 1;
|
|
7287
|
+
|
|
7288
|
+
// The profile is no longer generating.
|
|
7289
|
+
// If profile_status.status.code is 0, the profile succeeded, otherwise, it
|
|
7290
|
+
// failed.
|
|
7291
|
+
DONE = 2;
|
|
7292
|
+
}
|
|
7293
|
+
|
|
7294
|
+
// The name of the profile.
|
|
7295
|
+
string name = 1;
|
|
7296
|
+
|
|
7297
|
+
// The resource type that was profiled.
|
|
7298
|
+
DataSourceType data_source_type = 2;
|
|
7299
|
+
|
|
7300
|
+
// The resource name of the project data profile for this file store.
|
|
7301
|
+
string project_data_profile = 3;
|
|
7302
|
+
|
|
7303
|
+
// The Google Cloud project ID that owns the resource.
|
|
7304
|
+
string project_id = 4;
|
|
7305
|
+
|
|
7306
|
+
// The location of the file store.
|
|
7307
|
+
//
|
|
7308
|
+
// * Cloud Storage:
|
|
7309
|
+
// https://cloud.google.com/storage/docs/locations#available-locations
|
|
7310
|
+
string file_store_location = 5;
|
|
7311
|
+
|
|
7312
|
+
// For resources that have multiple storage locations, these are those
|
|
7313
|
+
// regions. For Cloud Storage this is the list of regions chosen for
|
|
7314
|
+
// dual-region storage. `file_store_location` will normally be the
|
|
7315
|
+
// corresponding multi-region for the list of individual locations. The first
|
|
7316
|
+
// region is always picked as the processing and storage location for the data
|
|
7317
|
+
// profile.
|
|
7318
|
+
repeated string data_storage_locations = 19;
|
|
7319
|
+
|
|
7320
|
+
// The location type of the bucket (region, dual-region, multi-region, etc).
|
|
7321
|
+
// If dual-region, expect data_storage_locations to be populated.
|
|
7322
|
+
string location_type = 20;
|
|
7323
|
+
|
|
7324
|
+
// The file store path.
|
|
7325
|
+
//
|
|
7326
|
+
// * Cloud Storage: `gs://{bucket}`
|
|
7327
|
+
string file_store_path = 6;
|
|
7328
|
+
|
|
7329
|
+
// The resource name of the resource profiled.
|
|
7330
|
+
// https://cloud.google.com/apis/design/resource_names#full_resource_name
|
|
7331
|
+
string full_resource = 24;
|
|
7332
|
+
|
|
7333
|
+
// The snapshot of the configurations used to generate the profile.
|
|
7334
|
+
DataProfileConfigSnapshot config_snapshot = 7;
|
|
7335
|
+
|
|
7336
|
+
// Success or error status from the most recent profile generation attempt.
|
|
7337
|
+
// May be empty if the profile is still being generated.
|
|
7338
|
+
ProfileStatus profile_status = 8;
|
|
7339
|
+
|
|
7340
|
+
// State of a profile.
|
|
7341
|
+
State state = 9;
|
|
7342
|
+
|
|
7343
|
+
// The last time the profile was generated.
|
|
7344
|
+
google.protobuf.Timestamp profile_last_generated = 10;
|
|
7345
|
+
|
|
7346
|
+
// How broadly a resource has been shared.
|
|
7347
|
+
ResourceVisibility resource_visibility = 11;
|
|
7348
|
+
|
|
7349
|
+
// The sensitivity score of this resource.
|
|
7350
|
+
SensitivityScore sensitivity_score = 12;
|
|
7351
|
+
|
|
7352
|
+
// The data risk level of this resource.
|
|
7353
|
+
DataRiskLevel data_risk_level = 13;
|
|
7354
|
+
|
|
7355
|
+
// The time the file store was first created.
|
|
7356
|
+
google.protobuf.Timestamp create_time = 14;
|
|
7357
|
+
|
|
7358
|
+
// The time the file store was last modified.
|
|
7359
|
+
google.protobuf.Timestamp last_modified_time = 15;
|
|
7360
|
+
|
|
7361
|
+
// FileClusterSummary per each cluster.
|
|
7362
|
+
repeated FileClusterSummary file_cluster_summaries = 16;
|
|
7363
|
+
|
|
7364
|
+
// Attributes of the resource being profiled.
|
|
7365
|
+
// Currently used attributes:
|
|
7366
|
+
//
|
|
7367
|
+
// * customer_managed_encryption: boolean
|
|
7368
|
+
// - true: the resource is encrypted with a customer-managed key.
|
|
7369
|
+
// - false: the resource is encrypted with a provider-managed key.
|
|
7370
|
+
map<string, Value> resource_attributes = 17;
|
|
7371
|
+
|
|
7372
|
+
// The labels applied to the resource at the time the profile was generated.
|
|
7373
|
+
map<string, string> resource_labels = 18;
|
|
7374
|
+
|
|
7375
|
+
// InfoTypes detected in this file store.
|
|
7376
|
+
repeated FileStoreInfoTypeSummary file_store_info_type_summaries = 21;
|
|
7377
|
+
|
|
7378
|
+
// The file store does not have any files.
|
|
7379
|
+
bool file_store_is_empty = 23;
|
|
7380
|
+
}
|
|
7381
|
+
|
|
7382
|
+
// Information regarding the discovered InfoType.
|
|
7383
|
+
message FileStoreInfoTypeSummary {
|
|
7384
|
+
// The InfoType seen.
|
|
7385
|
+
InfoType info_type = 1;
|
|
7386
|
+
}
|
|
7387
|
+
|
|
7388
|
+
// Information regarding the discovered file extension.
|
|
7389
|
+
message FileExtensionInfo {
|
|
7390
|
+
// The file extension if set. (aka .pdf, .jpg, .txt)
|
|
7391
|
+
string file_extension = 1;
|
|
7392
|
+
}
|
|
7393
|
+
|
|
7394
|
+
// The file cluster summary.
|
|
7395
|
+
message FileClusterSummary {
|
|
7396
|
+
// The file cluster type.
|
|
7397
|
+
FileClusterType file_cluster_type = 1;
|
|
7398
|
+
|
|
7399
|
+
// InfoTypes detected in this cluster.
|
|
7400
|
+
repeated FileStoreInfoTypeSummary file_store_info_type_summaries = 2;
|
|
7401
|
+
|
|
7402
|
+
// The sensitivity score of this cluster. The score will be SENSITIVITY_LOW
|
|
7403
|
+
// if nothing has been scanned.
|
|
7404
|
+
SensitivityScore sensitivity_score = 3;
|
|
7405
|
+
|
|
7406
|
+
// The data risk level of this cluster. RISK_LOW if nothing has been
|
|
7407
|
+
// scanned.
|
|
7408
|
+
DataRiskLevel data_risk_level = 4;
|
|
7409
|
+
|
|
7410
|
+
// A list of errors detected while scanning this cluster. The list is
|
|
7411
|
+
// truncated to 10 per cluster.
|
|
7412
|
+
repeated Error errors = 6;
|
|
7413
|
+
|
|
7414
|
+
// A sample of file types scanned in this cluster. Empty if no files were
|
|
7415
|
+
// scanned.
|
|
7416
|
+
repeated FileExtensionInfo file_extensions_scanned = 7;
|
|
7417
|
+
|
|
7418
|
+
// A sample of file types seen in this cluster. Empty if no files were seen.
|
|
7419
|
+
repeated FileExtensionInfo file_extensions_seen = 8;
|
|
7420
|
+
|
|
7421
|
+
// True if no files exist in this cluster. If the bucket had more files than
|
|
7422
|
+
// could be listed, this will be false even if no files for this cluster
|
|
7423
|
+
// were seen and file_extensions_seen is empty.
|
|
7424
|
+
bool no_files_exist = 9;
|
|
7425
|
+
}
|
|
7426
|
+
|
|
6939
7427
|
// Request to get a project data profile.
|
|
6940
7428
|
message GetProjectDataProfileRequest {
|
|
6941
7429
|
// Required. Resource name, for example
|
|
@@ -6948,6 +7436,112 @@ message GetProjectDataProfileRequest {
|
|
|
6948
7436
|
];
|
|
6949
7437
|
}
|
|
6950
7438
|
|
|
7439
|
+
// Request to get a file store data profile.
|
|
7440
|
+
message GetFileStoreDataProfileRequest {
|
|
7441
|
+
// Required. Resource name, for example
|
|
7442
|
+
// `organizations/12345/locations/us/fileStoreDataProfiles/53234423`.
|
|
7443
|
+
string name = 1 [
|
|
7444
|
+
(google.api.field_behavior) = REQUIRED,
|
|
7445
|
+
(google.api.resource_reference) = {
|
|
7446
|
+
type: "dlp.googleapis.com/ProjectDataProfile"
|
|
7447
|
+
}
|
|
7448
|
+
];
|
|
7449
|
+
}
|
|
7450
|
+
|
|
7451
|
+
// Request to list the file store profiles generated for a given organization or
|
|
7452
|
+
// project.
|
|
7453
|
+
message ListFileStoreDataProfilesRequest {
|
|
7454
|
+
// Required. Resource name of the organization or project, for
|
|
7455
|
+
// example `organizations/433245324/locations/europe` or
|
|
7456
|
+
// `projects/project-id/locations/asia`.
|
|
7457
|
+
string parent = 1 [
|
|
7458
|
+
(google.api.field_behavior) = REQUIRED,
|
|
7459
|
+
(google.api.resource_reference) = {
|
|
7460
|
+
child_type: "dlp.googleapis.com/FileStoreDataProfile"
|
|
7461
|
+
}
|
|
7462
|
+
];
|
|
7463
|
+
|
|
7464
|
+
// Optional. Page token to continue retrieval.
|
|
7465
|
+
string page_token = 2 [(google.api.field_behavior) = OPTIONAL];
|
|
7466
|
+
|
|
7467
|
+
// Optional. Size of the page. This value can be limited by the server. If
|
|
7468
|
+
// zero, server returns a page of max size 100.
|
|
7469
|
+
int32 page_size = 3 [(google.api.field_behavior) = OPTIONAL];
|
|
7470
|
+
|
|
7471
|
+
// Optional. Comma-separated list of fields to order by, followed by `asc` or
|
|
7472
|
+
// `desc` postfix. This list is case insensitive. The default sorting order is
|
|
7473
|
+
// ascending. Redundant space characters are insignificant. Only one order
|
|
7474
|
+
// field at a time is allowed.
|
|
7475
|
+
//
|
|
7476
|
+
// Examples:
|
|
7477
|
+
//
|
|
7478
|
+
// * `project_id asc`
|
|
7479
|
+
// * `name`
|
|
7480
|
+
// * `sensitivity_level desc`
|
|
7481
|
+
//
|
|
7482
|
+
// Supported fields are:
|
|
7483
|
+
//
|
|
7484
|
+
// - `project_id`: The Google Cloud project ID.
|
|
7485
|
+
// - `sensitivity_level`: How sensitive the data in a table is, at most.
|
|
7486
|
+
// - `data_risk_level`: How much risk is associated with this data.
|
|
7487
|
+
// - `profile_last_generated`: When the profile was last updated in epoch
|
|
7488
|
+
// seconds.
|
|
7489
|
+
// - `last_modified`: The last time the resource was modified.
|
|
7490
|
+
// - `resource_visibility`: Visibility restriction for this resource.
|
|
7491
|
+
// - `name`: The name of the profile.
|
|
7492
|
+
// - `create_time`: The time the file store was first created.
|
|
7493
|
+
string order_by = 4 [(google.api.field_behavior) = OPTIONAL];
|
|
7494
|
+
|
|
7495
|
+
// Optional. Allows filtering.
|
|
7496
|
+
//
|
|
7497
|
+
// Supported syntax:
|
|
7498
|
+
//
|
|
7499
|
+
// * Filter expressions are made up of one or more restrictions.
|
|
7500
|
+
// * Restrictions can be combined by `AND` or `OR` logical operators. A
|
|
7501
|
+
// sequence of restrictions implicitly uses `AND`.
|
|
7502
|
+
// * A restriction has the form of `{field} {operator} {value}`.
|
|
7503
|
+
// * Supported fields/values:
|
|
7504
|
+
// - `project_id` - The Google Cloud project ID.
|
|
7505
|
+
// - `file_store_path` - The path like "gs://bucket".
|
|
7506
|
+
// - `sensitivity_level` - HIGH|MODERATE|LOW
|
|
7507
|
+
// - `data_risk_level` - HIGH|MODERATE|LOW
|
|
7508
|
+
// - `resource_visibility`: PUBLIC|RESTRICTED
|
|
7509
|
+
// - `status_code` - an RPC status code as defined in
|
|
7510
|
+
// https://github.com/googleapis/googleapis/blob/master/google/rpc/code.proto
|
|
7511
|
+
// * The operator must be `=` or `!=`.
|
|
7512
|
+
//
|
|
7513
|
+
// Examples:
|
|
7514
|
+
//
|
|
7515
|
+
// * `project_id = 12345 AND status_code = 1`
|
|
7516
|
+
// * `project_id = 12345 AND sensitivity_level = HIGH`
|
|
7517
|
+
// * `project_id = 12345 AND resource_visibility = PUBLIC`
|
|
7518
|
+
// * `file_store_path = "gs://mybucket"`
|
|
7519
|
+
//
|
|
7520
|
+
// The length of this field should be no more than 500 characters.
|
|
7521
|
+
string filter = 5 [(google.api.field_behavior) = OPTIONAL];
|
|
7522
|
+
}
|
|
7523
|
+
|
|
7524
|
+
// List of file store data profiles generated for a given organization or
|
|
7525
|
+
// project.
|
|
7526
|
+
message ListFileStoreDataProfilesResponse {
|
|
7527
|
+
// List of data profiles.
|
|
7528
|
+
repeated FileStoreDataProfile file_store_data_profiles = 1;
|
|
7529
|
+
|
|
7530
|
+
// The next page token.
|
|
7531
|
+
string next_page_token = 2;
|
|
7532
|
+
}
|
|
7533
|
+
|
|
7534
|
+
// Request message for DeleteFileStoreProfile.
|
|
7535
|
+
message DeleteFileStoreDataProfileRequest {
|
|
7536
|
+
// Required. Resource name of the file store data profile.
|
|
7537
|
+
string name = 1 [
|
|
7538
|
+
(google.api.field_behavior) = REQUIRED,
|
|
7539
|
+
(google.api.resource_reference) = {
|
|
7540
|
+
type: "dlp.googleapis.com/FileStoreDataProfile"
|
|
7541
|
+
}
|
|
7542
|
+
];
|
|
7543
|
+
}
|
|
7544
|
+
|
|
6951
7545
|
// Request to get a table data profile.
|
|
6952
7546
|
message GetTableDataProfileRequest {
|
|
6953
7547
|
// Required. Resource name, for example
|
|
@@ -7032,6 +7626,11 @@ message DataProfilePubSubMessage {
|
|
|
7032
7626
|
// `full_resource` will be populated.
|
|
7033
7627
|
TableDataProfile profile = 1;
|
|
7034
7628
|
|
|
7629
|
+
// If `DetailLevel` is `FILE_STORE_PROFILE` this will be fully populated.
|
|
7630
|
+
// Otherwise, if `DetailLevel` is `RESOURCE_NAME`, then only `name` and
|
|
7631
|
+
// `file_store_path` will be populated.
|
|
7632
|
+
FileStoreDataProfile file_store_profile = 3;
|
|
7633
|
+
|
|
7035
7634
|
// The event that caused the Pub/Sub message to be sent.
|
|
7036
7635
|
DataProfileAction.EventType event = 2;
|
|
7037
7636
|
}
|
|
@@ -7288,3 +7887,46 @@ message DataSourceType {
|
|
|
7288
7887
|
// Current values: google/bigquery/table, google/project
|
|
7289
7888
|
string data_source = 1 [(google.api.field_behavior) = OUTPUT_ONLY];
|
|
7290
7889
|
}
|
|
7890
|
+
|
|
7891
|
+
// Message used to identify file cluster type being profiled.
|
|
7892
|
+
message FileClusterType {
|
|
7893
|
+
// Cluster type. Each cluster corresponds to a set of file types.
|
|
7894
|
+
// Over time new types may be added.
|
|
7895
|
+
enum Cluster {
|
|
7896
|
+
// Unused.
|
|
7897
|
+
CLUSTER_UNSPECIFIED = 0;
|
|
7898
|
+
|
|
7899
|
+
// Unsupported files.
|
|
7900
|
+
CLUSTER_UNKNOWN = 1;
|
|
7901
|
+
|
|
7902
|
+
// Plain text.
|
|
7903
|
+
CLUSTER_TEXT = 2;
|
|
7904
|
+
|
|
7905
|
+
// Structured data like CSV, TSV etc.
|
|
7906
|
+
CLUSTER_STRUCTURED_DATA = 3;
|
|
7907
|
+
|
|
7908
|
+
// Source code.
|
|
7909
|
+
CLUSTER_SOURCE_CODE = 4;
|
|
7910
|
+
|
|
7911
|
+
// Rich document like docx, xlsx etc.
|
|
7912
|
+
CLUSTER_RICH_DOCUMENT = 5;
|
|
7913
|
+
|
|
7914
|
+
// Images like jpeg, bmp.
|
|
7915
|
+
CLUSTER_IMAGE = 6;
|
|
7916
|
+
|
|
7917
|
+
// Archives and containers like .zip, .tar etc.
|
|
7918
|
+
CLUSTER_ARCHIVE = 7;
|
|
7919
|
+
|
|
7920
|
+
// Multimedia like .mp4, .avi etc.
|
|
7921
|
+
CLUSTER_MULTIMEDIA = 8;
|
|
7922
|
+
|
|
7923
|
+
// Executable files like .exe, .class, .apk etc.
|
|
7924
|
+
CLUSTER_EXECUTABLE = 9;
|
|
7925
|
+
}
|
|
7926
|
+
|
|
7927
|
+
// File cluster type.
|
|
7928
|
+
oneof file_cluster_type {
|
|
7929
|
+
// Cluster type.
|
|
7930
|
+
Cluster cluster = 1;
|
|
7931
|
+
}
|
|
7932
|
+
}
|