google-cloud-security_center-v2 0.a → 0.2.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.
- checksums.yaml +4 -4
- data/.yardopts +12 -0
- data/AUTHENTICATION.md +122 -0
- data/README.md +144 -8
- data/lib/google/cloud/security_center/v2/rest.rb +37 -0
- data/lib/google/cloud/security_center/v2/security_center/client.rb +4771 -0
- data/lib/google/cloud/security_center/v2/security_center/credentials.rb +51 -0
- data/lib/google/cloud/security_center/v2/security_center/operations.rb +809 -0
- data/lib/google/cloud/security_center/v2/security_center/paths.rb +973 -0
- data/lib/google/cloud/security_center/v2/security_center/rest/client.rb +4390 -0
- data/lib/google/cloud/security_center/v2/security_center/rest/operations.rb +901 -0
- data/lib/google/cloud/security_center/v2/security_center/rest/service_stub.rb +3165 -0
- data/lib/google/cloud/security_center/v2/security_center/rest.rb +53 -0
- data/lib/google/cloud/security_center/v2/security_center.rb +56 -0
- data/lib/google/cloud/security_center/v2/version.rb +7 -2
- data/lib/google/cloud/security_center/v2.rb +45 -0
- data/lib/google/cloud/securitycenter/v2/access_pb.rb +44 -0
- data/lib/google/cloud/securitycenter/v2/application_pb.rb +42 -0
- data/lib/google/cloud/securitycenter/v2/attack_exposure_pb.rb +47 -0
- data/lib/google/cloud/securitycenter/v2/attack_path_pb.rb +49 -0
- data/lib/google/cloud/securitycenter/v2/backup_disaster_recovery_pb.rb +45 -0
- data/lib/google/cloud/securitycenter/v2/bigquery_export_pb.rb +47 -0
- data/lib/google/cloud/securitycenter/v2/cloud_dlp_data_profile_pb.rb +45 -0
- data/lib/google/cloud/securitycenter/v2/cloud_dlp_inspection_pb.rb +44 -0
- data/lib/google/cloud/securitycenter/v2/compliance_pb.rb +42 -0
- data/lib/google/cloud/securitycenter/v2/connection_pb.rb +43 -0
- data/lib/google/cloud/securitycenter/v2/contact_details_pb.rb +43 -0
- data/lib/google/cloud/securitycenter/v2/container_pb.rb +47 -0
- data/lib/google/cloud/securitycenter/v2/database_pb.rb +42 -0
- data/lib/google/cloud/securitycenter/v2/exfiltration_pb.rb +43 -0
- data/lib/google/cloud/securitycenter/v2/external_system_pb.rb +47 -0
- data/lib/google/cloud/securitycenter/v2/file_pb.rb +43 -0
- data/lib/google/cloud/securitycenter/v2/finding_pb.rb +109 -0
- data/lib/google/cloud/securitycenter/v2/group_membership_pb.rb +43 -0
- data/lib/google/cloud/securitycenter/v2/iam_binding_pb.rb +43 -0
- data/lib/google/cloud/securitycenter/v2/indicator_pb.rb +47 -0
- data/lib/google/cloud/securitycenter/v2/kernel_rootkit_pb.rb +42 -0
- data/lib/google/cloud/securitycenter/v2/kubernetes_pb.rb +57 -0
- data/lib/google/cloud/securitycenter/v2/label_pb.rb +42 -0
- data/lib/google/cloud/securitycenter/v2/load_balancer_pb.rb +42 -0
- data/lib/google/cloud/securitycenter/v2/log_entry_pb.rb +46 -0
- data/lib/google/cloud/securitycenter/v2/mitre_attack_pb.rb +44 -0
- data/lib/google/cloud/securitycenter/v2/mute_config_pb.rb +48 -0
- data/lib/google/cloud/securitycenter/v2/notification_config_pb.rb +46 -0
- data/lib/google/cloud/securitycenter/v2/notification_message_pb.rb +47 -0
- data/lib/google/cloud/securitycenter/v2/org_policy_pb.rb +44 -0
- data/lib/google/cloud/securitycenter/v2/process_pb.rb +46 -0
- data/lib/google/cloud/securitycenter/v2/resource_pb.rb +44 -0
- data/lib/google/cloud/securitycenter/v2/resource_value_config_pb.rb +49 -0
- data/lib/google/cloud/securitycenter/v2/security_marks_pb.rb +44 -0
- data/lib/google/cloud/securitycenter/v2/security_posture_pb.rb +43 -0
- data/lib/google/cloud/securitycenter/v2/securitycenter_service_pb.rb +128 -0
- data/lib/google/cloud/securitycenter/v2/securitycenter_service_services_pb.rb +167 -0
- data/lib/google/cloud/securitycenter/v2/simulation_pb.rb +49 -0
- data/lib/google/cloud/securitycenter/v2/source_pb.rb +44 -0
- data/lib/google/cloud/securitycenter/v2/toxic_combination_pb.rb +42 -0
- data/lib/google/cloud/securitycenter/v2/valued_resource_pb.rb +46 -0
- data/lib/google/cloud/securitycenter/v2/vulnerability_pb.rb +58 -0
- data/lib/google-cloud-security_center-v2.rb +21 -0
- data/proto_docs/README.md +4 -0
- data/proto_docs/google/api/client.rb +399 -0
- data/proto_docs/google/api/field_behavior.rb +85 -0
- data/proto_docs/google/api/launch_stage.rb +71 -0
- data/proto_docs/google/api/resource.rb +222 -0
- data/proto_docs/google/api/routing.rb +459 -0
- data/proto_docs/google/cloud/securitycenter/v2/access.rb +120 -0
- data/proto_docs/google/cloud/securitycenter/v2/application.rb +40 -0
- data/proto_docs/google/cloud/securitycenter/v2/attack_exposure.rb +73 -0
- data/proto_docs/google/cloud/securitycenter/v2/attack_path.rb +147 -0
- data/proto_docs/google/cloud/securitycenter/v2/backup_disaster_recovery.rb +90 -0
- data/proto_docs/google/cloud/securitycenter/v2/bigquery_export.rb +96 -0
- data/proto_docs/google/cloud/securitycenter/v2/cloud_dlp_data_profile.rb +52 -0
- data/proto_docs/google/cloud/securitycenter/v2/cloud_dlp_inspection.rb +50 -0
- data/proto_docs/google/cloud/securitycenter/v2/compliance.rb +43 -0
- data/proto_docs/google/cloud/securitycenter/v2/connection.rb +70 -0
- data/proto_docs/google/cloud/securitycenter/v2/contact_details.rb +44 -0
- data/proto_docs/google/cloud/securitycenter/v2/container.rb +49 -0
- data/proto_docs/google/cloud/securitycenter/v2/database.rb +67 -0
- data/proto_docs/google/cloud/securitycenter/v2/exfiltration.rb +64 -0
- data/proto_docs/google/cloud/securitycenter/v2/external_system.rb +106 -0
- data/proto_docs/google/cloud/securitycenter/v2/file.rb +72 -0
- data/proto_docs/google/cloud/securitycenter/v2/finding.rb +427 -0
- data/proto_docs/google/cloud/securitycenter/v2/group_membership.rb +48 -0
- data/proto_docs/google/cloud/securitycenter/v2/iam_binding.rb +56 -0
- data/proto_docs/google/cloud/securitycenter/v2/indicator.rb +112 -0
- data/proto_docs/google/cloud/securitycenter/v2/kernel_rootkit.rb +66 -0
- data/proto_docs/google/cloud/securitycenter/v2/kubernetes.rb +241 -0
- data/proto_docs/google/cloud/securitycenter/v2/label.rb +41 -0
- data/proto_docs/google/cloud/securitycenter/v2/load_balancer.rb +36 -0
- data/proto_docs/google/cloud/securitycenter/v2/log_entry.rb +58 -0
- data/proto_docs/google/cloud/securitycenter/v2/mitre_attack.rb +285 -0
- data/proto_docs/google/cloud/securitycenter/v2/mute_config.rb +100 -0
- data/proto_docs/google/cloud/securitycenter/v2/notification_config.rb +90 -0
- data/proto_docs/google/cloud/securitycenter/v2/notification_message.rb +42 -0
- data/proto_docs/google/cloud/securitycenter/v2/org_policy.rb +37 -0
- data/proto_docs/google/cloud/securitycenter/v2/process.rb +79 -0
- data/proto_docs/google/cloud/securitycenter/v2/resource.rb +42 -0
- data/proto_docs/google/cloud/securitycenter/v2/resource_value_config.rb +122 -0
- data/proto_docs/google/cloud/securitycenter/v2/security_marks.rb +84 -0
- data/proto_docs/google/cloud/securitycenter/v2/security_posture.rb +83 -0
- data/proto_docs/google/cloud/securitycenter/v2/securitycenter_service.rb +1136 -0
- data/proto_docs/google/cloud/securitycenter/v2/simulation.rb +43 -0
- data/proto_docs/google/cloud/securitycenter/v2/source.rb +65 -0
- data/proto_docs/google/cloud/securitycenter/v2/toxic_combination.rb +46 -0
- data/proto_docs/google/cloud/securitycenter/v2/valued_resource.rb +86 -0
- data/proto_docs/google/cloud/securitycenter/v2/vulnerability.rb +333 -0
- data/proto_docs/google/iam/v1/iam_policy.rb +87 -0
- data/proto_docs/google/iam/v1/options.rb +50 -0
- data/proto_docs/google/iam/v1/policy.rb +426 -0
- data/proto_docs/google/longrunning/operations.rb +164 -0
- data/proto_docs/google/protobuf/any.rb +145 -0
- data/proto_docs/google/protobuf/duration.rb +98 -0
- data/proto_docs/google/protobuf/empty.rb +34 -0
- data/proto_docs/google/protobuf/field_mask.rb +229 -0
- data/proto_docs/google/protobuf/struct.rb +96 -0
- data/proto_docs/google/protobuf/timestamp.rb +127 -0
- data/proto_docs/google/rpc/status.rb +48 -0
- data/proto_docs/google/type/expr.rb +75 -0
- metadata +173 -10
|
@@ -0,0 +1,427 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
# Copyright 2024 Google LLC
|
|
4
|
+
#
|
|
5
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
6
|
+
# you may not use this file except in compliance with the License.
|
|
7
|
+
# You may obtain a copy of the License at
|
|
8
|
+
#
|
|
9
|
+
# https://www.apache.org/licenses/LICENSE-2.0
|
|
10
|
+
#
|
|
11
|
+
# Unless required by applicable law or agreed to in writing, software
|
|
12
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
13
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
14
|
+
# See the License for the specific language governing permissions and
|
|
15
|
+
# limitations under the License.
|
|
16
|
+
|
|
17
|
+
# Auto-generated by gapic-generator-ruby. DO NOT EDIT!
|
|
18
|
+
|
|
19
|
+
|
|
20
|
+
module Google
|
|
21
|
+
module Cloud
|
|
22
|
+
module SecurityCenter
|
|
23
|
+
module V2
|
|
24
|
+
# Security Command Center finding.
|
|
25
|
+
#
|
|
26
|
+
# A finding is a record of assessment data like security, risk, health, or
|
|
27
|
+
# privacy, that is ingested into Security Command Center for presentation,
|
|
28
|
+
# notification, analysis, policy testing, and enforcement. For example, a
|
|
29
|
+
# cross-site scripting (XSS) vulnerability in an App Engine application is a
|
|
30
|
+
# finding.
|
|
31
|
+
# @!attribute [rw] name
|
|
32
|
+
# @return [::String]
|
|
33
|
+
# The [relative resource
|
|
34
|
+
# name](https://cloud.google.com/apis/design/resource_names#relative_resource_name)
|
|
35
|
+
# of the finding. The following list shows some examples:
|
|
36
|
+
#
|
|
37
|
+
# +
|
|
38
|
+
# `organizations/{organization_id}/sources/{source_id}/findings/{finding_id}`
|
|
39
|
+
# +
|
|
40
|
+
# `organizations/{organization_id}/sources/{source_id}/locations/{location_id}/findings/{finding_id}`
|
|
41
|
+
# + `folders/{folder_id}/sources/{source_id}/findings/{finding_id}`
|
|
42
|
+
# +
|
|
43
|
+
# `folders/{folder_id}/sources/{source_id}/locations/{location_id}/findings/{finding_id}`
|
|
44
|
+
# + `projects/{project_id}/sources/{source_id}/findings/{finding_id}`
|
|
45
|
+
# +
|
|
46
|
+
# `projects/{project_id}/sources/{source_id}/locations/{location_id}/findings/{finding_id}`
|
|
47
|
+
# @!attribute [r] canonical_name
|
|
48
|
+
# @return [::String]
|
|
49
|
+
# Output only. The canonical name of the finding. The following list shows
|
|
50
|
+
# some examples:
|
|
51
|
+
#
|
|
52
|
+
# +
|
|
53
|
+
# `organizations/{organization_id}/sources/{source_id}/findings/{finding_id}`
|
|
54
|
+
# +
|
|
55
|
+
# `organizations/{organization_id}/sources/{source_id}/locations/{location_id}/findings/{finding_id}`
|
|
56
|
+
# + `folders/{folder_id}/sources/{source_id}/findings/{finding_id}`
|
|
57
|
+
# +
|
|
58
|
+
# `folders/{folder_id}/sources/{source_id}/locations/{location_id}/findings/{finding_id}`
|
|
59
|
+
# + `projects/{project_id}/sources/{source_id}/findings/{finding_id}`
|
|
60
|
+
# +
|
|
61
|
+
# `projects/{project_id}/sources/{source_id}/locations/{location_id}/findings/{finding_id}`
|
|
62
|
+
#
|
|
63
|
+
# The prefix is the closest CRM ancestor of the resource associated with the
|
|
64
|
+
# finding.
|
|
65
|
+
# @!attribute [rw] parent
|
|
66
|
+
# @return [::String]
|
|
67
|
+
# The relative resource name of the source and location the finding belongs
|
|
68
|
+
# to. See:
|
|
69
|
+
# https://cloud.google.com/apis/design/resource_names#relative_resource_name
|
|
70
|
+
# This field is immutable after creation time. The following list shows some
|
|
71
|
+
# examples:
|
|
72
|
+
#
|
|
73
|
+
# + `organizations/{organization_id}/sources/{source_id}`
|
|
74
|
+
# + `folders/{folders_id}/sources/{source_id}`
|
|
75
|
+
# + `projects/{projects_id}/sources/{source_id}`
|
|
76
|
+
# +
|
|
77
|
+
# `organizations/{organization_id}/sources/{source_id}/locations/{location_id}`
|
|
78
|
+
# + `folders/{folders_id}/sources/{source_id}/locations/{location_id}`
|
|
79
|
+
# + `projects/{projects_id}/sources/{source_id}/locations/{location_id}`
|
|
80
|
+
# @!attribute [rw] resource_name
|
|
81
|
+
# @return [::String]
|
|
82
|
+
# Immutable. For findings on Google Cloud resources, the full resource
|
|
83
|
+
# name of the Google Cloud resource this finding is for. See:
|
|
84
|
+
# https://cloud.google.com/apis/design/resource_names#full_resource_name
|
|
85
|
+
# When the finding is for a non-Google Cloud resource, the resourceName can
|
|
86
|
+
# be a customer or partner defined string.
|
|
87
|
+
# @!attribute [r] state
|
|
88
|
+
# @return [::Google::Cloud::SecurityCenter::V2::Finding::State]
|
|
89
|
+
# Output only. The state of the finding.
|
|
90
|
+
# @!attribute [rw] category
|
|
91
|
+
# @return [::String]
|
|
92
|
+
# Immutable. The additional taxonomy group within findings from a given
|
|
93
|
+
# source. Example: "XSS_FLASH_INJECTION"
|
|
94
|
+
# @!attribute [rw] external_uri
|
|
95
|
+
# @return [::String]
|
|
96
|
+
# The URI that, if available, points to a web page outside of Security
|
|
97
|
+
# Command Center where additional information about the finding can be found.
|
|
98
|
+
# This field is guaranteed to be either empty or a well formed URL.
|
|
99
|
+
# @!attribute [rw] source_properties
|
|
100
|
+
# @return [::Google::Protobuf::Map{::String => ::Google::Protobuf::Value}]
|
|
101
|
+
# Source specific properties. These properties are managed by the source
|
|
102
|
+
# that writes the finding. The key names in the source_properties map must be
|
|
103
|
+
# between 1 and 255 characters, and must start with a letter and contain
|
|
104
|
+
# alphanumeric characters or underscores only.
|
|
105
|
+
# @!attribute [r] security_marks
|
|
106
|
+
# @return [::Google::Cloud::SecurityCenter::V2::SecurityMarks]
|
|
107
|
+
# Output only. User specified security marks. These marks are entirely
|
|
108
|
+
# managed by the user and come from the SecurityMarks resource that belongs
|
|
109
|
+
# to the finding.
|
|
110
|
+
# @!attribute [rw] event_time
|
|
111
|
+
# @return [::Google::Protobuf::Timestamp]
|
|
112
|
+
# The time the finding was first detected. If an existing finding is updated,
|
|
113
|
+
# then this is the time the update occurred.
|
|
114
|
+
# For example, if the finding represents an open firewall, this property
|
|
115
|
+
# captures the time the detector believes the firewall became open. The
|
|
116
|
+
# accuracy is determined by the detector. If the finding is later resolved,
|
|
117
|
+
# then this time reflects when the finding was resolved. This must not
|
|
118
|
+
# be set to a value greater than the current timestamp.
|
|
119
|
+
# @!attribute [r] create_time
|
|
120
|
+
# @return [::Google::Protobuf::Timestamp]
|
|
121
|
+
# Output only. The time at which the finding was created in Security Command
|
|
122
|
+
# Center.
|
|
123
|
+
# @!attribute [rw] severity
|
|
124
|
+
# @return [::Google::Cloud::SecurityCenter::V2::Finding::Severity]
|
|
125
|
+
# The severity of the finding. This field is managed by the source that
|
|
126
|
+
# writes the finding.
|
|
127
|
+
# @!attribute [rw] mute
|
|
128
|
+
# @return [::Google::Cloud::SecurityCenter::V2::Finding::Mute]
|
|
129
|
+
# Indicates the mute state of a finding (either muted, unmuted
|
|
130
|
+
# or undefined). Unlike other attributes of a finding, a finding provider
|
|
131
|
+
# shouldn't set the value of mute.
|
|
132
|
+
# @!attribute [rw] finding_class
|
|
133
|
+
# @return [::Google::Cloud::SecurityCenter::V2::Finding::FindingClass]
|
|
134
|
+
# The class of the finding.
|
|
135
|
+
# @!attribute [rw] indicator
|
|
136
|
+
# @return [::Google::Cloud::SecurityCenter::V2::Indicator]
|
|
137
|
+
# Represents what's commonly known as an *indicator of compromise* (IoC) in
|
|
138
|
+
# computer forensics. This is an artifact observed on a network or in an
|
|
139
|
+
# operating system that, with high confidence, indicates a computer
|
|
140
|
+
# intrusion. For more information, see [Indicator of
|
|
141
|
+
# compromise](https://en.wikipedia.org/wiki/Indicator_of_compromise).
|
|
142
|
+
# @!attribute [rw] vulnerability
|
|
143
|
+
# @return [::Google::Cloud::SecurityCenter::V2::Vulnerability]
|
|
144
|
+
# Represents vulnerability-specific fields like CVE and CVSS scores.
|
|
145
|
+
# CVE stands for Common Vulnerabilities and Exposures
|
|
146
|
+
# (https://cve.mitre.org/about/)
|
|
147
|
+
# @!attribute [r] mute_update_time
|
|
148
|
+
# @return [::Google::Protobuf::Timestamp]
|
|
149
|
+
# Output only. The most recent time this finding was muted or unmuted.
|
|
150
|
+
# @!attribute [r] external_systems
|
|
151
|
+
# @return [::Google::Protobuf::Map{::String => ::Google::Cloud::SecurityCenter::V2::ExternalSystem}]
|
|
152
|
+
# Output only. Third party SIEM/SOAR fields within SCC, contains external
|
|
153
|
+
# system information and external system finding fields.
|
|
154
|
+
# @!attribute [rw] mitre_attack
|
|
155
|
+
# @return [::Google::Cloud::SecurityCenter::V2::MitreAttack]
|
|
156
|
+
# MITRE ATT&CK tactics and techniques related to this finding.
|
|
157
|
+
# See: https://attack.mitre.org
|
|
158
|
+
# @!attribute [rw] access
|
|
159
|
+
# @return [::Google::Cloud::SecurityCenter::V2::Access]
|
|
160
|
+
# Access details associated with the finding, such as more information on the
|
|
161
|
+
# caller, which method was accessed, and from where.
|
|
162
|
+
# @!attribute [rw] connections
|
|
163
|
+
# @return [::Array<::Google::Cloud::SecurityCenter::V2::Connection>]
|
|
164
|
+
# Contains information about the IP connection associated with the finding.
|
|
165
|
+
# @!attribute [rw] mute_initiator
|
|
166
|
+
# @return [::String]
|
|
167
|
+
# Records additional information about the mute operation, for example, the
|
|
168
|
+
# [mute
|
|
169
|
+
# configuration](https://cloud.google.com/security-command-center/docs/how-to-mute-findings)
|
|
170
|
+
# that muted the finding and the user who muted the finding.
|
|
171
|
+
# @!attribute [rw] processes
|
|
172
|
+
# @return [::Array<::Google::Cloud::SecurityCenter::V2::Process>]
|
|
173
|
+
# Represents operating system processes associated with the Finding.
|
|
174
|
+
# @!attribute [r] contacts
|
|
175
|
+
# @return [::Google::Protobuf::Map{::String => ::Google::Cloud::SecurityCenter::V2::ContactDetails}]
|
|
176
|
+
# Output only. Map containing the points of contact for the given finding.
|
|
177
|
+
# The key represents the type of contact, while the value contains a list of
|
|
178
|
+
# all the contacts that pertain. Please refer to:
|
|
179
|
+
# https://cloud.google.com/resource-manager/docs/managing-notification-contacts#notification-categories
|
|
180
|
+
#
|
|
181
|
+
# {
|
|
182
|
+
# "security": {
|
|
183
|
+
# "contacts": [
|
|
184
|
+
# {
|
|
185
|
+
# "email": "person1@company.com"
|
|
186
|
+
# },
|
|
187
|
+
# {
|
|
188
|
+
# "email": "person2@company.com"
|
|
189
|
+
# }
|
|
190
|
+
# ]
|
|
191
|
+
# }
|
|
192
|
+
# }
|
|
193
|
+
# @!attribute [rw] compliances
|
|
194
|
+
# @return [::Array<::Google::Cloud::SecurityCenter::V2::Compliance>]
|
|
195
|
+
# Contains compliance information for security standards associated to the
|
|
196
|
+
# finding.
|
|
197
|
+
# @!attribute [r] parent_display_name
|
|
198
|
+
# @return [::String]
|
|
199
|
+
# Output only. The human readable display name of the finding source such as
|
|
200
|
+
# "Event Threat Detection" or "Security Health Analytics".
|
|
201
|
+
# @!attribute [rw] description
|
|
202
|
+
# @return [::String]
|
|
203
|
+
# Contains more details about the finding.
|
|
204
|
+
# @!attribute [rw] exfiltration
|
|
205
|
+
# @return [::Google::Cloud::SecurityCenter::V2::Exfiltration]
|
|
206
|
+
# Represents exfiltrations associated with the finding.
|
|
207
|
+
# @!attribute [rw] iam_bindings
|
|
208
|
+
# @return [::Array<::Google::Cloud::SecurityCenter::V2::IamBinding>]
|
|
209
|
+
# Represents IAM bindings associated with the finding.
|
|
210
|
+
# @!attribute [rw] next_steps
|
|
211
|
+
# @return [::String]
|
|
212
|
+
# Steps to address the finding.
|
|
213
|
+
# @!attribute [rw] module_name
|
|
214
|
+
# @return [::String]
|
|
215
|
+
# Unique identifier of the module which generated the finding.
|
|
216
|
+
# Example:
|
|
217
|
+
# folders/598186756061/securityHealthAnalyticsSettings/customModules/56799441161885
|
|
218
|
+
# @!attribute [rw] containers
|
|
219
|
+
# @return [::Array<::Google::Cloud::SecurityCenter::V2::Container>]
|
|
220
|
+
# Containers associated with the finding. This field provides information for
|
|
221
|
+
# both Kubernetes and non-Kubernetes containers.
|
|
222
|
+
# @!attribute [rw] kubernetes
|
|
223
|
+
# @return [::Google::Cloud::SecurityCenter::V2::Kubernetes]
|
|
224
|
+
# Kubernetes resources associated with the finding.
|
|
225
|
+
# @!attribute [rw] database
|
|
226
|
+
# @return [::Google::Cloud::SecurityCenter::V2::Database]
|
|
227
|
+
# Database associated with the finding.
|
|
228
|
+
# @!attribute [rw] attack_exposure
|
|
229
|
+
# @return [::Google::Cloud::SecurityCenter::V2::AttackExposure]
|
|
230
|
+
# The results of an attack path simulation relevant to this finding.
|
|
231
|
+
# @!attribute [rw] files
|
|
232
|
+
# @return [::Array<::Google::Cloud::SecurityCenter::V2::File>]
|
|
233
|
+
# File associated with the finding.
|
|
234
|
+
# @!attribute [rw] cloud_dlp_inspection
|
|
235
|
+
# @return [::Google::Cloud::SecurityCenter::V2::CloudDlpInspection]
|
|
236
|
+
# Cloud Data Loss Prevention (Cloud DLP) inspection results that are
|
|
237
|
+
# associated with the finding.
|
|
238
|
+
# @!attribute [rw] cloud_dlp_data_profile
|
|
239
|
+
# @return [::Google::Cloud::SecurityCenter::V2::CloudDlpDataProfile]
|
|
240
|
+
# Cloud DLP data profile that is associated with the finding.
|
|
241
|
+
# @!attribute [rw] kernel_rootkit
|
|
242
|
+
# @return [::Google::Cloud::SecurityCenter::V2::KernelRootkit]
|
|
243
|
+
# Signature of the kernel rootkit.
|
|
244
|
+
# @!attribute [rw] org_policies
|
|
245
|
+
# @return [::Array<::Google::Cloud::SecurityCenter::V2::OrgPolicy>]
|
|
246
|
+
# Contains information about the org policies associated with the finding.
|
|
247
|
+
# @!attribute [rw] application
|
|
248
|
+
# @return [::Google::Cloud::SecurityCenter::V2::Application]
|
|
249
|
+
# Represents an application associated with the finding.
|
|
250
|
+
# @!attribute [rw] backup_disaster_recovery
|
|
251
|
+
# @return [::Google::Cloud::SecurityCenter::V2::BackupDisasterRecovery]
|
|
252
|
+
# Fields related to Backup and DR findings.
|
|
253
|
+
# @!attribute [rw] security_posture
|
|
254
|
+
# @return [::Google::Cloud::SecurityCenter::V2::SecurityPosture]
|
|
255
|
+
# The security posture associated with the finding.
|
|
256
|
+
# @!attribute [rw] log_entries
|
|
257
|
+
# @return [::Array<::Google::Cloud::SecurityCenter::V2::LogEntry>]
|
|
258
|
+
# Log entries that are relevant to the finding.
|
|
259
|
+
# @!attribute [rw] load_balancers
|
|
260
|
+
# @return [::Array<::Google::Cloud::SecurityCenter::V2::LoadBalancer>]
|
|
261
|
+
# The load balancers associated with the finding.
|
|
262
|
+
# @!attribute [rw] toxic_combination
|
|
263
|
+
# @return [::Google::Cloud::SecurityCenter::V2::ToxicCombination]
|
|
264
|
+
# Contains details about a group of security issues that, when the issues
|
|
265
|
+
# occur together, represent a greater risk than when the issues occur
|
|
266
|
+
# independently. A group of such issues is referred to as a toxic
|
|
267
|
+
# combination.
|
|
268
|
+
# This field cannot be updated. Its value is ignored in all update requests.
|
|
269
|
+
# @!attribute [rw] group_memberships
|
|
270
|
+
# @return [::Array<::Google::Cloud::SecurityCenter::V2::GroupMembership>]
|
|
271
|
+
# Contains details about groups of which this finding is a member. A group is
|
|
272
|
+
# a collection of findings that are related in some way.
|
|
273
|
+
# This field cannot be updated. Its value is ignored in all update requests.
|
|
274
|
+
class Finding
|
|
275
|
+
include ::Google::Protobuf::MessageExts
|
|
276
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
|
277
|
+
|
|
278
|
+
# @!attribute [rw] key
|
|
279
|
+
# @return [::String]
|
|
280
|
+
# @!attribute [rw] value
|
|
281
|
+
# @return [::Google::Protobuf::Value]
|
|
282
|
+
class SourcePropertiesEntry
|
|
283
|
+
include ::Google::Protobuf::MessageExts
|
|
284
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
|
285
|
+
end
|
|
286
|
+
|
|
287
|
+
# @!attribute [rw] key
|
|
288
|
+
# @return [::String]
|
|
289
|
+
# @!attribute [rw] value
|
|
290
|
+
# @return [::Google::Cloud::SecurityCenter::V2::ExternalSystem]
|
|
291
|
+
class ExternalSystemsEntry
|
|
292
|
+
include ::Google::Protobuf::MessageExts
|
|
293
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
|
294
|
+
end
|
|
295
|
+
|
|
296
|
+
# @!attribute [rw] key
|
|
297
|
+
# @return [::String]
|
|
298
|
+
# @!attribute [rw] value
|
|
299
|
+
# @return [::Google::Cloud::SecurityCenter::V2::ContactDetails]
|
|
300
|
+
class ContactsEntry
|
|
301
|
+
include ::Google::Protobuf::MessageExts
|
|
302
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
|
303
|
+
end
|
|
304
|
+
|
|
305
|
+
# The state of the finding.
|
|
306
|
+
module State
|
|
307
|
+
# Unspecified state.
|
|
308
|
+
STATE_UNSPECIFIED = 0
|
|
309
|
+
|
|
310
|
+
# The finding requires attention and has not been addressed yet.
|
|
311
|
+
ACTIVE = 1
|
|
312
|
+
|
|
313
|
+
# The finding has been fixed, triaged as a non-issue or otherwise addressed
|
|
314
|
+
# and is no longer active.
|
|
315
|
+
INACTIVE = 2
|
|
316
|
+
end
|
|
317
|
+
|
|
318
|
+
# The severity of the finding.
|
|
319
|
+
module Severity
|
|
320
|
+
# This value is used for findings when a source doesn't write a severity
|
|
321
|
+
# value.
|
|
322
|
+
SEVERITY_UNSPECIFIED = 0
|
|
323
|
+
|
|
324
|
+
# Vulnerability:
|
|
325
|
+
# A critical vulnerability is easily discoverable by an external actor,
|
|
326
|
+
# exploitable, and results in the direct ability to execute arbitrary code,
|
|
327
|
+
# exfiltrate data, and otherwise gain additional access and privileges to
|
|
328
|
+
# cloud resources and workloads. Examples include publicly accessible
|
|
329
|
+
# unprotected user data and public SSH access with weak or no
|
|
330
|
+
# passwords.
|
|
331
|
+
#
|
|
332
|
+
# Threat:
|
|
333
|
+
# Indicates a threat that is able to access, modify, or delete data or
|
|
334
|
+
# execute unauthorized code within existing resources.
|
|
335
|
+
CRITICAL = 1
|
|
336
|
+
|
|
337
|
+
# Vulnerability:
|
|
338
|
+
# A high risk vulnerability can be easily discovered and exploited in
|
|
339
|
+
# combination with other vulnerabilities in order to gain direct access and
|
|
340
|
+
# the ability to execute arbitrary code, exfiltrate data, and otherwise
|
|
341
|
+
# gain additional access and privileges to cloud resources and workloads.
|
|
342
|
+
# An example is a database with weak or no passwords that is only
|
|
343
|
+
# accessible internally. This database could easily be compromised by an
|
|
344
|
+
# actor that had access to the internal network.
|
|
345
|
+
#
|
|
346
|
+
# Threat:
|
|
347
|
+
# Indicates a threat that is able to create new computational resources in
|
|
348
|
+
# an environment but not able to access data or execute code in existing
|
|
349
|
+
# resources.
|
|
350
|
+
HIGH = 2
|
|
351
|
+
|
|
352
|
+
# Vulnerability:
|
|
353
|
+
# A medium risk vulnerability could be used by an actor to gain access to
|
|
354
|
+
# resources or privileges that enable them to eventually (through multiple
|
|
355
|
+
# steps or a complex exploit) gain access and the ability to execute
|
|
356
|
+
# arbitrary code or exfiltrate data. An example is a service account with
|
|
357
|
+
# access to more projects than it should have. If an actor gains access to
|
|
358
|
+
# the service account, they could potentially use that access to manipulate
|
|
359
|
+
# a project the service account was not intended to.
|
|
360
|
+
#
|
|
361
|
+
# Threat:
|
|
362
|
+
# Indicates a threat that is able to cause operational impact but may not
|
|
363
|
+
# access data or execute unauthorized code.
|
|
364
|
+
MEDIUM = 3
|
|
365
|
+
|
|
366
|
+
# Vulnerability:
|
|
367
|
+
# A low risk vulnerability hampers a security organization's ability to
|
|
368
|
+
# detect vulnerabilities or active threats in their deployment, or prevents
|
|
369
|
+
# the root cause investigation of security issues. An example is monitoring
|
|
370
|
+
# and logs being disabled for resource configurations and access.
|
|
371
|
+
#
|
|
372
|
+
# Threat:
|
|
373
|
+
# Indicates a threat that has obtained minimal access to an environment but
|
|
374
|
+
# is not able to access data, execute code, or create resources.
|
|
375
|
+
LOW = 4
|
|
376
|
+
end
|
|
377
|
+
|
|
378
|
+
# Mute state a finding can be in.
|
|
379
|
+
module Mute
|
|
380
|
+
# Unspecified.
|
|
381
|
+
MUTE_UNSPECIFIED = 0
|
|
382
|
+
|
|
383
|
+
# Finding has been muted.
|
|
384
|
+
MUTED = 1
|
|
385
|
+
|
|
386
|
+
# Finding has been unmuted.
|
|
387
|
+
UNMUTED = 2
|
|
388
|
+
|
|
389
|
+
# Finding has never been muted/unmuted.
|
|
390
|
+
UNDEFINED = 3
|
|
391
|
+
end
|
|
392
|
+
|
|
393
|
+
# Represents what kind of Finding it is.
|
|
394
|
+
module FindingClass
|
|
395
|
+
# Unspecified finding class.
|
|
396
|
+
FINDING_CLASS_UNSPECIFIED = 0
|
|
397
|
+
|
|
398
|
+
# Describes unwanted or malicious activity.
|
|
399
|
+
THREAT = 1
|
|
400
|
+
|
|
401
|
+
# Describes a potential weakness in software that increases risk to
|
|
402
|
+
# Confidentiality & Integrity & Availability.
|
|
403
|
+
VULNERABILITY = 2
|
|
404
|
+
|
|
405
|
+
# Describes a potential weakness in cloud resource/asset configuration that
|
|
406
|
+
# increases risk.
|
|
407
|
+
MISCONFIGURATION = 3
|
|
408
|
+
|
|
409
|
+
# Describes a security observation that is for informational purposes.
|
|
410
|
+
OBSERVATION = 4
|
|
411
|
+
|
|
412
|
+
# Describes an error that prevents some SCC functionality.
|
|
413
|
+
SCC_ERROR = 5
|
|
414
|
+
|
|
415
|
+
# Describes a potential security risk due to a change in the security
|
|
416
|
+
# posture.
|
|
417
|
+
POSTURE_VIOLATION = 6
|
|
418
|
+
|
|
419
|
+
# Describes a combination of security issues that represent a more severe
|
|
420
|
+
# security problem when taken together.
|
|
421
|
+
TOXIC_COMBINATION = 7
|
|
422
|
+
end
|
|
423
|
+
end
|
|
424
|
+
end
|
|
425
|
+
end
|
|
426
|
+
end
|
|
427
|
+
end
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
# Copyright 2024 Google LLC
|
|
4
|
+
#
|
|
5
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
6
|
+
# you may not use this file except in compliance with the License.
|
|
7
|
+
# You may obtain a copy of the License at
|
|
8
|
+
#
|
|
9
|
+
# https://www.apache.org/licenses/LICENSE-2.0
|
|
10
|
+
#
|
|
11
|
+
# Unless required by applicable law or agreed to in writing, software
|
|
12
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
13
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
14
|
+
# See the License for the specific language governing permissions and
|
|
15
|
+
# limitations under the License.
|
|
16
|
+
|
|
17
|
+
# Auto-generated by gapic-generator-ruby. DO NOT EDIT!
|
|
18
|
+
|
|
19
|
+
|
|
20
|
+
module Google
|
|
21
|
+
module Cloud
|
|
22
|
+
module SecurityCenter
|
|
23
|
+
module V2
|
|
24
|
+
# Contains details about groups of which this finding is a member. A group is a
|
|
25
|
+
# collection of findings that are related in some way.
|
|
26
|
+
# @!attribute [rw] group_type
|
|
27
|
+
# @return [::Google::Cloud::SecurityCenter::V2::GroupMembership::GroupType]
|
|
28
|
+
# Type of group.
|
|
29
|
+
# @!attribute [rw] group_id
|
|
30
|
+
# @return [::String]
|
|
31
|
+
# ID of the group.
|
|
32
|
+
class GroupMembership
|
|
33
|
+
include ::Google::Protobuf::MessageExts
|
|
34
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
|
35
|
+
|
|
36
|
+
# Possible types of groups.
|
|
37
|
+
module GroupType
|
|
38
|
+
# Default value.
|
|
39
|
+
GROUP_TYPE_UNSPECIFIED = 0
|
|
40
|
+
|
|
41
|
+
# Group represents a toxic combination.
|
|
42
|
+
GROUP_TYPE_TOXIC_COMBINATION = 1
|
|
43
|
+
end
|
|
44
|
+
end
|
|
45
|
+
end
|
|
46
|
+
end
|
|
47
|
+
end
|
|
48
|
+
end
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
# Copyright 2024 Google LLC
|
|
4
|
+
#
|
|
5
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
6
|
+
# you may not use this file except in compliance with the License.
|
|
7
|
+
# You may obtain a copy of the License at
|
|
8
|
+
#
|
|
9
|
+
# https://www.apache.org/licenses/LICENSE-2.0
|
|
10
|
+
#
|
|
11
|
+
# Unless required by applicable law or agreed to in writing, software
|
|
12
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
13
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
14
|
+
# See the License for the specific language governing permissions and
|
|
15
|
+
# limitations under the License.
|
|
16
|
+
|
|
17
|
+
# Auto-generated by gapic-generator-ruby. DO NOT EDIT!
|
|
18
|
+
|
|
19
|
+
|
|
20
|
+
module Google
|
|
21
|
+
module Cloud
|
|
22
|
+
module SecurityCenter
|
|
23
|
+
module V2
|
|
24
|
+
# Represents a particular IAM binding, which captures a member's role addition,
|
|
25
|
+
# removal, or state.
|
|
26
|
+
# @!attribute [rw] action
|
|
27
|
+
# @return [::Google::Cloud::SecurityCenter::V2::IamBinding::Action]
|
|
28
|
+
# The action that was performed on a Binding.
|
|
29
|
+
# @!attribute [rw] role
|
|
30
|
+
# @return [::String]
|
|
31
|
+
# Role that is assigned to "members".
|
|
32
|
+
# For example, "roles/viewer", "roles/editor", or "roles/owner".
|
|
33
|
+
# @!attribute [rw] member
|
|
34
|
+
# @return [::String]
|
|
35
|
+
# A single identity requesting access for a Cloud Platform resource, for
|
|
36
|
+
# example, "foo@google.com".
|
|
37
|
+
class IamBinding
|
|
38
|
+
include ::Google::Protobuf::MessageExts
|
|
39
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
|
40
|
+
|
|
41
|
+
# The type of action performed on a Binding in a policy.
|
|
42
|
+
module Action
|
|
43
|
+
# Unspecified.
|
|
44
|
+
ACTION_UNSPECIFIED = 0
|
|
45
|
+
|
|
46
|
+
# Addition of a Binding.
|
|
47
|
+
ADD = 1
|
|
48
|
+
|
|
49
|
+
# Removal of a Binding.
|
|
50
|
+
REMOVE = 2
|
|
51
|
+
end
|
|
52
|
+
end
|
|
53
|
+
end
|
|
54
|
+
end
|
|
55
|
+
end
|
|
56
|
+
end
|
|
@@ -0,0 +1,112 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
# Copyright 2024 Google LLC
|
|
4
|
+
#
|
|
5
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
6
|
+
# you may not use this file except in compliance with the License.
|
|
7
|
+
# You may obtain a copy of the License at
|
|
8
|
+
#
|
|
9
|
+
# https://www.apache.org/licenses/LICENSE-2.0
|
|
10
|
+
#
|
|
11
|
+
# Unless required by applicable law or agreed to in writing, software
|
|
12
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
13
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
14
|
+
# See the License for the specific language governing permissions and
|
|
15
|
+
# limitations under the License.
|
|
16
|
+
|
|
17
|
+
# Auto-generated by gapic-generator-ruby. DO NOT EDIT!
|
|
18
|
+
|
|
19
|
+
|
|
20
|
+
module Google
|
|
21
|
+
module Cloud
|
|
22
|
+
module SecurityCenter
|
|
23
|
+
module V2
|
|
24
|
+
# Represents what's commonly known as an _indicator of compromise_ (IoC) in
|
|
25
|
+
# computer forensics. This is an artifact observed on a network or in an
|
|
26
|
+
# operating system that, with high confidence, indicates a computer intrusion.
|
|
27
|
+
# For more information, see [Indicator of
|
|
28
|
+
# compromise](https://en.wikipedia.org/wiki/Indicator_of_compromise).
|
|
29
|
+
# @!attribute [rw] ip_addresses
|
|
30
|
+
# @return [::Array<::String>]
|
|
31
|
+
# The list of IP addresses that are associated with the finding.
|
|
32
|
+
# @!attribute [rw] domains
|
|
33
|
+
# @return [::Array<::String>]
|
|
34
|
+
# List of domains associated to the Finding.
|
|
35
|
+
# @!attribute [rw] signatures
|
|
36
|
+
# @return [::Array<::Google::Cloud::SecurityCenter::V2::Indicator::ProcessSignature>]
|
|
37
|
+
# The list of matched signatures indicating that the given
|
|
38
|
+
# process is present in the environment.
|
|
39
|
+
# @!attribute [rw] uris
|
|
40
|
+
# @return [::Array<::String>]
|
|
41
|
+
# The list of URIs associated to the Findings.
|
|
42
|
+
class Indicator
|
|
43
|
+
include ::Google::Protobuf::MessageExts
|
|
44
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
|
45
|
+
|
|
46
|
+
# Indicates what signature matched this process.
|
|
47
|
+
# @!attribute [rw] memory_hash_signature
|
|
48
|
+
# @return [::Google::Cloud::SecurityCenter::V2::Indicator::ProcessSignature::MemoryHashSignature]
|
|
49
|
+
# Signature indicating that a binary family was matched.
|
|
50
|
+
# @!attribute [rw] yara_rule_signature
|
|
51
|
+
# @return [::Google::Cloud::SecurityCenter::V2::Indicator::ProcessSignature::YaraRuleSignature]
|
|
52
|
+
# Signature indicating that a YARA rule was matched.
|
|
53
|
+
# @!attribute [rw] signature_type
|
|
54
|
+
# @return [::Google::Cloud::SecurityCenter::V2::Indicator::ProcessSignature::SignatureType]
|
|
55
|
+
# Describes the type of resource associated with the signature.
|
|
56
|
+
class ProcessSignature
|
|
57
|
+
include ::Google::Protobuf::MessageExts
|
|
58
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
|
59
|
+
|
|
60
|
+
# A signature corresponding to memory page hashes.
|
|
61
|
+
# @!attribute [rw] binary_family
|
|
62
|
+
# @return [::String]
|
|
63
|
+
# The binary family.
|
|
64
|
+
# @!attribute [rw] detections
|
|
65
|
+
# @return [::Array<::Google::Cloud::SecurityCenter::V2::Indicator::ProcessSignature::MemoryHashSignature::Detection>]
|
|
66
|
+
# The list of memory hash detections contributing to the binary family
|
|
67
|
+
# match.
|
|
68
|
+
class MemoryHashSignature
|
|
69
|
+
include ::Google::Protobuf::MessageExts
|
|
70
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
|
71
|
+
|
|
72
|
+
# Memory hash detection contributing to the binary family match.
|
|
73
|
+
# @!attribute [rw] binary
|
|
74
|
+
# @return [::String]
|
|
75
|
+
# The name of the binary associated with the memory hash
|
|
76
|
+
# signature detection.
|
|
77
|
+
# @!attribute [rw] percent_pages_matched
|
|
78
|
+
# @return [::Float]
|
|
79
|
+
# The percentage of memory page hashes in the signature
|
|
80
|
+
# that were matched.
|
|
81
|
+
class Detection
|
|
82
|
+
include ::Google::Protobuf::MessageExts
|
|
83
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
|
84
|
+
end
|
|
85
|
+
end
|
|
86
|
+
|
|
87
|
+
# A signature corresponding to a YARA rule.
|
|
88
|
+
# @!attribute [rw] yara_rule
|
|
89
|
+
# @return [::String]
|
|
90
|
+
# The name of the YARA rule.
|
|
91
|
+
class YaraRuleSignature
|
|
92
|
+
include ::Google::Protobuf::MessageExts
|
|
93
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
|
94
|
+
end
|
|
95
|
+
|
|
96
|
+
# Possible resource types to be associated with a signature.
|
|
97
|
+
module SignatureType
|
|
98
|
+
# The default signature type.
|
|
99
|
+
SIGNATURE_TYPE_UNSPECIFIED = 0
|
|
100
|
+
|
|
101
|
+
# Used for signatures concerning processes.
|
|
102
|
+
SIGNATURE_TYPE_PROCESS = 1
|
|
103
|
+
|
|
104
|
+
# Used for signatures concerning disks.
|
|
105
|
+
SIGNATURE_TYPE_FILE = 2
|
|
106
|
+
end
|
|
107
|
+
end
|
|
108
|
+
end
|
|
109
|
+
end
|
|
110
|
+
end
|
|
111
|
+
end
|
|
112
|
+
end
|