@google-cloud/dlp 4.1.0 → 4.2.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 +22 -0
- package/build/protos/google/privacy/dlp/v2/dlp.proto +470 -119
- package/build/protos/google/privacy/dlp/v2/storage.proto +50 -6
- package/build/protos/protos.d.ts +5363 -1938
- package/build/protos/protos.js +14202 -5046
- package/build/protos/protos.json +330 -19
- package/build/src/v2/dlp_service_client.d.ts +140 -91
- package/build/src/v2/dlp_service_client.js +255 -151
- package/build/src/v2/dlp_service_client.js.map +1 -1
- package/package.json +2 -2
|
@@ -133,7 +133,7 @@ service DlpService {
|
|
|
133
133
|
};
|
|
134
134
|
}
|
|
135
135
|
|
|
136
|
-
// Returns a list of the sensitive information types that
|
|
136
|
+
// Returns a list of the sensitive information types that DLP API
|
|
137
137
|
// supports. See https://cloud.google.com/dlp/docs/infotypes-reference to
|
|
138
138
|
// learn more.
|
|
139
139
|
rpc ListInfoTypes(ListInfoTypesRequest) returns (ListInfoTypesResponse) {
|
|
@@ -146,7 +146,7 @@ service DlpService {
|
|
|
146
146
|
option (google.api.method_signature) = "parent";
|
|
147
147
|
}
|
|
148
148
|
|
|
149
|
-
// Creates an InspectTemplate for
|
|
149
|
+
// Creates an InspectTemplate for reusing frequently used configuration
|
|
150
150
|
// for inspecting content, images, and storage.
|
|
151
151
|
// See https://cloud.google.com/dlp/docs/creating-templates to learn more.
|
|
152
152
|
rpc CreateInspectTemplate(CreateInspectTemplateRequest) returns (InspectTemplate) {
|
|
@@ -245,7 +245,7 @@ service DlpService {
|
|
|
245
245
|
option (google.api.method_signature) = "name";
|
|
246
246
|
}
|
|
247
247
|
|
|
248
|
-
// Creates a DeidentifyTemplate for
|
|
248
|
+
// Creates a DeidentifyTemplate for reusing frequently used configuration
|
|
249
249
|
// for de-identifying content, images, and storage.
|
|
250
250
|
// See https://cloud.google.com/dlp/docs/creating-templates-deid to learn
|
|
251
251
|
// more.
|
|
@@ -505,7 +505,7 @@ service DlpService {
|
|
|
505
505
|
}
|
|
506
506
|
|
|
507
507
|
// Deletes a long-running DlpJob. This method indicates that the client is
|
|
508
|
-
// no longer interested in the DlpJob result. The job will be
|
|
508
|
+
// no longer interested in the DlpJob result. The job will be canceled if
|
|
509
509
|
// possible.
|
|
510
510
|
// See https://cloud.google.com/dlp/docs/inspecting-storage and
|
|
511
511
|
// https://cloud.google.com/dlp/docs/compute-risk-analysis to learn more.
|
|
@@ -660,7 +660,7 @@ service DlpService {
|
|
|
660
660
|
}
|
|
661
661
|
}
|
|
662
662
|
|
|
663
|
-
// List of
|
|
663
|
+
// List of excluded infoTypes.
|
|
664
664
|
message ExcludeInfoTypes {
|
|
665
665
|
// InfoType list in ExclusionRule rule drops a finding when it overlaps or
|
|
666
666
|
// contained within with a finding of an infoType from this list. For
|
|
@@ -721,6 +721,12 @@ message InspectionRuleSet {
|
|
|
721
721
|
message InspectConfig {
|
|
722
722
|
// Configuration to control the number of findings returned for inspection.
|
|
723
723
|
// This is not used for de-identification or data profiling.
|
|
724
|
+
//
|
|
725
|
+
// When redacting sensitive data from images, finding limits don't apply. They
|
|
726
|
+
// can cause unexpected or inconsistent results, where only some data is
|
|
727
|
+
// redacted. Don't include finding limits in
|
|
728
|
+
// [RedactImage][google.privacy.dlp.v2.DlpService.RedactImage]
|
|
729
|
+
// requests. Otherwise, Cloud DLP returns an error.
|
|
724
730
|
message FindingLimits {
|
|
725
731
|
// Max findings configuration per infoType, per content item or long
|
|
726
732
|
// running DlpJob.
|
|
@@ -770,6 +776,12 @@ message InspectConfig {
|
|
|
770
776
|
|
|
771
777
|
// Configuration to control the number of findings returned.
|
|
772
778
|
// This is not used for data profiling.
|
|
779
|
+
//
|
|
780
|
+
// When redacting sensitive data from images, finding limits don't apply. They
|
|
781
|
+
// can cause unexpected or inconsistent results, where only some data is
|
|
782
|
+
// redacted. Don't include finding limits in
|
|
783
|
+
// [RedactImage][google.privacy.dlp.v2.DlpService.RedactImage]
|
|
784
|
+
// requests. Otherwise, Cloud DLP returns an error.
|
|
773
785
|
FindingLimits limits = 3;
|
|
774
786
|
|
|
775
787
|
// When true, a contextual quote from the data that triggered a finding is
|
|
@@ -1006,7 +1018,7 @@ message ContentLocation {
|
|
|
1006
1018
|
// * Datastore namespace: {namespace}
|
|
1007
1019
|
//
|
|
1008
1020
|
// Nested names could be absent if the embedded object has no string
|
|
1009
|
-
// identifier (for
|
|
1021
|
+
// identifier (for example, an image contained within a document).
|
|
1010
1022
|
string container_name = 1;
|
|
1011
1023
|
|
|
1012
1024
|
// Type of the container within the file with location of the finding.
|
|
@@ -1024,14 +1036,14 @@ message ContentLocation {
|
|
|
1024
1036
|
MetadataLocation metadata_location = 8;
|
|
1025
1037
|
}
|
|
1026
1038
|
|
|
1027
|
-
//
|
|
1028
|
-
//
|
|
1029
|
-
//
|
|
1030
|
-
//
|
|
1039
|
+
// Finding container modification timestamp, if applicable. For Cloud Storage,
|
|
1040
|
+
// this field contains the last file modification timestamp. For a BigQuery
|
|
1041
|
+
// table, this field contains the last_modified_time property. For Datastore,
|
|
1042
|
+
// this field isn't populated.
|
|
1031
1043
|
google.protobuf.Timestamp container_timestamp = 6;
|
|
1032
1044
|
|
|
1033
|
-
//
|
|
1034
|
-
// ("generation" for
|
|
1045
|
+
// Finding container version, if available
|
|
1046
|
+
// ("generation" for Cloud Storage).
|
|
1035
1047
|
string container_version = 7;
|
|
1036
1048
|
}
|
|
1037
1049
|
|
|
@@ -1086,7 +1098,7 @@ message TableLocation {
|
|
|
1086
1098
|
// Represents a container that may contain DLP findings.
|
|
1087
1099
|
// Examples of a container include a file, table, or database record.
|
|
1088
1100
|
message Container {
|
|
1089
|
-
// Container type, for example BigQuery or
|
|
1101
|
+
// Container type, for example BigQuery or Cloud Storage.
|
|
1090
1102
|
string type = 1;
|
|
1091
1103
|
|
|
1092
1104
|
// Project where the finding was found.
|
|
@@ -1096,33 +1108,35 @@ message Container {
|
|
|
1096
1108
|
// A string representation of the full container name.
|
|
1097
1109
|
// Examples:
|
|
1098
1110
|
// - BigQuery: 'Project:DataSetId.TableId'
|
|
1099
|
-
// -
|
|
1111
|
+
// - Cloud Storage: 'gs://Bucket/folders/filename.txt'
|
|
1100
1112
|
string full_path = 3;
|
|
1101
1113
|
|
|
1102
1114
|
// The root of the container.
|
|
1103
1115
|
// Examples:
|
|
1116
|
+
//
|
|
1104
1117
|
// - For BigQuery table `project_id:dataset_id.table_id`, the root is
|
|
1105
1118
|
// `dataset_id`
|
|
1106
|
-
// - For
|
|
1119
|
+
// - For Cloud Storage file `gs://bucket/folder/filename.txt`, the root
|
|
1107
1120
|
// is `gs://bucket`
|
|
1108
1121
|
string root_path = 4;
|
|
1109
1122
|
|
|
1110
1123
|
// The rest of the path after the root.
|
|
1111
1124
|
// Examples:
|
|
1125
|
+
//
|
|
1112
1126
|
// - For BigQuery table `project_id:dataset_id.table_id`, the relative path is
|
|
1113
1127
|
// `table_id`
|
|
1114
|
-
// -
|
|
1128
|
+
// - For Cloud Storage file `gs://bucket/folder/filename.txt`, the relative
|
|
1115
1129
|
// path is `folder/filename.txt`
|
|
1116
1130
|
string relative_path = 5;
|
|
1117
1131
|
|
|
1118
|
-
// Findings container modification timestamp, if applicable.
|
|
1119
|
-
//
|
|
1120
|
-
//
|
|
1121
|
-
//
|
|
1132
|
+
// Findings container modification timestamp, if applicable. For Cloud
|
|
1133
|
+
// Storage, this field contains the last file modification timestamp. For a
|
|
1134
|
+
// BigQuery table, this field contains the last_modified_time property. For
|
|
1135
|
+
// Datastore, this field isn't populated.
|
|
1122
1136
|
google.protobuf.Timestamp update_time = 6;
|
|
1123
1137
|
|
|
1124
1138
|
// Findings container version, if available
|
|
1125
|
-
// ("generation" for
|
|
1139
|
+
// ("generation" for Cloud Storage).
|
|
1126
1140
|
string version = 7;
|
|
1127
1141
|
}
|
|
1128
1142
|
|
|
@@ -1242,7 +1256,7 @@ message RedactImageResponse {
|
|
|
1242
1256
|
InspectResult inspect_result = 3;
|
|
1243
1257
|
}
|
|
1244
1258
|
|
|
1245
|
-
// Request to de-identify a
|
|
1259
|
+
// Request to de-identify a ContentItem.
|
|
1246
1260
|
message DeidentifyContentRequest {
|
|
1247
1261
|
// Parent resource name.
|
|
1248
1262
|
//
|
|
@@ -1367,7 +1381,7 @@ message ReidentifyContentRequest {
|
|
|
1367
1381
|
string location_id = 7;
|
|
1368
1382
|
}
|
|
1369
1383
|
|
|
1370
|
-
// Results of re-identifying
|
|
1384
|
+
// Results of re-identifying an item.
|
|
1371
1385
|
message ReidentifyContentResponse {
|
|
1372
1386
|
// The re-identified item.
|
|
1373
1387
|
ContentItem item = 1;
|
|
@@ -1434,7 +1448,7 @@ message OutputStorageConfig {
|
|
|
1434
1448
|
// `timestamp`.
|
|
1435
1449
|
BASIC_COLUMNS = 1;
|
|
1436
1450
|
|
|
1437
|
-
// Schema tailored to findings from scanning
|
|
1451
|
+
// Schema tailored to findings from scanning Cloud Storage.
|
|
1438
1452
|
GCS_COLUMNS = 2;
|
|
1439
1453
|
|
|
1440
1454
|
// Schema tailored to findings from scanning Google Datastore.
|
|
@@ -1452,8 +1466,8 @@ message OutputStorageConfig {
|
|
|
1452
1466
|
// Store findings in an existing table or a new table in an existing
|
|
1453
1467
|
// dataset. If table_id is not set a new one will be generated
|
|
1454
1468
|
// for you with the following format:
|
|
1455
|
-
// dlp_googleapis_yyyy_mm_dd_[dlp_job_id]. Pacific
|
|
1456
|
-
// generating the date details.
|
|
1469
|
+
// dlp_googleapis_yyyy_mm_dd_[dlp_job_id]. Pacific time zone will be used
|
|
1470
|
+
// for generating the date details.
|
|
1457
1471
|
//
|
|
1458
1472
|
// For Inspect, each column in an existing output table must have the same
|
|
1459
1473
|
// name, type, and mode of a field in the `Finding` object.
|
|
@@ -1555,6 +1569,9 @@ message InfoTypeDescription {
|
|
|
1555
1569
|
// request.
|
|
1556
1570
|
string description = 4;
|
|
1557
1571
|
|
|
1572
|
+
// A list of available versions for the infotype.
|
|
1573
|
+
repeated VersionDescription versions = 9;
|
|
1574
|
+
|
|
1558
1575
|
// The category of the infoType.
|
|
1559
1576
|
repeated InfoTypeCategory categories = 10;
|
|
1560
1577
|
}
|
|
@@ -1751,6 +1768,15 @@ message InfoTypeCategory {
|
|
|
1751
1768
|
}
|
|
1752
1769
|
}
|
|
1753
1770
|
|
|
1771
|
+
// Details about each available version for an infotype.
|
|
1772
|
+
message VersionDescription {
|
|
1773
|
+
// Name of the version
|
|
1774
|
+
string version = 1;
|
|
1775
|
+
|
|
1776
|
+
// Description of the version.
|
|
1777
|
+
string description = 2;
|
|
1778
|
+
}
|
|
1779
|
+
|
|
1754
1780
|
// Request for the list of infoTypes.
|
|
1755
1781
|
message ListInfoTypesRequest {
|
|
1756
1782
|
// The parent resource name.
|
|
@@ -2202,10 +2228,10 @@ message AnalyzeDataSourceRiskDetails {
|
|
|
2202
2228
|
repeated Value quasi_ids_values = 1;
|
|
2203
2229
|
|
|
2204
2230
|
// The estimated probability that a given individual sharing these
|
|
2205
|
-
// quasi-identifier values is in the dataset. This value, typically
|
|
2206
|
-
// δ, is the ratio between the number of records in the dataset
|
|
2207
|
-
// quasi-identifier values, and the total number of individuals
|
|
2208
|
-
// *and* outside the dataset) with these quasi-identifier values.
|
|
2231
|
+
// quasi-identifier values is in the dataset. This value, typically
|
|
2232
|
+
// called δ, is the ratio between the number of records in the dataset
|
|
2233
|
+
// with these quasi-identifier values, and the total number of individuals
|
|
2234
|
+
// (inside *and* outside the dataset) with these quasi-identifier values.
|
|
2209
2235
|
// For example, if there are 15 individuals in the dataset who share the
|
|
2210
2236
|
// same quasi-identifier values, and an estimated 100 people in the entire
|
|
2211
2237
|
// population with these values, then δ is 0.15.
|
|
@@ -2375,6 +2401,9 @@ message DeidentifyConfig {
|
|
|
2375
2401
|
// specific locations within structured datasets, such as transforming
|
|
2376
2402
|
// a column within a table.
|
|
2377
2403
|
RecordTransformations record_transformations = 2;
|
|
2404
|
+
|
|
2405
|
+
// Treat the dataset as an image and redact.
|
|
2406
|
+
ImageTransformations image_transformations = 4;
|
|
2378
2407
|
}
|
|
2379
2408
|
|
|
2380
2409
|
// Mode for handling transformation errors. If left unspecified, the default
|
|
@@ -2382,6 +2411,49 @@ message DeidentifyConfig {
|
|
|
2382
2411
|
TransformationErrorHandling transformation_error_handling = 3;
|
|
2383
2412
|
}
|
|
2384
2413
|
|
|
2414
|
+
// A type of transformation that is applied over images.
|
|
2415
|
+
message ImageTransformations {
|
|
2416
|
+
// Configuration for determining how redaction of images should occur.
|
|
2417
|
+
message ImageTransformation {
|
|
2418
|
+
// Apply transformation to the selected info_types.
|
|
2419
|
+
message SelectedInfoTypes {
|
|
2420
|
+
// Required. InfoTypes to apply the transformation to. Required. Provided InfoType
|
|
2421
|
+
// must be unique within the ImageTransformations message.
|
|
2422
|
+
repeated InfoType info_types = 5 [(google.api.field_behavior) = REQUIRED];
|
|
2423
|
+
}
|
|
2424
|
+
|
|
2425
|
+
// Apply transformation to all findings.
|
|
2426
|
+
message AllInfoTypes {
|
|
2427
|
+
|
|
2428
|
+
}
|
|
2429
|
+
|
|
2430
|
+
// Apply to all text.
|
|
2431
|
+
message AllText {
|
|
2432
|
+
|
|
2433
|
+
}
|
|
2434
|
+
|
|
2435
|
+
oneof target {
|
|
2436
|
+
// Apply transformation to the selected info_types.
|
|
2437
|
+
SelectedInfoTypes selected_info_types = 4;
|
|
2438
|
+
|
|
2439
|
+
// Apply transformation to all findings not specified in other
|
|
2440
|
+
// ImageTransformation's selected_info_types. Only one instance is allowed
|
|
2441
|
+
// within the ImageTransformations message.
|
|
2442
|
+
AllInfoTypes all_info_types = 5;
|
|
2443
|
+
|
|
2444
|
+
// Apply transformation to all text that doesn't match an infoType. Only
|
|
2445
|
+
// one instance is allowed within the ImageTransformations message.
|
|
2446
|
+
AllText all_text = 6;
|
|
2447
|
+
}
|
|
2448
|
+
|
|
2449
|
+
// The color to use when redacting content from an image. If not
|
|
2450
|
+
// specified, the default is black.
|
|
2451
|
+
Color redaction_color = 3;
|
|
2452
|
+
}
|
|
2453
|
+
|
|
2454
|
+
repeated ImageTransformation transforms = 2;
|
|
2455
|
+
}
|
|
2456
|
+
|
|
2385
2457
|
// How to handle transformation errors during de-identification. A
|
|
2386
2458
|
// transformation error occurs when the requested transformation is incompatible
|
|
2387
2459
|
// with the data. For example, trying to de-identify an IP address using a
|
|
@@ -2558,7 +2630,7 @@ message CryptoDeterministicConfig {
|
|
|
2558
2630
|
// plaintext would be used as is for encryption.
|
|
2559
2631
|
//
|
|
2560
2632
|
// Note that case (1) is expected when an `InfoTypeTransformation` is
|
|
2561
|
-
// applied to both structured and
|
|
2633
|
+
// applied to both structured and unstructured `ContentItem`s.
|
|
2562
2634
|
FieldId context = 3;
|
|
2563
2635
|
}
|
|
2564
2636
|
|
|
@@ -2593,7 +2665,7 @@ message RedactConfig {
|
|
|
2593
2665
|
// Characters to skip when doing deidentification of a value. These will be left
|
|
2594
2666
|
// alone and skipped.
|
|
2595
2667
|
message CharsToIgnore {
|
|
2596
|
-
// Convenience enum for
|
|
2668
|
+
// Convenience enum for indicating common characters to not transform.
|
|
2597
2669
|
enum CommonCharsToIgnore {
|
|
2598
2670
|
// Unused.
|
|
2599
2671
|
COMMON_CHARS_TO_IGNORE_UNSPECIFIED = 0;
|
|
@@ -2639,6 +2711,21 @@ message CharacterMaskConfig {
|
|
|
2639
2711
|
|
|
2640
2712
|
// Number of characters to mask. If not set, all matching chars will be
|
|
2641
2713
|
// masked. Skipped characters do not count towards this tally.
|
|
2714
|
+
//
|
|
2715
|
+
// If `number_to_mask` is negative, this denotes inverse masking. Cloud DLP
|
|
2716
|
+
// masks all but a number of characters.
|
|
2717
|
+
// For example, suppose you have the following values:
|
|
2718
|
+
//
|
|
2719
|
+
// - `masking_character` is `*`
|
|
2720
|
+
// - `number_to_mask` is `-4`
|
|
2721
|
+
// - `reverse_order` is `false`
|
|
2722
|
+
// - `CharsToIgnore` includes `-`
|
|
2723
|
+
// - Input string is `1234-5678-9012-3456`
|
|
2724
|
+
//
|
|
2725
|
+
// The resulting de-identified string is
|
|
2726
|
+
// `****-****-****-3456`. Cloud DLP masks all but the last four characters.
|
|
2727
|
+
// If `reverse_order` is `true`, all but the first four characters are masked
|
|
2728
|
+
// as `1234-****-****-****`.
|
|
2642
2729
|
int32 number_to_mask = 2;
|
|
2643
2730
|
|
|
2644
2731
|
// Mask characters in reverse order. For example, if `masking_character` is
|
|
@@ -2732,7 +2819,7 @@ message BucketingConfig {
|
|
|
2732
2819
|
message CryptoReplaceFfxFpeConfig {
|
|
2733
2820
|
// These are commonly used subsets of the alphabet that the FFX mode
|
|
2734
2821
|
// natively supports. In the algorithm, the alphabet is selected using
|
|
2735
|
-
// the "radix". Therefore each corresponds to particular radix.
|
|
2822
|
+
// the "radix". Therefore each corresponds to a particular radix.
|
|
2736
2823
|
enum FfxCommonNativeAlphabet {
|
|
2737
2824
|
// Unused.
|
|
2738
2825
|
FFX_COMMON_NATIVE_ALPHABET_UNSPECIFIED = 0;
|
|
@@ -2765,7 +2852,7 @@ message CryptoReplaceFfxFpeConfig {
|
|
|
2765
2852
|
// a default tweak will be used.
|
|
2766
2853
|
//
|
|
2767
2854
|
// Note that case (1) is expected when an `InfoTypeTransformation` is
|
|
2768
|
-
// applied to both structured and
|
|
2855
|
+
// applied to both structured and unstructured `ContentItem`s.
|
|
2769
2856
|
// Currently, the referenced field may be of value type integer or string.
|
|
2770
2857
|
//
|
|
2771
2858
|
// The tweak is constructed as a sequence of bytes in big endian byte order
|
|
@@ -3021,7 +3108,7 @@ message RecordCondition {
|
|
|
3021
3108
|
repeated Condition conditions = 1;
|
|
3022
3109
|
}
|
|
3023
3110
|
|
|
3024
|
-
// An expression, consisting
|
|
3111
|
+
// An expression, consisting of an operator and conditions.
|
|
3025
3112
|
message Expressions {
|
|
3026
3113
|
// Logical operators for conditional checks.
|
|
3027
3114
|
enum LogicalOperator {
|
|
@@ -3110,10 +3197,209 @@ message TransformationSummary {
|
|
|
3110
3197
|
int64 transformed_bytes = 7;
|
|
3111
3198
|
}
|
|
3112
3199
|
|
|
3200
|
+
// A flattened description of a `PrimitiveTransformation` or
|
|
3201
|
+
// `RecordSuppression`.
|
|
3202
|
+
message TransformationDescription {
|
|
3203
|
+
// The transformation type.
|
|
3204
|
+
TransformationType type = 1;
|
|
3205
|
+
|
|
3206
|
+
// A description of the transformation. This is empty for a
|
|
3207
|
+
// RECORD_SUPPRESSION, or is the output of calling toString() on the
|
|
3208
|
+
// `PrimitiveTransformation` protocol buffer message for any other type of
|
|
3209
|
+
// transformation.
|
|
3210
|
+
string description = 2;
|
|
3211
|
+
|
|
3212
|
+
// A human-readable string representation of the `RecordCondition`
|
|
3213
|
+
// corresponding to this transformation. Set if a `RecordCondition` was used
|
|
3214
|
+
// to determine whether or not to apply this transformation.
|
|
3215
|
+
//
|
|
3216
|
+
// Examples:
|
|
3217
|
+
// * (age_field > 85)
|
|
3218
|
+
// * (age_field <= 18)
|
|
3219
|
+
// * (zip_field exists)
|
|
3220
|
+
// * (zip_field == 01234) && (city_field != "Springville")
|
|
3221
|
+
// * (zip_field == 01234) && (age_field <= 18) && (city_field exists)
|
|
3222
|
+
string condition = 3;
|
|
3223
|
+
|
|
3224
|
+
// Set if the transformation was limited to a specific `InfoType`.
|
|
3225
|
+
InfoType info_type = 4;
|
|
3226
|
+
}
|
|
3227
|
+
|
|
3228
|
+
// Details about a single transformation. This object contains a description of
|
|
3229
|
+
// the transformation, information about whether the transformation was
|
|
3230
|
+
// successfully applied, and the precise location where the transformation
|
|
3231
|
+
// occurred. These details are stored in a user-specified BigQuery table.
|
|
3232
|
+
message TransformationDetails {
|
|
3233
|
+
// The name of the job that completed the transformation.
|
|
3234
|
+
string resource_name = 1;
|
|
3235
|
+
|
|
3236
|
+
// The top level name of the container where the transformation is located
|
|
3237
|
+
// (this will be the source file name or table name).
|
|
3238
|
+
string container_name = 2;
|
|
3239
|
+
|
|
3240
|
+
// Description of transformation. This would only contain more than one
|
|
3241
|
+
// element if there were multiple matching transformations and which one to
|
|
3242
|
+
// apply was ambiguous. Not set for states that contain no transformation,
|
|
3243
|
+
// currently only state that contains no transformation is
|
|
3244
|
+
// TransformationResultStateType.METADATA_UNRETRIEVABLE.
|
|
3245
|
+
repeated TransformationDescription transformation = 3;
|
|
3246
|
+
|
|
3247
|
+
// Status of the transformation, if transformation was not successful, this
|
|
3248
|
+
// will specify what caused it to fail, otherwise it will show that the
|
|
3249
|
+
// transformation was successful.
|
|
3250
|
+
TransformationResultStatus status_details = 4;
|
|
3251
|
+
|
|
3252
|
+
// The number of bytes that were transformed. If transformation was
|
|
3253
|
+
// unsuccessful or did not take place because there was no content to
|
|
3254
|
+
// transform, this will be zero.
|
|
3255
|
+
int64 transformed_bytes = 5;
|
|
3256
|
+
|
|
3257
|
+
// The precise location of the transformed content in the original container.
|
|
3258
|
+
TransformationLocation transformation_location = 6;
|
|
3259
|
+
}
|
|
3260
|
+
|
|
3261
|
+
// Specifies the location of a transformation.
|
|
3262
|
+
message TransformationLocation {
|
|
3263
|
+
oneof location_type {
|
|
3264
|
+
// For infotype transformations, link to the corresponding findings ID so
|
|
3265
|
+
// that location information does not need to be duplicated. Each findings
|
|
3266
|
+
// ID correlates to an entry in the findings output table, this table only
|
|
3267
|
+
// gets created when users specify to save findings (add the save findings
|
|
3268
|
+
// action to the request).
|
|
3269
|
+
string finding_id = 1;
|
|
3270
|
+
|
|
3271
|
+
// For record transformations, provide a field and container information.
|
|
3272
|
+
RecordTransformation record_transformation = 2;
|
|
3273
|
+
}
|
|
3274
|
+
|
|
3275
|
+
// Information about the functionality of the container where this finding
|
|
3276
|
+
// occurred, if available.
|
|
3277
|
+
TransformationContainerType container_type = 3;
|
|
3278
|
+
}
|
|
3279
|
+
|
|
3280
|
+
message RecordTransformation {
|
|
3281
|
+
// For record transformations, provide a field.
|
|
3282
|
+
FieldId field_id = 1;
|
|
3283
|
+
|
|
3284
|
+
// Findings container modification timestamp, if applicable.
|
|
3285
|
+
google.protobuf.Timestamp container_timestamp = 2;
|
|
3286
|
+
|
|
3287
|
+
// Container version, if available ("generation" for Cloud Storage).
|
|
3288
|
+
string container_version = 3;
|
|
3289
|
+
}
|
|
3290
|
+
|
|
3291
|
+
message TransformationResultStatus {
|
|
3292
|
+
// Transformation result status type, this will be either SUCCESS, or it will
|
|
3293
|
+
// be the reason for why the transformation was not completely successful.
|
|
3294
|
+
TransformationResultStatusType result_status_type = 1;
|
|
3295
|
+
|
|
3296
|
+
// Detailed error codes and messages
|
|
3297
|
+
google.rpc.Status details = 2;
|
|
3298
|
+
}
|
|
3299
|
+
|
|
3300
|
+
// Enum of possible outcomes of transformations. SUCCESS if transformation and
|
|
3301
|
+
// storing of transformation was successful, otherwise, reason for not
|
|
3302
|
+
// transforming.
|
|
3303
|
+
enum TransformationResultStatusType {
|
|
3304
|
+
STATE_TYPE_UNSPECIFIED = 0;
|
|
3305
|
+
|
|
3306
|
+
// This will be set when a finding could not be transformed (i.e. outside user
|
|
3307
|
+
// set bucket range).
|
|
3308
|
+
INVALID_TRANSFORM = 1;
|
|
3309
|
+
|
|
3310
|
+
// This will be set when a BigQuery transformation was successful but could
|
|
3311
|
+
// not be stored back in BigQuery because the transformed row exceeds
|
|
3312
|
+
// BigQuery's max row size.
|
|
3313
|
+
BIGQUERY_MAX_ROW_SIZE_EXCEEDED = 2;
|
|
3314
|
+
|
|
3315
|
+
// This will be set when there is a finding in the custom metadata of a file,
|
|
3316
|
+
// but at the write time of the transformed file, this key / value pair is
|
|
3317
|
+
// unretrievable.
|
|
3318
|
+
METADATA_UNRETRIEVABLE = 3;
|
|
3319
|
+
|
|
3320
|
+
// This will be set when the transformation and storing of it is successful.
|
|
3321
|
+
SUCCESS = 4;
|
|
3322
|
+
}
|
|
3323
|
+
|
|
3324
|
+
// Describes functionality of a given container in its original format.
|
|
3325
|
+
enum TransformationContainerType {
|
|
3326
|
+
TRANSFORM_UNKNOWN_CONTAINER = 0;
|
|
3327
|
+
|
|
3328
|
+
TRANSFORM_BODY = 1;
|
|
3329
|
+
|
|
3330
|
+
TRANSFORM_METADATA = 2;
|
|
3331
|
+
|
|
3332
|
+
TRANSFORM_TABLE = 3;
|
|
3333
|
+
}
|
|
3334
|
+
|
|
3335
|
+
// An enum of rules that can be used to transform a value. Can be a
|
|
3336
|
+
// record suppression, or one of the transformation rules specified under
|
|
3337
|
+
// `PrimitiveTransformation`.
|
|
3338
|
+
enum TransformationType {
|
|
3339
|
+
// Unused
|
|
3340
|
+
TRANSFORMATION_TYPE_UNSPECIFIED = 0;
|
|
3341
|
+
|
|
3342
|
+
// Record suppression
|
|
3343
|
+
RECORD_SUPPRESSION = 1;
|
|
3344
|
+
|
|
3345
|
+
// Replace value
|
|
3346
|
+
REPLACE_VALUE = 2;
|
|
3347
|
+
|
|
3348
|
+
// Replace value using a dictionary.
|
|
3349
|
+
REPLACE_DICTIONARY = 15;
|
|
3350
|
+
|
|
3351
|
+
// Redact
|
|
3352
|
+
REDACT = 3;
|
|
3353
|
+
|
|
3354
|
+
// Character mask
|
|
3355
|
+
CHARACTER_MASK = 4;
|
|
3356
|
+
|
|
3357
|
+
// FFX-FPE
|
|
3358
|
+
CRYPTO_REPLACE_FFX_FPE = 5;
|
|
3359
|
+
|
|
3360
|
+
// Fixed size bucketing
|
|
3361
|
+
FIXED_SIZE_BUCKETING = 6;
|
|
3362
|
+
|
|
3363
|
+
// Bucketing
|
|
3364
|
+
BUCKETING = 7;
|
|
3365
|
+
|
|
3366
|
+
// Replace with info type
|
|
3367
|
+
REPLACE_WITH_INFO_TYPE = 8;
|
|
3368
|
+
|
|
3369
|
+
// Time part
|
|
3370
|
+
TIME_PART = 9;
|
|
3371
|
+
|
|
3372
|
+
// Crypto hash
|
|
3373
|
+
CRYPTO_HASH = 10;
|
|
3374
|
+
|
|
3375
|
+
// Date shift
|
|
3376
|
+
DATE_SHIFT = 12;
|
|
3377
|
+
|
|
3378
|
+
// Deterministic crypto
|
|
3379
|
+
CRYPTO_DETERMINISTIC_CONFIG = 13;
|
|
3380
|
+
|
|
3381
|
+
// Redact image
|
|
3382
|
+
REDACT_IMAGE = 14;
|
|
3383
|
+
}
|
|
3384
|
+
|
|
3385
|
+
// Config for storing transformation details.
|
|
3386
|
+
message TransformationDetailsStorageConfig {
|
|
3387
|
+
// Location to store the transformation summary.
|
|
3388
|
+
oneof type {
|
|
3389
|
+
// The BigQuery table in which to store the output. This may be an existing
|
|
3390
|
+
// table or in a new table in an existing dataset.
|
|
3391
|
+
// If table_id is not set a new one will be generated for you with the
|
|
3392
|
+
// following format:
|
|
3393
|
+
// dlp_googleapis_transformation_details_yyyy_mm_dd_[dlp_job_id]. Pacific
|
|
3394
|
+
// time zone will be used for generating the date details.
|
|
3395
|
+
BigQueryTable table = 1;
|
|
3396
|
+
}
|
|
3397
|
+
}
|
|
3398
|
+
|
|
3113
3399
|
// Schedule for inspect job triggers.
|
|
3114
3400
|
message Schedule {
|
|
3115
3401
|
oneof option {
|
|
3116
|
-
// With this option a job is started a regular periodic basis. For
|
|
3402
|
+
// With this option a job is started on a regular periodic basis. For
|
|
3117
3403
|
// example: every day (86400 seconds).
|
|
3118
3404
|
//
|
|
3119
3405
|
// A scheduled start time will be skipped if the previous
|
|
@@ -3302,7 +3588,7 @@ message Action {
|
|
|
3302
3588
|
OutputStorageConfig output_config = 1;
|
|
3303
3589
|
}
|
|
3304
3590
|
|
|
3305
|
-
// Publish a message into given Pub/Sub topic when DlpJob has completed. The
|
|
3591
|
+
// Publish a message into a given Pub/Sub topic when DlpJob has completed. The
|
|
3306
3592
|
// message contains a single field, `DlpJobName`, which is equal to the
|
|
3307
3593
|
// finished job's
|
|
3308
3594
|
// [`DlpJob.name`](https://cloud.google.com/dlp/docs/reference/rest/v2/projects.dlpJobs#DlpJob).
|
|
@@ -3320,31 +3606,88 @@ message Action {
|
|
|
3320
3606
|
// This action is only available for projects which are parts of
|
|
3321
3607
|
// an organization and whitelisted for the alpha Cloud Security Command
|
|
3322
3608
|
// Center.
|
|
3323
|
-
// The action will publish count of finding instances and their info
|
|
3324
|
-
// The summary of findings will be persisted in CSCC and are governed
|
|
3325
|
-
// service-specific policy, see
|
|
3326
|
-
// Only a single instance of this
|
|
3327
|
-
// Compatible with: Inspect
|
|
3609
|
+
// The action will publish the count of finding instances and their info
|
|
3610
|
+
// types. The summary of findings will be persisted in CSCC and are governed
|
|
3611
|
+
// by CSCC service-specific policy, see
|
|
3612
|
+
// https://cloud.google.com/terms/service-terms Only a single instance of this
|
|
3613
|
+
// action can be specified. Compatible with: Inspect
|
|
3328
3614
|
message PublishSummaryToCscc {
|
|
3329
3615
|
|
|
3330
3616
|
}
|
|
3331
3617
|
|
|
3332
|
-
// Publish findings of a DlpJob to Data Catalog.
|
|
3333
|
-
//
|
|
3334
|
-
//
|
|
3335
|
-
//
|
|
3336
|
-
//
|
|
3337
|
-
//
|
|
3338
|
-
//
|
|
3339
|
-
//
|
|
3340
|
-
//
|
|
3618
|
+
// Publish findings of a DlpJob to Data Catalog. In Data Catalog, tag
|
|
3619
|
+
// templates are applied to the resource that Cloud DLP scanned. Data
|
|
3620
|
+
// Catalog tag templates are stored in the same project and region where the
|
|
3621
|
+
// BigQuery table exists. For Cloud DLP to create and apply the tag template,
|
|
3622
|
+
// the Cloud DLP service agent must have the
|
|
3623
|
+
// `roles/datacatalog.tagTemplateOwner` permission on the project. The tag
|
|
3624
|
+
// template contains fields summarizing the results of the DlpJob. Any field
|
|
3625
|
+
// values previously written by another DlpJob are deleted. [InfoType naming
|
|
3626
|
+
// patterns][google.privacy.dlp.v2.InfoType] are strictly enforced when using
|
|
3627
|
+
// this feature.
|
|
3628
|
+
//
|
|
3629
|
+
// Findings are persisted in Data Catalog storage and are governed by
|
|
3630
|
+
// service-specific policies for Data Catalog. For more information, see
|
|
3631
|
+
// [Service Specific Terms](https://cloud.google.com/terms/service-terms).
|
|
3632
|
+
//
|
|
3633
|
+
// Only a single instance of this action can be specified. This action is
|
|
3634
|
+
// allowed only if all resources being scanned are BigQuery tables.
|
|
3341
3635
|
// Compatible with: Inspect
|
|
3342
3636
|
message PublishFindingsToCloudDataCatalog {
|
|
3343
3637
|
|
|
3344
3638
|
}
|
|
3345
3639
|
|
|
3346
|
-
//
|
|
3347
|
-
//
|
|
3640
|
+
// Create a de-identified copy of the requested table or files.
|
|
3641
|
+
//
|
|
3642
|
+
// A TransformationDetail will be created for each transformation.
|
|
3643
|
+
//
|
|
3644
|
+
// If any rows in BigQuery are skipped during de-identification
|
|
3645
|
+
// (transformation errors or row size exceeds BigQuery insert API limits) they
|
|
3646
|
+
// are placed in the failure output table. If the original row exceeds
|
|
3647
|
+
// the BigQuery insert API limit it will be truncated when written to the
|
|
3648
|
+
// failure output table. The failure output table can be set in the
|
|
3649
|
+
// action.deidentify.output.big_query_output.deidentified_failure_output_table
|
|
3650
|
+
// field, if no table is set, a table will be automatically created in the
|
|
3651
|
+
// same project and dataset as the original table.
|
|
3652
|
+
//
|
|
3653
|
+
// Compatible with: Inspect
|
|
3654
|
+
message Deidentify {
|
|
3655
|
+
// User specified deidentify templates and configs for structured,
|
|
3656
|
+
// unstructured, and image files.
|
|
3657
|
+
TransformationConfig transformation_config = 7;
|
|
3658
|
+
|
|
3659
|
+
// Config for storing transformation details. This is separate from the
|
|
3660
|
+
// de-identified content, and contains metadata about the successful
|
|
3661
|
+
// transformations and/or failures that occurred while de-identifying. This
|
|
3662
|
+
// needs to be set in order for users to access information about the status
|
|
3663
|
+
// of each transformation (see
|
|
3664
|
+
// [TransformationDetails][google.privacy.dlp.v2.TransformationDetails]
|
|
3665
|
+
// message for more information about what is noted).
|
|
3666
|
+
TransformationDetailsStorageConfig transformation_details_storage_config = 3;
|
|
3667
|
+
|
|
3668
|
+
oneof output {
|
|
3669
|
+
// Required. User settable Cloud Storage bucket and folders to store de-identified
|
|
3670
|
+
// files. This field must be set for cloud storage deidentification. The
|
|
3671
|
+
// output Cloud Storage bucket must be different from the input bucket.
|
|
3672
|
+
// De-identified files will overwrite files in the output path.
|
|
3673
|
+
//
|
|
3674
|
+
// Form of: gs://bucket/folder/ or gs://bucket
|
|
3675
|
+
string cloud_storage_output = 9 [(google.api.field_behavior) = REQUIRED];
|
|
3676
|
+
}
|
|
3677
|
+
|
|
3678
|
+
// List of user-specified file type groups to transform. If specified, only
|
|
3679
|
+
// the files with these filetypes will be transformed. If empty, all
|
|
3680
|
+
// supported files will be transformed. Supported types may be automatically
|
|
3681
|
+
// added over time. If a file type is set in this field that isn't supported
|
|
3682
|
+
// by the Deidentify action then the job will fail and will not be
|
|
3683
|
+
// successfully created/started. Currently the only filetypes supported are:
|
|
3684
|
+
// IMAGES, TEXT_FILES, CSV, TSV.
|
|
3685
|
+
repeated FileType file_types_to_transform = 8;
|
|
3686
|
+
}
|
|
3687
|
+
|
|
3688
|
+
// Sends an email when the job completes. The email goes to IAM project owners
|
|
3689
|
+
// and technical [Essential
|
|
3690
|
+
// Contacts](https://cloud.google.com/resource-manager/docs/managing-notification-contacts).
|
|
3348
3691
|
message JobNotificationEmails {
|
|
3349
3692
|
|
|
3350
3693
|
}
|
|
@@ -3361,7 +3704,7 @@ message Action {
|
|
|
3361
3704
|
// Save resulting findings in a provided location.
|
|
3362
3705
|
SaveFindings save_findings = 1;
|
|
3363
3706
|
|
|
3364
|
-
// Publish a notification to a
|
|
3707
|
+
// Publish a notification to a Pub/Sub topic.
|
|
3365
3708
|
PublishToPubSub pub_sub = 2;
|
|
3366
3709
|
|
|
3367
3710
|
// Publish summary to Cloud Security Command Center (Alpha).
|
|
@@ -3370,6 +3713,9 @@ message Action {
|
|
|
3370
3713
|
// Publish findings to Cloud Datahub.
|
|
3371
3714
|
PublishFindingsToCloudDataCatalog publish_findings_to_cloud_data_catalog = 5;
|
|
3372
3715
|
|
|
3716
|
+
// Create a de-identified copy of the input data.
|
|
3717
|
+
Deidentify deidentify = 7;
|
|
3718
|
+
|
|
3373
3719
|
// Enable email notification for project owners and editors on job's
|
|
3374
3720
|
// completion/failure.
|
|
3375
3721
|
JobNotificationEmails job_notification_emails = 8;
|
|
@@ -3379,6 +3725,34 @@ message Action {
|
|
|
3379
3725
|
}
|
|
3380
3726
|
}
|
|
3381
3727
|
|
|
3728
|
+
// User specified templates and configs for how to deidentify structured,
|
|
3729
|
+
// unstructures, and image files. User must provide either a unstructured
|
|
3730
|
+
// deidentify template or at least one redact image config.
|
|
3731
|
+
message TransformationConfig {
|
|
3732
|
+
// De-identify template.
|
|
3733
|
+
// If this template is specified, it will serve as the default de-identify
|
|
3734
|
+
// template. This template cannot contain `record_transformations` since it
|
|
3735
|
+
// can be used for unstructured content such as free-form text files. If this
|
|
3736
|
+
// template is not set, a default `ReplaceWithInfoTypeConfig` will be used to
|
|
3737
|
+
// de-identify unstructured content.
|
|
3738
|
+
string deidentify_template = 1;
|
|
3739
|
+
|
|
3740
|
+
// Structured de-identify template.
|
|
3741
|
+
// If this template is specified, it will serve as the de-identify template
|
|
3742
|
+
// for structured content such as delimited files and tables. If this template
|
|
3743
|
+
// is not set but the `deidentify_template` is set, then `deidentify_template`
|
|
3744
|
+
// will also apply to the structured content. If neither template is set, a
|
|
3745
|
+
// default `ReplaceWithInfoTypeConfig` will be used to de-identify structured
|
|
3746
|
+
// content.
|
|
3747
|
+
string structured_deidentify_template = 2;
|
|
3748
|
+
|
|
3749
|
+
// Image redact template.
|
|
3750
|
+
// If this template is specified, it will serve as the de-identify template
|
|
3751
|
+
// for images. If this template is not set, all findings in the image will be
|
|
3752
|
+
// redacted with a black box.
|
|
3753
|
+
string image_redact_template = 4;
|
|
3754
|
+
}
|
|
3755
|
+
|
|
3382
3756
|
// Request message for CreateInspectTemplate.
|
|
3383
3757
|
message CreateInspectTemplateRequest {
|
|
3384
3758
|
// Required. Parent resource name.
|
|
@@ -3486,7 +3860,7 @@ message ListInspectTemplatesRequest {
|
|
|
3486
3860
|
// to `ListInspectTemplates`.
|
|
3487
3861
|
string page_token = 2;
|
|
3488
3862
|
|
|
3489
|
-
// Size of the page, can be limited by server. If zero server returns
|
|
3863
|
+
// Size of the page, can be limited by the server. If zero server returns
|
|
3490
3864
|
// a page of max size 100.
|
|
3491
3865
|
int32 page_size = 3;
|
|
3492
3866
|
|
|
@@ -3499,10 +3873,10 @@ message ListInspectTemplatesRequest {
|
|
|
3499
3873
|
//
|
|
3500
3874
|
// Supported fields are:
|
|
3501
3875
|
//
|
|
3502
|
-
// - `create_time`: corresponds to time the template was created.
|
|
3503
|
-
// - `update_time`: corresponds to time the template was last updated.
|
|
3504
|
-
// - `name`: corresponds to template's name.
|
|
3505
|
-
// - `display_name`: corresponds to template's display name.
|
|
3876
|
+
// - `create_time`: corresponds to the time the template was created.
|
|
3877
|
+
// - `update_time`: corresponds to the time the template was last updated.
|
|
3878
|
+
// - `name`: corresponds to the template's name.
|
|
3879
|
+
// - `display_name`: corresponds to the template's display name.
|
|
3506
3880
|
string order_by = 4;
|
|
3507
3881
|
|
|
3508
3882
|
// Deprecated. This field has no effect.
|
|
@@ -3701,11 +4075,11 @@ message ListJobTriggersRequest {
|
|
|
3701
4075
|
//
|
|
3702
4076
|
// Supported fields are:
|
|
3703
4077
|
//
|
|
3704
|
-
// - `create_time`: corresponds to time the JobTrigger was created.
|
|
3705
|
-
// - `update_time`: corresponds to time the JobTrigger was last updated.
|
|
4078
|
+
// - `create_time`: corresponds to the time the JobTrigger was created.
|
|
4079
|
+
// - `update_time`: corresponds to the time the JobTrigger was last updated.
|
|
3706
4080
|
// - `last_run_time`: corresponds to the last time the JobTrigger ran.
|
|
3707
|
-
// - `name`: corresponds to JobTrigger's name.
|
|
3708
|
-
// - `display_name`: corresponds to JobTrigger's display name.
|
|
4081
|
+
// - `name`: corresponds to the JobTrigger's name.
|
|
4082
|
+
// - `display_name`: corresponds to the JobTrigger's display name.
|
|
3709
4083
|
// - `status`: corresponds to JobTrigger's status.
|
|
3710
4084
|
string order_by = 4;
|
|
3711
4085
|
|
|
@@ -3932,7 +4306,7 @@ message DlpJob {
|
|
|
3932
4306
|
// The job is no longer running.
|
|
3933
4307
|
DONE = 3;
|
|
3934
4308
|
|
|
3935
|
-
// The job was canceled before it could
|
|
4309
|
+
// The job was canceled before it could be completed.
|
|
3936
4310
|
CANCELED = 4;
|
|
3937
4311
|
|
|
3938
4312
|
// The job had an error and did not complete.
|
|
@@ -3940,7 +4314,7 @@ message DlpJob {
|
|
|
3940
4314
|
|
|
3941
4315
|
// The job is currently accepting findings via hybridInspect.
|
|
3942
4316
|
// A hybrid job in ACTIVE state may continue to have findings added to it
|
|
3943
|
-
// through calling of hybridInspect. After the job has finished no more
|
|
4317
|
+
// through the calling of hybridInspect. After the job has finished no more
|
|
3944
4318
|
// calls to hybridInspect may be made. ACTIVE jobs can transition to DONE.
|
|
3945
4319
|
ACTIVE = 6;
|
|
3946
4320
|
}
|
|
@@ -4026,13 +4400,13 @@ message ListDlpJobsRequest {
|
|
|
4026
4400
|
// * Supported fields/values for inspect jobs:
|
|
4027
4401
|
// - `state` - PENDING|RUNNING|CANCELED|FINISHED|FAILED
|
|
4028
4402
|
// - `inspected_storage` - DATASTORE|CLOUD_STORAGE|BIGQUERY
|
|
4029
|
-
// - `trigger_name` - The
|
|
4030
|
-
// - 'end_time` - Corresponds to time the job finished.
|
|
4031
|
-
// - 'start_time` - Corresponds to time the job finished.
|
|
4403
|
+
// - `trigger_name` - The name of the trigger that created the job.
|
|
4404
|
+
// - 'end_time` - Corresponds to the time the job finished.
|
|
4405
|
+
// - 'start_time` - Corresponds to the time the job finished.
|
|
4032
4406
|
// * Supported fields for risk analysis jobs:
|
|
4033
4407
|
// - `state` - RUNNING|CANCELED|FINISHED|FAILED
|
|
4034
|
-
// - 'end_time` - Corresponds to time the job finished.
|
|
4035
|
-
// - 'start_time` - Corresponds to time the job finished.
|
|
4408
|
+
// - 'end_time` - Corresponds to the time the job finished.
|
|
4409
|
+
// - 'start_time` - Corresponds to the time the job finished.
|
|
4036
4410
|
// * The operator must be `=` or `!=`.
|
|
4037
4411
|
//
|
|
4038
4412
|
// Examples:
|
|
@@ -4063,9 +4437,9 @@ message ListDlpJobsRequest {
|
|
|
4063
4437
|
//
|
|
4064
4438
|
// Supported fields are:
|
|
4065
4439
|
//
|
|
4066
|
-
// - `create_time`: corresponds to time the job was created.
|
|
4067
|
-
// - `end_time`: corresponds to time the job ended.
|
|
4068
|
-
// - `name`: corresponds to job's name.
|
|
4440
|
+
// - `create_time`: corresponds to the time the job was created.
|
|
4441
|
+
// - `end_time`: corresponds to the time the job ended.
|
|
4442
|
+
// - `name`: corresponds to the job's name.
|
|
4069
4443
|
// - `state`: corresponds to `state`
|
|
4070
4444
|
string order_by = 6;
|
|
4071
4445
|
|
|
@@ -4222,7 +4596,7 @@ message ListDeidentifyTemplatesRequest {
|
|
|
4222
4596
|
// to `ListDeidentifyTemplates`.
|
|
4223
4597
|
string page_token = 2;
|
|
4224
4598
|
|
|
4225
|
-
// Size of the page, can be limited by server. If zero server returns
|
|
4599
|
+
// Size of the page, can be limited by the server. If zero server returns
|
|
4226
4600
|
// a page of max size 100.
|
|
4227
4601
|
int32 page_size = 3;
|
|
4228
4602
|
|
|
@@ -4235,10 +4609,10 @@ message ListDeidentifyTemplatesRequest {
|
|
|
4235
4609
|
//
|
|
4236
4610
|
// Supported fields are:
|
|
4237
4611
|
//
|
|
4238
|
-
// - `create_time`: corresponds to time the template was created.
|
|
4239
|
-
// - `update_time`: corresponds to time the template was last updated.
|
|
4240
|
-
// - `name`: corresponds to template's name.
|
|
4241
|
-
// - `display_name`: corresponds to template's display name.
|
|
4612
|
+
// - `create_time`: corresponds to the time the template was created.
|
|
4613
|
+
// - `update_time`: corresponds to the time the template was last updated.
|
|
4614
|
+
// - `name`: corresponds to the template's name.
|
|
4615
|
+
// - `display_name`: corresponds to the template's display name.
|
|
4242
4616
|
string order_by = 4;
|
|
4243
4617
|
|
|
4244
4618
|
// Deprecated. This field has no effect.
|
|
@@ -4272,11 +4646,11 @@ message DeleteDeidentifyTemplateRequest {
|
|
|
4272
4646
|
// Configuration for a custom dictionary created from a data source of any size
|
|
4273
4647
|
// up to the maximum size defined in the
|
|
4274
4648
|
// [limits](https://cloud.google.com/dlp/limits) page. The artifacts of
|
|
4275
|
-
// dictionary creation are stored in the specified
|
|
4649
|
+
// dictionary creation are stored in the specified Cloud Storage
|
|
4276
4650
|
// location. Consider using `CustomInfoType.Dictionary` for smaller dictionaries
|
|
4277
4651
|
// that satisfy the size requirements.
|
|
4278
4652
|
message LargeCustomDictionaryConfig {
|
|
4279
|
-
// Location to store dictionary artifacts in
|
|
4653
|
+
// Location to store dictionary artifacts in Cloud Storage. These files
|
|
4280
4654
|
// will only be accessible by project owners and the DLP API. If any of these
|
|
4281
4655
|
// artifacts are modified, the dictionary is considered invalid and can no
|
|
4282
4656
|
// longer be used.
|
|
@@ -4349,7 +4723,7 @@ message StoredInfoTypeVersion {
|
|
|
4349
4723
|
// appearing first.
|
|
4350
4724
|
//
|
|
4351
4725
|
// For example, some of the data for stored custom dictionaries is put in
|
|
4352
|
-
// the user's
|
|
4726
|
+
// the user's Cloud Storage bucket, and if this data is modified or
|
|
4353
4727
|
// deleted by the user or another system, the dictionary becomes invalid.
|
|
4354
4728
|
//
|
|
4355
4729
|
// If any errors occur, fix the problem indicated by the error message and
|
|
@@ -4472,10 +4846,6 @@ message ListStoredInfoTypesRequest {
|
|
|
4472
4846
|
// `projects/`<var>PROJECT_ID</var>`/locations/`<var>LOCATION_ID</var>
|
|
4473
4847
|
// + Projects scope, no location specified (defaults to global):<br/>
|
|
4474
4848
|
// `projects/`<var>PROJECT_ID</var>
|
|
4475
|
-
// + Organizations scope, location specified:<br/>
|
|
4476
|
-
// `organizations/`<var>ORG_ID</var>`/locations/`<var>LOCATION_ID</var>
|
|
4477
|
-
// + Organizations scope, no location specified (defaults to global):<br/>
|
|
4478
|
-
// `organizations/`<var>ORG_ID</var>
|
|
4479
4849
|
//
|
|
4480
4850
|
// The following example `parent` string specifies a parent project with the
|
|
4481
4851
|
// identifier `example-project`, and specifies the `europe-west3` location
|
|
@@ -4493,7 +4863,7 @@ message ListStoredInfoTypesRequest {
|
|
|
4493
4863
|
// to `ListStoredInfoTypes`.
|
|
4494
4864
|
string page_token = 2;
|
|
4495
4865
|
|
|
4496
|
-
// Size of the page, can be limited by server. If zero server returns
|
|
4866
|
+
// Size of the page, can be limited by the server. If zero server returns
|
|
4497
4867
|
// a page of max size 100.
|
|
4498
4868
|
int32 page_size = 3;
|
|
4499
4869
|
|
|
@@ -4506,7 +4876,7 @@ message ListStoredInfoTypesRequest {
|
|
|
4506
4876
|
//
|
|
4507
4877
|
// Supported fields are:
|
|
4508
4878
|
//
|
|
4509
|
-
// - `create_time`: corresponds to time the most recent version of the
|
|
4879
|
+
// - `create_time`: corresponds to the time the most recent version of the
|
|
4510
4880
|
// resource was created.
|
|
4511
4881
|
// - `state`: corresponds to the state of the resource.
|
|
4512
4882
|
// - `name`: corresponds to resource name.
|
|
@@ -4750,33 +5120,7 @@ enum StoredInfoTypeState {
|
|
|
4750
5120
|
}
|
|
4751
5121
|
|
|
4752
5122
|
// Score is a summary of all elements in the data profile.
|
|
4753
|
-
// A higher number means more
|
|
4754
|
-
message SensitivityScore {
|
|
4755
|
-
// Various score levels for resources.
|
|
4756
|
-
enum SensitivityScoreLevel {
|
|
4757
|
-
// Unused.
|
|
4758
|
-
SENSITIVITY_SCORE_UNSPECIFIED = 0;
|
|
4759
|
-
|
|
4760
|
-
// No sensitive information detected. Limited access.
|
|
4761
|
-
SENSITIVITY_LOW = 10;
|
|
4762
|
-
|
|
4763
|
-
// Medium risk - PII, potentially sensitive data, or fields with free-text
|
|
4764
|
-
// data that are at higher risk of having intermittent sensitive data.
|
|
4765
|
-
// Consider limiting access.
|
|
4766
|
-
SENSITIVITY_MODERATE = 20;
|
|
4767
|
-
|
|
4768
|
-
// High risk – SPII may be present. Exfiltration of data may lead to user
|
|
4769
|
-
// data loss. Re-identification of users may be possible. Consider limiting
|
|
4770
|
-
// usage and or removing SPII.
|
|
4771
|
-
SENSITIVITY_HIGH = 30;
|
|
4772
|
-
}
|
|
4773
|
-
|
|
4774
|
-
// The score applied to the resource.
|
|
4775
|
-
SensitivityScoreLevel score = 1;
|
|
4776
|
-
}
|
|
4777
|
-
|
|
4778
|
-
// Score is a summary of all elements in the data profile.
|
|
4779
|
-
// A higher number means more risky.
|
|
5123
|
+
// A higher number means more risk.
|
|
4780
5124
|
message DataRiskLevel {
|
|
4781
5125
|
// Various score levels for resources.
|
|
4782
5126
|
enum DataRiskLevelScore {
|
|
@@ -4789,8 +5133,8 @@ message DataRiskLevel {
|
|
|
4789
5133
|
RISK_LOW = 10;
|
|
4790
5134
|
|
|
4791
5135
|
// Medium risk - Sensitive data may be present but additional access or fine
|
|
4792
|
-
// grain access restrictions
|
|
4793
|
-
// access even further or
|
|
5136
|
+
// grain access restrictions appear to be present. Consider limiting
|
|
5137
|
+
// access even further or transform data to mask.
|
|
4794
5138
|
RISK_MODERATE = 20;
|
|
4795
5139
|
|
|
4796
5140
|
// High risk – SPII may be present. Access controls may include public
|
|
@@ -4947,15 +5291,23 @@ enum EncryptionStatus {
|
|
|
4947
5291
|
message InfoTypeSummary {
|
|
4948
5292
|
// The infoType.
|
|
4949
5293
|
InfoType info_type = 1;
|
|
5294
|
+
|
|
5295
|
+
// Approximate percentage of non-null rows that contained data detected by
|
|
5296
|
+
// this infotype.
|
|
5297
|
+
int32 estimated_prevalence = 2;
|
|
4950
5298
|
}
|
|
4951
5299
|
|
|
4952
5300
|
// Infotype details for other infoTypes found within a column.
|
|
4953
5301
|
message OtherInfoTypeSummary {
|
|
4954
5302
|
// The other infoType.
|
|
4955
5303
|
InfoType info_type = 1;
|
|
5304
|
+
|
|
5305
|
+
// Approximate percentage of non-null rows that contained data detected by
|
|
5306
|
+
// this infotype.
|
|
5307
|
+
int32 estimated_prevalence = 2;
|
|
4956
5308
|
}
|
|
4957
5309
|
|
|
4958
|
-
// A condition for determining whether a
|
|
5310
|
+
// A condition for determining whether a Pub/Sub should be triggered.
|
|
4959
5311
|
message DataProfilePubSubCondition {
|
|
4960
5312
|
// Various score levels for resources.
|
|
4961
5313
|
enum ProfileScoreBucket {
|
|
@@ -5006,10 +5358,9 @@ message DataProfilePubSubCondition {
|
|
|
5006
5358
|
PubSubExpressions expressions = 1;
|
|
5007
5359
|
}
|
|
5008
5360
|
|
|
5009
|
-
//
|
|
5361
|
+
// Pub/Sub topic message for a DataProfileAction.PubSubNotification event.
|
|
5010
5362
|
// To receive a message of protocol buffer schema type, convert the message data
|
|
5011
5363
|
// to an object of this proto class.
|
|
5012
|
-
// https://cloud.google.com/pubsub/docs/samples/pubsub-subscribe-proto-messages
|
|
5013
5364
|
message DataProfilePubSubMessage {
|
|
5014
5365
|
// If `DetailLevel` is `TABLE_PROFILE` this will be fully populated.
|
|
5015
5366
|
// Otherwise, if `DetailLevel` is `RESOURCE_NAME`, then only `name` and
|