xref: /aosp_15_r20/external/googleapis/google/cloud/securitycenter/v1/mute_config.proto (revision d5c09012810ac0c9f33fe448fb6da8260d444cc9)
1// Copyright 2023 Google LLC
2//
3// Licensed under the Apache License, Version 2.0 (the "License");
4// you may not use this file except in compliance with the License.
5// You may obtain a copy of the License at
6//
7//     http://www.apache.org/licenses/LICENSE-2.0
8//
9// Unless required by applicable law or agreed to in writing, software
10// distributed under the License is distributed on an "AS IS" BASIS,
11// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12// See the License for the specific language governing permissions and
13// limitations under the License.
14
15syntax = "proto3";
16
17package google.cloud.securitycenter.v1;
18
19import "google/api/field_behavior.proto";
20import "google/api/resource.proto";
21import "google/protobuf/timestamp.proto";
22
23option csharp_namespace = "Google.Cloud.SecurityCenter.V1";
24option go_package = "cloud.google.com/go/securitycenter/apiv1/securitycenterpb;securitycenterpb";
25option java_multiple_files = true;
26option java_outer_classname = "MuteConfigProto";
27option java_package = "com.google.cloud.securitycenter.v1";
28option php_namespace = "Google\\Cloud\\SecurityCenter\\V1";
29option ruby_package = "Google::Cloud::SecurityCenter::V1";
30
31// A mute config is a Cloud SCC resource that contains the configuration
32// to mute create/update events of findings.
33message MuteConfig {
34  option (google.api.resource) = {
35    type: "securitycenter.googleapis.com/MuteConfig"
36    pattern: "organizations/{organization}/muteConfigs/{mute_config}"
37    pattern: "folders/{folder}/muteConfigs/{mute_config}"
38    pattern: "projects/{project}/muteConfigs/{mute_config}"
39  };
40
41  // This field will be ignored if provided on config creation. Format
42  // "organizations/{organization}/muteConfigs/{mute_config}"
43  // "folders/{folder}/muteConfigs/{mute_config}"
44  // "projects/{project}/muteConfigs/{mute_config}"
45  string name = 1;
46
47  // The human readable name to be displayed for the mute config.
48  string display_name = 2 [deprecated = true];
49
50  // A description of the mute config.
51  string description = 3;
52
53  // Required. An expression that defines the filter to apply across
54  // create/update events of findings. While creating a filter string, be
55  // mindful of the scope in which the mute configuration is being created.
56  // E.g., If a filter contains project = X but is created under the project = Y
57  // scope, it might not match any findings.
58  //
59  // The following field and operator combinations are supported:
60  //
61  // * severity: `=`, `:`
62  // * category: `=`, `:`
63  // * resource.name: `=`, `:`
64  // * resource.project_name: `=`, `:`
65  // * resource.project_display_name: `=`, `:`
66  // * resource.folders.resource_folder: `=`, `:`
67  // * resource.parent_name: `=`, `:`
68  // * resource.parent_display_name: `=`, `:`
69  // * resource.type: `=`, `:`
70  // * finding_class: `=`, `:`
71  // * indicator.ip_addresses: `=`, `:`
72  // * indicator.domains: `=`, `:`
73  string filter = 4 [(google.api.field_behavior) = REQUIRED];
74
75  // Output only. The time at which the mute config was created.
76  // This field is set by the server and will be ignored if provided on config
77  // creation.
78  google.protobuf.Timestamp create_time = 5
79      [(google.api.field_behavior) = OUTPUT_ONLY];
80
81  // Output only. The most recent time at which the mute config was updated.
82  // This field is set by the server and will be ignored if provided on config
83  // creation or update.
84  google.protobuf.Timestamp update_time = 6
85      [(google.api.field_behavior) = OUTPUT_ONLY];
86
87  // Output only. Email address of the user who last edited the mute config.
88  // This field is set by the server and will be ignored if provided on config
89  // creation or update.
90  string most_recent_editor = 7 [(google.api.field_behavior) = OUTPUT_ONLY];
91}
92