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