xref: /aosp_15_r20/external/googleapis/google/cloud/securitycenter/v2/valued_resource.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.v2;
18
19import "google/api/resource.proto";
20
21option csharp_namespace = "Google.Cloud.SecurityCenter.V2";
22option go_package = "cloud.google.com/go/securitycenter/apiv2/securitycenterpb;securitycenterpb";
23option java_multiple_files = true;
24option java_outer_classname = "ValuedResourceProto";
25option java_package = "com.google.cloud.securitycenter.v2";
26option php_namespace = "Google\\Cloud\\SecurityCenter\\V2";
27option ruby_package = "Google::Cloud::SecurityCenter::V2";
28
29// A resource that is determined to have value to a user's system
30message ValuedResource {
31  option (google.api.resource) = {
32    type: "securitycenter.googleapis.com/ValuedResource"
33    pattern: "organizations/{organization}/simulations/{simulation}/valuedResources/{valued_resource}"
34    plural: "valuedResources"
35    singular: "valuedResource"
36  };
37
38  // How valuable the resource is.
39  enum ResourceValue {
40    // The resource value isn't specified.
41    RESOURCE_VALUE_UNSPECIFIED = 0;
42
43    // This is a low-value resource.
44    RESOURCE_VALUE_LOW = 1;
45
46    // This is a medium-value resource.
47    RESOURCE_VALUE_MEDIUM = 2;
48
49    // This is a high-value resource.
50    RESOURCE_VALUE_HIGH = 3;
51  }
52
53  // Valued resource name, for example,
54  //  e.g.:
55  //  `organizations/123/simulations/456/valuedResources/789`
56  string name = 1;
57
58  // The
59  // [full resource
60  // name](https://cloud.google.com/apis/design/resource_names#full_resource_name)
61  // of the valued resource.
62  string resource = 2;
63
64  // The [resource
65  // type](https://cloud.google.com/asset-inventory/docs/supported-asset-types)
66  // of the valued resource.
67  string resource_type = 3;
68
69  // Human-readable name of the valued resource.
70  string display_name = 4;
71
72  // How valuable this resource is.
73  ResourceValue resource_value = 5;
74
75  // Exposed score for this valued resource. A value of 0 means no exposure was
76  // detected exposure.
77  double exposed_score = 6;
78
79  // List of resource value configurations' metadata used to determine the value
80  // of this resource. Maximum of 100.
81  repeated ResourceValueConfigMetadata resource_value_configs_used = 7;
82}
83
84// Metadata about a ResourceValueConfig. For example, id and name.
85message ResourceValueConfigMetadata {
86  // Resource value config name
87  string name = 1;
88}
89