diff --git a/google/privacy/dlp/dlp_v2.yaml b/google/privacy/dlp/dlp_v2.yaml index c85eead9..10459073 100644 --- a/google/privacy/dlp/dlp_v2.yaml +++ b/google/privacy/dlp/dlp_v2.yaml @@ -11,28 +11,9 @@ documentation: Provides methods for detection, risk analysis, and de-identification of privacy-sensitive fragments in text, images, and Google Cloud Platform storage repositories. - rules: - - selector: google.longrunning.Operations.CancelOperation - description: |- - Cancels an operation. Use the - [`inspect.operations.get`][/dlp/docs/reference/rest/v2beta1/inspect.operations/get] - to check whether the cancellation succeeded or the operation completed - despite cancellation. - - selector: google.longrunning.Operations.DeleteOperation - description: This method is not supported and the server returns `UNIMPLEMENTED`. - - selector: google.longrunning.Operations.ListOperations - description: Fetches the list of long running operations. backend: rules: - - selector: google.longrunning.Operations.ListOperations - deadline: 300.0 - - selector: google.longrunning.Operations.GetOperation - deadline: 300.0 - - selector: google.longrunning.Operations.DeleteOperation - deadline: 300.0 - - selector: google.longrunning.Operations.CancelOperation - deadline: 300.0 - selector: google.privacy.dlp.v2.DlpService.InspectContent deadline: 300.0 - selector: google.privacy.dlp.v2.DlpService.RedactImage @@ -84,40 +65,6 @@ backend: - selector: google.privacy.dlp.v2.DlpService.CancelDlpJob deadline: 300.0 -http: - rules: - - selector: google.longrunning.Operations.ListOperations - get: '/v1/{name=inspect/operations}' - additional_bindings: - - get: '/v2beta1/{name=inspect/operations}' - - - get: '/v2beta1/{name=riskAnalysis/operations}' - - - selector: google.longrunning.Operations.GetOperation - get: '/v1/{name=inspect/operations/*}' - additional_bindings: - - get: '/v2beta1/{name=inspect/operations/*}' - - - get: '/v2beta1/{name=riskAnalysis/operations/*}' - - - selector: google.longrunning.Operations.DeleteOperation - delete: '/v1/{name=inspect/operations/*}' - additional_bindings: - - delete: '/v2beta1/{name=inspect/operations/*}' - - - delete: '/v2beta1/{name=riskAnalysis/operations/*}' - - - selector: google.longrunning.Operations.CancelOperation - post: '/v1/{name=inspect/operations/*}:cancel' - body: '*' - additional_bindings: - - post: '/v2beta1/{name=inspect/operations/*}:cancel' - body: '*' - - - post: '/v2beta1/{name=riskAnalysis/operations/*}:cancel' - body: '*' - - authentication: rules: - selector: '*' diff --git a/google/privacy/dlp/v2/dlp.proto b/google/privacy/dlp/v2/dlp.proto index 97b25f46..d590a82c 100644 --- a/google/privacy/dlp/v2/dlp.proto +++ b/google/privacy/dlp/v2/dlp.proto @@ -894,8 +894,8 @@ message PrivacyMetric { // using publicly available data (like the US Census), or using a custom // statistical model (indicated as one or several BigQuery tables), or by // extrapolating from the distribution of values in the input dataset. + // A column with a semantic tag attached. message KMapEstimationConfig { - // A column with a semantic tag attached. message TaggedField { // Identifies the column. [required] FieldId field = 1; @@ -1493,8 +1493,7 @@ message CryptoReplaceFfxFpeConfig { // such that: // // - a 64 bit integer is encoded followed by a single byte of value 1 - // - a string is encoded in UTF-8 format followed by a single byte of value - // å 2 + // - a string is encoded in UTF-8 format followed by a single byte of value 2 FieldId context = 2; oneof alphabet { diff --git a/google/privacy/dlp/v2/storage.proto b/google/privacy/dlp/v2/storage.proto index 28d3c6e4..cb8e9c97 100644 --- a/google/privacy/dlp/v2/storage.proto +++ b/google/privacy/dlp/v2/storage.proto @@ -223,6 +223,20 @@ message CloudStorageOptions { string url = 1; } + // How to sample bytes if not all bytes are scanned. Meaningful only when used + // in conjunction with bytes_limit_per_file. If not specified, scanning would + // start from the top. + enum SampleMethod { + SAMPLE_METHOD_UNSPECIFIED = 0; + + // Scan from the top (default). + TOP = 1; + + // For each file larger than bytes_limit_per_file, randomly pick the offset + // to start scanning. The scanned bytes are contiguous. + RANDOM_START = 2; + } + FileSet file_set = 1; // Max number of bytes to scan from a file. If a scanned file's size is bigger @@ -233,9 +247,16 @@ message CloudStorageOptions { // If empty, all files are scanned and available data format processors // are applied. repeated FileType file_types = 5; + + SampleMethod sample_method = 6; + + // Limits the number of files to scan to this percentage of the input FileSet. + // Number of files scanned is rounded down. Must be between 0 and 100, + // inclusively. Both 0 and 100 means no limit. Defaults to 0. + int32 files_limit_percent = 7; } -// Message representing a path in Cloud Storage. +// Message representing a single file or path in Cloud Storage. message CloudStoragePath { // A url representing a file or path (no wildcards) in Cloud Storage. // Example: gs://[BUCKET_NAME]/dictionary.txt @@ -244,6 +265,19 @@ message CloudStoragePath { // Options defining BigQuery table and row identifiers. message BigQueryOptions { + // How to sample rows if not all rows are scanned. Meaningful only when used + // in conjunction with rows_limit. If not specified, scanning would start + // from the top. + enum SampleMethod { + SAMPLE_METHOD_UNSPECIFIED = 0; + + // Scan from the top (default). + TOP = 1; + + // Randomly pick the row to start scanning. The scanned rows are contiguous. + RANDOM_START = 2; + } + // Complete BigQuery table reference. BigQueryTable table_reference = 1; @@ -255,6 +289,8 @@ message BigQueryOptions { // rest of the rows are omitted. If not set, or if set to 0, all rows will be // scanned. Cannot be used in conjunction with TimespanConfig. int64 rows_limit = 3; + + SampleMethod sample_method = 4; } // Shared message indicating Cloud storage type.