google-apis-dlp_v2 0.51.0 → 0.53.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.
@@ -160,6 +160,21 @@ module Google
160
160
  end
161
161
  end
162
162
 
163
+ # Catch-all for all other tables not specified by other filters. Should always
164
+ # be last, except for single-table configurations, which will only have a
165
+ # TableReference target.
166
+ class GooglePrivacyDlpV2AllOtherBigQueryTables
167
+ include Google::Apis::Core::Hashable
168
+
169
+ def initialize(**args)
170
+ update!(**args)
171
+ end
172
+
173
+ # Update properties of this object
174
+ def update!(**args)
175
+ end
176
+ end
177
+
163
178
  # Apply to all text.
164
179
  class GooglePrivacyDlpV2AllText
165
180
  include Google::Apis::Core::Hashable
@@ -282,6 +297,50 @@ module Google
282
297
  end
283
298
  end
284
299
 
300
+ # Target used to match against for Discovery with BigQuery tables
301
+ class GooglePrivacyDlpV2BigQueryDiscoveryTarget
302
+ include Google::Apis::Core::Hashable
303
+
304
+ # What must take place for a profile to be updated and how frequently it should
305
+ # occur. New tables are scanned as quickly as possible depending on system
306
+ # capacity.
307
+ # Corresponds to the JSON property `cadence`
308
+ # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2DiscoveryGenerationCadence]
309
+ attr_accessor :cadence
310
+
311
+ # Requirements that must be true before a table is scanned in Discovery for the
312
+ # first time. There is an AND relationship between the top-level attributes.
313
+ # Corresponds to the JSON property `conditions`
314
+ # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2DiscoveryBigQueryConditions]
315
+ attr_accessor :conditions
316
+
317
+ # Do nothing.
318
+ # Corresponds to the JSON property `disabled`
319
+ # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2Disabled]
320
+ attr_accessor :disabled
321
+
322
+ # Determines what tables will have profiles generated within an organization or
323
+ # project. Includes the ability to filter by regular expression patterns on
324
+ # project ID, dataset ID, and table ID. Also lets you set minimum conditions
325
+ # that must be met before Cloud DLP scans a table (like a minimum row count or a
326
+ # minimum table age).
327
+ # Corresponds to the JSON property `filter`
328
+ # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2DiscoveryBigQueryFilter]
329
+ attr_accessor :filter
330
+
331
+ def initialize(**args)
332
+ update!(**args)
333
+ end
334
+
335
+ # Update properties of this object
336
+ def update!(**args)
337
+ @cadence = args[:cadence] if args.key?(:cadence)
338
+ @conditions = args[:conditions] if args.key?(:conditions)
339
+ @disabled = args[:disabled] if args.key?(:disabled)
340
+ @filter = args[:filter] if args.key?(:filter)
341
+ end
342
+ end
343
+
285
344
  # Message defining a field of a BigQuery table.
286
345
  class GooglePrivacyDlpV2BigQueryField
287
346
  include Google::Apis::Core::Hashable
@@ -346,7 +405,7 @@ module Google
346
405
  # References to fields excluded from scanning. This allows you to skip
347
406
  # inspection of entire columns which you know have no findings. When inspecting
348
407
  # a table, we recommend that you inspect all columns. Otherwise, findings might
349
- # be impacted because hints from excluded columns will not be used.
408
+ # be affected because hints from excluded columns will not be used.
350
409
  # Corresponds to the JSON property `excludedFields`
351
410
  # @return [Array<Google::Apis::DlpV2::GooglePrivacyDlpV2FieldId>]
352
411
  attr_accessor :excluded_fields
@@ -361,7 +420,7 @@ module Google
361
420
  attr_accessor :identifying_fields
362
421
 
363
422
  # Limit scanning only to these fields. When inspecting a table, we recommend
364
- # that you inspect all columns. Otherwise, findings might be impacted because
423
+ # that you inspect all columns. Otherwise, findings might be affected because
365
424
  # hints from excluded columns will not be used.
366
425
  # Corresponds to the JSON property `includedFields`
367
426
  # @return [Array<Google::Apis::DlpV2::GooglePrivacyDlpV2FieldId>]
@@ -412,6 +471,61 @@ module Google
412
471
  end
413
472
  end
414
473
 
474
+ # A pattern to match against one or more tables, datasets, or projects that
475
+ # contain BigQuery tables. At least one pattern must be specified. Regular
476
+ # expressions use RE2 [syntax](https://github.com/google/re2/wiki/Syntax); a
477
+ # guide can be found under the google/re2 repository on GitHub.
478
+ class GooglePrivacyDlpV2BigQueryRegex
479
+ include Google::Apis::Core::Hashable
480
+
481
+ # If unset, this property matches all datasets.
482
+ # Corresponds to the JSON property `datasetIdRegex`
483
+ # @return [String]
484
+ attr_accessor :dataset_id_regex
485
+
486
+ # For organizations, if unset, will match all projects. Has no effect for data
487
+ # profile configurations created within a project.
488
+ # Corresponds to the JSON property `projectIdRegex`
489
+ # @return [String]
490
+ attr_accessor :project_id_regex
491
+
492
+ # If unset, this property matches all tables.
493
+ # Corresponds to the JSON property `tableIdRegex`
494
+ # @return [String]
495
+ attr_accessor :table_id_regex
496
+
497
+ def initialize(**args)
498
+ update!(**args)
499
+ end
500
+
501
+ # Update properties of this object
502
+ def update!(**args)
503
+ @dataset_id_regex = args[:dataset_id_regex] if args.key?(:dataset_id_regex)
504
+ @project_id_regex = args[:project_id_regex] if args.key?(:project_id_regex)
505
+ @table_id_regex = args[:table_id_regex] if args.key?(:table_id_regex)
506
+ end
507
+ end
508
+
509
+ # A collection of regular expressions to determine what tables to match against.
510
+ class GooglePrivacyDlpV2BigQueryRegexes
511
+ include Google::Apis::Core::Hashable
512
+
513
+ # A single BigQuery regular expression pattern to match against one or more
514
+ # tables, datasets, or projects that contain BigQuery tables.
515
+ # Corresponds to the JSON property `patterns`
516
+ # @return [Array<Google::Apis::DlpV2::GooglePrivacyDlpV2BigQueryRegex>]
517
+ attr_accessor :patterns
518
+
519
+ def initialize(**args)
520
+ update!(**args)
521
+ end
522
+
523
+ # Update properties of this object
524
+ def update!(**args)
525
+ @patterns = args[:patterns] if args.key?(:patterns)
526
+ end
527
+ end
528
+
415
529
  # Message defining the location of a BigQuery table. A table is uniquely
416
530
  # identified by its project_id, dataset_id, and table_name. Within a query a
417
531
  # table is often referenced with a string in the format of: `:.` or `..`.
@@ -446,6 +560,44 @@ module Google
446
560
  end
447
561
  end
448
562
 
563
+ # Specifies a collection of BigQuery tables. Used for Discovery.
564
+ class GooglePrivacyDlpV2BigQueryTableCollection
565
+ include Google::Apis::Core::Hashable
566
+
567
+ # A collection of regular expressions to determine what tables to match against.
568
+ # Corresponds to the JSON property `includeRegexes`
569
+ # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2BigQueryRegexes]
570
+ attr_accessor :include_regexes
571
+
572
+ def initialize(**args)
573
+ update!(**args)
574
+ end
575
+
576
+ # Update properties of this object
577
+ def update!(**args)
578
+ @include_regexes = args[:include_regexes] if args.key?(:include_regexes)
579
+ end
580
+ end
581
+
582
+ # The types of bigquery tables supported by Cloud DLP.
583
+ class GooglePrivacyDlpV2BigQueryTableTypes
584
+ include Google::Apis::Core::Hashable
585
+
586
+ # A set of bigquery table types.
587
+ # Corresponds to the JSON property `types`
588
+ # @return [Array<String>]
589
+ attr_accessor :types
590
+
591
+ def initialize(**args)
592
+ update!(**args)
593
+ end
594
+
595
+ # Update properties of this object
596
+ def update!(**args)
597
+ @types = args[:types] if args.key?(:types)
598
+ end
599
+ end
600
+
449
601
  # Bounding box encompassing detected text within an image.
450
602
  class GooglePrivacyDlpV2BoundingBox
451
603
  include Google::Apis::Core::Hashable
@@ -1359,6 +1511,37 @@ module Google
1359
1511
  end
1360
1512
  end
1361
1513
 
1514
+ # Request message for CreateDiscoveryConfig.
1515
+ class GooglePrivacyDlpV2CreateDiscoveryConfigRequest
1516
+ include Google::Apis::Core::Hashable
1517
+
1518
+ # The config id can contain uppercase and lowercase letters, numbers, and
1519
+ # hyphens; that is, it must match the regular expression: `[a-zA-Z\d-_]+`. The
1520
+ # maximum length is 100 characters. Can be empty to allow the system to generate
1521
+ # one.
1522
+ # Corresponds to the JSON property `configId`
1523
+ # @return [String]
1524
+ attr_accessor :config_id
1525
+
1526
+ # Configuration for Discovery to scan resources for profile generation. Only one
1527
+ # Discovery configuration may exist per organization, folder, or project. The
1528
+ # generated data profiles are retained according to the [data retention policy] (
1529
+ # https://cloud.google.com/dlp/docs/data-profiles#retention).
1530
+ # Corresponds to the JSON property `discoveryConfig`
1531
+ # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2DiscoveryConfig]
1532
+ attr_accessor :discovery_config
1533
+
1534
+ def initialize(**args)
1535
+ update!(**args)
1536
+ end
1537
+
1538
+ # Update properties of this object
1539
+ def update!(**args)
1540
+ @config_id = args[:config_id] if args.key?(:config_id)
1541
+ @discovery_config = args[:discovery_config] if args.key?(:discovery_config)
1542
+ end
1543
+ end
1544
+
1362
1545
  # Request message for CreateDlpJobRequest. Used to initiate long running jobs
1363
1546
  # such as calculating risk metrics or inspecting Google Cloud Storage.
1364
1547
  class GooglePrivacyDlpV2CreateDlpJobRequest
@@ -2643,6 +2826,312 @@ module Google
2643
2826
  end
2644
2827
  end
2645
2828
 
2829
+ # Do nothing.
2830
+ class GooglePrivacyDlpV2Disabled
2831
+ include Google::Apis::Core::Hashable
2832
+
2833
+ def initialize(**args)
2834
+ update!(**args)
2835
+ end
2836
+
2837
+ # Update properties of this object
2838
+ def update!(**args)
2839
+ end
2840
+ end
2841
+
2842
+ # Requirements that must be true before a table is scanned in Discovery for the
2843
+ # first time. There is an AND relationship between the top-level attributes.
2844
+ class GooglePrivacyDlpV2DiscoveryBigQueryConditions
2845
+ include Google::Apis::Core::Hashable
2846
+
2847
+ # BigQuery table must have been created after this date. Used to avoid
2848
+ # backfilling.
2849
+ # Corresponds to the JSON property `createdAfter`
2850
+ # @return [String]
2851
+ attr_accessor :created_after
2852
+
2853
+ # There is an OR relationship between these attributes. They are used to
2854
+ # determine if a table should be scanned or not in Discovery.
2855
+ # Corresponds to the JSON property `orConditions`
2856
+ # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2OrConditions]
2857
+ attr_accessor :or_conditions
2858
+
2859
+ # Restrict Discovery to categories of table types.
2860
+ # Corresponds to the JSON property `typeCollection`
2861
+ # @return [String]
2862
+ attr_accessor :type_collection
2863
+
2864
+ # The types of bigquery tables supported by Cloud DLP.
2865
+ # Corresponds to the JSON property `types`
2866
+ # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2BigQueryTableTypes]
2867
+ attr_accessor :types
2868
+
2869
+ def initialize(**args)
2870
+ update!(**args)
2871
+ end
2872
+
2873
+ # Update properties of this object
2874
+ def update!(**args)
2875
+ @created_after = args[:created_after] if args.key?(:created_after)
2876
+ @or_conditions = args[:or_conditions] if args.key?(:or_conditions)
2877
+ @type_collection = args[:type_collection] if args.key?(:type_collection)
2878
+ @types = args[:types] if args.key?(:types)
2879
+ end
2880
+ end
2881
+
2882
+ # Determines what tables will have profiles generated within an organization or
2883
+ # project. Includes the ability to filter by regular expression patterns on
2884
+ # project ID, dataset ID, and table ID. Also lets you set minimum conditions
2885
+ # that must be met before Cloud DLP scans a table (like a minimum row count or a
2886
+ # minimum table age).
2887
+ class GooglePrivacyDlpV2DiscoveryBigQueryFilter
2888
+ include Google::Apis::Core::Hashable
2889
+
2890
+ # Catch-all for all other tables not specified by other filters. Should always
2891
+ # be last, except for single-table configurations, which will only have a
2892
+ # TableReference target.
2893
+ # Corresponds to the JSON property `otherTables`
2894
+ # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2AllOtherBigQueryTables]
2895
+ attr_accessor :other_tables
2896
+
2897
+ # Specifies a collection of BigQuery tables. Used for Discovery.
2898
+ # Corresponds to the JSON property `tables`
2899
+ # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2BigQueryTableCollection]
2900
+ attr_accessor :tables
2901
+
2902
+ def initialize(**args)
2903
+ update!(**args)
2904
+ end
2905
+
2906
+ # Update properties of this object
2907
+ def update!(**args)
2908
+ @other_tables = args[:other_tables] if args.key?(:other_tables)
2909
+ @tables = args[:tables] if args.key?(:tables)
2910
+ end
2911
+ end
2912
+
2913
+ # Configuration for Discovery to scan resources for profile generation. Only one
2914
+ # Discovery configuration may exist per organization, folder, or project. The
2915
+ # generated data profiles are retained according to the [data retention policy] (
2916
+ # https://cloud.google.com/dlp/docs/data-profiles#retention).
2917
+ class GooglePrivacyDlpV2DiscoveryConfig
2918
+ include Google::Apis::Core::Hashable
2919
+
2920
+ # Actions to execute at the completion of scanning.
2921
+ # Corresponds to the JSON property `actions`
2922
+ # @return [Array<Google::Apis::DlpV2::GooglePrivacyDlpV2DataProfileAction>]
2923
+ attr_accessor :actions
2924
+
2925
+ # Output only. The creation timestamp of a DiscoveryConfig.
2926
+ # Corresponds to the JSON property `createTime`
2927
+ # @return [String]
2928
+ attr_accessor :create_time
2929
+
2930
+ # Display name (max 100 chars)
2931
+ # Corresponds to the JSON property `displayName`
2932
+ # @return [String]
2933
+ attr_accessor :display_name
2934
+
2935
+ # Output only. A stream of errors encountered when the config was activated.
2936
+ # Repeated errors may result in the config automatically being paused. Output
2937
+ # only field. Will return the last 100 errors. Whenever the config is modified
2938
+ # this list will be cleared.
2939
+ # Corresponds to the JSON property `errors`
2940
+ # @return [Array<Google::Apis::DlpV2::GooglePrivacyDlpV2Error>]
2941
+ attr_accessor :errors
2942
+
2943
+ # Detection logic for profile generation. Not all template features are used by
2944
+ # Discovery. FindingLimits, include_quote and exclude_info_types have no impact
2945
+ # on Discovery. Multiple templates may be provided if there is data in multiple
2946
+ # regions. At most one template must be specified per-region (including "global")
2947
+ # . Each region is scanned using the applicable template. If no region-specific
2948
+ # template is specified, but a "global" template is specified, it will be copied
2949
+ # to that region and used instead. If no global or region-specific template is
2950
+ # provided for a region with data, that region's data will not be scanned. For
2951
+ # more information, see https://cloud.google.com/dlp/docs/data-profiles#
2952
+ # data_residency.
2953
+ # Corresponds to the JSON property `inspectTemplates`
2954
+ # @return [Array<String>]
2955
+ attr_accessor :inspect_templates
2956
+
2957
+ # Output only. The timestamp of the last time this config was executed.
2958
+ # Corresponds to the JSON property `lastRunTime`
2959
+ # @return [String]
2960
+ attr_accessor :last_run_time
2961
+
2962
+ # Unique resource name for the DiscoveryConfig, assigned by the service when the
2963
+ # DiscoveryConfig is created, for example `projects/dlp-test-project/locations/
2964
+ # global/discoveryConfigs/53234423`.
2965
+ # Corresponds to the JSON property `name`
2966
+ # @return [String]
2967
+ attr_accessor :name
2968
+
2969
+ # Project and scan location information. Only set when the parent is an org.
2970
+ # Corresponds to the JSON property `orgConfig`
2971
+ # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2OrgConfig]
2972
+ attr_accessor :org_config
2973
+
2974
+ # Required. A status for this configuration.
2975
+ # Corresponds to the JSON property `status`
2976
+ # @return [String]
2977
+ attr_accessor :status
2978
+
2979
+ # Target to match against for determining what to scan and how frequently.
2980
+ # Corresponds to the JSON property `targets`
2981
+ # @return [Array<Google::Apis::DlpV2::GooglePrivacyDlpV2DiscoveryTarget>]
2982
+ attr_accessor :targets
2983
+
2984
+ # Output only. The last update timestamp of a DiscoveryConfig.
2985
+ # Corresponds to the JSON property `updateTime`
2986
+ # @return [String]
2987
+ attr_accessor :update_time
2988
+
2989
+ def initialize(**args)
2990
+ update!(**args)
2991
+ end
2992
+
2993
+ # Update properties of this object
2994
+ def update!(**args)
2995
+ @actions = args[:actions] if args.key?(:actions)
2996
+ @create_time = args[:create_time] if args.key?(:create_time)
2997
+ @display_name = args[:display_name] if args.key?(:display_name)
2998
+ @errors = args[:errors] if args.key?(:errors)
2999
+ @inspect_templates = args[:inspect_templates] if args.key?(:inspect_templates)
3000
+ @last_run_time = args[:last_run_time] if args.key?(:last_run_time)
3001
+ @name = args[:name] if args.key?(:name)
3002
+ @org_config = args[:org_config] if args.key?(:org_config)
3003
+ @status = args[:status] if args.key?(:status)
3004
+ @targets = args[:targets] if args.key?(:targets)
3005
+ @update_time = args[:update_time] if args.key?(:update_time)
3006
+ end
3007
+ end
3008
+
3009
+ # What must take place for a profile to be updated and how frequently it should
3010
+ # occur. New tables are scanned as quickly as possible depending on system
3011
+ # capacity.
3012
+ class GooglePrivacyDlpV2DiscoveryGenerationCadence
3013
+ include Google::Apis::Core::Hashable
3014
+
3015
+ # The cadence at which to update data profiles when a schema is modified.
3016
+ # Corresponds to the JSON property `schemaModifiedCadence`
3017
+ # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2DiscoverySchemaModifiedCadence]
3018
+ attr_accessor :schema_modified_cadence
3019
+
3020
+ # The cadence at which to update data profiles when a table is modified.
3021
+ # Corresponds to the JSON property `tableModifiedCadence`
3022
+ # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2DiscoveryTableModifiedCadence]
3023
+ attr_accessor :table_modified_cadence
3024
+
3025
+ def initialize(**args)
3026
+ update!(**args)
3027
+ end
3028
+
3029
+ # Update properties of this object
3030
+ def update!(**args)
3031
+ @schema_modified_cadence = args[:schema_modified_cadence] if args.key?(:schema_modified_cadence)
3032
+ @table_modified_cadence = args[:table_modified_cadence] if args.key?(:table_modified_cadence)
3033
+ end
3034
+ end
3035
+
3036
+ # The cadence at which to update data profiles when a schema is modified.
3037
+ class GooglePrivacyDlpV2DiscoverySchemaModifiedCadence
3038
+ include Google::Apis::Core::Hashable
3039
+
3040
+ # How frequently profiles may be updated when schemas are modified. Defaults to
3041
+ # monthly.
3042
+ # Corresponds to the JSON property `frequency`
3043
+ # @return [String]
3044
+ attr_accessor :frequency
3045
+
3046
+ # The type of events to consider when deciding if the table's schema has been
3047
+ # modified and should have the profile updated. Defaults to NEW_COLUMNS.
3048
+ # Corresponds to the JSON property `types`
3049
+ # @return [Array<String>]
3050
+ attr_accessor :types
3051
+
3052
+ def initialize(**args)
3053
+ update!(**args)
3054
+ end
3055
+
3056
+ # Update properties of this object
3057
+ def update!(**args)
3058
+ @frequency = args[:frequency] if args.key?(:frequency)
3059
+ @types = args[:types] if args.key?(:types)
3060
+ end
3061
+ end
3062
+
3063
+ # The location to begin a Discovery scan. Denotes an organization ID or folder
3064
+ # ID within an organization.
3065
+ class GooglePrivacyDlpV2DiscoveryStartingLocation
3066
+ include Google::Apis::Core::Hashable
3067
+
3068
+ # The ID of the Folder within an organization to scan.
3069
+ # Corresponds to the JSON property `folderId`
3070
+ # @return [Fixnum]
3071
+ attr_accessor :folder_id
3072
+
3073
+ # The ID of an organization to scan.
3074
+ # Corresponds to the JSON property `organizationId`
3075
+ # @return [Fixnum]
3076
+ attr_accessor :organization_id
3077
+
3078
+ def initialize(**args)
3079
+ update!(**args)
3080
+ end
3081
+
3082
+ # Update properties of this object
3083
+ def update!(**args)
3084
+ @folder_id = args[:folder_id] if args.key?(:folder_id)
3085
+ @organization_id = args[:organization_id] if args.key?(:organization_id)
3086
+ end
3087
+ end
3088
+
3089
+ # The cadence at which to update data profiles when a table is modified.
3090
+ class GooglePrivacyDlpV2DiscoveryTableModifiedCadence
3091
+ include Google::Apis::Core::Hashable
3092
+
3093
+ # How frequently data profiles can be updated when tables are modified. Defaults
3094
+ # to never.
3095
+ # Corresponds to the JSON property `frequency`
3096
+ # @return [String]
3097
+ attr_accessor :frequency
3098
+
3099
+ # The type of events to consider when deciding if the table has been modified
3100
+ # and should have the profile updated. Defaults to MODIFIED_TIMESTAMP.
3101
+ # Corresponds to the JSON property `types`
3102
+ # @return [Array<String>]
3103
+ attr_accessor :types
3104
+
3105
+ def initialize(**args)
3106
+ update!(**args)
3107
+ end
3108
+
3109
+ # Update properties of this object
3110
+ def update!(**args)
3111
+ @frequency = args[:frequency] if args.key?(:frequency)
3112
+ @types = args[:types] if args.key?(:types)
3113
+ end
3114
+ end
3115
+
3116
+ # Target used to match against for Discovery.
3117
+ class GooglePrivacyDlpV2DiscoveryTarget
3118
+ include Google::Apis::Core::Hashable
3119
+
3120
+ # Target used to match against for Discovery with BigQuery tables
3121
+ # Corresponds to the JSON property `bigQueryTarget`
3122
+ # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2BigQueryDiscoveryTarget]
3123
+ attr_accessor :big_query_target
3124
+
3125
+ def initialize(**args)
3126
+ update!(**args)
3127
+ end
3128
+
3129
+ # Update properties of this object
3130
+ def update!(**args)
3131
+ @big_query_target = args[:big_query_target] if args.key?(:big_query_target)
3132
+ end
3133
+ end
3134
+
2646
3135
  # Combines all of the information about a DLP job.
2647
3136
  class GooglePrivacyDlpV2DlpJob
2648
3137
  include Google::Apis::Core::Hashable
@@ -2787,8 +3276,8 @@ module Google
2787
3276
  # @return [Google::Apis::DlpV2::GoogleRpcStatus]
2788
3277
  attr_accessor :details
2789
3278
 
2790
- # The times the error occurred. List includes the oldest timestamp, and the last
2791
- # 9 ones.
3279
+ # The times the error occurred. List includes the oldest timestamp and the last
3280
+ # 9 timestamps.
2792
3281
  # Corresponds to the JSON property `timestamps`
2793
3282
  # @return [Array<String>]
2794
3283
  attr_accessor :timestamps
@@ -3771,10 +4260,10 @@ module Google
3771
4260
  end
3772
4261
  end
3773
4262
 
3774
- # Configuration to control custom minimum likelihoods per infotype. Used when
3775
- # certain infotypes need to return with higher or lower precision than the
3776
- # baseline, i.e. when wanting PERSON_NAME to return all possible names without
3777
- # lowering the precision of other infotypes.
4263
+ # Configuration for setting a minimum likelihood per infotype. Used to customize
4264
+ # the minimum likelihood level for specific infotypes in the request. For
4265
+ # example, use this if you want to lower the precision for PERSON_NAME without
4266
+ # lowering the precision for the other infotypes in the request.
3778
4267
  class GooglePrivacyDlpV2InfoTypeLikelihood
3779
4268
  include Google::Apis::Core::Hashable
3780
4269
 
@@ -3783,8 +4272,8 @@ module Google
3783
4272
  # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2InfoType]
3784
4273
  attr_accessor :info_type
3785
4274
 
3786
- # Only returns findings equal or above this threshold. This field is required or
3787
- # else the configuration fails.
4275
+ # Only returns findings equal to or above this threshold. This field is required
4276
+ # or else the configuration fails.
3788
4277
  # Corresponds to the JSON property `minLikelihood`
3789
4278
  # @return [String]
3790
4279
  attr_accessor :min_likelihood
@@ -3977,15 +4466,19 @@ module Google
3977
4466
  # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2FindingLimits]
3978
4467
  attr_accessor :limits
3979
4468
 
3980
- # Only returns findings equal or above this threshold. The default is POSSIBLE.
3981
- # See https://cloud.google.com/dlp/docs/likelihood to learn more.
4469
+ # Only returns findings equal to or above this threshold. The default is
4470
+ # POSSIBLE. In general, the highest likelihood setting yields the fewest
4471
+ # findings in results and the lowest chance of a false positive. For more
4472
+ # information, see [Match likelihood](https://cloud.google.com/dlp/docs/
4473
+ # likelihood).
3982
4474
  # Corresponds to the JSON property `minLikelihood`
3983
4475
  # @return [String]
3984
4476
  attr_accessor :min_likelihood
3985
4477
 
3986
- # Per infotype likelihoods. For each infotype, a user can specify a minimum
3987
- # likelihood, and only return that infotype if it is above that threshold. If an
3988
- # infotype is not included, it uses the InspectConfig min_likelihood.
4478
+ # Minimum likelihood per infotype. For each infotype, a user can specify a
4479
+ # minimum likelihood. The system only returns a finding if its likelihood is
4480
+ # above this threshold. If this field is not set, the system uses the
4481
+ # InspectConfig min_likelihood.
3989
4482
  # Corresponds to the JSON property `minLikelihoodPerInfoType`
3990
4483
  # @return [Array<Google::Apis::DlpV2::GooglePrivacyDlpV2InfoTypeLikelihood>]
3991
4484
  attr_accessor :min_likelihood_per_info_type
@@ -4982,6 +5475,32 @@ module Google
4982
5475
  end
4983
5476
  end
4984
5477
 
5478
+ # Response message for ListDiscoveryConfigs.
5479
+ class GooglePrivacyDlpV2ListDiscoveryConfigsResponse
5480
+ include Google::Apis::Core::Hashable
5481
+
5482
+ # List of configs, up to page_size in ListDiscoveryConfigsRequest.
5483
+ # Corresponds to the JSON property `discoveryConfigs`
5484
+ # @return [Array<Google::Apis::DlpV2::GooglePrivacyDlpV2DiscoveryConfig>]
5485
+ attr_accessor :discovery_configs
5486
+
5487
+ # If the next page is available then the next page token to be used in following
5488
+ # ListDiscoveryConfigs request.
5489
+ # Corresponds to the JSON property `nextPageToken`
5490
+ # @return [String]
5491
+ attr_accessor :next_page_token
5492
+
5493
+ def initialize(**args)
5494
+ update!(**args)
5495
+ end
5496
+
5497
+ # Update properties of this object
5498
+ def update!(**args)
5499
+ @discovery_configs = args[:discovery_configs] if args.key?(:discovery_configs)
5500
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
5501
+ end
5502
+ end
5503
+
4985
5504
  # The response message for listing DLP jobs.
4986
5505
  class GooglePrivacyDlpV2ListDlpJobsResponse
4987
5506
  include Google::Apis::Core::Hashable
@@ -5241,6 +5760,62 @@ module Google
5241
5760
  end
5242
5761
  end
5243
5762
 
5763
+ # There is an OR relationship between these attributes. They are used to
5764
+ # determine if a table should be scanned or not in Discovery.
5765
+ class GooglePrivacyDlpV2OrConditions
5766
+ include Google::Apis::Core::Hashable
5767
+
5768
+ # Minimum age a table must have before Cloud DLP can profile it. Value must be 1
5769
+ # hour or greater.
5770
+ # Corresponds to the JSON property `minAge`
5771
+ # @return [String]
5772
+ attr_accessor :min_age
5773
+
5774
+ # Minimum number of rows that should be present before Cloud DLP profiles a
5775
+ # table
5776
+ # Corresponds to the JSON property `minRowCount`
5777
+ # @return [Fixnum]
5778
+ attr_accessor :min_row_count
5779
+
5780
+ def initialize(**args)
5781
+ update!(**args)
5782
+ end
5783
+
5784
+ # Update properties of this object
5785
+ def update!(**args)
5786
+ @min_age = args[:min_age] if args.key?(:min_age)
5787
+ @min_row_count = args[:min_row_count] if args.key?(:min_row_count)
5788
+ end
5789
+ end
5790
+
5791
+ # Project and scan location information. Only set when the parent is an org.
5792
+ class GooglePrivacyDlpV2OrgConfig
5793
+ include Google::Apis::Core::Hashable
5794
+
5795
+ # The location to begin a Discovery scan. Denotes an organization ID or folder
5796
+ # ID within an organization.
5797
+ # Corresponds to the JSON property `location`
5798
+ # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2DiscoveryStartingLocation]
5799
+ attr_accessor :location
5800
+
5801
+ # The project that will run the scan. The DLP service account that exists within
5802
+ # this project must have access to all resources that are profiled, and the
5803
+ # Cloud DLP API must be enabled.
5804
+ # Corresponds to the JSON property `projectId`
5805
+ # @return [String]
5806
+ attr_accessor :project_id
5807
+
5808
+ def initialize(**args)
5809
+ update!(**args)
5810
+ end
5811
+
5812
+ # Update properties of this object
5813
+ def update!(**args)
5814
+ @location = args[:location] if args.key?(:location)
5815
+ @project_id = args[:project_id] if args.key?(:project_id)
5816
+ end
5817
+ end
5818
+
5244
5819
  # Infotype details for other infoTypes found within a column.
5245
5820
  class GooglePrivacyDlpV2OtherInfoTypeSummary
5246
5821
  include Google::Apis::Core::Hashable
@@ -7801,6 +8376,34 @@ module Google
7801
8376
  end
7802
8377
  end
7803
8378
 
8379
+ # Request message for UpdateDiscoveryConfig.
8380
+ class GooglePrivacyDlpV2UpdateDiscoveryConfigRequest
8381
+ include Google::Apis::Core::Hashable
8382
+
8383
+ # Configuration for Discovery to scan resources for profile generation. Only one
8384
+ # Discovery configuration may exist per organization, folder, or project. The
8385
+ # generated data profiles are retained according to the [data retention policy] (
8386
+ # https://cloud.google.com/dlp/docs/data-profiles#retention).
8387
+ # Corresponds to the JSON property `discoveryConfig`
8388
+ # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2DiscoveryConfig]
8389
+ attr_accessor :discovery_config
8390
+
8391
+ # Mask to control which fields get updated.
8392
+ # Corresponds to the JSON property `updateMask`
8393
+ # @return [String]
8394
+ attr_accessor :update_mask
8395
+
8396
+ def initialize(**args)
8397
+ update!(**args)
8398
+ end
8399
+
8400
+ # Update properties of this object
8401
+ def update!(**args)
8402
+ @discovery_config = args[:discovery_config] if args.key?(:discovery_config)
8403
+ @update_mask = args[:update_mask] if args.key?(:update_mask)
8404
+ end
8405
+ end
8406
+
7804
8407
  # Request message for UpdateInspectTemplate.
7805
8408
  class GooglePrivacyDlpV2UpdateInspectTemplateRequest
7806
8409
  include Google::Apis::Core::Hashable