google-cloud-security_center-v1 0.26.0 → 0.28.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +1 -1
- data/lib/google/cloud/security_center/v1/security_center/client.rb +856 -15
- data/lib/google/cloud/security_center/v1/security_center/operations.rb +2 -2
- data/lib/google/cloud/security_center/v1/security_center/paths.rb +229 -0
- data/lib/google/cloud/security_center/v1/security_center/rest/client.rb +647 -2
- data/lib/google/cloud/security_center/v1/security_center/rest/operations.rb +2 -2
- data/lib/google/cloud/security_center/v1/security_center/rest/service_stub.rb +590 -0
- data/lib/google/cloud/security_center/v1/version.rb +1 -1
- data/lib/google/cloud/securitycenter/v1/cloud_dlp_data_profile_pb.rb +24 -0
- data/lib/google/cloud/securitycenter/v1/cloud_dlp_inspection_pb.rb +27 -0
- data/lib/google/cloud/securitycenter/v1/effective_security_health_analytics_custom_module_pb.rb +35 -0
- data/lib/google/cloud/securitycenter/v1/finding_pb.rb +5 -0
- data/lib/google/cloud/securitycenter/v1/security_health_analytics_custom_config_pb.rb +50 -0
- data/lib/google/cloud/securitycenter/v1/security_health_analytics_custom_module_pb.rb +40 -0
- data/lib/google/cloud/securitycenter/v1/securitycenter_service_pb.rb +58 -1
- data/lib/google/cloud/securitycenter/v1/securitycenter_service_services_pb.rb +30 -0
- data/proto_docs/google/api/client.rb +57 -3
- data/proto_docs/google/cloud/securitycenter/v1/access.rb +28 -29
- data/proto_docs/google/cloud/securitycenter/v1/bigquery_export.rb +5 -5
- data/proto_docs/google/cloud/securitycenter/v1/cloud_dlp_data_profile.rb +37 -0
- data/proto_docs/google/cloud/securitycenter/v1/cloud_dlp_inspection.rb +50 -0
- data/proto_docs/google/cloud/securitycenter/v1/contact_details.rb +2 -2
- data/proto_docs/google/cloud/securitycenter/v1/database.rb +1 -1
- data/proto_docs/google/cloud/securitycenter/v1/effective_security_health_analytics_custom_module.rb +73 -0
- data/proto_docs/google/cloud/securitycenter/v1/exfiltration.rb +1 -1
- data/proto_docs/google/cloud/securitycenter/v1/finding.rb +41 -27
- data/proto_docs/google/cloud/securitycenter/v1/indicator.rb +4 -3
- data/proto_docs/google/cloud/securitycenter/v1/kernel_rootkit.rb +8 -8
- data/proto_docs/google/cloud/securitycenter/v1/kubernetes.rb +3 -3
- data/proto_docs/google/cloud/securitycenter/v1/mute_config.rb +5 -5
- data/proto_docs/google/cloud/securitycenter/v1/resource.rb +3 -3
- data/proto_docs/google/cloud/securitycenter/v1/security_health_analytics_custom_config.rb +112 -0
- data/proto_docs/google/cloud/securitycenter/v1/security_health_analytics_custom_module.rb +90 -0
- data/proto_docs/google/cloud/securitycenter/v1/securitycenter_service.rb +169 -0
- data/proto_docs/google/iam/v1/policy.rb +8 -4
- metadata +12 -2
@@ -65,23 +65,23 @@ module Google
|
|
65
65
|
# (0-9), or underscores (_).
|
66
66
|
# @!attribute [r] create_time
|
67
67
|
# @return [::Google::Protobuf::Timestamp]
|
68
|
-
# Output only. The time at which the
|
68
|
+
# Output only. The time at which the BigQuery export was created.
|
69
69
|
# This field is set by the server and will be ignored if provided on export
|
70
70
|
# on creation.
|
71
71
|
# @!attribute [r] update_time
|
72
72
|
# @return [::Google::Protobuf::Timestamp]
|
73
|
-
# Output only. The most recent time at which the
|
73
|
+
# Output only. The most recent time at which the BigQuery export was updated.
|
74
74
|
# This field is set by the server and will be ignored if provided on export
|
75
75
|
# creation or update.
|
76
76
|
# @!attribute [r] most_recent_editor
|
77
77
|
# @return [::String]
|
78
|
-
# Output only. Email address of the user who last edited the
|
78
|
+
# Output only. Email address of the user who last edited the BigQuery export.
|
79
79
|
# This field is set by the server and will be ignored if provided on export
|
80
80
|
# creation or update.
|
81
81
|
# @!attribute [r] principal
|
82
82
|
# @return [::String]
|
83
|
-
# Output only. The service account that needs permission to create table
|
84
|
-
# the
|
83
|
+
# Output only. The service account that needs permission to create table and
|
84
|
+
# upload data to the BigQuery dataset.
|
85
85
|
class BigQueryExport
|
86
86
|
include ::Google::Protobuf::MessageExts
|
87
87
|
extend ::Google::Protobuf::MessageExts::ClassMethods
|
@@ -0,0 +1,37 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
# Copyright 2023 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 V1
|
24
|
+
# The [data profile](https://cloud.google.com/dlp/docs/data-profiles)
|
25
|
+
# associated with the finding.
|
26
|
+
# @!attribute [rw] data_profile
|
27
|
+
# @return [::String]
|
28
|
+
# Name of the data profile, for example,
|
29
|
+
# `projects/123/locations/europe/tableProfiles/8383929`.
|
30
|
+
class CloudDlpDataProfile
|
31
|
+
include ::Google::Protobuf::MessageExts
|
32
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
33
|
+
end
|
34
|
+
end
|
35
|
+
end
|
36
|
+
end
|
37
|
+
end
|
@@ -0,0 +1,50 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
# Copyright 2023 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 V1
|
24
|
+
# Details about the Cloud Data Loss Prevention (Cloud DLP) [inspection
|
25
|
+
# job](https://cloud.google.com/dlp/docs/concepts-job-triggers) that produced
|
26
|
+
# the finding.
|
27
|
+
# @!attribute [rw] inspect_job
|
28
|
+
# @return [::String]
|
29
|
+
# Name of the inspection job, for example,
|
30
|
+
# `projects/123/locations/europe/dlpJobs/i-8383929`.
|
31
|
+
# @!attribute [rw] info_type
|
32
|
+
# @return [::String]
|
33
|
+
# The [type of
|
34
|
+
# information](https://cloud.google.com/dlp/docs/infotypes-reference) found,
|
35
|
+
# for example, `EMAIL_ADDRESS` or `STREET_ADDRESS`.
|
36
|
+
# @!attribute [rw] info_type_count
|
37
|
+
# @return [::Integer]
|
38
|
+
# The number of times Cloud DLP found this infoType within this job
|
39
|
+
# and resource.
|
40
|
+
# @!attribute [rw] full_scan
|
41
|
+
# @return [::Boolean]
|
42
|
+
# Whether Cloud DLP scanned the complete resource or a sampled subset.
|
43
|
+
class CloudDlpInspection
|
44
|
+
include ::Google::Protobuf::MessageExts
|
45
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
46
|
+
end
|
47
|
+
end
|
48
|
+
end
|
49
|
+
end
|
50
|
+
end
|
@@ -30,10 +30,10 @@ module Google
|
|
30
30
|
extend ::Google::Protobuf::MessageExts::ClassMethods
|
31
31
|
end
|
32
32
|
|
33
|
-
#
|
33
|
+
# The email address of a contact.
|
34
34
|
# @!attribute [rw] email
|
35
35
|
# @return [::String]
|
36
|
-
# An email address
|
36
|
+
# An email address. For example, "`person123@company.com`".
|
37
37
|
class Contact
|
38
38
|
include ::Google::Protobuf::MessageExts
|
39
39
|
extend ::Google::Protobuf::MessageExts::ClassMethods
|
@@ -26,7 +26,7 @@ module Google
|
|
26
26
|
# instances or Cloud Spanner instances), or the database instance itself.
|
27
27
|
# Some database resources may not have the full resource name populated
|
28
28
|
# because these resource types are not yet supported by Cloud Asset Inventory
|
29
|
-
# (e.g. CloudSQL databases).
|
29
|
+
# (e.g. CloudSQL databases). In these cases only the display name will be
|
30
30
|
# provided.
|
31
31
|
# @!attribute [rw] name
|
32
32
|
# @return [::String]
|
data/proto_docs/google/cloud/securitycenter/v1/effective_security_health_analytics_custom_module.rb
ADDED
@@ -0,0 +1,73 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
# Copyright 2023 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 V1
|
24
|
+
# An EffectiveSecurityHealthAnalyticsCustomModule is the representation of
|
25
|
+
# a Security Health Analytics custom module at a specified level of the
|
26
|
+
# resource hierarchy: organization, folder, or project. If a custom module is
|
27
|
+
# inherited from a parent organization or folder, the value of the
|
28
|
+
# `enablementState` property in EffectiveSecurityHealthAnalyticsCustomModule is
|
29
|
+
# set to the value that is effective in the parent, instead of `INHERITED`.
|
30
|
+
# For example, if the module is enabled in a parent organization or folder, the
|
31
|
+
# effective enablement_state for the module in all child folders or projects is
|
32
|
+
# also `enabled`. EffectiveSecurityHealthAnalyticsCustomModule is read-only.
|
33
|
+
# @!attribute [r] name
|
34
|
+
# @return [::String]
|
35
|
+
# Output only. The resource name of the custom module.
|
36
|
+
# Its format is
|
37
|
+
# "organizations/\\{organization}/securityHealthAnalyticsSettings/effectiveCustomModules/\\{customModule}",
|
38
|
+
# or
|
39
|
+
# "folders/\\{folder}/securityHealthAnalyticsSettings/effectiveCustomModules/\\{customModule}",
|
40
|
+
# or
|
41
|
+
# "projects/\\{project}/securityHealthAnalyticsSettings/effectiveCustomModules/\\{customModule}"
|
42
|
+
# @!attribute [r] custom_config
|
43
|
+
# @return [::Google::Cloud::SecurityCenter::V1::CustomConfig]
|
44
|
+
# Output only. The user-specified configuration for the module.
|
45
|
+
# @!attribute [r] enablement_state
|
46
|
+
# @return [::Google::Cloud::SecurityCenter::V1::EffectiveSecurityHealthAnalyticsCustomModule::EnablementState]
|
47
|
+
# Output only. The effective state of enablement for the module at the given
|
48
|
+
# level of the hierarchy.
|
49
|
+
# @!attribute [r] display_name
|
50
|
+
# @return [::String]
|
51
|
+
# Output only. The display name for the custom module. The name must be
|
52
|
+
# between 1 and 128 characters, start with a lowercase letter, and contain
|
53
|
+
# alphanumeric characters or underscores only.
|
54
|
+
class EffectiveSecurityHealthAnalyticsCustomModule
|
55
|
+
include ::Google::Protobuf::MessageExts
|
56
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
57
|
+
|
58
|
+
# The enablement state of the module.
|
59
|
+
module EnablementState
|
60
|
+
# Unspecified enablement state.
|
61
|
+
ENABLEMENT_STATE_UNSPECIFIED = 0
|
62
|
+
|
63
|
+
# The module is enabled at the given level.
|
64
|
+
ENABLED = 1
|
65
|
+
|
66
|
+
# The module is disabled at the given level.
|
67
|
+
DISABLED = 2
|
68
|
+
end
|
69
|
+
end
|
70
|
+
end
|
71
|
+
end
|
72
|
+
end
|
73
|
+
end
|
@@ -22,7 +22,7 @@ module Google
|
|
22
22
|
module SecurityCenter
|
23
23
|
module V1
|
24
24
|
# Exfiltration represents a data exfiltration attempt of one or more
|
25
|
-
# sources to one or more targets.
|
25
|
+
# sources to one or more targets. Sources represent the source
|
26
26
|
# of data that is exfiltrated, and Targets represents the destination the
|
27
27
|
# data was copied to.
|
28
28
|
# @!attribute [rw] sources
|
@@ -30,10 +30,12 @@ module Google
|
|
30
30
|
# finding.
|
31
31
|
# @!attribute [rw] name
|
32
32
|
# @return [::String]
|
33
|
-
# The relative resource
|
34
|
-
# https://cloud.google.com/apis/design/resource_names#relative_resource_name
|
35
|
-
# Example:
|
36
|
-
# "organizations/\\{organization_id}/sources/\\{source_id}/findings/\\{finding_id}"
|
33
|
+
# The [relative resource
|
34
|
+
# name](https://cloud.google.com/apis/design/resource_names#relative_resource_name)
|
35
|
+
# of the finding. Example:
|
36
|
+
# "organizations/\\{organization_id}/sources/\\{source_id}/findings/\\{finding_id}",
|
37
|
+
# "folders/\\{folder_id}/sources/\\{source_id}/findings/\\{finding_id}",
|
38
|
+
# "projects/\\{project_id}/sources/\\{source_id}/findings/\\{finding_id}".
|
37
39
|
# @!attribute [rw] parent
|
38
40
|
# @return [::String]
|
39
41
|
# The relative resource name of the source the finding belongs to. See:
|
@@ -107,14 +109,14 @@ module Google
|
|
107
109
|
# The class of the finding.
|
108
110
|
# @!attribute [rw] indicator
|
109
111
|
# @return [::Google::Cloud::SecurityCenter::V1::Indicator]
|
110
|
-
# Represents what's commonly known as an
|
112
|
+
# Represents what's commonly known as an *indicator of compromise* (IoC) in
|
111
113
|
# computer forensics. This is an artifact observed on a network or in an
|
112
114
|
# operating system that, with high confidence, indicates a computer
|
113
|
-
# intrusion.
|
114
|
-
#
|
115
|
+
# intrusion. For more information, see [Indicator of
|
116
|
+
# compromise](https://en.wikipedia.org/wiki/Indicator_of_compromise).
|
115
117
|
# @!attribute [rw] vulnerability
|
116
118
|
# @return [::Google::Cloud::SecurityCenter::V1::Vulnerability]
|
117
|
-
# Represents vulnerability-specific fields like CVE and
|
119
|
+
# Represents vulnerability-specific fields like CVE and CVSS scores.
|
118
120
|
# CVE stands for Common Vulnerabilities and Exposures
|
119
121
|
# (https://cve.mitre.org/about/)
|
120
122
|
# @!attribute [r] mute_update_time
|
@@ -122,33 +124,32 @@ module Google
|
|
122
124
|
# Output only. The most recent time this finding was muted or unmuted.
|
123
125
|
# @!attribute [r] external_systems
|
124
126
|
# @return [::Google::Protobuf::Map{::String => ::Google::Cloud::SecurityCenter::V1::ExternalSystem}]
|
125
|
-
# Output only. Third party SIEM/SOAR fields within SCC, contains external
|
126
|
-
# information and external system finding fields.
|
127
|
+
# Output only. Third party SIEM/SOAR fields within SCC, contains external
|
128
|
+
# system information and external system finding fields.
|
127
129
|
# @!attribute [rw] mitre_attack
|
128
130
|
# @return [::Google::Cloud::SecurityCenter::V1::MitreAttack]
|
129
131
|
# MITRE ATT&CK tactics and techniques related to this finding.
|
130
132
|
# See: https://attack.mitre.org
|
131
133
|
# @!attribute [rw] access
|
132
134
|
# @return [::Google::Cloud::SecurityCenter::V1::Access]
|
133
|
-
# Access details associated
|
134
|
-
# caller, which method was accessed, from where
|
135
|
+
# Access details associated with the finding, such as more information on the
|
136
|
+
# caller, which method was accessed, and from where.
|
135
137
|
# @!attribute [rw] connections
|
136
138
|
# @return [::Array<::Google::Cloud::SecurityCenter::V1::Connection>]
|
137
139
|
# Contains information about the IP connection associated with the finding.
|
138
140
|
# @!attribute [rw] mute_initiator
|
139
141
|
# @return [::String]
|
140
|
-
#
|
141
|
-
# mute
|
142
|
-
#
|
143
|
-
# shouldn't set the value of mute.
|
142
|
+
# Records additional information about the mute operation, for example, the
|
143
|
+
# [mute configuration](/security-command-center/docs/how-to-mute-findings)
|
144
|
+
# that muted the finding and the user who muted the finding.
|
144
145
|
# @!attribute [rw] processes
|
145
146
|
# @return [::Array<::Google::Cloud::SecurityCenter::V1::Process>]
|
146
147
|
# Represents operating system processes associated with the Finding.
|
147
148
|
# @!attribute [r] contacts
|
148
149
|
# @return [::Google::Protobuf::Map{::String => ::Google::Cloud::SecurityCenter::V1::ContactDetails}]
|
149
|
-
# Output only. Map containing the points of contact for the given finding.
|
150
|
-
# represents the type of contact, while the value contains a list of
|
151
|
-
# contacts that pertain. Please refer to:
|
150
|
+
# Output only. Map containing the points of contact for the given finding.
|
151
|
+
# The key represents the type of contact, while the value contains a list of
|
152
|
+
# all the contacts that pertain. Please refer to:
|
152
153
|
# https://cloud.google.com/resource-manager/docs/managing-notification-contacts#notification-categories
|
153
154
|
#
|
154
155
|
# {
|
@@ -173,20 +174,25 @@ module Google
|
|
173
174
|
# "Event Threat Detection" or "Security Health Analytics".
|
174
175
|
# @!attribute [rw] description
|
175
176
|
# @return [::String]
|
176
|
-
# Contains more
|
177
|
+
# Contains more details about the finding.
|
177
178
|
# @!attribute [rw] exfiltration
|
178
179
|
# @return [::Google::Cloud::SecurityCenter::V1::Exfiltration]
|
179
|
-
# Represents
|
180
|
+
# Represents exfiltrations associated with the finding.
|
180
181
|
# @!attribute [rw] iam_bindings
|
181
182
|
# @return [::Array<::Google::Cloud::SecurityCenter::V1::IamBinding>]
|
182
|
-
# Represents IAM bindings associated with the
|
183
|
+
# Represents IAM bindings associated with the finding.
|
183
184
|
# @!attribute [rw] next_steps
|
184
185
|
# @return [::String]
|
185
|
-
#
|
186
|
+
# Steps to address the finding.
|
187
|
+
# @!attribute [rw] module_name
|
188
|
+
# @return [::String]
|
189
|
+
# Unique identifier of the module which generated the finding.
|
190
|
+
# Example:
|
191
|
+
# folders/598186756061/securityHealthAnalyticsSettings/customModules/56799441161885
|
186
192
|
# @!attribute [rw] containers
|
187
193
|
# @return [::Array<::Google::Cloud::SecurityCenter::V1::Container>]
|
188
|
-
# Containers associated with the finding.
|
189
|
-
#
|
194
|
+
# Containers associated with the finding. This field provides information for
|
195
|
+
# both Kubernetes and non-Kubernetes containers.
|
190
196
|
# @!attribute [rw] kubernetes
|
191
197
|
# @return [::Google::Cloud::SecurityCenter::V1::Kubernetes]
|
192
198
|
# Kubernetes resources associated with the finding.
|
@@ -196,9 +202,16 @@ module Google
|
|
196
202
|
# @!attribute [rw] files
|
197
203
|
# @return [::Array<::Google::Cloud::SecurityCenter::V1::File>]
|
198
204
|
# File associated with the finding.
|
205
|
+
# @!attribute [rw] cloud_dlp_inspection
|
206
|
+
# @return [::Google::Cloud::SecurityCenter::V1::CloudDlpInspection]
|
207
|
+
# Cloud Data Loss Prevention (Cloud DLP) inspection results that are
|
208
|
+
# associated with the finding.
|
209
|
+
# @!attribute [rw] cloud_dlp_data_profile
|
210
|
+
# @return [::Google::Cloud::SecurityCenter::V1::CloudDlpDataProfile]
|
211
|
+
# Cloud DLP data profile that is associated with the finding.
|
199
212
|
# @!attribute [rw] kernel_rootkit
|
200
213
|
# @return [::Google::Cloud::SecurityCenter::V1::KernelRootkit]
|
201
|
-
#
|
214
|
+
# Signature of the kernel rootkit.
|
202
215
|
class Finding
|
203
216
|
include ::Google::Protobuf::MessageExts
|
204
217
|
extend ::Google::Protobuf::MessageExts::ClassMethods
|
@@ -254,7 +267,8 @@ module Google
|
|
254
267
|
# exploitable, and results in the direct ability to execute arbitrary code,
|
255
268
|
# exfiltrate data, and otherwise gain additional access and privileges to
|
256
269
|
# cloud resources and workloads. Examples include publicly accessible
|
257
|
-
# unprotected user data
|
270
|
+
# unprotected user data and public SSH access with weak or no
|
271
|
+
# passwords.
|
258
272
|
#
|
259
273
|
# Threat:
|
260
274
|
# Indicates a threat that is able to access, modify, or delete data or
|
@@ -21,13 +21,14 @@ module Google
|
|
21
21
|
module Cloud
|
22
22
|
module SecurityCenter
|
23
23
|
module V1
|
24
|
-
# Represents what's commonly known as an
|
24
|
+
# Represents what's commonly known as an _indicator of compromise_ (IoC) in
|
25
25
|
# computer forensics. This is an artifact observed on a network or in an
|
26
26
|
# operating system that, with high confidence, indicates a computer intrusion.
|
27
|
-
#
|
27
|
+
# For more information, see [Indicator of
|
28
|
+
# compromise](https://en.wikipedia.org/wiki/Indicator_of_compromise).
|
28
29
|
# @!attribute [rw] ip_addresses
|
29
30
|
# @return [::Array<::String>]
|
30
|
-
#
|
31
|
+
# The list of IP addresses that are associated with the finding.
|
31
32
|
# @!attribute [rw] domains
|
32
33
|
# @return [::Array<::String>]
|
33
34
|
# List of domains associated to the Finding.
|
@@ -27,34 +27,34 @@ module Google
|
|
27
27
|
# Rootkit name when available.
|
28
28
|
# @!attribute [rw] unexpected_code_modification
|
29
29
|
# @return [::Boolean]
|
30
|
-
# True
|
30
|
+
# True when unexpected modifications of kernel code memory are present.
|
31
31
|
# @!attribute [rw] unexpected_read_only_data_modification
|
32
32
|
# @return [::Boolean]
|
33
|
-
# True
|
33
|
+
# True when unexpected modifications of kernel read-only data memory are
|
34
34
|
# present.
|
35
35
|
# @!attribute [rw] unexpected_ftrace_handler
|
36
36
|
# @return [::Boolean]
|
37
|
-
# True
|
37
|
+
# True when `ftrace` points are present with callbacks pointing to regions
|
38
38
|
# that are not in the expected kernel or module code range.
|
39
39
|
# @!attribute [rw] unexpected_kprobe_handler
|
40
40
|
# @return [::Boolean]
|
41
|
-
# True
|
41
|
+
# True when `kprobe` points are present with callbacks pointing to regions
|
42
42
|
# that are not in the expected kernel or module code range.
|
43
43
|
# @!attribute [rw] unexpected_kernel_code_pages
|
44
44
|
# @return [::Boolean]
|
45
|
-
# True
|
45
|
+
# True when kernel code pages that are not in the expected kernel or module
|
46
46
|
# code regions are present.
|
47
47
|
# @!attribute [rw] unexpected_system_call_handler
|
48
48
|
# @return [::Boolean]
|
49
|
-
# True
|
49
|
+
# True when system call handlers that are are not in the expected kernel or
|
50
50
|
# module code regions are present.
|
51
51
|
# @!attribute [rw] unexpected_interrupt_handler
|
52
52
|
# @return [::Boolean]
|
53
|
-
# True
|
53
|
+
# True when interrupt handlers that are are not in the expected kernel or
|
54
54
|
# module code regions are present.
|
55
55
|
# @!attribute [rw] unexpected_processes_in_runqueue
|
56
56
|
# @return [::Boolean]
|
57
|
-
# True
|
57
|
+
# True when unexpected processes in the scheduler run queue are present. Such
|
58
58
|
# processes are in the run queue, but not in the process task list.
|
59
59
|
class KernelRootkit
|
60
60
|
include ::Google::Protobuf::MessageExts
|
@@ -21,7 +21,7 @@ module Google
|
|
21
21
|
module Cloud
|
22
22
|
module SecurityCenter
|
23
23
|
module V1
|
24
|
-
# Kubernetes
|
24
|
+
# Kubernetes-related attributes.
|
25
25
|
# @!attribute [rw] pods
|
26
26
|
# @return [::Array<::Google::Cloud::SecurityCenter::V1::Kubernetes::Pod>]
|
27
27
|
# Kubernetes Pods associated with the finding. This field will contain Pod
|
@@ -129,8 +129,8 @@ module Google
|
|
129
129
|
# The Role or ClusterRole referenced by the binding.
|
130
130
|
# @!attribute [rw] subjects
|
131
131
|
# @return [::Array<::Google::Cloud::SecurityCenter::V1::Kubernetes::Subject>]
|
132
|
-
# Represents
|
133
|
-
# for PATCH requests.
|
132
|
+
# Represents one or more subjects that are bound to the role. Not always
|
133
|
+
# available for PATCH requests.
|
134
134
|
class Binding
|
135
135
|
include ::Google::Protobuf::MessageExts
|
136
136
|
extend ::Google::Protobuf::MessageExts::ClassMethods
|
@@ -37,11 +37,11 @@ module Google
|
|
37
37
|
# A description of the mute config.
|
38
38
|
# @!attribute [rw] filter
|
39
39
|
# @return [::String]
|
40
|
-
# Required. An expression that defines the filter to apply across
|
41
|
-
# of findings. While creating a filter string, be
|
42
|
-
# scope in which the mute configuration is being created.
|
43
|
-
# contains project = X but is created under the project = Y
|
44
|
-
# not match any findings.
|
40
|
+
# Required. An expression that defines the filter to apply across
|
41
|
+
# create/update events of findings. While creating a filter string, be
|
42
|
+
# mindful of the scope in which the mute configuration is being created.
|
43
|
+
# E.g., If a filter contains project = X but is created under the project = Y
|
44
|
+
# scope, it might not match any findings.
|
45
45
|
#
|
46
46
|
# The following field and operator combinations are supported:
|
47
47
|
#
|
@@ -46,9 +46,9 @@ module Google
|
|
46
46
|
# The human readable name of resource's parent.
|
47
47
|
# @!attribute [r] folders
|
48
48
|
# @return [::Array<::Google::Cloud::SecurityCenter::V1::Folder>]
|
49
|
-
# Output only. Contains a Folder message for each folder in the assets
|
50
|
-
# The first folder is the deepest nested folder, and the last
|
51
|
-
# folder directly under the Organization.
|
49
|
+
# Output only. Contains a Folder message for each folder in the assets
|
50
|
+
# ancestry. The first folder is the deepest nested folder, and the last
|
51
|
+
# folder is the folder directly under the Organization.
|
52
52
|
class Resource
|
53
53
|
include ::Google::Protobuf::MessageExts
|
54
54
|
extend ::Google::Protobuf::MessageExts::ClassMethods
|
@@ -0,0 +1,112 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
# Copyright 2023 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 V1
|
24
|
+
# Defines the properties in a custom module configuration for Security
|
25
|
+
# Health Analytics. Use the custom module configuration to create custom
|
26
|
+
# detectors that generate custom findings for resources that you specify.
|
27
|
+
# @!attribute [rw] predicate
|
28
|
+
# @return [::Google::Type::Expr]
|
29
|
+
# The CEL expression to evaluate to produce findings. When the expression
|
30
|
+
# evaluates to true against a resource, a finding is generated.
|
31
|
+
# @!attribute [rw] custom_output
|
32
|
+
# @return [::Google::Cloud::SecurityCenter::V1::CustomConfig::CustomOutputSpec]
|
33
|
+
# Custom output properties.
|
34
|
+
# @!attribute [rw] resource_selector
|
35
|
+
# @return [::Google::Cloud::SecurityCenter::V1::CustomConfig::ResourceSelector]
|
36
|
+
# The resource types that the custom module operates on. Each custom module
|
37
|
+
# can specify up to 5 resource types.
|
38
|
+
# @!attribute [rw] severity
|
39
|
+
# @return [::Google::Cloud::SecurityCenter::V1::CustomConfig::Severity]
|
40
|
+
# The severity to assign to findings generated by the module.
|
41
|
+
# @!attribute [rw] description
|
42
|
+
# @return [::String]
|
43
|
+
# Text that describes the vulnerability or misconfiguration that the custom
|
44
|
+
# module detects. This explanation is returned with each finding instance to
|
45
|
+
# help investigators understand the detected issue. The text must be enclosed
|
46
|
+
# in quotation marks.
|
47
|
+
# @!attribute [rw] recommendation
|
48
|
+
# @return [::String]
|
49
|
+
# An explanation of the recommended steps that security teams can take to
|
50
|
+
# resolve the detected issue. This explanation is returned with each finding
|
51
|
+
# generated by this module in the `nextSteps` property of the finding JSON.
|
52
|
+
class CustomConfig
|
53
|
+
include ::Google::Protobuf::MessageExts
|
54
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
55
|
+
|
56
|
+
# A set of optional name-value pairs that define custom source properties to
|
57
|
+
# return with each finding that is generated by the custom module. The custom
|
58
|
+
# source properties that are defined here are included in the finding JSON
|
59
|
+
# under `sourceProperties`.
|
60
|
+
# @!attribute [rw] properties
|
61
|
+
# @return [::Array<::Google::Cloud::SecurityCenter::V1::CustomConfig::CustomOutputSpec::Property>]
|
62
|
+
# A list of custom output properties to add to the finding.
|
63
|
+
class CustomOutputSpec
|
64
|
+
include ::Google::Protobuf::MessageExts
|
65
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
66
|
+
|
67
|
+
# An individual name-value pair that defines a custom source property.
|
68
|
+
# @!attribute [rw] name
|
69
|
+
# @return [::String]
|
70
|
+
# Name of the property for the custom output.
|
71
|
+
# @!attribute [rw] value_expression
|
72
|
+
# @return [::Google::Type::Expr]
|
73
|
+
# The CEL expression for the custom output. A resource property can be
|
74
|
+
# specified to return the value of the property or a text string enclosed
|
75
|
+
# in quotation marks.
|
76
|
+
class Property
|
77
|
+
include ::Google::Protobuf::MessageExts
|
78
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
79
|
+
end
|
80
|
+
end
|
81
|
+
|
82
|
+
# Resource for selecting resource type.
|
83
|
+
# @!attribute [rw] resource_types
|
84
|
+
# @return [::Array<::String>]
|
85
|
+
# The resource types to run the detector on.
|
86
|
+
class ResourceSelector
|
87
|
+
include ::Google::Protobuf::MessageExts
|
88
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
89
|
+
end
|
90
|
+
|
91
|
+
# Defines the valid value options for the severity of a finding.
|
92
|
+
module Severity
|
93
|
+
# Unspecified severity.
|
94
|
+
SEVERITY_UNSPECIFIED = 0
|
95
|
+
|
96
|
+
# Critical severity.
|
97
|
+
CRITICAL = 1
|
98
|
+
|
99
|
+
# High severity.
|
100
|
+
HIGH = 2
|
101
|
+
|
102
|
+
# Medium severity.
|
103
|
+
MEDIUM = 3
|
104
|
+
|
105
|
+
# Low severity.
|
106
|
+
LOW = 4
|
107
|
+
end
|
108
|
+
end
|
109
|
+
end
|
110
|
+
end
|
111
|
+
end
|
112
|
+
end
|