google-cloud-security_center-v1 0.10.0 → 0.11.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/README.md +2 -2
- data/lib/google/cloud/security_center/v1/security_center/client.rb +849 -28
- data/lib/google/cloud/security_center/v1/security_center/paths.rb +116 -0
- data/lib/google/cloud/security_center/v1/version.rb +1 -1
- data/lib/google/cloud/securitycenter/v1/external_system_pb.rb +29 -0
- data/lib/google/cloud/securitycenter/v1/finding_pb.rb +12 -0
- data/lib/google/cloud/securitycenter/v1/mute_config_pb.rb +32 -0
- data/lib/google/cloud/securitycenter/v1/securitycenter_service_pb.rb +51 -0
- data/lib/google/cloud/securitycenter/v1/securitycenter_service_services_pb.rb +18 -0
- data/proto_docs/google/cloud/securitycenter/v1/external_system.rb +52 -0
- data/proto_docs/google/cloud/securitycenter/v1/finding.rb +40 -0
- data/proto_docs/google/cloud/securitycenter/v1/mute_config.rb +82 -0
- data/proto_docs/google/cloud/securitycenter/v1/securitycenter_service.rb +174 -0
- metadata +6 -2
@@ -24,6 +24,70 @@ module Google
|
|
24
24
|
module SecurityCenter
|
25
25
|
# Path helper methods for the SecurityCenter API.
|
26
26
|
module Paths
|
27
|
+
##
|
28
|
+
# Create a fully-qualified ExternalSystem resource string.
|
29
|
+
#
|
30
|
+
# @overload external_system_path(organization:, source:, finding:, externalsystem:)
|
31
|
+
# The resource will be in the following format:
|
32
|
+
#
|
33
|
+
# `organizations/{organization}/sources/{source}/findings/{finding}/externalSystems/{externalsystem}`
|
34
|
+
#
|
35
|
+
# @param organization [String]
|
36
|
+
# @param source [String]
|
37
|
+
# @param finding [String]
|
38
|
+
# @param externalsystem [String]
|
39
|
+
#
|
40
|
+
# @overload external_system_path(folder:, source:, finding:, externalsystem:)
|
41
|
+
# The resource will be in the following format:
|
42
|
+
#
|
43
|
+
# `folders/{folder}/sources/{source}/findings/{finding}/externalSystems/{externalsystem}`
|
44
|
+
#
|
45
|
+
# @param folder [String]
|
46
|
+
# @param source [String]
|
47
|
+
# @param finding [String]
|
48
|
+
# @param externalsystem [String]
|
49
|
+
#
|
50
|
+
# @overload external_system_path(project:, source:, finding:, externalsystem:)
|
51
|
+
# The resource will be in the following format:
|
52
|
+
#
|
53
|
+
# `projects/{project}/sources/{source}/findings/{finding}/externalSystems/{externalsystem}`
|
54
|
+
#
|
55
|
+
# @param project [String]
|
56
|
+
# @param source [String]
|
57
|
+
# @param finding [String]
|
58
|
+
# @param externalsystem [String]
|
59
|
+
#
|
60
|
+
# @return [::String]
|
61
|
+
def external_system_path **args
|
62
|
+
resources = {
|
63
|
+
"externalsystem:finding:organization:source" => (proc do |organization:, source:, finding:, externalsystem:|
|
64
|
+
raise ::ArgumentError, "organization cannot contain /" if organization.to_s.include? "/"
|
65
|
+
raise ::ArgumentError, "source cannot contain /" if source.to_s.include? "/"
|
66
|
+
raise ::ArgumentError, "finding cannot contain /" if finding.to_s.include? "/"
|
67
|
+
|
68
|
+
"organizations/#{organization}/sources/#{source}/findings/#{finding}/externalSystems/#{externalsystem}"
|
69
|
+
end),
|
70
|
+
"externalsystem:finding:folder:source" => (proc do |folder:, source:, finding:, externalsystem:|
|
71
|
+
raise ::ArgumentError, "folder cannot contain /" if folder.to_s.include? "/"
|
72
|
+
raise ::ArgumentError, "source cannot contain /" if source.to_s.include? "/"
|
73
|
+
raise ::ArgumentError, "finding cannot contain /" if finding.to_s.include? "/"
|
74
|
+
|
75
|
+
"folders/#{folder}/sources/#{source}/findings/#{finding}/externalSystems/#{externalsystem}"
|
76
|
+
end),
|
77
|
+
"externalsystem:finding:project:source" => (proc do |project:, source:, finding:, externalsystem:|
|
78
|
+
raise ::ArgumentError, "project cannot contain /" if project.to_s.include? "/"
|
79
|
+
raise ::ArgumentError, "source cannot contain /" if source.to_s.include? "/"
|
80
|
+
raise ::ArgumentError, "finding cannot contain /" if finding.to_s.include? "/"
|
81
|
+
|
82
|
+
"projects/#{project}/sources/#{source}/findings/#{finding}/externalSystems/#{externalsystem}"
|
83
|
+
end)
|
84
|
+
}
|
85
|
+
|
86
|
+
resource = resources[args.keys.sort.join(":")]
|
87
|
+
raise ::ArgumentError, "no resource found for values #{args.keys}" if resource.nil?
|
88
|
+
resource.call(**args)
|
89
|
+
end
|
90
|
+
|
27
91
|
##
|
28
92
|
# Create a fully-qualified Finding resource string.
|
29
93
|
#
|
@@ -96,6 +160,58 @@ module Google
|
|
96
160
|
"folders/#{folder}"
|
97
161
|
end
|
98
162
|
|
163
|
+
##
|
164
|
+
# Create a fully-qualified MuteConfig resource string.
|
165
|
+
#
|
166
|
+
# @overload mute_config_path(organization:, mute_config:)
|
167
|
+
# The resource will be in the following format:
|
168
|
+
#
|
169
|
+
# `organizations/{organization}/muteConfigs/{mute_config}`
|
170
|
+
#
|
171
|
+
# @param organization [String]
|
172
|
+
# @param mute_config [String]
|
173
|
+
#
|
174
|
+
# @overload mute_config_path(folder:, mute_config:)
|
175
|
+
# The resource will be in the following format:
|
176
|
+
#
|
177
|
+
# `folders/{folder}/muteConfigs/{mute_config}`
|
178
|
+
#
|
179
|
+
# @param folder [String]
|
180
|
+
# @param mute_config [String]
|
181
|
+
#
|
182
|
+
# @overload mute_config_path(project:, mute_config:)
|
183
|
+
# The resource will be in the following format:
|
184
|
+
#
|
185
|
+
# `projects/{project}/muteConfigs/{mute_config}`
|
186
|
+
#
|
187
|
+
# @param project [String]
|
188
|
+
# @param mute_config [String]
|
189
|
+
#
|
190
|
+
# @return [::String]
|
191
|
+
def mute_config_path **args
|
192
|
+
resources = {
|
193
|
+
"mute_config:organization" => (proc do |organization:, mute_config:|
|
194
|
+
raise ::ArgumentError, "organization cannot contain /" if organization.to_s.include? "/"
|
195
|
+
|
196
|
+
"organizations/#{organization}/muteConfigs/#{mute_config}"
|
197
|
+
end),
|
198
|
+
"folder:mute_config" => (proc do |folder:, mute_config:|
|
199
|
+
raise ::ArgumentError, "folder cannot contain /" if folder.to_s.include? "/"
|
200
|
+
|
201
|
+
"folders/#{folder}/muteConfigs/#{mute_config}"
|
202
|
+
end),
|
203
|
+
"mute_config:project" => (proc do |project:, mute_config:|
|
204
|
+
raise ::ArgumentError, "project cannot contain /" if project.to_s.include? "/"
|
205
|
+
|
206
|
+
"projects/#{project}/muteConfigs/#{mute_config}"
|
207
|
+
end)
|
208
|
+
}
|
209
|
+
|
210
|
+
resource = resources[args.keys.sort.join(":")]
|
211
|
+
raise ::ArgumentError, "no resource found for values #{args.keys}" if resource.nil?
|
212
|
+
resource.call(**args)
|
213
|
+
end
|
214
|
+
|
99
215
|
##
|
100
216
|
# Create a fully-qualified NotificationConfig resource string.
|
101
217
|
#
|
@@ -0,0 +1,29 @@
|
|
1
|
+
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
2
|
+
# source: google/cloud/securitycenter/v1/external_system.proto
|
3
|
+
|
4
|
+
require 'google/api/resource_pb'
|
5
|
+
require 'google/protobuf/timestamp_pb'
|
6
|
+
require 'google/api/annotations_pb'
|
7
|
+
require 'google/protobuf'
|
8
|
+
|
9
|
+
Google::Protobuf::DescriptorPool.generated_pool.build do
|
10
|
+
add_file("google/cloud/securitycenter/v1/external_system.proto", :syntax => :proto3) do
|
11
|
+
add_message "google.cloud.securitycenter.v1.ExternalSystem" do
|
12
|
+
optional :name, :string, 1
|
13
|
+
repeated :assignees, :string, 2
|
14
|
+
optional :external_uid, :string, 3
|
15
|
+
optional :status, :string, 4
|
16
|
+
optional :external_system_update_time, :message, 5, "google.protobuf.Timestamp"
|
17
|
+
end
|
18
|
+
end
|
19
|
+
end
|
20
|
+
|
21
|
+
module Google
|
22
|
+
module Cloud
|
23
|
+
module SecurityCenter
|
24
|
+
module V1
|
25
|
+
ExternalSystem = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.securitycenter.v1.ExternalSystem").msgclass
|
26
|
+
end
|
27
|
+
end
|
28
|
+
end
|
29
|
+
end
|
@@ -3,6 +3,7 @@
|
|
3
3
|
|
4
4
|
require 'google/api/field_behavior_pb'
|
5
5
|
require 'google/api/resource_pb'
|
6
|
+
require 'google/cloud/securitycenter/v1/external_system_pb'
|
6
7
|
require 'google/cloud/securitycenter/v1/indicator_pb'
|
7
8
|
require 'google/cloud/securitycenter/v1/security_marks_pb'
|
8
9
|
require 'google/cloud/securitycenter/v1/vulnerability_pb'
|
@@ -26,9 +27,13 @@ Google::Protobuf::DescriptorPool.generated_pool.build do
|
|
26
27
|
optional :create_time, :message, 10, "google.protobuf.Timestamp"
|
27
28
|
optional :severity, :enum, 12, "google.cloud.securitycenter.v1.Finding.Severity"
|
28
29
|
optional :canonical_name, :string, 14
|
30
|
+
optional :mute, :enum, 15, "google.cloud.securitycenter.v1.Finding.Mute"
|
29
31
|
optional :finding_class, :enum, 17, "google.cloud.securitycenter.v1.Finding.FindingClass"
|
30
32
|
optional :indicator, :message, 18, "google.cloud.securitycenter.v1.Indicator"
|
31
33
|
optional :vulnerability, :message, 20, "google.cloud.securitycenter.v1.Vulnerability"
|
34
|
+
optional :mute_update_time, :message, 21, "google.protobuf.Timestamp"
|
35
|
+
map :external_systems, :string, :message, 22, "google.cloud.securitycenter.v1.ExternalSystem"
|
36
|
+
optional :mute_initiator, :string, 28
|
32
37
|
end
|
33
38
|
add_enum "google.cloud.securitycenter.v1.Finding.State" do
|
34
39
|
value :STATE_UNSPECIFIED, 0
|
@@ -42,6 +47,12 @@ Google::Protobuf::DescriptorPool.generated_pool.build do
|
|
42
47
|
value :MEDIUM, 3
|
43
48
|
value :LOW, 4
|
44
49
|
end
|
50
|
+
add_enum "google.cloud.securitycenter.v1.Finding.Mute" do
|
51
|
+
value :MUTE_UNSPECIFIED, 0
|
52
|
+
value :MUTED, 1
|
53
|
+
value :UNMUTED, 2
|
54
|
+
value :UNDEFINED, 4
|
55
|
+
end
|
45
56
|
add_enum "google.cloud.securitycenter.v1.Finding.FindingClass" do
|
46
57
|
value :FINDING_CLASS_UNSPECIFIED, 0
|
47
58
|
value :THREAT, 1
|
@@ -59,6 +70,7 @@ module Google
|
|
59
70
|
Finding = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.securitycenter.v1.Finding").msgclass
|
60
71
|
Finding::State = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.securitycenter.v1.Finding.State").enummodule
|
61
72
|
Finding::Severity = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.securitycenter.v1.Finding.Severity").enummodule
|
73
|
+
Finding::Mute = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.securitycenter.v1.Finding.Mute").enummodule
|
62
74
|
Finding::FindingClass = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.securitycenter.v1.Finding.FindingClass").enummodule
|
63
75
|
end
|
64
76
|
end
|
@@ -0,0 +1,32 @@
|
|
1
|
+
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
2
|
+
# source: google/cloud/securitycenter/v1/mute_config.proto
|
3
|
+
|
4
|
+
require 'google/api/field_behavior_pb'
|
5
|
+
require 'google/api/resource_pb'
|
6
|
+
require 'google/protobuf/timestamp_pb'
|
7
|
+
require 'google/api/annotations_pb'
|
8
|
+
require 'google/protobuf'
|
9
|
+
|
10
|
+
Google::Protobuf::DescriptorPool.generated_pool.build do
|
11
|
+
add_file("google/cloud/securitycenter/v1/mute_config.proto", :syntax => :proto3) do
|
12
|
+
add_message "google.cloud.securitycenter.v1.MuteConfig" do
|
13
|
+
optional :name, :string, 1
|
14
|
+
optional :display_name, :string, 2
|
15
|
+
optional :description, :string, 3
|
16
|
+
optional :filter, :string, 4
|
17
|
+
optional :create_time, :message, 5, "google.protobuf.Timestamp"
|
18
|
+
optional :update_time, :message, 6, "google.protobuf.Timestamp"
|
19
|
+
optional :most_recent_editor, :string, 7
|
20
|
+
end
|
21
|
+
end
|
22
|
+
end
|
23
|
+
|
24
|
+
module Google
|
25
|
+
module Cloud
|
26
|
+
module SecurityCenter
|
27
|
+
module V1
|
28
|
+
MuteConfig = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.securitycenter.v1.MuteConfig").msgclass
|
29
|
+
end
|
30
|
+
end
|
31
|
+
end
|
32
|
+
end
|
@@ -7,8 +7,10 @@ require 'google/api/client_pb'
|
|
7
7
|
require 'google/api/field_behavior_pb'
|
8
8
|
require 'google/api/resource_pb'
|
9
9
|
require 'google/cloud/securitycenter/v1/asset_pb'
|
10
|
+
require 'google/cloud/securitycenter/v1/external_system_pb'
|
10
11
|
require 'google/cloud/securitycenter/v1/finding_pb'
|
11
12
|
require 'google/cloud/securitycenter/v1/folder_pb'
|
13
|
+
require 'google/cloud/securitycenter/v1/mute_config_pb'
|
12
14
|
require 'google/cloud/securitycenter/v1/notification_config_pb'
|
13
15
|
require 'google/cloud/securitycenter/v1/organization_settings_pb'
|
14
16
|
require 'google/cloud/securitycenter/v1/security_marks_pb'
|
@@ -25,11 +27,23 @@ require 'google/protobuf'
|
|
25
27
|
|
26
28
|
Google::Protobuf::DescriptorPool.generated_pool.build do
|
27
29
|
add_file("google/cloud/securitycenter/v1/securitycenter_service.proto", :syntax => :proto3) do
|
30
|
+
add_message "google.cloud.securitycenter.v1.BulkMuteFindingsRequest" do
|
31
|
+
optional :parent, :string, 1
|
32
|
+
optional :filter, :string, 2
|
33
|
+
optional :mute_annotation, :string, 3
|
34
|
+
end
|
35
|
+
add_message "google.cloud.securitycenter.v1.BulkMuteFindingsResponse" do
|
36
|
+
end
|
28
37
|
add_message "google.cloud.securitycenter.v1.CreateFindingRequest" do
|
29
38
|
optional :parent, :string, 1
|
30
39
|
optional :finding_id, :string, 2
|
31
40
|
optional :finding, :message, 3, "google.cloud.securitycenter.v1.Finding"
|
32
41
|
end
|
42
|
+
add_message "google.cloud.securitycenter.v1.CreateMuteConfigRequest" do
|
43
|
+
optional :parent, :string, 1
|
44
|
+
optional :mute_config, :message, 2, "google.cloud.securitycenter.v1.MuteConfig"
|
45
|
+
optional :mute_config_id, :string, 3
|
46
|
+
end
|
33
47
|
add_message "google.cloud.securitycenter.v1.CreateNotificationConfigRequest" do
|
34
48
|
optional :parent, :string, 1
|
35
49
|
optional :config_id, :string, 2
|
@@ -39,9 +53,15 @@ Google::Protobuf::DescriptorPool.generated_pool.build do
|
|
39
53
|
optional :parent, :string, 1
|
40
54
|
optional :source, :message, 2, "google.cloud.securitycenter.v1.Source"
|
41
55
|
end
|
56
|
+
add_message "google.cloud.securitycenter.v1.DeleteMuteConfigRequest" do
|
57
|
+
optional :name, :string, 1
|
58
|
+
end
|
42
59
|
add_message "google.cloud.securitycenter.v1.DeleteNotificationConfigRequest" do
|
43
60
|
optional :name, :string, 1
|
44
61
|
end
|
62
|
+
add_message "google.cloud.securitycenter.v1.GetMuteConfigRequest" do
|
63
|
+
optional :name, :string, 1
|
64
|
+
end
|
45
65
|
add_message "google.cloud.securitycenter.v1.GetNotificationConfigRequest" do
|
46
66
|
optional :name, :string, 1
|
47
67
|
end
|
@@ -85,6 +105,15 @@ Google::Protobuf::DescriptorPool.generated_pool.build do
|
|
85
105
|
map :properties, :string, :message, 1, "google.protobuf.Value"
|
86
106
|
optional :count, :int64, 2
|
87
107
|
end
|
108
|
+
add_message "google.cloud.securitycenter.v1.ListMuteConfigsRequest" do
|
109
|
+
optional :parent, :string, 1
|
110
|
+
optional :page_size, :int32, 2
|
111
|
+
optional :page_token, :string, 3
|
112
|
+
end
|
113
|
+
add_message "google.cloud.securitycenter.v1.ListMuteConfigsResponse" do
|
114
|
+
repeated :mute_configs, :message, 1, "google.cloud.securitycenter.v1.MuteConfig"
|
115
|
+
optional :next_page_token, :string, 2
|
116
|
+
end
|
88
117
|
add_message "google.cloud.securitycenter.v1.ListNotificationConfigsRequest" do
|
89
118
|
optional :parent, :string, 1
|
90
119
|
optional :page_token, :string, 2
|
@@ -172,13 +201,25 @@ Google::Protobuf::DescriptorPool.generated_pool.build do
|
|
172
201
|
optional :state, :enum, 2, "google.cloud.securitycenter.v1.Finding.State"
|
173
202
|
optional :start_time, :message, 3, "google.protobuf.Timestamp"
|
174
203
|
end
|
204
|
+
add_message "google.cloud.securitycenter.v1.SetMuteRequest" do
|
205
|
+
optional :name, :string, 1
|
206
|
+
optional :mute, :enum, 2, "google.cloud.securitycenter.v1.Finding.Mute"
|
207
|
+
end
|
175
208
|
add_message "google.cloud.securitycenter.v1.RunAssetDiscoveryRequest" do
|
176
209
|
optional :parent, :string, 1
|
177
210
|
end
|
211
|
+
add_message "google.cloud.securitycenter.v1.UpdateExternalSystemRequest" do
|
212
|
+
optional :external_system, :message, 1, "google.cloud.securitycenter.v1.ExternalSystem"
|
213
|
+
optional :update_mask, :message, 2, "google.protobuf.FieldMask"
|
214
|
+
end
|
178
215
|
add_message "google.cloud.securitycenter.v1.UpdateFindingRequest" do
|
179
216
|
optional :finding, :message, 1, "google.cloud.securitycenter.v1.Finding"
|
180
217
|
optional :update_mask, :message, 2, "google.protobuf.FieldMask"
|
181
218
|
end
|
219
|
+
add_message "google.cloud.securitycenter.v1.UpdateMuteConfigRequest" do
|
220
|
+
optional :mute_config, :message, 1, "google.cloud.securitycenter.v1.MuteConfig"
|
221
|
+
optional :update_mask, :message, 2, "google.protobuf.FieldMask"
|
222
|
+
end
|
182
223
|
add_message "google.cloud.securitycenter.v1.UpdateNotificationConfigRequest" do
|
183
224
|
optional :notification_config, :message, 1, "google.cloud.securitycenter.v1.NotificationConfig"
|
184
225
|
optional :update_mask, :message, 2, "google.protobuf.FieldMask"
|
@@ -203,10 +244,15 @@ module Google
|
|
203
244
|
module Cloud
|
204
245
|
module SecurityCenter
|
205
246
|
module V1
|
247
|
+
BulkMuteFindingsRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.securitycenter.v1.BulkMuteFindingsRequest").msgclass
|
248
|
+
BulkMuteFindingsResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.securitycenter.v1.BulkMuteFindingsResponse").msgclass
|
206
249
|
CreateFindingRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.securitycenter.v1.CreateFindingRequest").msgclass
|
250
|
+
CreateMuteConfigRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.securitycenter.v1.CreateMuteConfigRequest").msgclass
|
207
251
|
CreateNotificationConfigRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.securitycenter.v1.CreateNotificationConfigRequest").msgclass
|
208
252
|
CreateSourceRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.securitycenter.v1.CreateSourceRequest").msgclass
|
253
|
+
DeleteMuteConfigRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.securitycenter.v1.DeleteMuteConfigRequest").msgclass
|
209
254
|
DeleteNotificationConfigRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.securitycenter.v1.DeleteNotificationConfigRequest").msgclass
|
255
|
+
GetMuteConfigRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.securitycenter.v1.GetMuteConfigRequest").msgclass
|
210
256
|
GetNotificationConfigRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.securitycenter.v1.GetNotificationConfigRequest").msgclass
|
211
257
|
GetOrganizationSettingsRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.securitycenter.v1.GetOrganizationSettingsRequest").msgclass
|
212
258
|
GetSourceRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.securitycenter.v1.GetSourceRequest").msgclass
|
@@ -215,6 +261,8 @@ module Google
|
|
215
261
|
GroupFindingsRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.securitycenter.v1.GroupFindingsRequest").msgclass
|
216
262
|
GroupFindingsResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.securitycenter.v1.GroupFindingsResponse").msgclass
|
217
263
|
GroupResult = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.securitycenter.v1.GroupResult").msgclass
|
264
|
+
ListMuteConfigsRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.securitycenter.v1.ListMuteConfigsRequest").msgclass
|
265
|
+
ListMuteConfigsResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.securitycenter.v1.ListMuteConfigsResponse").msgclass
|
218
266
|
ListNotificationConfigsRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.securitycenter.v1.ListNotificationConfigsRequest").msgclass
|
219
267
|
ListNotificationConfigsResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.securitycenter.v1.ListNotificationConfigsResponse").msgclass
|
220
268
|
ListSourcesRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.securitycenter.v1.ListSourcesRequest").msgclass
|
@@ -229,8 +277,11 @@ module Google
|
|
229
277
|
ListFindingsResponse::ListFindingsResult::Resource = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.securitycenter.v1.ListFindingsResponse.ListFindingsResult.Resource").msgclass
|
230
278
|
ListFindingsResponse::ListFindingsResult::StateChange = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.securitycenter.v1.ListFindingsResponse.ListFindingsResult.StateChange").enummodule
|
231
279
|
SetFindingStateRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.securitycenter.v1.SetFindingStateRequest").msgclass
|
280
|
+
SetMuteRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.securitycenter.v1.SetMuteRequest").msgclass
|
232
281
|
RunAssetDiscoveryRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.securitycenter.v1.RunAssetDiscoveryRequest").msgclass
|
282
|
+
UpdateExternalSystemRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.securitycenter.v1.UpdateExternalSystemRequest").msgclass
|
233
283
|
UpdateFindingRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.securitycenter.v1.UpdateFindingRequest").msgclass
|
284
|
+
UpdateMuteConfigRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.securitycenter.v1.UpdateMuteConfigRequest").msgclass
|
234
285
|
UpdateNotificationConfigRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.securitycenter.v1.UpdateNotificationConfigRequest").msgclass
|
235
286
|
UpdateOrganizationSettingsRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.securitycenter.v1.UpdateOrganizationSettingsRequest").msgclass
|
236
287
|
UpdateSourceRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.securitycenter.v1.UpdateSourceRequest").msgclass
|
@@ -33,17 +33,27 @@ module Google
|
|
33
33
|
self.unmarshal_class_method = :decode
|
34
34
|
self.service_name = 'google.cloud.securitycenter.v1.SecurityCenter'
|
35
35
|
|
36
|
+
# Kicks off an LRO to bulk mute findings for a parent based on a filter. The
|
37
|
+
# parent can be either an organization, folder or project. The findings
|
38
|
+
# matched by the filter will be muted after the LRO is done.
|
39
|
+
rpc :BulkMuteFindings, ::Google::Cloud::SecurityCenter::V1::BulkMuteFindingsRequest, ::Google::Longrunning::Operation
|
36
40
|
# Creates a source.
|
37
41
|
rpc :CreateSource, ::Google::Cloud::SecurityCenter::V1::CreateSourceRequest, ::Google::Cloud::SecurityCenter::V1::Source
|
38
42
|
# Creates a finding. The corresponding source must exist for finding creation
|
39
43
|
# to succeed.
|
40
44
|
rpc :CreateFinding, ::Google::Cloud::SecurityCenter::V1::CreateFindingRequest, ::Google::Cloud::SecurityCenter::V1::Finding
|
45
|
+
# Creates a mute config.
|
46
|
+
rpc :CreateMuteConfig, ::Google::Cloud::SecurityCenter::V1::CreateMuteConfigRequest, ::Google::Cloud::SecurityCenter::V1::MuteConfig
|
41
47
|
# Creates a notification config.
|
42
48
|
rpc :CreateNotificationConfig, ::Google::Cloud::SecurityCenter::V1::CreateNotificationConfigRequest, ::Google::Cloud::SecurityCenter::V1::NotificationConfig
|
49
|
+
# Deletes an existing mute config.
|
50
|
+
rpc :DeleteMuteConfig, ::Google::Cloud::SecurityCenter::V1::DeleteMuteConfigRequest, ::Google::Protobuf::Empty
|
43
51
|
# Deletes a notification config.
|
44
52
|
rpc :DeleteNotificationConfig, ::Google::Cloud::SecurityCenter::V1::DeleteNotificationConfigRequest, ::Google::Protobuf::Empty
|
45
53
|
# Gets the access control policy on the specified Source.
|
46
54
|
rpc :GetIamPolicy, ::Google::Iam::V1::GetIamPolicyRequest, ::Google::Iam::V1::Policy
|
55
|
+
# Gets a mute config.
|
56
|
+
rpc :GetMuteConfig, ::Google::Cloud::SecurityCenter::V1::GetMuteConfigRequest, ::Google::Cloud::SecurityCenter::V1::MuteConfig
|
47
57
|
# Gets a notification config.
|
48
58
|
rpc :GetNotificationConfig, ::Google::Cloud::SecurityCenter::V1::GetNotificationConfigRequest, ::Google::Cloud::SecurityCenter::V1::NotificationConfig
|
49
59
|
# Gets the settings for an organization.
|
@@ -68,6 +78,8 @@ module Google
|
|
68
78
|
# To list across all sources provide a `-` as the source id.
|
69
79
|
# Example: /v1/organizations/{organization_id}/sources/-/findings
|
70
80
|
rpc :ListFindings, ::Google::Cloud::SecurityCenter::V1::ListFindingsRequest, ::Google::Cloud::SecurityCenter::V1::ListFindingsResponse
|
81
|
+
# Lists mute configs.
|
82
|
+
rpc :ListMuteConfigs, ::Google::Cloud::SecurityCenter::V1::ListMuteConfigsRequest, ::Google::Cloud::SecurityCenter::V1::ListMuteConfigsResponse
|
71
83
|
# Lists notification configs.
|
72
84
|
rpc :ListNotificationConfigs, ::Google::Cloud::SecurityCenter::V1::ListNotificationConfigsRequest, ::Google::Cloud::SecurityCenter::V1::ListNotificationConfigsResponse
|
73
85
|
# Lists all sources belonging to an organization.
|
@@ -81,13 +93,19 @@ module Google
|
|
81
93
|
rpc :RunAssetDiscovery, ::Google::Cloud::SecurityCenter::V1::RunAssetDiscoveryRequest, ::Google::Longrunning::Operation
|
82
94
|
# Updates the state of a finding.
|
83
95
|
rpc :SetFindingState, ::Google::Cloud::SecurityCenter::V1::SetFindingStateRequest, ::Google::Cloud::SecurityCenter::V1::Finding
|
96
|
+
# Updates the mute state of a finding.
|
97
|
+
rpc :SetMute, ::Google::Cloud::SecurityCenter::V1::SetMuteRequest, ::Google::Cloud::SecurityCenter::V1::Finding
|
84
98
|
# Sets the access control policy on the specified Source.
|
85
99
|
rpc :SetIamPolicy, ::Google::Iam::V1::SetIamPolicyRequest, ::Google::Iam::V1::Policy
|
86
100
|
# Returns the permissions that a caller has on the specified source.
|
87
101
|
rpc :TestIamPermissions, ::Google::Iam::V1::TestIamPermissionsRequest, ::Google::Iam::V1::TestIamPermissionsResponse
|
102
|
+
# Updates external system. This is for a given finding.
|
103
|
+
rpc :UpdateExternalSystem, ::Google::Cloud::SecurityCenter::V1::UpdateExternalSystemRequest, ::Google::Cloud::SecurityCenter::V1::ExternalSystem
|
88
104
|
# Creates or updates a finding. The corresponding source must exist for a
|
89
105
|
# finding creation to succeed.
|
90
106
|
rpc :UpdateFinding, ::Google::Cloud::SecurityCenter::V1::UpdateFindingRequest, ::Google::Cloud::SecurityCenter::V1::Finding
|
107
|
+
# Updates a mute config.
|
108
|
+
rpc :UpdateMuteConfig, ::Google::Cloud::SecurityCenter::V1::UpdateMuteConfigRequest, ::Google::Cloud::SecurityCenter::V1::MuteConfig
|
91
109
|
#
|
92
110
|
# Updates a notification config. The following update
|
93
111
|
# fields are allowed: description, pubsub_topic, streaming_config.filter
|
@@ -0,0 +1,52 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
# Copyright 2021 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
|
+
# Representation of third party SIEM/SOAR fields within SCC.
|
25
|
+
# @!attribute [rw] name
|
26
|
+
# @return [::String]
|
27
|
+
# External System Name e.g. jira, demisto, etc.
|
28
|
+
# e.g.: `organizations/1234/sources/5678/findings/123456/externalSystems/jira`
|
29
|
+
# `folders/1234/sources/5678/findings/123456/externalSystems/jira`
|
30
|
+
# `projects/1234/sources/5678/findings/123456/externalSystems/jira`
|
31
|
+
# @!attribute [rw] assignees
|
32
|
+
# @return [::Array<::String>]
|
33
|
+
# References primary/secondary etc assignees in the external system.
|
34
|
+
# @!attribute [rw] external_uid
|
35
|
+
# @return [::String]
|
36
|
+
# Identifier that's used to track the given finding in the external system.
|
37
|
+
# @!attribute [rw] status
|
38
|
+
# @return [::String]
|
39
|
+
# Most recent status of the corresponding finding's ticket/tracker in the
|
40
|
+
# external system.
|
41
|
+
# @!attribute [rw] external_system_update_time
|
42
|
+
# @return [::Google::Protobuf::Timestamp]
|
43
|
+
# The most recent time when the corresponding finding's ticket/tracker was
|
44
|
+
# updated in the external system.
|
45
|
+
class ExternalSystem
|
46
|
+
include ::Google::Protobuf::MessageExts
|
47
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
48
|
+
end
|
49
|
+
end
|
50
|
+
end
|
51
|
+
end
|
52
|
+
end
|
@@ -96,6 +96,10 @@ module Google
|
|
96
96
|
# "projects/\\{project_number}/sources/\\{source_id}/findings/\\{finding_id}",
|
97
97
|
# depending on the closest CRM ancestor of the resource associated with the
|
98
98
|
# finding.
|
99
|
+
# @!attribute [rw] mute
|
100
|
+
# @return [::Google::Cloud::SecurityCenter::V1::Finding::Mute]
|
101
|
+
# Indicates the mute state of a finding (either unspecified, muted, unmuted
|
102
|
+
# or undefined).
|
99
103
|
# @!attribute [rw] finding_class
|
100
104
|
# @return [::Google::Cloud::SecurityCenter::V1::Finding::FindingClass]
|
101
105
|
# The class of the finding.
|
@@ -111,6 +115,18 @@ module Google
|
|
111
115
|
# Represents vulnerability specific fields like cve, cvss scores etc.
|
112
116
|
# CVE stands for Common Vulnerabilities and Exposures
|
113
117
|
# (https://cve.mitre.org/about/)
|
118
|
+
# @!attribute [r] mute_update_time
|
119
|
+
# @return [::Google::Protobuf::Timestamp]
|
120
|
+
# Output only. The most recent time this finding was muted or unmuted.
|
121
|
+
# @!attribute [r] external_systems
|
122
|
+
# @return [::Google::Protobuf::Map{::String => ::Google::Cloud::SecurityCenter::V1::ExternalSystem}]
|
123
|
+
# Output only. Third party SIEM/SOAR fields within SCC, contains external system
|
124
|
+
# information and external system finding fields.
|
125
|
+
# @!attribute [rw] mute_initiator
|
126
|
+
# @return [::String]
|
127
|
+
# First known as mute_annotation. Records additional information about the
|
128
|
+
# mute operation e.g. mute config that muted the finding, user who muted the
|
129
|
+
# finding, etc.
|
114
130
|
class Finding
|
115
131
|
include ::Google::Protobuf::MessageExts
|
116
132
|
extend ::Google::Protobuf::MessageExts::ClassMethods
|
@@ -124,6 +140,15 @@ module Google
|
|
124
140
|
extend ::Google::Protobuf::MessageExts::ClassMethods
|
125
141
|
end
|
126
142
|
|
143
|
+
# @!attribute [rw] key
|
144
|
+
# @return [::String]
|
145
|
+
# @!attribute [rw] value
|
146
|
+
# @return [::Google::Cloud::SecurityCenter::V1::ExternalSystem]
|
147
|
+
class ExternalSystemsEntry
|
148
|
+
include ::Google::Protobuf::MessageExts
|
149
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
150
|
+
end
|
151
|
+
|
127
152
|
# The state of the finding.
|
128
153
|
module State
|
129
154
|
# Unspecified state.
|
@@ -196,6 +221,21 @@ module Google
|
|
196
221
|
LOW = 4
|
197
222
|
end
|
198
223
|
|
224
|
+
# Mute state a finding can be in.
|
225
|
+
module Mute
|
226
|
+
# Unspecified.
|
227
|
+
MUTE_UNSPECIFIED = 0
|
228
|
+
|
229
|
+
# Finding has been muted.
|
230
|
+
MUTED = 1
|
231
|
+
|
232
|
+
# Finding has been unmuted.
|
233
|
+
UNMUTED = 2
|
234
|
+
|
235
|
+
# Finding has never been muted/unmuted.
|
236
|
+
UNDEFINED = 4
|
237
|
+
end
|
238
|
+
|
199
239
|
# Represents what kind of Finding it is.
|
200
240
|
module FindingClass
|
201
241
|
# Unspecified finding class.
|
@@ -0,0 +1,82 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
# Copyright 2021 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
|
+
# A mute config is a Cloud SCC resource that contains the configuration
|
25
|
+
# to mute create/update events of findings.
|
26
|
+
# @!attribute [rw] name
|
27
|
+
# @return [::String]
|
28
|
+
# This field will be ignored if provided on config creation. Format
|
29
|
+
# "organizations/\\{organization}/muteConfigs/\\{mute_config}"
|
30
|
+
# "folders/\\{folder}/muteConfigs/\\{mute_config}"
|
31
|
+
# "projects/\\{project}/muteConfigs/\\{mute_config}"
|
32
|
+
# @!attribute [rw] display_name
|
33
|
+
# @return [::String]
|
34
|
+
# The human readable name to be displayed for the mute config.
|
35
|
+
# @!attribute [rw] description
|
36
|
+
# @return [::String]
|
37
|
+
# A description of the mute config.
|
38
|
+
# @!attribute [rw] filter
|
39
|
+
# @return [::String]
|
40
|
+
# Required. An expression that defines the filter to apply across create/update events
|
41
|
+
# of findings. While creating a filter string, be mindful of the
|
42
|
+
# scope in which the mute configuration is being created. E.g., If a filter
|
43
|
+
# contains project = X but is created under the project = Y scope, it might
|
44
|
+
# not match any findings.
|
45
|
+
#
|
46
|
+
# The following field and operator combinations are supported:
|
47
|
+
#
|
48
|
+
# * severity: `=`, `:`
|
49
|
+
# * category: `=`, `:`
|
50
|
+
# * resource.name: `=`, `:`
|
51
|
+
# * resource.project_name: `=`, `:`
|
52
|
+
# * resource.project_display_name: `=`, `:`
|
53
|
+
# * resource.folders.resource_folder: `=`, `:`
|
54
|
+
# * resource.parent_name: `=`, `:`
|
55
|
+
# * resource.parent_display_name: `=`, `:`
|
56
|
+
# * resource.type: `=`, `:`
|
57
|
+
# * finding_class: `=`, `:`
|
58
|
+
# * indicator.ip_addresses: `=`, `:`
|
59
|
+
# * indicator.domains: `=`, `:`
|
60
|
+
# @!attribute [r] create_time
|
61
|
+
# @return [::Google::Protobuf::Timestamp]
|
62
|
+
# Output only. The time at which the mute config was created.
|
63
|
+
# This field is set by the server and will be ignored if provided on config
|
64
|
+
# creation.
|
65
|
+
# @!attribute [r] update_time
|
66
|
+
# @return [::Google::Protobuf::Timestamp]
|
67
|
+
# Output only. The most recent time at which the mute config was updated.
|
68
|
+
# This field is set by the server and will be ignored if provided on config
|
69
|
+
# creation or update.
|
70
|
+
# @!attribute [r] most_recent_editor
|
71
|
+
# @return [::String]
|
72
|
+
# Output only. Email address of the user who last edited the mute config.
|
73
|
+
# This field is set by the server and will be ignored if provided on config
|
74
|
+
# creation or update.
|
75
|
+
class MuteConfig
|
76
|
+
include ::Google::Protobuf::MessageExts
|
77
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
78
|
+
end
|
79
|
+
end
|
80
|
+
end
|
81
|
+
end
|
82
|
+
end
|