google-cloud-security_center-v1 0.10.0 → 0.11.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 +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
|