google-cloud-dlp 0.14.0 → 0.15.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 503aa128d923060ccddbdf1329f32e3304348a421182c452a2131b52cd074653
4
- data.tar.gz: 5eed5de459cf167c2df2995b0588362ee85e9c01112f4d1bac4e4dcb5fd2c33c
3
+ metadata.gz: 88badb6241aa666a5444dd0519c11563c3b0f0684b9cccccb6899369a6caa2f2
4
+ data.tar.gz: 84458d32f19cde35abda87761b05098b53926fb33ff96755f1d70bcb57898def
5
5
  SHA512:
6
- metadata.gz: 8f04b891907c9de11f9fee5187e178d23e7f8dcb30221f1e695359c75660071f66b1823a7407396637bede4a16220ffaa62b5bf3bd5756ac63bc31d3ab3c2460
7
- data.tar.gz: 856f7d0a0018d307354be1999bb7886205a01c257a8e58cf3a63035e2974721d54c60b81834fa607edf5bd5ba949c5cf01f44e5c068e3a9a9c6e737f7d63591f
6
+ metadata.gz: a94146a2afef35635bf42a4d1cf919a5f3d21b4ba9f7b93aa4e2a1df99765b95fdb320d07397dc5ab92ddab338d1366e0725cc4577964f590611c18350f56fc8
7
+ data.tar.gz: 867efb9002ee72e12b1cb33554e241c57183abfaacf94d7d8d016b453d73e8f9d717604f12a42e080b2639b0786a212409279458974e1552fba71bddb6d4bd54
@@ -530,6 +530,22 @@ module Google
530
530
  {'name' => request.name}
531
531
  end
532
532
  )
533
+ @finish_dlp_job = Google::Gax.create_api_call(
534
+ @dlp_service_stub.method(:finish_dlp_job),
535
+ defaults["finish_dlp_job"],
536
+ exception_transformer: exception_transformer,
537
+ params_extractor: proc do |request|
538
+ {'name' => request.name}
539
+ end
540
+ )
541
+ @hybrid_inspect_dlp_job = Google::Gax.create_api_call(
542
+ @dlp_service_stub.method(:hybrid_inspect_dlp_job),
543
+ defaults["hybrid_inspect_dlp_job"],
544
+ exception_transformer: exception_transformer,
545
+ params_extractor: proc do |request|
546
+ {'name' => request.name}
547
+ end
548
+ )
533
549
  @list_job_triggers = Google::Gax.create_api_call(
534
550
  @dlp_service_stub.method(:list_job_triggers),
535
551
  defaults["list_job_triggers"],
@@ -554,6 +570,14 @@ module Google
554
570
  {'name' => request.name}
555
571
  end
556
572
  )
573
+ @hybrid_inspect_job_trigger = Google::Gax.create_api_call(
574
+ @dlp_service_stub.method(:hybrid_inspect_job_trigger),
575
+ defaults["hybrid_inspect_job_trigger"],
576
+ exception_transformer: exception_transformer,
577
+ params_extractor: proc do |request|
578
+ {'name' => request.name}
579
+ end
580
+ )
557
581
  @update_job_trigger = Google::Gax.create_api_call(
558
582
  @dlp_service_stub.method(:update_job_trigger),
559
583
  defaults["update_job_trigger"],
@@ -1003,8 +1027,8 @@ module Google
1003
1027
  # See https://cloud.google.com/dlp/docs/creating-templates to learn more.
1004
1028
  #
1005
1029
  # @param name [String]
1006
- # Required. Resource name of organization and inspectTemplate to be updated, for
1007
- # example `organizations/433245324/inspectTemplates/432452342` or
1030
+ # Required. Resource name of organization and inspectTemplate to be updated,
1031
+ # for example `organizations/433245324/inspectTemplates/432452342` or
1008
1032
  # projects/project-id/inspectTemplates/432452342.
1009
1033
  # @param inspect_template [Google::Privacy::Dlp::V2::InspectTemplate | Hash]
1010
1034
  # New InspectTemplate value.
@@ -1048,8 +1072,8 @@ module Google
1048
1072
  # See https://cloud.google.com/dlp/docs/creating-templates to learn more.
1049
1073
  #
1050
1074
  # @param name [String]
1051
- # Required. Resource name of the organization and inspectTemplate to be read, for
1052
- # example `organizations/433245324/inspectTemplates/432452342` or
1075
+ # Required. Resource name of the organization and inspectTemplate to be read,
1076
+ # for example `organizations/433245324/inspectTemplates/432452342` or
1053
1077
  # projects/project-id/inspectTemplates/432452342.
1054
1078
  # @param options [Google::Gax::CallOptions]
1055
1079
  # Overrides the default settings for this call, e.g, timeout,
@@ -1157,9 +1181,9 @@ module Google
1157
1181
  # See https://cloud.google.com/dlp/docs/creating-templates to learn more.
1158
1182
  #
1159
1183
  # @param name [String]
1160
- # Required. Resource name of the organization and inspectTemplate to be deleted, for
1161
- # example `organizations/433245324/inspectTemplates/432452342` or
1162
- # projects/project-id/inspectTemplates/432452342.
1184
+ # Required. Resource name of the organization and inspectTemplate to be
1185
+ # deleted, for example `organizations/433245324/inspectTemplates/432452342`
1186
+ # or projects/project-id/inspectTemplates/432452342.
1163
1187
  # @param options [Google::Gax::CallOptions]
1164
1188
  # Overrides the default settings for this call, e.g, timeout,
1165
1189
  # retries, etc.
@@ -1243,8 +1267,9 @@ module Google
1243
1267
  # more.
1244
1268
  #
1245
1269
  # @param name [String]
1246
- # Required. Resource name of organization and deidentify template to be updated, for
1247
- # example `organizations/433245324/deidentifyTemplates/432452342` or
1270
+ # Required. Resource name of organization and deidentify template to be
1271
+ # updated, for example
1272
+ # `organizations/433245324/deidentifyTemplates/432452342` or
1248
1273
  # projects/project-id/deidentifyTemplates/432452342.
1249
1274
  # @param deidentify_template [Google::Privacy::Dlp::V2::DeidentifyTemplate | Hash]
1250
1275
  # New DeidentifyTemplate value.
@@ -1289,9 +1314,9 @@ module Google
1289
1314
  # more.
1290
1315
  #
1291
1316
  # @param name [String]
1292
- # Required. Resource name of the organization and deidentify template to be read, for
1293
- # example `organizations/433245324/deidentifyTemplates/432452342` or
1294
- # projects/project-id/deidentifyTemplates/432452342.
1317
+ # Required. Resource name of the organization and deidentify template to be
1318
+ # read, for example `organizations/433245324/deidentifyTemplates/432452342`
1319
+ # or projects/project-id/deidentifyTemplates/432452342.
1295
1320
  # @param options [Google::Gax::CallOptions]
1296
1321
  # Overrides the default settings for this call, e.g, timeout,
1297
1322
  # retries, etc.
@@ -1401,8 +1426,9 @@ module Google
1401
1426
  # more.
1402
1427
  #
1403
1428
  # @param name [String]
1404
- # Required. Resource name of the organization and deidentify template to be deleted,
1405
- # for example `organizations/433245324/deidentifyTemplates/432452342` or
1429
+ # Required. Resource name of the organization and deidentify template to be
1430
+ # deleted, for example
1431
+ # `organizations/433245324/deidentifyTemplates/432452342` or
1406
1432
  # projects/project-id/deidentifyTemplates/432452342.
1407
1433
  # @param options [Google::Gax::CallOptions]
1408
1434
  # Overrides the default settings for this call, e.g, timeout,
@@ -1702,6 +1728,84 @@ module Google
1702
1728
  nil
1703
1729
  end
1704
1730
 
1731
+ # Finish a running hybrid DlpJob. Triggers the finalization steps and running
1732
+ # of any enabled actions that have not yet run.
1733
+ # Early access feature is in a pre-release state and might change or have
1734
+ # limited support. For more information, see
1735
+ # https://cloud.google.com/products#product-launch-stages.
1736
+ #
1737
+ # @param name [String]
1738
+ # Required. The name of the DlpJob resource to be cancelled.
1739
+ # @param options [Google::Gax::CallOptions]
1740
+ # Overrides the default settings for this call, e.g, timeout,
1741
+ # retries, etc.
1742
+ # @yield [result, operation] Access the result along with the RPC operation
1743
+ # @yieldparam result []
1744
+ # @yieldparam operation [GRPC::ActiveCall::Operation]
1745
+ # @raise [Google::Gax::GaxError] if the RPC is aborted.
1746
+ # @example
1747
+ # require "google/cloud/dlp"
1748
+ #
1749
+ # dlp_client = Google::Cloud::Dlp.new(version: :v2)
1750
+ # formatted_name = Google::Cloud::Dlp::V2::DlpServiceClient.dlp_job_path("[PROJECT]", "[DLP_JOB]")
1751
+ # dlp_client.finish_dlp_job(formatted_name)
1752
+
1753
+ def finish_dlp_job \
1754
+ name,
1755
+ options: nil,
1756
+ &block
1757
+ req = {
1758
+ name: name
1759
+ }.delete_if { |_, v| v.nil? }
1760
+ req = Google::Gax::to_proto(req, Google::Privacy::Dlp::V2::FinishDlpJobRequest)
1761
+ @finish_dlp_job.call(req, options, &block)
1762
+ nil
1763
+ end
1764
+
1765
+ # Inspect hybrid content and store findings to a job.
1766
+ # To review the findings inspect the job. Inspection will occur
1767
+ # asynchronously.
1768
+ # Early access feature is in a pre-release state and might change or have
1769
+ # limited support. For more information, see
1770
+ # https://cloud.google.com/products#product-launch-stages.
1771
+ #
1772
+ # @param name [String]
1773
+ # Required. Resource name of the job to execute a hybrid inspect on, for
1774
+ # example `projects/dlp-test-project/dlpJob/53234423`.
1775
+ # @param hybrid_item [Google::Privacy::Dlp::V2::HybridContentItem | Hash]
1776
+ # The item to inspect.
1777
+ # A hash of the same form as `Google::Privacy::Dlp::V2::HybridContentItem`
1778
+ # can also be provided.
1779
+ # @param options [Google::Gax::CallOptions]
1780
+ # Overrides the default settings for this call, e.g, timeout,
1781
+ # retries, etc.
1782
+ # @yield [result, operation] Access the result along with the RPC operation
1783
+ # @yieldparam result [Google::Privacy::Dlp::V2::HybridInspectResponse]
1784
+ # @yieldparam operation [GRPC::ActiveCall::Operation]
1785
+ # @return [Google::Privacy::Dlp::V2::HybridInspectResponse]
1786
+ # @raise [Google::Gax::GaxError] if the RPC is aborted.
1787
+ # @example
1788
+ # require "google/cloud/dlp"
1789
+ #
1790
+ # dlp_client = Google::Cloud::Dlp.new(version: :v2)
1791
+ #
1792
+ # # TODO: Initialize `name`:
1793
+ # name = ''
1794
+ # response = dlp_client.hybrid_inspect_dlp_job(name)
1795
+
1796
+ def hybrid_inspect_dlp_job \
1797
+ name,
1798
+ hybrid_item: nil,
1799
+ options: nil,
1800
+ &block
1801
+ req = {
1802
+ name: name,
1803
+ hybrid_item: hybrid_item
1804
+ }.delete_if { |_, v| v.nil? }
1805
+ req = Google::Gax::to_proto(req, Google::Privacy::Dlp::V2::HybridInspectDlpJobRequest)
1806
+ @hybrid_inspect_dlp_job.call(req, options, &block)
1807
+ end
1808
+
1705
1809
  # Lists job triggers.
1706
1810
  # See https://cloud.google.com/dlp/docs/creating-job-triggers to learn more.
1707
1811
  #
@@ -1873,6 +1977,50 @@ module Google
1873
1977
  nil
1874
1978
  end
1875
1979
 
1980
+ # Inspect hybrid content and store findings to a trigger. The inspection
1981
+ # will be processed asynchronously. To review the findings monitor the
1982
+ # jobs within the trigger.
1983
+ # Early access feature is in a pre-release state and might change or have
1984
+ # limited support. For more information, see
1985
+ # https://cloud.google.com/products#product-launch-stages.
1986
+ #
1987
+ # @param name [String]
1988
+ # Required. Resource name of the trigger to execute a hybrid inspect on, for
1989
+ # example `projects/dlp-test-project/jobTriggers/53234423`.
1990
+ # @param hybrid_item [Google::Privacy::Dlp::V2::HybridContentItem | Hash]
1991
+ # The item to inspect.
1992
+ # A hash of the same form as `Google::Privacy::Dlp::V2::HybridContentItem`
1993
+ # can also be provided.
1994
+ # @param options [Google::Gax::CallOptions]
1995
+ # Overrides the default settings for this call, e.g, timeout,
1996
+ # retries, etc.
1997
+ # @yield [result, operation] Access the result along with the RPC operation
1998
+ # @yieldparam result [Google::Privacy::Dlp::V2::HybridInspectResponse]
1999
+ # @yieldparam operation [GRPC::ActiveCall::Operation]
2000
+ # @return [Google::Privacy::Dlp::V2::HybridInspectResponse]
2001
+ # @raise [Google::Gax::GaxError] if the RPC is aborted.
2002
+ # @example
2003
+ # require "google/cloud/dlp"
2004
+ #
2005
+ # dlp_client = Google::Cloud::Dlp.new(version: :v2)
2006
+ #
2007
+ # # TODO: Initialize `name`:
2008
+ # name = ''
2009
+ # response = dlp_client.hybrid_inspect_job_trigger(name)
2010
+
2011
+ def hybrid_inspect_job_trigger \
2012
+ name,
2013
+ hybrid_item: nil,
2014
+ options: nil,
2015
+ &block
2016
+ req = {
2017
+ name: name,
2018
+ hybrid_item: hybrid_item
2019
+ }.delete_if { |_, v| v.nil? }
2020
+ req = Google::Gax::to_proto(req, Google::Privacy::Dlp::V2::HybridInspectJobTriggerRequest)
2021
+ @hybrid_inspect_job_trigger.call(req, options, &block)
2022
+ end
2023
+
1876
2024
  # Updates a job trigger.
1877
2025
  # See https://cloud.google.com/dlp/docs/creating-job-triggers to learn more.
1878
2026
  #
@@ -2024,8 +2172,8 @@ module Google
2024
2172
  # learn more.
2025
2173
  #
2026
2174
  # @param name [String]
2027
- # Required. Resource name of organization and storedInfoType to be updated, for
2028
- # example `organizations/433245324/storedInfoTypes/432452342` or
2175
+ # Required. Resource name of organization and storedInfoType to be updated,
2176
+ # for example `organizations/433245324/storedInfoTypes/432452342` or
2029
2177
  # projects/project-id/storedInfoTypes/432452342.
2030
2178
  # @param config [Google::Privacy::Dlp::V2::StoredInfoTypeConfig | Hash]
2031
2179
  # Updated configuration for the storedInfoType. If not provided, a new
@@ -2072,8 +2220,8 @@ module Google
2072
2220
  # learn more.
2073
2221
  #
2074
2222
  # @param name [String]
2075
- # Required. Resource name of the organization and storedInfoType to be read, for
2076
- # example `organizations/433245324/storedInfoTypes/432452342` or
2223
+ # Required. Resource name of the organization and storedInfoType to be read,
2224
+ # for example `organizations/433245324/storedInfoTypes/432452342` or
2077
2225
  # projects/project-id/storedInfoTypes/432452342.
2078
2226
  # @param options [Google::Gax::CallOptions]
2079
2227
  # Overrides the default settings for this call, e.g, timeout,
@@ -2185,8 +2333,8 @@ module Google
2185
2333
  # learn more.
2186
2334
  #
2187
2335
  # @param name [String]
2188
- # Required. Resource name of the organization and storedInfoType to be deleted, for
2189
- # example `organizations/433245324/storedInfoTypes/432452342` or
2336
+ # Required. Resource name of the organization and storedInfoType to be
2337
+ # deleted, for example `organizations/433245324/storedInfoTypes/432452342` or
2190
2338
  # projects/project-id/storedInfoTypes/432452342.
2191
2339
  # @param options [Google::Gax::CallOptions]
2192
2340
  # Overrides the default settings for this call, e.g, timeout,
@@ -120,6 +120,16 @@
120
120
  "retry_codes_name": "non_idempotent",
121
121
  "retry_params_name": "default"
122
122
  },
123
+ "FinishDlpJob": {
124
+ "timeout_millis": 300000,
125
+ "retry_codes_name": "non_idempotent",
126
+ "retry_params_name": "default"
127
+ },
128
+ "HybridInspectDlpJob": {
129
+ "timeout_millis": 300000,
130
+ "retry_codes_name": "non_idempotent",
131
+ "retry_params_name": "default"
132
+ },
123
133
  "ListJobTriggers": {
124
134
  "timeout_millis": 300000,
125
135
  "retry_codes_name": "idempotent",
@@ -135,6 +145,11 @@
135
145
  "retry_codes_name": "idempotent",
136
146
  "retry_params_name": "default"
137
147
  },
148
+ "HybridInspectJobTrigger": {
149
+ "timeout_millis": 300000,
150
+ "retry_codes_name": "non_idempotent",
151
+ "retry_params_name": "default"
152
+ },
138
153
  "UpdateJobTrigger": {
139
154
  "timeout_millis": 300000,
140
155
  "retry_codes_name": "non_idempotent",
@@ -115,7 +115,7 @@ module Google
115
115
  # @!attribute [rw] max_findings_per_item
116
116
  # @return [Integer]
117
117
  # Max number of findings that will be returned for each item scanned.
118
- # When set within `InspectDataSourceRequest`,
118
+ # When set within `InspectJobConfig`,
119
119
  # the maximum returned is 2000 regardless if this is set higher.
120
120
  # When set within `InspectContentRequest`, this field is ignored.
121
121
  # @!attribute [rw] max_findings_per_request
@@ -224,6 +224,11 @@ module Google
224
224
  class InspectResult; end
225
225
 
226
226
  # Represents a piece of potentially sensitive content.
227
+ # @!attribute [rw] name
228
+ # @return [String]
229
+ # Resource name in format
230
+ # projects/\\{project}/locations/\\{location}/findings/\\{finding}
231
+ # Populated only when viewing persisted findings.
227
232
  # @!attribute [rw] quote
228
233
  # @return [String]
229
234
  # The content that was found. Even if the content is not textual, it
@@ -249,6 +254,32 @@ module Google
249
254
  # Contains data parsed from quotes. Only populated if include_quote was set
250
255
  # to true and a supported infoType was requested. Currently supported
251
256
  # infoTypes: DATE, DATE_OF_BIRTH and TIME.
257
+ # @!attribute [rw] resource_name
258
+ # @return [String]
259
+ # The job that stored the finding.
260
+ # @!attribute [rw] trigger_name
261
+ # @return [String]
262
+ # Job trigger name, if applicable, for this finding.
263
+ # @!attribute [rw] labels
264
+ # @return [Hash{String => String}]
265
+ # The labels associated with this `InspectFinding`.
266
+ #
267
+ # Label keys must be between 1 and 63 characters long and must conform
268
+ # to the following regular expression: \[a-z\](https://cloud.google.com\[-a-z0-9\]*\[a-z0-9\])?.
269
+ #
270
+ # Label values must be between 0 and 63 characters long and must conform
271
+ # to the regular expression (\[a-z\](https://cloud.google.com\[-a-z0-9\]*\[a-z0-9\])?)?.
272
+ #
273
+ # No more than 10 labels can be associated with a given finding.
274
+ #
275
+ # Example: <code>"environment" : "production"</code>
276
+ # Example: <code>"pipeline" : "etl"</code>
277
+ # @!attribute [rw] job_create_time
278
+ # @return [Google::Protobuf::Timestamp]
279
+ # Time the job started that produced this finding.
280
+ # @!attribute [rw] job_name
281
+ # @return [String]
282
+ # The job that stored the finding.
252
283
  class Finding; end
253
284
 
254
285
  # Specifies the location of the finding.
@@ -268,9 +299,13 @@ module Google
268
299
  # @return [Array<Google::Privacy::Dlp::V2::ContentLocation>]
269
300
  # List of nested objects pointing to the precise location of the finding
270
301
  # within the file or record.
302
+ # @!attribute [rw] container
303
+ # @return [Google::Privacy::Dlp::V2::Container]
304
+ # Information about the container where this finding occurred, if available.
271
305
  class Location; end
272
306
 
273
- # Findings container location data.
307
+ # Precise location of the finding within a document, record, image, or metadata
308
+ # container.
274
309
  # @!attribute [rw] container_name
275
310
  # @return [String]
276
311
  # Name of the container where the finding is located.
@@ -329,6 +364,49 @@ module Google
329
364
  # The zero-based index of the row where the finding is located.
330
365
  class TableLocation; end
331
366
 
367
+ # Represents a container that may contain DLP findings.
368
+ # Examples of a container include a file, table, or database record.
369
+ # @!attribute [rw] type
370
+ # @return [String]
371
+ # Container type, for example BigQuery or Google Cloud Storage.
372
+ # @!attribute [rw] project_id
373
+ # @return [String]
374
+ # Project where the finding was found.
375
+ # Can be different from the project that owns the finding.
376
+ # @!attribute [rw] full_path
377
+ # @return [String]
378
+ # A string representation of the full container name.
379
+ # Examples:
380
+ # * BigQuery: 'Project:DataSetId.TableId'
381
+ # * Google Cloud Storage: 'gs://Bucket/folders/filename.txt'
382
+ # @!attribute [rw] root_path
383
+ # @return [String]
384
+ # The root of the container.
385
+ # Examples:
386
+ # * For BigQuery table `project_id:dataset_id.table_id`, the root is
387
+ # `dataset_id`
388
+ # * For Google Cloud Storage file `gs://bucket/folder/filename.txt`, the root
389
+ # is `gs://bucket`
390
+ # @!attribute [rw] relative_path
391
+ # @return [String]
392
+ # The rest of the path after the root.
393
+ # Examples:
394
+ # * For BigQuery table `project_id:dataset_id.table_id`, the relative path is
395
+ # `table_id`
396
+ # * Google Cloud Storage file `gs://bucket/folder/filename.txt`, the relative
397
+ # path is `folder/filename.txt`
398
+ # @!attribute [rw] update_time
399
+ # @return [Google::Protobuf::Timestamp]
400
+ # Findings container modification timestamp, if applicable.
401
+ # For Google Cloud Storage contains last file modification timestamp.
402
+ # For BigQuery table contains last_modified_time property.
403
+ # For Datastore - not populated.
404
+ # @!attribute [rw] version
405
+ # @return [String]
406
+ # Findings container version, if available
407
+ # ("generation" for Google Cloud Storage).
408
+ class Container; end
409
+
332
410
  # Generic half-open interval [start, end)
333
411
  # @!attribute [rw] start
334
412
  # @return [Integer]
@@ -582,8 +660,10 @@ module Google
582
660
  # If unspecified, then all available columns will be used for a new table or
583
661
  # an (existing) table with no schema, and no changes will be made to an
584
662
  # existing table that has a schema.
663
+ # Only for use with external storage.
585
664
  class OutputStorageConfig
586
665
  # Predefined schemas for storing findings.
666
+ # Only for use with external storage.
587
667
  module OutputSchema
588
668
  # Unused.
589
669
  OUTPUT_SCHEMA_UNSPECIFIED = 0
@@ -644,9 +724,32 @@ module Google
644
724
  # @return [Array<Google::Privacy::Dlp::V2::InfoTypeStats>]
645
725
  # Statistics of how many instances of each info type were found during
646
726
  # inspect job.
727
+ # @!attribute [rw] hybrid_stats
728
+ # @return [Google::Privacy::Dlp::V2::HybridInspectStatistics]
729
+ # Statistics related to the processing of hybrid inspect.
730
+ # Early access feature is in a pre-release state and might change or have
731
+ # limited support. For more information, see
732
+ # https://cloud.google.com/products#product-launch-stages.
647
733
  class Result; end
648
734
  end
649
735
 
736
+ # Statistics related to processing hybrid inspect requests.s
737
+ # @!attribute [rw] processed_count
738
+ # @return [Integer]
739
+ # The number of hybrid inspection requests processed within this job.
740
+ # @!attribute [rw] aborted_count
741
+ # @return [Integer]
742
+ # The number of hybrid inspection requests aborted because the job ran
743
+ # out of quota or was ended before they could be processed.
744
+ # @!attribute [rw] pending_count
745
+ # @return [Integer]
746
+ # The number of hybrid requests currently being processed. Only populated
747
+ # when called via method `getDlpJob`.
748
+ # A burst of traffic may cause hybrid inspect requests to be enqueued.
749
+ # Processing will take place as quickly as possible, but resource limitations
750
+ # may impact how long a request is enqueued for.
751
+ class HybridInspectStatistics; end
752
+
650
753
  # InfoType description.
651
754
  # @!attribute [rw] name
652
755
  # @return [String]
@@ -736,8 +839,8 @@ module Google
736
839
  # Required. Quasi-identifier columns.
737
840
  # @!attribute [rw] relative_frequency
738
841
  # @return [Google::Privacy::Dlp::V2::FieldId]
739
- # Required. The relative frequency column must contain a floating-point number
740
- # between 0 and 1 (inclusive). Null values are assumed to be zero.
842
+ # Required. The relative frequency column must contain a floating-point
843
+ # number between 0 and 1 (inclusive). Null values are assumed to be zero.
741
844
  class StatisticalTable
742
845
  # A quasi-identifier column has a custom_tag, used to know which column
743
846
  # in the data corresponds to which column in the statistical model.
@@ -831,8 +934,8 @@ module Google
831
934
  # extrapolating from the distribution of values in the input dataset.
832
935
  # @!attribute [rw] quasi_ids
833
936
  # @return [Array<Google::Privacy::Dlp::V2::PrivacyMetric::KMapEstimationConfig::TaggedField>]
834
- # Required. Fields considered to be quasi-identifiers. No two columns can have the
835
- # same tag.
937
+ # Required. Fields considered to be quasi-identifiers. No two columns can
938
+ # have the same tag.
836
939
  # @!attribute [rw] region_code
837
940
  # @return [String]
838
941
  # ISO 3166-1 alpha-2 region code to use in the statistical modeling.
@@ -881,8 +984,8 @@ module Google
881
984
  # Required. Quasi-identifier columns.
882
985
  # @!attribute [rw] relative_frequency
883
986
  # @return [Google::Privacy::Dlp::V2::FieldId]
884
- # Required. The relative frequency column must contain a floating-point number
885
- # between 0 and 1 (inclusive). Null values are assumed to be zero.
987
+ # Required. The relative frequency column must contain a floating-point
988
+ # number between 0 and 1 (inclusive). Null values are assumed to be zero.
886
989
  class AuxiliaryTable
887
990
  # A quasi-identifier column has a custom_tag, used to know which column
888
991
  # in the data corresponds to which column in the statistical model.
@@ -902,8 +1005,8 @@ module Google
902
1005
  # knowing the attack dataset, so we use a statistical model instead.
903
1006
  # @!attribute [rw] quasi_ids
904
1007
  # @return [Array<Google::Privacy::Dlp::V2::QuasiId>]
905
- # Required. Fields considered to be quasi-identifiers. No two fields can have the
906
- # same tag.
1008
+ # Required. Fields considered to be quasi-identifiers. No two fields can
1009
+ # have the same tag.
907
1010
  # @!attribute [rw] region_code
908
1011
  # @return [String]
909
1012
  # ISO 3166-1 alpha-2 region code to use in the statistical modeling.
@@ -1249,8 +1352,37 @@ module Google
1249
1352
  # Treat the dataset as structured. Transformations can be applied to
1250
1353
  # specific locations within structured datasets, such as transforming
1251
1354
  # a column within a table.
1355
+ # @!attribute [rw] transformation_error_handling
1356
+ # @return [Google::Privacy::Dlp::V2::TransformationErrorHandling]
1357
+ # Mode for handling transformation errors. If left unspecified, the default
1358
+ # mode is `TransformationErrorHandling.ThrowError`.
1252
1359
  class DeidentifyConfig; end
1253
1360
 
1361
+ # How to handle transformation errors during de-identification. A
1362
+ # transformation error occurs when the requested transformation is incompatible
1363
+ # with the data. For example, trying to de-identify an IP address using a
1364
+ # `DateShift` transformation would result in a transformation error, since date
1365
+ # info cannot be extracted from an IP address.
1366
+ # Information about any incompatible transformations, and how they were
1367
+ # handled, is returned in the response as part of the
1368
+ # `TransformationOverviews`.
1369
+ # @!attribute [rw] throw_error
1370
+ # @return [Google::Privacy::Dlp::V2::TransformationErrorHandling::ThrowError]
1371
+ # Throw an error
1372
+ # @!attribute [rw] leave_untransformed
1373
+ # @return [Google::Privacy::Dlp::V2::TransformationErrorHandling::LeaveUntransformed]
1374
+ # Ignore errors
1375
+ class TransformationErrorHandling
1376
+ # Throw an error and fail the request when a transformation error occurs.
1377
+ class ThrowError; end
1378
+
1379
+ # Skips the data without modifying it if the requested transformation would
1380
+ # cause an error. For example, if a `DateShift` transformation were applied
1381
+ # an an IP address, this mode would leave the IP address unchanged in the
1382
+ # response.
1383
+ class LeaveUntransformed; end
1384
+ end
1385
+
1254
1386
  # A rule for transforming a value.
1255
1387
  # @!attribute [rw] replace_config
1256
1388
  # @return [Google::Privacy::Dlp::V2::ReplaceValueConfig]
@@ -1487,18 +1619,18 @@ module Google
1487
1619
  # See https://cloud.google.com/dlp/docs/concepts-bucketing to learn more.
1488
1620
  # @!attribute [rw] lower_bound
1489
1621
  # @return [Google::Privacy::Dlp::V2::Value]
1490
- # Required. Lower bound value of buckets. All values less than `lower_bound` are
1491
- # grouped together into a single bucket; for example if `lower_bound` = 10,
1492
- # then all values less than 10 are replaced with the value “-10”.
1622
+ # Required. Lower bound value of buckets. All values less than `lower_bound`
1623
+ # are grouped together into a single bucket; for example if `lower_bound` =
1624
+ # 10, then all values less than 10 are replaced with the value “-10”.
1493
1625
  # @!attribute [rw] upper_bound
1494
1626
  # @return [Google::Privacy::Dlp::V2::Value]
1495
- # Required. Upper bound value of buckets. All values greater than upper_bound are
1496
- # grouped together into a single bucket; for example if `upper_bound` = 89,
1497
- # then all values greater than 89 are replaced with the value “89+”.
1627
+ # Required. Upper bound value of buckets. All values greater than upper_bound
1628
+ # are grouped together into a single bucket; for example if `upper_bound` =
1629
+ # 89, then all values greater than 89 are replaced with the value “89+”.
1498
1630
  # @!attribute [rw] bucket_size
1499
1631
  # @return [Float]
1500
- # Required. Size of each bucket (except for minimum and maximum buckets). So if
1501
- # `lower_bound` = 10, `upper_bound` = 89, and `bucket_size` = 10, then the
1632
+ # Required. Size of each bucket (except for minimum and maximum buckets). So
1633
+ # if `lower_bound` = 10, `upper_bound` = 89, and `bucket_size` = 10, then the
1502
1634
  # following buckets would be used: -10, 10-20, 20-30, 30-40, 40-50, 50-60,
1503
1635
  # 60-70, 70-80, 80-89, 89+. Precision up to 2 decimals works.
1504
1636
  class FixedSizeBucketingConfig; end
@@ -1686,14 +1818,15 @@ module Google
1686
1818
  # to learn more.
1687
1819
  # @!attribute [rw] upper_bound_days
1688
1820
  # @return [Integer]
1689
- # Required. Range of shift in days. Actual shift will be selected at random within this
1690
- # range (inclusive ends). Negative means shift to earlier in time. Must not
1691
- # be more than 365250 days (1000 years) each direction.
1821
+ # Required. Range of shift in days. Actual shift will be selected at random
1822
+ # within this range (inclusive ends). Negative means shift to earlier in
1823
+ # time. Must not be more than 365250 days (1000 years) each direction.
1692
1824
  #
1693
1825
  # For example, 3 means shift date to at most 3 days into the future.
1694
1826
  # @!attribute [rw] lower_bound_days
1695
1827
  # @return [Integer]
1696
- # Required. For example, -5 means shift date to at most 5 days back in the past.
1828
+ # Required. For example, -5 means shift date to at most 5 days back in the
1829
+ # past.
1697
1830
  # @!attribute [rw] context
1698
1831
  # @return [Google::Privacy::Dlp::V2::FieldId]
1699
1832
  # Points to the field that contains the context, for example, an entity id.
@@ -1909,6 +2042,10 @@ module Google
1909
2042
  # to 1 day and can be no longer than 60 days.
1910
2043
  class Schedule; end
1911
2044
 
2045
+ # Job trigger option for hybrid jobs. Jobs must be manually created
2046
+ # and finished.
2047
+ class Manual; end
2048
+
1912
2049
  # The inspectTemplate contains a configuration (set of types of sensitive data
1913
2050
  # to be detected) to be used anywhere you otherwise would normally specify
1914
2051
  # InspectConfig. See https://cloud.google.com/dlp/docs/concepts-templates
@@ -1996,8 +2133,8 @@ module Google
1996
2133
  # a single Schedule trigger and must have at least one object.
1997
2134
  # @!attribute [rw] errors
1998
2135
  # @return [Array<Google::Privacy::Dlp::V2::Error>]
1999
- # Output only. A stream of errors encountered when the trigger was activated. Repeated
2000
- # errors may result in the JobTrigger automatically being paused.
2136
+ # Output only. A stream of errors encountered when the trigger was activated.
2137
+ # Repeated errors may result in the JobTrigger automatically being paused.
2001
2138
  # Will return the last 100 errors. Whenever the JobTrigger is modified
2002
2139
  # this list will be cleared.
2003
2140
  # @!attribute [rw] create_time
@@ -2017,6 +2154,12 @@ module Google
2017
2154
  # @!attribute [rw] schedule
2018
2155
  # @return [Google::Privacy::Dlp::V2::Schedule]
2019
2156
  # Create a job on a repeating basis based on the elapse of time.
2157
+ # @!attribute [rw] manual
2158
+ # @return [Google::Privacy::Dlp::V2::Manual]
2159
+ # For use with hybrid jobs. Jobs must be manually created and finished.
2160
+ # Early access feature is in a pre-release state and might change or have
2161
+ # limited support. For more information, see
2162
+ # https://cloud.google.com/products#product-launch-stages.
2020
2163
  class Trigger; end
2021
2164
 
2022
2165
  # Whether the trigger is currently active. If PAUSED or CANCELLED, no jobs
@@ -2140,8 +2283,8 @@ module Google
2140
2283
  # Request message for UpdateInspectTemplate.
2141
2284
  # @!attribute [rw] name
2142
2285
  # @return [String]
2143
- # Required. Resource name of organization and inspectTemplate to be updated, for
2144
- # example `organizations/433245324/inspectTemplates/432452342` or
2286
+ # Required. Resource name of organization and inspectTemplate to be updated,
2287
+ # for example `organizations/433245324/inspectTemplates/432452342` or
2145
2288
  # projects/project-id/inspectTemplates/432452342.
2146
2289
  # @!attribute [rw] inspect_template
2147
2290
  # @return [Google::Privacy::Dlp::V2::InspectTemplate]
@@ -2154,8 +2297,8 @@ module Google
2154
2297
  # Request message for GetInspectTemplate.
2155
2298
  # @!attribute [rw] name
2156
2299
  # @return [String]
2157
- # Required. Resource name of the organization and inspectTemplate to be read, for
2158
- # example `organizations/433245324/inspectTemplates/432452342` or
2300
+ # Required. Resource name of the organization and inspectTemplate to be read,
2301
+ # for example `organizations/433245324/inspectTemplates/432452342` or
2159
2302
  # projects/project-id/inspectTemplates/432452342.
2160
2303
  class GetInspectTemplateRequest; end
2161
2304
 
@@ -2206,9 +2349,9 @@ module Google
2206
2349
  # Request message for DeleteInspectTemplate.
2207
2350
  # @!attribute [rw] name
2208
2351
  # @return [String]
2209
- # Required. Resource name of the organization and inspectTemplate to be deleted, for
2210
- # example `organizations/433245324/inspectTemplates/432452342` or
2211
- # projects/project-id/inspectTemplates/432452342.
2352
+ # Required. Resource name of the organization and inspectTemplate to be
2353
+ # deleted, for example `organizations/433245324/inspectTemplates/432452342`
2354
+ # or projects/project-id/inspectTemplates/432452342.
2212
2355
  class DeleteInspectTemplateRequest; end
2213
2356
 
2214
2357
  # Request message for CreateJobTrigger.
@@ -2409,7 +2552,7 @@ module Google
2409
2552
  # @return [Array<Google::Privacy::Dlp::V2::Error>]
2410
2553
  # A stream of errors encountered running the job.
2411
2554
  class DlpJob
2412
- # Possible states of a job.
2555
+ # Possible states of a job. New items may be added.
2413
2556
  module JobState
2414
2557
  # Unused.
2415
2558
  JOB_STATE_UNSPECIFIED = 0
@@ -2417,7 +2560,8 @@ module Google
2417
2560
  # The job has not yet started.
2418
2561
  PENDING = 1
2419
2562
 
2420
- # The job is currently running.
2563
+ # The job is currently running. Once a job has finished it will transition
2564
+ # to FAILED or DONE.
2421
2565
  RUNNING = 2
2422
2566
 
2423
2567
  # The job is no longer running.
@@ -2428,6 +2572,12 @@ module Google
2428
2572
 
2429
2573
  # The job had an error and did not complete.
2430
2574
  FAILED = 5
2575
+
2576
+ # The job is currently accepting findings via hybridInspect.
2577
+ # A hybrid job in ACTIVE state may continue to have findings added to it
2578
+ # through calling of hybridInspect. After the job has finished no more
2579
+ # calls to hybridInspect may be made. ACTIVE jobs can transition to DONE.
2580
+ ACTIVE = 6
2431
2581
  end
2432
2582
  end
2433
2583
 
@@ -2516,6 +2666,12 @@ module Google
2516
2666
  # Required. The name of the DlpJob resource to be cancelled.
2517
2667
  class CancelDlpJobRequest; end
2518
2668
 
2669
+ # The request message for finishing a DLP hybrid job.
2670
+ # @!attribute [rw] name
2671
+ # @return [String]
2672
+ # Required. The name of the DlpJob resource to be cancelled.
2673
+ class FinishDlpJobRequest; end
2674
+
2519
2675
  # The request message for deleting a DLP job.
2520
2676
  # @!attribute [rw] name
2521
2677
  # @return [String]
@@ -2545,8 +2701,9 @@ module Google
2545
2701
  # Request message for UpdateDeidentifyTemplate.
2546
2702
  # @!attribute [rw] name
2547
2703
  # @return [String]
2548
- # Required. Resource name of organization and deidentify template to be updated, for
2549
- # example `organizations/433245324/deidentifyTemplates/432452342` or
2704
+ # Required. Resource name of organization and deidentify template to be
2705
+ # updated, for example
2706
+ # `organizations/433245324/deidentifyTemplates/432452342` or
2550
2707
  # projects/project-id/deidentifyTemplates/432452342.
2551
2708
  # @!attribute [rw] deidentify_template
2552
2709
  # @return [Google::Privacy::Dlp::V2::DeidentifyTemplate]
@@ -2559,9 +2716,9 @@ module Google
2559
2716
  # Request message for GetDeidentifyTemplate.
2560
2717
  # @!attribute [rw] name
2561
2718
  # @return [String]
2562
- # Required. Resource name of the organization and deidentify template to be read, for
2563
- # example `organizations/433245324/deidentifyTemplates/432452342` or
2564
- # projects/project-id/deidentifyTemplates/432452342.
2719
+ # Required. Resource name of the organization and deidentify template to be
2720
+ # read, for example `organizations/433245324/deidentifyTemplates/432452342`
2721
+ # or projects/project-id/deidentifyTemplates/432452342.
2565
2722
  class GetDeidentifyTemplateRequest; end
2566
2723
 
2567
2724
  # Request message for ListDeidentifyTemplates.
@@ -2612,8 +2769,9 @@ module Google
2612
2769
  # Request message for DeleteDeidentifyTemplate.
2613
2770
  # @!attribute [rw] name
2614
2771
  # @return [String]
2615
- # Required. Resource name of the organization and deidentify template to be deleted,
2616
- # for example `organizations/433245324/deidentifyTemplates/432452342` or
2772
+ # Required. Resource name of the organization and deidentify template to be
2773
+ # deleted, for example
2774
+ # `organizations/433245324/deidentifyTemplates/432452342` or
2617
2775
  # projects/project-id/deidentifyTemplates/432452342.
2618
2776
  class DeleteDeidentifyTemplateRequest; end
2619
2777
 
@@ -2655,6 +2813,12 @@ module Google
2655
2813
  # @!attribute [rw] large_custom_dictionary
2656
2814
  # @return [Google::Privacy::Dlp::V2::LargeCustomDictionaryConfig]
2657
2815
  # StoredInfoType where findings are defined by a dictionary of phrases.
2816
+ # @!attribute [rw] dictionary
2817
+ # @return [Google::Privacy::Dlp::V2::CustomInfoType::Dictionary]
2818
+ # Store dictionary-based CustomInfoType.
2819
+ # @!attribute [rw] regex
2820
+ # @return [Google::Privacy::Dlp::V2::CustomInfoType::Regex]
2821
+ # Store regular expression-based StoredInfoType.
2658
2822
  class StoredInfoTypeConfig; end
2659
2823
 
2660
2824
  # Statistics for a StoredInfoType.
@@ -2733,8 +2897,8 @@ module Google
2733
2897
  # Request message for UpdateStoredInfoType.
2734
2898
  # @!attribute [rw] name
2735
2899
  # @return [String]
2736
- # Required. Resource name of organization and storedInfoType to be updated, for
2737
- # example `organizations/433245324/storedInfoTypes/432452342` or
2900
+ # Required. Resource name of organization and storedInfoType to be updated,
2901
+ # for example `organizations/433245324/storedInfoTypes/432452342` or
2738
2902
  # projects/project-id/storedInfoTypes/432452342.
2739
2903
  # @!attribute [rw] config
2740
2904
  # @return [Google::Privacy::Dlp::V2::StoredInfoTypeConfig]
@@ -2749,8 +2913,8 @@ module Google
2749
2913
  # Request message for GetStoredInfoType.
2750
2914
  # @!attribute [rw] name
2751
2915
  # @return [String]
2752
- # Required. Resource name of the organization and storedInfoType to be read, for
2753
- # example `organizations/433245324/storedInfoTypes/432452342` or
2916
+ # Required. Resource name of the organization and storedInfoType to be read,
2917
+ # for example `organizations/433245324/storedInfoTypes/432452342` or
2754
2918
  # projects/project-id/storedInfoTypes/432452342.
2755
2919
  class GetStoredInfoTypeRequest; end
2756
2920
 
@@ -2802,11 +2966,85 @@ module Google
2802
2966
  # Request message for DeleteStoredInfoType.
2803
2967
  # @!attribute [rw] name
2804
2968
  # @return [String]
2805
- # Required. Resource name of the organization and storedInfoType to be deleted, for
2806
- # example `organizations/433245324/storedInfoTypes/432452342` or
2969
+ # Required. Resource name of the organization and storedInfoType to be
2970
+ # deleted, for example `organizations/433245324/storedInfoTypes/432452342` or
2807
2971
  # projects/project-id/storedInfoTypes/432452342.
2808
2972
  class DeleteStoredInfoTypeRequest; end
2809
2973
 
2974
+ # Request to search for potentially sensitive info in a custom location.
2975
+ # @!attribute [rw] name
2976
+ # @return [String]
2977
+ # Required. Resource name of the trigger to execute a hybrid inspect on, for
2978
+ # example `projects/dlp-test-project/jobTriggers/53234423`.
2979
+ # @!attribute [rw] hybrid_item
2980
+ # @return [Google::Privacy::Dlp::V2::HybridContentItem]
2981
+ # The item to inspect.
2982
+ class HybridInspectJobTriggerRequest; end
2983
+
2984
+ # Request to search for potentially sensitive info in a custom location.
2985
+ # @!attribute [rw] name
2986
+ # @return [String]
2987
+ # Required. Resource name of the job to execute a hybrid inspect on, for
2988
+ # example `projects/dlp-test-project/dlpJob/53234423`.
2989
+ # @!attribute [rw] hybrid_item
2990
+ # @return [Google::Privacy::Dlp::V2::HybridContentItem]
2991
+ # The item to inspect.
2992
+ class HybridInspectDlpJobRequest; end
2993
+
2994
+ # An individual hybrid item to inspect. Will be stored temporarily during
2995
+ # processing.
2996
+ # @!attribute [rw] item
2997
+ # @return [Google::Privacy::Dlp::V2::ContentItem]
2998
+ # The item to inspect.
2999
+ # @!attribute [rw] finding_details
3000
+ # @return [Google::Privacy::Dlp::V2::HybridFindingDetails]
3001
+ # Supplementary information that will be added to each finding.
3002
+ class HybridContentItem; end
3003
+
3004
+ # Populate to associate additional data with each finding.
3005
+ # @!attribute [rw] container_details
3006
+ # @return [Google::Privacy::Dlp::V2::Container]
3007
+ # Details about the container where the content being inspected is from.
3008
+ # @!attribute [rw] file_offset
3009
+ # @return [Integer]
3010
+ # Offset in bytes of the line, from the beginning of the file, where the
3011
+ # finding is located. Populate if the item being scanned is only part of a
3012
+ # bigger item, such as a shard of a file and you want to track the absolute
3013
+ # position of the finding.
3014
+ # @!attribute [rw] row_offset
3015
+ # @return [Integer]
3016
+ # Offset of the row for tables. Populate if the row(s) being scanned are
3017
+ # part of a bigger dataset and you want to keep track of their absolute
3018
+ # position.
3019
+ # @!attribute [rw] table_options
3020
+ # @return [Google::Privacy::Dlp::V2::TableOptions]
3021
+ # If the container is a table, additional information to make findings
3022
+ # meaningful such as the columns that are primary keys. If not known ahead
3023
+ # of time, can also be set within each inspect hybrid call and the two
3024
+ # will be merged. Note that identifying_fields will only be stored to
3025
+ # BigQuery, and only if the BigQuery action has been included.
3026
+ # @!attribute [rw] labels
3027
+ # @return [Hash{String => String}]
3028
+ # Labels to represent user provided metadata about the data being inspected.
3029
+ # If configured by the job, some key values may be required.
3030
+ # The labels associated with `Finding`'s produced by hybrid
3031
+ # inspection.
3032
+ #
3033
+ # Label keys must be between 1 and 63 characters long and must conform
3034
+ # to the following regular expression: \[a-z\](https://cloud.google.com\[-a-z0-9\]*\[a-z0-9\])?.
3035
+ #
3036
+ # Label values must be between 0 and 63 characters long and must conform
3037
+ # to the regular expression (\[a-z\](https://cloud.google.com\[-a-z0-9\]*\[a-z0-9\])?)?.
3038
+ #
3039
+ # No more than 10 labels can be associated with a given finding.
3040
+ #
3041
+ # Example: <code>"environment" : "production"</code>
3042
+ # Example: <code>"pipeline" : "etl"</code>
3043
+ class HybridFindingDetails; end
3044
+
3045
+ # Quota exceeded errors will be thrown once quota has been met.
3046
+ class HybridInspectResponse; end
3047
+
2810
3048
  # Options describing which parts of the provided content should be scanned.
2811
3049
  module ContentOption
2812
3050
  # Includes entire content of a file or a data stream.