google-cloud-security_center-v1 0.10.0 → 0.12.1

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.
@@ -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
  #
@@ -21,7 +21,7 @@ module Google
21
21
  module Cloud
22
22
  module SecurityCenter
23
23
  module V1
24
- VERSION = "0.10.0"
24
+ VERSION = "0.12.1"
25
25
  end
26
26
  end
27
27
  end
@@ -0,0 +1,32 @@
1
+ # Generated by the protocol buffer compiler. DO NOT EDIT!
2
+ # source: google/cloud/securitycenter/v1/access.proto
3
+
4
+ require 'google/api/annotations_pb'
5
+ require 'google/protobuf'
6
+
7
+ Google::Protobuf::DescriptorPool.generated_pool.build do
8
+ add_file("google/cloud/securitycenter/v1/access.proto", :syntax => :proto3) do
9
+ add_message "google.cloud.securitycenter.v1.Access" do
10
+ optional :principal_email, :string, 1
11
+ optional :caller_ip, :string, 2
12
+ optional :caller_ip_geo, :message, 3, "google.cloud.securitycenter.v1.Geolocation"
13
+ optional :user_agent_family, :string, 4
14
+ optional :service_name, :string, 5
15
+ optional :method_name, :string, 6
16
+ end
17
+ add_message "google.cloud.securitycenter.v1.Geolocation" do
18
+ optional :region_code, :string, 1
19
+ end
20
+ end
21
+ end
22
+
23
+ module Google
24
+ module Cloud
25
+ module SecurityCenter
26
+ module V1
27
+ Access = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.securitycenter.v1.Access").msgclass
28
+ Geolocation = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.securitycenter.v1.Geolocation").msgclass
29
+ end
30
+ end
31
+ end
32
+ end
@@ -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
@@ -1,14 +1,16 @@
1
1
  # Generated by the protocol buffer compiler. DO NOT EDIT!
2
2
  # source: google/cloud/securitycenter/v1/finding.proto
3
3
 
4
+ require 'google/api/annotations_pb'
4
5
  require 'google/api/field_behavior_pb'
5
6
  require 'google/api/resource_pb'
7
+ require 'google/cloud/securitycenter/v1/access_pb'
8
+ require 'google/cloud/securitycenter/v1/external_system_pb'
6
9
  require 'google/cloud/securitycenter/v1/indicator_pb'
7
10
  require 'google/cloud/securitycenter/v1/security_marks_pb'
8
11
  require 'google/cloud/securitycenter/v1/vulnerability_pb'
9
12
  require 'google/protobuf/struct_pb'
10
13
  require 'google/protobuf/timestamp_pb'
11
- require 'google/api/annotations_pb'
12
14
  require 'google/protobuf'
13
15
 
14
16
  Google::Protobuf::DescriptorPool.generated_pool.build do
@@ -26,9 +28,14 @@ Google::Protobuf::DescriptorPool.generated_pool.build do
26
28
  optional :create_time, :message, 10, "google.protobuf.Timestamp"
27
29
  optional :severity, :enum, 12, "google.cloud.securitycenter.v1.Finding.Severity"
28
30
  optional :canonical_name, :string, 14
31
+ optional :mute, :enum, 15, "google.cloud.securitycenter.v1.Finding.Mute"
29
32
  optional :finding_class, :enum, 17, "google.cloud.securitycenter.v1.Finding.FindingClass"
30
33
  optional :indicator, :message, 18, "google.cloud.securitycenter.v1.Indicator"
31
34
  optional :vulnerability, :message, 20, "google.cloud.securitycenter.v1.Vulnerability"
35
+ optional :mute_update_time, :message, 21, "google.protobuf.Timestamp"
36
+ map :external_systems, :string, :message, 22, "google.cloud.securitycenter.v1.ExternalSystem"
37
+ optional :access, :message, 26, "google.cloud.securitycenter.v1.Access"
38
+ optional :mute_initiator, :string, 28
32
39
  end
33
40
  add_enum "google.cloud.securitycenter.v1.Finding.State" do
34
41
  value :STATE_UNSPECIFIED, 0
@@ -42,6 +49,12 @@ Google::Protobuf::DescriptorPool.generated_pool.build do
42
49
  value :MEDIUM, 3
43
50
  value :LOW, 4
44
51
  end
52
+ add_enum "google.cloud.securitycenter.v1.Finding.Mute" do
53
+ value :MUTE_UNSPECIFIED, 0
54
+ value :MUTED, 1
55
+ value :UNMUTED, 2
56
+ value :UNDEFINED, 4
57
+ end
45
58
  add_enum "google.cloud.securitycenter.v1.Finding.FindingClass" do
46
59
  value :FINDING_CLASS_UNSPECIFIED, 0
47
60
  value :THREAT, 1
@@ -59,6 +72,7 @@ module Google
59
72
  Finding = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.securitycenter.v1.Finding").msgclass
60
73
  Finding::State = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.securitycenter.v1.Finding.State").enummodule
61
74
  Finding::Severity = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.securitycenter.v1.Finding.Severity").enummodule
75
+ Finding::Mute = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.securitycenter.v1.Finding.Mute").enummodule
62
76
  Finding::FindingClass = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.securitycenter.v1.Finding.FindingClass").enummodule
63
77
  end
64
78
  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
@@ -1,16 +1,18 @@
1
1
  # Generated by the protocol buffer compiler. DO NOT EDIT!
2
2
  # source: google/cloud/securitycenter/v1/securitycenter_service.proto
3
3
 
4
- require 'google/cloud/securitycenter/v1/run_asset_discovery_response_pb'
5
4
  require 'google/api/annotations_pb'
6
5
  require 'google/api/client_pb'
7
6
  require 'google/api/field_behavior_pb'
8
7
  require 'google/api/resource_pb'
9
8
  require 'google/cloud/securitycenter/v1/asset_pb'
9
+ require 'google/cloud/securitycenter/v1/external_system_pb'
10
10
  require 'google/cloud/securitycenter/v1/finding_pb'
11
11
  require 'google/cloud/securitycenter/v1/folder_pb'
12
+ require 'google/cloud/securitycenter/v1/mute_config_pb'
12
13
  require 'google/cloud/securitycenter/v1/notification_config_pb'
13
14
  require 'google/cloud/securitycenter/v1/organization_settings_pb'
15
+ require 'google/cloud/securitycenter/v1/run_asset_discovery_response_pb'
14
16
  require 'google/cloud/securitycenter/v1/security_marks_pb'
15
17
  require 'google/cloud/securitycenter/v1/source_pb'
16
18
  require 'google/iam/v1/iam_policy_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
@@ -33,11 +33,7 @@ module Google
33
33
  # // For Kubernetes resources, the format is {api group}/{kind}.
34
34
  # option (google.api.resource) = {
35
35
  # type: "pubsub.googleapis.com/Topic"
36
- # name_descriptor: {
37
- # pattern: "projects/{project}/topics/{topic}"
38
- # parent_type: "cloudresourcemanager.googleapis.com/Project"
39
- # parent_name_extractor: "projects/{project}"
40
- # }
36
+ # pattern: "projects/{project}/topics/{topic}"
41
37
  # };
42
38
  # }
43
39
  #
@@ -45,10 +41,7 @@ module Google
45
41
  #
46
42
  # resources:
47
43
  # - type: "pubsub.googleapis.com/Topic"
48
- # name_descriptor:
49
- # - pattern: "projects/{project}/topics/{topic}"
50
- # parent_type: "cloudresourcemanager.googleapis.com/Project"
51
- # parent_name_extractor: "projects/{project}"
44
+ # pattern: "projects/{project}/topics/{topic}"
52
45
  #
53
46
  # Sometimes, resources have multiple patterns, typically because they can
54
47
  # live under multiple parents.
@@ -58,26 +51,10 @@ module Google
58
51
  # message LogEntry {
59
52
  # option (google.api.resource) = {
60
53
  # type: "logging.googleapis.com/LogEntry"
61
- # name_descriptor: {
62
- # pattern: "projects/{project}/logs/{log}"
63
- # parent_type: "cloudresourcemanager.googleapis.com/Project"
64
- # parent_name_extractor: "projects/{project}"
65
- # }
66
- # name_descriptor: {
67
- # pattern: "folders/{folder}/logs/{log}"
68
- # parent_type: "cloudresourcemanager.googleapis.com/Folder"
69
- # parent_name_extractor: "folders/{folder}"
70
- # }
71
- # name_descriptor: {
72
- # pattern: "organizations/{organization}/logs/{log}"
73
- # parent_type: "cloudresourcemanager.googleapis.com/Organization"
74
- # parent_name_extractor: "organizations/{organization}"
75
- # }
76
- # name_descriptor: {
77
- # pattern: "billingAccounts/{billing_account}/logs/{log}"
78
- # parent_type: "billing.googleapis.com/BillingAccount"
79
- # parent_name_extractor: "billingAccounts/{billing_account}"
80
- # }
54
+ # pattern: "projects/{project}/logs/{log}"
55
+ # pattern: "folders/{folder}/logs/{log}"
56
+ # pattern: "organizations/{organization}/logs/{log}"
57
+ # pattern: "billingAccounts/{billing_account}/logs/{log}"
81
58
  # };
82
59
  # }
83
60
  #
@@ -85,48 +62,10 @@ module Google
85
62
  #
86
63
  # resources:
87
64
  # - type: 'logging.googleapis.com/LogEntry'
88
- # name_descriptor:
89
- # - pattern: "projects/{project}/logs/{log}"
90
- # parent_type: "cloudresourcemanager.googleapis.com/Project"
91
- # parent_name_extractor: "projects/{project}"
92
- # - pattern: "folders/{folder}/logs/{log}"
93
- # parent_type: "cloudresourcemanager.googleapis.com/Folder"
94
- # parent_name_extractor: "folders/{folder}"
95
- # - pattern: "organizations/{organization}/logs/{log}"
96
- # parent_type: "cloudresourcemanager.googleapis.com/Organization"
97
- # parent_name_extractor: "organizations/{organization}"
98
- # - pattern: "billingAccounts/{billing_account}/logs/{log}"
99
- # parent_type: "billing.googleapis.com/BillingAccount"
100
- # parent_name_extractor: "billingAccounts/{billing_account}"
101
- #
102
- # For flexible resources, the resource name doesn't contain parent names, but
103
- # the resource itself has parents for policy evaluation.
104
- #
105
- # Example:
106
- #
107
- # message Shelf {
108
- # option (google.api.resource) = {
109
- # type: "library.googleapis.com/Shelf"
110
- # name_descriptor: {
111
- # pattern: "shelves/{shelf}"
112
- # parent_type: "cloudresourcemanager.googleapis.com/Project"
113
- # }
114
- # name_descriptor: {
115
- # pattern: "shelves/{shelf}"
116
- # parent_type: "cloudresourcemanager.googleapis.com/Folder"
117
- # }
118
- # };
119
- # }
120
- #
121
- # The ResourceDescriptor Yaml config will look like:
122
- #
123
- # resources:
124
- # - type: 'library.googleapis.com/Shelf'
125
- # name_descriptor:
126
- # - pattern: "shelves/{shelf}"
127
- # parent_type: "cloudresourcemanager.googleapis.com/Project"
128
- # - pattern: "shelves/{shelf}"
129
- # parent_type: "cloudresourcemanager.googleapis.com/Folder"
65
+ # pattern: "projects/{project}/logs/{log}"
66
+ # pattern: "folders/{folder}/logs/{log}"
67
+ # pattern: "organizations/{organization}/logs/{log}"
68
+ # pattern: "billingAccounts/{billing_account}/logs/{log}"
130
69
  # @!attribute [rw] type
131
70
  # @return [::String]
132
71
  # The resource type. It must be in the format of
@@ -0,0 +1,61 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2022 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
+ # Represents an access event.
25
+ # @!attribute [rw] principal_email
26
+ # @return [::String]
27
+ # Associated email, such as "foo@google.com".
28
+ # @!attribute [rw] caller_ip
29
+ # @return [::String]
30
+ # Caller's IP address, such as "1.1.1.1".
31
+ # @!attribute [rw] caller_ip_geo
32
+ # @return [::Google::Cloud::SecurityCenter::V1::Geolocation]
33
+ # The caller IP's geolocation, which identifies where the call came from.
34
+ # @!attribute [rw] user_agent_family
35
+ # @return [::String]
36
+ # What kind of user agent is associated, e.g. operating system shells,
37
+ # embedded or stand-alone applications, etc.
38
+ # @!attribute [rw] service_name
39
+ # @return [::String]
40
+ # This is the API service that the service account made a call to, e.g.
41
+ # "iam.googleapis.com"
42
+ # @!attribute [rw] method_name
43
+ # @return [::String]
44
+ # The method that the service account called, e.g. "SetIamPolicy".
45
+ class Access
46
+ include ::Google::Protobuf::MessageExts
47
+ extend ::Google::Protobuf::MessageExts::ClassMethods
48
+ end
49
+
50
+ # Represents a geographical location for a given access.
51
+ # @!attribute [rw] region_code
52
+ # @return [::String]
53
+ # A CLDR.
54
+ class Geolocation
55
+ include ::Google::Protobuf::MessageExts
56
+ extend ::Google::Protobuf::MessageExts::ClassMethods
57
+ end
58
+ end
59
+ end
60
+ end
61
+ end