@google-cloud/dlp 6.0.1 → 6.1.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 CHANGED
@@ -4,6 +4,14 @@
4
4
 
5
5
  [1]: https://www.npmjs.com/package/PACKAGE NAME?activeTab=versions
6
6
 
7
+ ## [6.1.0](https://github.com/googleapis/google-cloud-node/compare/dlp-v6.0.1...dlp-v6.1.0) (2025-03-21)
8
+
9
+
10
+ ### Features
11
+
12
+ * [dlp] add sample findings for data profiles ([#6192](https://github.com/googleapis/google-cloud-node/issues/6192)) ([3f39c49](https://github.com/googleapis/google-cloud-node/commit/3f39c49a0bd9cc9ee7544ae0dba60bf7d5c69805))
13
+ * List tags on resources for data profiles ([3f39c49](https://github.com/googleapis/google-cloud-node/commit/3f39c49a0bd9cc9ee7544ae0dba60bf7d5c69805))
14
+
7
15
  ## [6.0.1](https://github.com/googleapis/google-cloud-node/compare/dlp-v6.0.0...dlp-v6.0.1) (2025-03-19)
8
16
 
9
17
 
@@ -88,6 +88,9 @@ service DlpService {
88
88
  // When no InfoTypes or CustomInfoTypes are specified in this request, the
89
89
  // system will automatically choose what detectors to run. By default this may
90
90
  // be all types, but may change over time as detectors are updated.
91
+ //
92
+ // Only the first frame of each multiframe image is redacted. Metadata and
93
+ // other frames are omitted in the response.
91
94
  rpc RedactImage(RedactImageRequest) returns (RedactImageResponse) {
92
95
  option (google.api.http) = {
93
96
  post: "/v2/{parent=projects/*}/image:redact"
@@ -144,6 +147,12 @@ service DlpService {
144
147
  option (google.api.http) = {
145
148
  get: "/v2/infoTypes"
146
149
  additional_bindings { get: "/v2/{parent=locations/*}/infoTypes" }
150
+ additional_bindings {
151
+ get: "/v2/{parent=projects/*/locations/*}/infoTypes"
152
+ }
153
+ additional_bindings {
154
+ get: "/v2/{parent=organizations/*/locations/*}/infoTypes"
155
+ }
147
156
  };
148
157
  option (google.api.method_signature) = "parent";
149
158
  }
@@ -1183,6 +1192,9 @@ message ByteContentItem {
1183
1192
  // The type of data being sent for inspection. To learn more, see
1184
1193
  // [Supported file
1185
1194
  // types](https://cloud.google.com/sensitive-data-protection/docs/supported-file-types).
1195
+ //
1196
+ // Only the first frame of each multiframe image is inspected. Metadata and
1197
+ // other frames aren't inspected.
1186
1198
  enum BytesType {
1187
1199
  // Unused
1188
1200
  BYTES_TYPE_UNSPECIFIED = 0;
@@ -2038,6 +2050,13 @@ message InfoTypeDescription {
2038
2050
 
2039
2051
  // The default sensitivity of the infoType.
2040
2052
  SensitivityScore sensitivity_score = 11;
2053
+
2054
+ // If this field is set, this infoType is a general infoType and these
2055
+ // specific infoTypes are contained within it.
2056
+ // General infoTypes are infoTypes that encompass multiple specific infoTypes.
2057
+ // For example, the "GEOGRAPHIC_DATA" general infoType would have set for this
2058
+ // field "LOCATION", "LOCATION_COORDINATES", and "STREET_ADDRESS".
2059
+ repeated string specific_info_types = 12;
2041
2060
  }
2042
2061
 
2043
2062
  // Classification of infoTypes to organize them according to geographic
@@ -2089,6 +2108,9 @@ message InfoTypeCategory {
2089
2108
  // The infoType is typically used in Croatia.
2090
2109
  CROATIA = 42;
2091
2110
 
2111
+ // The infoType is typically used in Czechia.
2112
+ CZECHIA = 52;
2113
+
2092
2114
  // The infoType is typically used in Denmark.
2093
2115
  DENMARK = 10;
2094
2116
 
@@ -4861,6 +4883,15 @@ message DataProfileAction {
4861
4883
  // If you use VPC Service Controls to define security perimeters, then
4862
4884
  // you must use a separate table for each boundary.
4863
4885
  BigQueryTable profile_table = 1;
4886
+
4887
+ // Store sample [data profile
4888
+ // findings][google.privacy.dlp.v2.DataProfileFinding] in an existing table
4889
+ // or a new table in an existing dataset. Each regeneration will result in
4890
+ // new rows in BigQuery. Data is inserted using [streaming
4891
+ // insert](https://cloud.google.com/blog/products/bigquery/life-of-a-bigquery-streaming-insert)
4892
+ // and so data may be in the buffer for a period of time after the profile
4893
+ // has finished.
4894
+ BigQueryTable sample_findings_table = 2;
4864
4895
  }
4865
4896
 
4866
4897
  // Send a Pub/Sub message into the given Pub/Sub topic to connect other
@@ -5003,6 +5034,65 @@ message DataProfileAction {
5003
5034
  }
5004
5035
  }
5005
5036
 
5037
+ // Details about a piece of potentially sensitive information that was detected
5038
+ // when the data resource was profiled.
5039
+ message DataProfileFinding {
5040
+ // The content that was found. Even if the content is not textual, it
5041
+ // may be converted to a textual representation here. If the finding exceeds
5042
+ // 4096 bytes in length, the quote may be omitted.
5043
+ string quote = 1;
5044
+
5045
+ // The [type of
5046
+ // content](https://cloud.google.com/sensitive-data-protection/docs/infotypes-reference)
5047
+ // that might have been found.
5048
+ InfoType infotype = 2;
5049
+
5050
+ // Contains data parsed from quotes. Currently supported infoTypes: DATE,
5051
+ // DATE_OF_BIRTH, and TIME.
5052
+ QuoteInfo quote_info = 3;
5053
+
5054
+ // Resource name of the data profile associated with the finding.
5055
+ string data_profile_resource_name = 4;
5056
+
5057
+ // A unique identifier for the finding.
5058
+ string finding_id = 5;
5059
+
5060
+ // Timestamp when the finding was detected.
5061
+ google.protobuf.Timestamp timestamp = 6;
5062
+
5063
+ // Where the content was found.
5064
+ DataProfileFindingLocation location = 7;
5065
+
5066
+ // How broadly a resource has been shared.
5067
+ ResourceVisibility resource_visibility = 8;
5068
+ }
5069
+
5070
+ // Location of a data profile finding within a resource.
5071
+ message DataProfileFindingLocation {
5072
+ // Name of the container where the finding is located.
5073
+ // The top-level name is the source file name or table name. Names of some
5074
+ // common storage containers are formatted as follows:
5075
+ //
5076
+ // * BigQuery tables: `{project_id}:{dataset_id}.{table_id}`
5077
+ // * Cloud Storage files: `gs://{bucket}/{path}`
5078
+ string container_name = 1;
5079
+
5080
+ // Additional location details that may be provided for some types of
5081
+ // profiles. At this time, only findings for table data profiles include such
5082
+ // details.
5083
+ oneof location_extra_details {
5084
+ // Location of a finding within a resource that produces a table data
5085
+ // profile.
5086
+ DataProfileFindingRecordLocation data_profile_finding_record_location = 2;
5087
+ }
5088
+ }
5089
+
5090
+ // Location of a finding within a resource that produces a table data profile.
5091
+ message DataProfileFindingRecordLocation {
5092
+ // Field ID of the column containing the finding.
5093
+ FieldId field = 1;
5094
+ }
5095
+
5006
5096
  // Configuration for setting up a job to scan resources for profile generation.
5007
5097
  // Only one data profile configuration may exist per organization, folder,
5008
5098
  // or project.
@@ -7520,6 +7610,14 @@ message TableDataProfile {
7520
7610
  // The time at which the table was created.
7521
7611
  google.protobuf.Timestamp create_time = 23;
7522
7612
 
7613
+ // The BigQuery table to which the sample findings are written.
7614
+ BigQueryTable sample_findings_table = 37;
7615
+
7616
+ // The tags attached to the table, including any tags attached during
7617
+ // profiling. Because tags are attached to Cloud SQL instances rather than
7618
+ // Cloud SQL tables, this field is empty for Cloud SQL table profiles.
7619
+ repeated Tag tags = 39;
7620
+
7523
7621
  // Resources related to this profile.
7524
7622
  repeated RelatedResource related_resources = 41;
7525
7623
  }
@@ -7888,13 +7986,37 @@ message FileStoreDataProfile {
7888
7986
  // InfoTypes detected in this file store.
7889
7987
  repeated FileStoreInfoTypeSummary file_store_info_type_summaries = 21;
7890
7988
 
7989
+ // The BigQuery table to which the sample findings are written.
7990
+ BigQueryTable sample_findings_table = 22;
7991
+
7891
7992
  // The file store does not have any files.
7892
7993
  bool file_store_is_empty = 23;
7893
7994
 
7995
+ // The tags attached to the resource, including any tags attached during
7996
+ // profiling.
7997
+ repeated Tag tags = 25;
7998
+
7894
7999
  // Resources related to this profile.
7895
8000
  repeated RelatedResource related_resources = 26;
7896
8001
  }
7897
8002
 
8003
+ // A tag associated with a resource.
8004
+ message Tag {
8005
+ // The namespaced name for the tag value to attach to Google Cloud resources.
8006
+ // Must be in the format `{parent_id}/{tag_key_short_name}/{short_name}`, for
8007
+ // example, "123456/environment/prod". This is only set for Google Cloud
8008
+ // resources.
8009
+ string namespaced_tag_value = 1;
8010
+
8011
+ // The key of a tag key-value pair. For Google Cloud resources, this is the
8012
+ // resource name of the key, for example, "tagKeys/123456".
8013
+ string key = 2;
8014
+
8015
+ // The value of a tag key-value pair. For Google Cloud resources, this is the
8016
+ // resource name of the value, for example, "tagValues/123456".
8017
+ string value = 3;
8018
+ }
8019
+
7898
8020
  // A related resource.
7899
8021
  // Examples:
7900
8022
  //