google-cloud-security_center-v1 0.12.0 → 0.14.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.
Files changed (37) hide show
  1. checksums.yaml +4 -4
  2. data/lib/google/cloud/security_center/v1/security_center/client.rb +537 -29
  3. data/lib/google/cloud/security_center/v1/security_center/paths.rb +52 -0
  4. data/lib/google/cloud/security_center/v1/version.rb +1 -1
  5. data/lib/google/cloud/security_center/v1.rb +2 -0
  6. data/lib/google/cloud/securitycenter/v1/access_pb.rb +0 -1
  7. data/lib/google/cloud/securitycenter/v1/asset_pb.rb +0 -1
  8. data/lib/google/cloud/securitycenter/v1/bigquery_export_pb.rb +32 -0
  9. data/lib/google/cloud/securitycenter/v1/external_system_pb.rb +0 -1
  10. data/lib/google/cloud/securitycenter/v1/finding_pb.rb +6 -1
  11. data/lib/google/cloud/securitycenter/v1/folder_pb.rb +0 -1
  12. data/lib/google/cloud/securitycenter/v1/iam_binding_pb.rb +30 -0
  13. data/lib/google/cloud/securitycenter/v1/indicator_pb.rb +0 -1
  14. data/lib/google/cloud/securitycenter/v1/mitre_attack_pb.rb +78 -0
  15. data/lib/google/cloud/securitycenter/v1/mute_config_pb.rb +0 -1
  16. data/lib/google/cloud/securitycenter/v1/notification_config_pb.rb +0 -1
  17. data/lib/google/cloud/securitycenter/v1/notification_message_pb.rb +0 -1
  18. data/lib/google/cloud/securitycenter/v1/organization_settings_pb.rb +0 -1
  19. data/lib/google/cloud/securitycenter/v1/resource_pb.rb +2 -3
  20. data/lib/google/cloud/securitycenter/v1/run_asset_discovery_response_pb.rb +0 -1
  21. data/lib/google/cloud/securitycenter/v1/security_marks_pb.rb +0 -1
  22. data/lib/google/cloud/securitycenter/v1/securitycenter_service_pb.rb +34 -3
  23. data/lib/google/cloud/securitycenter/v1/securitycenter_service_services_pb.rb +14 -0
  24. data/lib/google/cloud/securitycenter/v1/source_pb.rb +0 -1
  25. data/lib/google/cloud/securitycenter/v1/vulnerability_pb.rb +1 -1
  26. data/proto_docs/google/cloud/securitycenter/v1/bigquery_export.rb +92 -0
  27. data/proto_docs/google/cloud/securitycenter/v1/external_system.rb +2 -1
  28. data/proto_docs/google/cloud/securitycenter/v1/finding.rb +19 -4
  29. data/proto_docs/google/cloud/securitycenter/v1/iam_binding.rb +56 -0
  30. data/proto_docs/google/cloud/securitycenter/v1/mitre_attack.rb +201 -0
  31. data/proto_docs/google/cloud/securitycenter/v1/resource.rb +7 -7
  32. data/proto_docs/google/cloud/securitycenter/v1/securitycenter_service.rb +129 -34
  33. data/proto_docs/google/cloud/securitycenter/v1/vulnerability.rb +3 -0
  34. data/proto_docs/google/iam/v1/iam_policy.rb +8 -1
  35. data/proto_docs/google/iam/v1/options.rb +14 -4
  36. data/proto_docs/google/iam/v1/policy.rb +208 -38
  37. metadata +12 -12
@@ -24,6 +24,58 @@ 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 BigQueryExport resource string.
29
+ #
30
+ # @overload big_query_export_path(organization:, export:)
31
+ # The resource will be in the following format:
32
+ #
33
+ # `organizations/{organization}/bigQueryExports/{export}`
34
+ #
35
+ # @param organization [String]
36
+ # @param export [String]
37
+ #
38
+ # @overload big_query_export_path(folder:, export:)
39
+ # The resource will be in the following format:
40
+ #
41
+ # `folders/{folder}/bigQueryExports/{export}`
42
+ #
43
+ # @param folder [String]
44
+ # @param export [String]
45
+ #
46
+ # @overload big_query_export_path(project:, export:)
47
+ # The resource will be in the following format:
48
+ #
49
+ # `projects/{project}/bigQueryExports/{export}`
50
+ #
51
+ # @param project [String]
52
+ # @param export [String]
53
+ #
54
+ # @return [::String]
55
+ def big_query_export_path **args
56
+ resources = {
57
+ "export:organization" => (proc do |organization:, export:|
58
+ raise ::ArgumentError, "organization cannot contain /" if organization.to_s.include? "/"
59
+
60
+ "organizations/#{organization}/bigQueryExports/#{export}"
61
+ end),
62
+ "export:folder" => (proc do |folder:, export:|
63
+ raise ::ArgumentError, "folder cannot contain /" if folder.to_s.include? "/"
64
+
65
+ "folders/#{folder}/bigQueryExports/#{export}"
66
+ end),
67
+ "export:project" => (proc do |project:, export:|
68
+ raise ::ArgumentError, "project cannot contain /" if project.to_s.include? "/"
69
+
70
+ "projects/#{project}/bigQueryExports/#{export}"
71
+ end)
72
+ }
73
+
74
+ resource = resources[args.keys.sort.join(":")]
75
+ raise ::ArgumentError, "no resource found for values #{args.keys}" if resource.nil?
76
+ resource.call(**args)
77
+ end
78
+
27
79
  ##
28
80
  # Create a fully-qualified ExternalSystem resource string.
29
81
  #
@@ -21,7 +21,7 @@ module Google
21
21
  module Cloud
22
22
  module SecurityCenter
23
23
  module V1
24
- VERSION = "0.12.0"
24
+ VERSION = "0.14.0"
25
25
  end
26
26
  end
27
27
  end
@@ -25,6 +25,8 @@ module Google
25
25
  ##
26
26
  # To load this package, including all its services, and instantiate a client:
27
27
  #
28
+ # @example
29
+ #
28
30
  # require "google/cloud/security_center/v1"
29
31
  # client = ::Google::Cloud::SecurityCenter::V1::SecurityCenter::Client.new
30
32
  #
@@ -1,7 +1,6 @@
1
1
  # Generated by the protocol buffer compiler. DO NOT EDIT!
2
2
  # source: google/cloud/securitycenter/v1/access.proto
3
3
 
4
- require 'google/api/annotations_pb'
5
4
  require 'google/protobuf'
6
5
 
7
6
  Google::Protobuf::DescriptorPool.generated_pool.build do
@@ -6,7 +6,6 @@ require 'google/cloud/securitycenter/v1/folder_pb'
6
6
  require 'google/cloud/securitycenter/v1/security_marks_pb'
7
7
  require 'google/protobuf/struct_pb'
8
8
  require 'google/protobuf/timestamp_pb'
9
- require 'google/api/annotations_pb'
10
9
  require 'google/protobuf'
11
10
 
12
11
  Google::Protobuf::DescriptorPool.generated_pool.build do
@@ -0,0 +1,32 @@
1
+ # Generated by the protocol buffer compiler. DO NOT EDIT!
2
+ # source: google/cloud/securitycenter/v1/bigquery_export.proto
3
+
4
+ require 'google/api/field_behavior_pb'
5
+ require 'google/api/resource_pb'
6
+ require 'google/protobuf/timestamp_pb'
7
+ require 'google/protobuf'
8
+
9
+ Google::Protobuf::DescriptorPool.generated_pool.build do
10
+ add_file("google/cloud/securitycenter/v1/bigquery_export.proto", :syntax => :proto3) do
11
+ add_message "google.cloud.securitycenter.v1.BigQueryExport" do
12
+ optional :name, :string, 1
13
+ optional :description, :string, 2
14
+ optional :filter, :string, 3
15
+ optional :dataset, :string, 4
16
+ optional :create_time, :message, 5, "google.protobuf.Timestamp"
17
+ optional :update_time, :message, 6, "google.protobuf.Timestamp"
18
+ optional :most_recent_editor, :string, 7
19
+ optional :principal, :string, 8
20
+ end
21
+ end
22
+ end
23
+
24
+ module Google
25
+ module Cloud
26
+ module SecurityCenter
27
+ module V1
28
+ BigQueryExport = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.securitycenter.v1.BigQueryExport").msgclass
29
+ end
30
+ end
31
+ end
32
+ end
@@ -3,7 +3,6 @@
3
3
 
4
4
  require 'google/api/resource_pb'
5
5
  require 'google/protobuf/timestamp_pb'
6
- require 'google/api/annotations_pb'
7
6
  require 'google/protobuf'
8
7
 
9
8
  Google::Protobuf::DescriptorPool.generated_pool.build do
@@ -1,12 +1,13 @@
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'
5
4
  require 'google/api/field_behavior_pb'
6
5
  require 'google/api/resource_pb'
7
6
  require 'google/cloud/securitycenter/v1/access_pb'
8
7
  require 'google/cloud/securitycenter/v1/external_system_pb'
8
+ require 'google/cloud/securitycenter/v1/iam_binding_pb'
9
9
  require 'google/cloud/securitycenter/v1/indicator_pb'
10
+ require 'google/cloud/securitycenter/v1/mitre_attack_pb'
10
11
  require 'google/cloud/securitycenter/v1/security_marks_pb'
11
12
  require 'google/cloud/securitycenter/v1/vulnerability_pb'
12
13
  require 'google/protobuf/struct_pb'
@@ -34,8 +35,11 @@ Google::Protobuf::DescriptorPool.generated_pool.build do
34
35
  optional :vulnerability, :message, 20, "google.cloud.securitycenter.v1.Vulnerability"
35
36
  optional :mute_update_time, :message, 21, "google.protobuf.Timestamp"
36
37
  map :external_systems, :string, :message, 22, "google.cloud.securitycenter.v1.ExternalSystem"
38
+ optional :mitre_attack, :message, 25, "google.cloud.securitycenter.v1.MitreAttack"
37
39
  optional :access, :message, 26, "google.cloud.securitycenter.v1.Access"
38
40
  optional :mute_initiator, :string, 28
41
+ repeated :iam_bindings, :message, 39, "google.cloud.securitycenter.v1.IamBinding"
42
+ optional :next_steps, :string, 40
39
43
  end
40
44
  add_enum "google.cloud.securitycenter.v1.Finding.State" do
41
45
  value :STATE_UNSPECIFIED, 0
@@ -61,6 +65,7 @@ Google::Protobuf::DescriptorPool.generated_pool.build do
61
65
  value :VULNERABILITY, 2
62
66
  value :MISCONFIGURATION, 3
63
67
  value :OBSERVATION, 4
68
+ value :SCC_ERROR, 5
64
69
  end
65
70
  end
66
71
  end
@@ -1,7 +1,6 @@
1
1
  # Generated by the protocol buffer compiler. DO NOT EDIT!
2
2
  # source: google/cloud/securitycenter/v1/folder.proto
3
3
 
4
- require 'google/api/annotations_pb'
5
4
  require 'google/protobuf'
6
5
 
7
6
  Google::Protobuf::DescriptorPool.generated_pool.build do
@@ -0,0 +1,30 @@
1
+ # Generated by the protocol buffer compiler. DO NOT EDIT!
2
+ # source: google/cloud/securitycenter/v1/iam_binding.proto
3
+
4
+ require 'google/protobuf'
5
+
6
+ Google::Protobuf::DescriptorPool.generated_pool.build do
7
+ add_file("google/cloud/securitycenter/v1/iam_binding.proto", :syntax => :proto3) do
8
+ add_message "google.cloud.securitycenter.v1.IamBinding" do
9
+ optional :action, :enum, 1, "google.cloud.securitycenter.v1.IamBinding.Action"
10
+ optional :role, :string, 2
11
+ optional :member, :string, 3
12
+ end
13
+ add_enum "google.cloud.securitycenter.v1.IamBinding.Action" do
14
+ value :ACTION_UNSPECIFIED, 0
15
+ value :ADD, 1
16
+ value :REMOVE, 2
17
+ end
18
+ end
19
+ end
20
+
21
+ module Google
22
+ module Cloud
23
+ module SecurityCenter
24
+ module V1
25
+ IamBinding = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.securitycenter.v1.IamBinding").msgclass
26
+ IamBinding::Action = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.securitycenter.v1.IamBinding.Action").enummodule
27
+ end
28
+ end
29
+ end
30
+ end
@@ -1,7 +1,6 @@
1
1
  # Generated by the protocol buffer compiler. DO NOT EDIT!
2
2
  # source: google/cloud/securitycenter/v1/indicator.proto
3
3
 
4
- require 'google/api/annotations_pb'
5
4
  require 'google/protobuf'
6
5
 
7
6
  Google::Protobuf::DescriptorPool.generated_pool.build do
@@ -0,0 +1,78 @@
1
+ # Generated by the protocol buffer compiler. DO NOT EDIT!
2
+ # source: google/cloud/securitycenter/v1/mitre_attack.proto
3
+
4
+ require 'google/protobuf'
5
+
6
+ Google::Protobuf::DescriptorPool.generated_pool.build do
7
+ add_file("google/cloud/securitycenter/v1/mitre_attack.proto", :syntax => :proto3) do
8
+ add_message "google.cloud.securitycenter.v1.MitreAttack" do
9
+ optional :primary_tactic, :enum, 1, "google.cloud.securitycenter.v1.MitreAttack.Tactic"
10
+ repeated :primary_techniques, :enum, 2, "google.cloud.securitycenter.v1.MitreAttack.Technique"
11
+ repeated :additional_tactics, :enum, 3, "google.cloud.securitycenter.v1.MitreAttack.Tactic"
12
+ repeated :additional_techniques, :enum, 4, "google.cloud.securitycenter.v1.MitreAttack.Technique"
13
+ optional :version, :string, 5
14
+ end
15
+ add_enum "google.cloud.securitycenter.v1.MitreAttack.Tactic" do
16
+ value :TACTIC_UNSPECIFIED, 0
17
+ value :RECONNAISSANCE, 1
18
+ value :RESOURCE_DEVELOPMENT, 2
19
+ value :INITIAL_ACCESS, 5
20
+ value :EXECUTION, 3
21
+ value :PERSISTENCE, 6
22
+ value :PRIVILEGE_ESCALATION, 8
23
+ value :DEFENSE_EVASION, 7
24
+ value :CREDENTIAL_ACCESS, 9
25
+ value :DISCOVERY, 10
26
+ value :LATERAL_MOVEMENT, 11
27
+ value :COLLECTION, 12
28
+ value :COMMAND_AND_CONTROL, 4
29
+ value :EXFILTRATION, 13
30
+ value :IMPACT, 14
31
+ end
32
+ add_enum "google.cloud.securitycenter.v1.MitreAttack.Technique" do
33
+ value :TECHNIQUE_UNSPECIFIED, 0
34
+ value :ACTIVE_SCANNING, 1
35
+ value :SCANNING_IP_BLOCKS, 2
36
+ value :INGRESS_TOOL_TRANSFER, 3
37
+ value :NATIVE_API, 4
38
+ value :SHARED_MODULES, 5
39
+ value :COMMAND_AND_SCRIPTING_INTERPRETER, 6
40
+ value :UNIX_SHELL, 7
41
+ value :RESOURCE_HIJACKING, 8
42
+ value :PROXY, 9
43
+ value :EXTERNAL_PROXY, 10
44
+ value :MULTI_HOP_PROXY, 11
45
+ value :DYNAMIC_RESOLUTION, 12
46
+ value :UNSECURED_CREDENTIALS, 13
47
+ value :VALID_ACCOUNTS, 14
48
+ value :LOCAL_ACCOUNTS, 15
49
+ value :CLOUD_ACCOUNTS, 16
50
+ value :NETWORK_DENIAL_OF_SERVICE, 17
51
+ value :PERMISSION_GROUPS_DISCOVERY, 18
52
+ value :CLOUD_GROUPS, 19
53
+ value :EXFILTRATION_OVER_WEB_SERVICE, 20
54
+ value :EXFILTRATION_TO_CLOUD_STORAGE, 21
55
+ value :ACCOUNT_MANIPULATION, 22
56
+ value :SSH_AUTHORIZED_KEYS, 23
57
+ value :CREATE_OR_MODIFY_SYSTEM_PROCESS, 24
58
+ value :STEAL_WEB_SESSION_COOKIE, 25
59
+ value :MODIFY_CLOUD_COMPUTE_INFRASTRUCTURE, 26
60
+ value :EXPLOIT_PUBLIC_FACING_APPLICATION, 27
61
+ value :MODIFY_AUTHENTICATION_PROCESS, 28
62
+ value :DATA_DESTRUCTION, 29
63
+ value :DOMAIN_POLICY_MODIFICATION, 30
64
+ end
65
+ end
66
+ end
67
+
68
+ module Google
69
+ module Cloud
70
+ module SecurityCenter
71
+ module V1
72
+ MitreAttack = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.securitycenter.v1.MitreAttack").msgclass
73
+ MitreAttack::Tactic = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.securitycenter.v1.MitreAttack.Tactic").enummodule
74
+ MitreAttack::Technique = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.securitycenter.v1.MitreAttack.Technique").enummodule
75
+ end
76
+ end
77
+ end
78
+ end
@@ -4,7 +4,6 @@
4
4
  require 'google/api/field_behavior_pb'
5
5
  require 'google/api/resource_pb'
6
6
  require 'google/protobuf/timestamp_pb'
7
- require 'google/api/annotations_pb'
8
7
  require 'google/protobuf'
9
8
 
10
9
  Google::Protobuf::DescriptorPool.generated_pool.build do
@@ -3,7 +3,6 @@
3
3
 
4
4
  require 'google/api/field_behavior_pb'
5
5
  require 'google/api/resource_pb'
6
- require 'google/api/annotations_pb'
7
6
  require 'google/protobuf'
8
7
 
9
8
  Google::Protobuf::DescriptorPool.generated_pool.build do
@@ -3,7 +3,6 @@
3
3
 
4
4
  require 'google/cloud/securitycenter/v1/finding_pb'
5
5
  require 'google/cloud/securitycenter/v1/resource_pb'
6
- require 'google/api/annotations_pb'
7
6
  require 'google/protobuf'
8
7
 
9
8
  Google::Protobuf::DescriptorPool.generated_pool.build do
@@ -2,7 +2,6 @@
2
2
  # source: google/cloud/securitycenter/v1/organization_settings.proto
3
3
 
4
4
  require 'google/api/resource_pb'
5
- require 'google/api/annotations_pb'
6
5
  require 'google/protobuf'
7
6
 
8
7
  Google::Protobuf::DescriptorPool.generated_pool.build do
@@ -3,20 +3,19 @@
3
3
 
4
4
  require 'google/api/field_behavior_pb'
5
5
  require 'google/cloud/securitycenter/v1/folder_pb'
6
- require 'google/api/annotations_pb'
7
6
  require 'google/protobuf'
8
7
 
9
8
  Google::Protobuf::DescriptorPool.generated_pool.build do
10
9
  add_file("google/cloud/securitycenter/v1/resource.proto", :syntax => :proto3) do
11
10
  add_message "google.cloud.securitycenter.v1.Resource" do
12
11
  optional :name, :string, 1
12
+ optional :display_name, :string, 8
13
+ optional :type, :string, 6
13
14
  optional :project, :string, 2
14
15
  optional :project_display_name, :string, 3
15
16
  optional :parent, :string, 4
16
17
  optional :parent_display_name, :string, 5
17
- optional :type, :string, 6
18
18
  repeated :folders, :message, 7, "google.cloud.securitycenter.v1.Folder"
19
- optional :display_name, :string, 8
20
19
  end
21
20
  end
22
21
  end
@@ -2,7 +2,6 @@
2
2
  # source: google/cloud/securitycenter/v1/run_asset_discovery_response.proto
3
3
 
4
4
  require 'google/protobuf/duration_pb'
5
- require 'google/api/annotations_pb'
6
5
  require 'google/protobuf'
7
6
 
8
7
  Google::Protobuf::DescriptorPool.generated_pool.build do
@@ -2,7 +2,6 @@
2
2
  # source: google/cloud/securitycenter/v1/security_marks.proto
3
3
 
4
4
  require 'google/api/resource_pb'
5
- require 'google/api/annotations_pb'
6
5
  require 'google/protobuf'
7
6
 
8
7
  Google::Protobuf::DescriptorPool.generated_pool.build do
@@ -1,18 +1,19 @@
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'
4
5
  require 'google/api/annotations_pb'
5
6
  require 'google/api/client_pb'
6
7
  require 'google/api/field_behavior_pb'
7
8
  require 'google/api/resource_pb'
8
9
  require 'google/cloud/securitycenter/v1/asset_pb'
10
+ require 'google/cloud/securitycenter/v1/bigquery_export_pb'
9
11
  require 'google/cloud/securitycenter/v1/external_system_pb'
10
12
  require 'google/cloud/securitycenter/v1/finding_pb'
11
13
  require 'google/cloud/securitycenter/v1/folder_pb'
12
14
  require 'google/cloud/securitycenter/v1/mute_config_pb'
13
15
  require 'google/cloud/securitycenter/v1/notification_config_pb'
14
16
  require 'google/cloud/securitycenter/v1/organization_settings_pb'
15
- require 'google/cloud/securitycenter/v1/run_asset_discovery_response_pb'
16
17
  require 'google/cloud/securitycenter/v1/security_marks_pb'
17
18
  require 'google/cloud/securitycenter/v1/source_pb'
18
19
  require 'google/iam/v1/iam_policy_pb'
@@ -59,6 +60,9 @@ Google::Protobuf::DescriptorPool.generated_pool.build do
59
60
  add_message "google.cloud.securitycenter.v1.DeleteNotificationConfigRequest" do
60
61
  optional :name, :string, 1
61
62
  end
63
+ add_message "google.cloud.securitycenter.v1.GetBigQueryExportRequest" do
64
+ optional :name, :string, 1
65
+ end
62
66
  add_message "google.cloud.securitycenter.v1.GetMuteConfigRequest" do
63
67
  optional :name, :string, 1
64
68
  end
@@ -181,13 +185,13 @@ Google::Protobuf::DescriptorPool.generated_pool.build do
181
185
  end
182
186
  add_message "google.cloud.securitycenter.v1.ListFindingsResponse.ListFindingsResult.Resource" do
183
187
  optional :name, :string, 1
188
+ optional :display_name, :string, 8
189
+ optional :type, :string, 6
184
190
  optional :project_name, :string, 2
185
191
  optional :project_display_name, :string, 3
186
192
  optional :parent_name, :string, 4
187
193
  optional :parent_display_name, :string, 5
188
- optional :type, :string, 6
189
194
  repeated :folders, :message, 7, "google.cloud.securitycenter.v1.Folder"
190
- optional :display_name, :string, 8
191
195
  end
192
196
  add_enum "google.cloud.securitycenter.v1.ListFindingsResponse.ListFindingsResult.StateChange" do
193
197
  value :UNUSED, 0
@@ -237,6 +241,27 @@ Google::Protobuf::DescriptorPool.generated_pool.build do
237
241
  optional :update_mask, :message, 2, "google.protobuf.FieldMask"
238
242
  optional :start_time, :message, 3, "google.protobuf.Timestamp"
239
243
  end
244
+ add_message "google.cloud.securitycenter.v1.CreateBigQueryExportRequest" do
245
+ optional :parent, :string, 1
246
+ optional :big_query_export, :message, 2, "google.cloud.securitycenter.v1.BigQueryExport"
247
+ optional :big_query_export_id, :string, 3
248
+ end
249
+ add_message "google.cloud.securitycenter.v1.UpdateBigQueryExportRequest" do
250
+ optional :big_query_export, :message, 1, "google.cloud.securitycenter.v1.BigQueryExport"
251
+ optional :update_mask, :message, 2, "google.protobuf.FieldMask"
252
+ end
253
+ add_message "google.cloud.securitycenter.v1.ListBigQueryExportsRequest" do
254
+ optional :parent, :string, 1
255
+ optional :page_size, :int32, 2
256
+ optional :page_token, :string, 3
257
+ end
258
+ add_message "google.cloud.securitycenter.v1.ListBigQueryExportsResponse" do
259
+ repeated :big_query_exports, :message, 1, "google.cloud.securitycenter.v1.BigQueryExport"
260
+ optional :next_page_token, :string, 2
261
+ end
262
+ add_message "google.cloud.securitycenter.v1.DeleteBigQueryExportRequest" do
263
+ optional :name, :string, 1
264
+ end
240
265
  end
241
266
  end
242
267
 
@@ -252,6 +277,7 @@ module Google
252
277
  CreateSourceRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.securitycenter.v1.CreateSourceRequest").msgclass
253
278
  DeleteMuteConfigRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.securitycenter.v1.DeleteMuteConfigRequest").msgclass
254
279
  DeleteNotificationConfigRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.securitycenter.v1.DeleteNotificationConfigRequest").msgclass
280
+ GetBigQueryExportRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.securitycenter.v1.GetBigQueryExportRequest").msgclass
255
281
  GetMuteConfigRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.securitycenter.v1.GetMuteConfigRequest").msgclass
256
282
  GetNotificationConfigRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.securitycenter.v1.GetNotificationConfigRequest").msgclass
257
283
  GetOrganizationSettingsRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.securitycenter.v1.GetOrganizationSettingsRequest").msgclass
@@ -286,6 +312,11 @@ module Google
286
312
  UpdateOrganizationSettingsRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.securitycenter.v1.UpdateOrganizationSettingsRequest").msgclass
287
313
  UpdateSourceRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.securitycenter.v1.UpdateSourceRequest").msgclass
288
314
  UpdateSecurityMarksRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.securitycenter.v1.UpdateSecurityMarksRequest").msgclass
315
+ CreateBigQueryExportRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.securitycenter.v1.CreateBigQueryExportRequest").msgclass
316
+ UpdateBigQueryExportRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.securitycenter.v1.UpdateBigQueryExportRequest").msgclass
317
+ ListBigQueryExportsRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.securitycenter.v1.ListBigQueryExportsRequest").msgclass
318
+ ListBigQueryExportsResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.securitycenter.v1.ListBigQueryExportsResponse").msgclass
319
+ DeleteBigQueryExportRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.securitycenter.v1.DeleteBigQueryExportRequest").msgclass
289
320
  end
290
321
  end
291
322
  end
@@ -50,6 +50,8 @@ module Google
50
50
  rpc :DeleteMuteConfig, ::Google::Cloud::SecurityCenter::V1::DeleteMuteConfigRequest, ::Google::Protobuf::Empty
51
51
  # Deletes a notification config.
52
52
  rpc :DeleteNotificationConfig, ::Google::Cloud::SecurityCenter::V1::DeleteNotificationConfigRequest, ::Google::Protobuf::Empty
53
+ # Gets a big query export.
54
+ rpc :GetBigQueryExport, ::Google::Cloud::SecurityCenter::V1::GetBigQueryExportRequest, ::Google::Cloud::SecurityCenter::V1::BigQueryExport
53
55
  # Gets the access control policy on the specified Source.
54
56
  rpc :GetIamPolicy, ::Google::Iam::V1::GetIamPolicyRequest, ::Google::Iam::V1::Policy
55
57
  # Gets a mute config.
@@ -116,6 +118,18 @@ module Google
116
118
  rpc :UpdateSource, ::Google::Cloud::SecurityCenter::V1::UpdateSourceRequest, ::Google::Cloud::SecurityCenter::V1::Source
117
119
  # Updates security marks.
118
120
  rpc :UpdateSecurityMarks, ::Google::Cloud::SecurityCenter::V1::UpdateSecurityMarksRequest, ::Google::Cloud::SecurityCenter::V1::SecurityMarks
121
+ # Creates a big query export.
122
+ rpc :CreateBigQueryExport, ::Google::Cloud::SecurityCenter::V1::CreateBigQueryExportRequest, ::Google::Cloud::SecurityCenter::V1::BigQueryExport
123
+ # Deletes an existing big query export.
124
+ rpc :DeleteBigQueryExport, ::Google::Cloud::SecurityCenter::V1::DeleteBigQueryExportRequest, ::Google::Protobuf::Empty
125
+ # Updates a BigQuery export.
126
+ rpc :UpdateBigQueryExport, ::Google::Cloud::SecurityCenter::V1::UpdateBigQueryExportRequest, ::Google::Cloud::SecurityCenter::V1::BigQueryExport
127
+ # Lists BigQuery exports. Note that when requesting BigQuery exports at a
128
+ # given level all exports under that level are also returned e.g. if
129
+ # requesting BigQuery exports under a folder, then all BigQuery exports
130
+ # immediately under the folder plus the ones created under the projects
131
+ # within the folder are returned.
132
+ rpc :ListBigQueryExports, ::Google::Cloud::SecurityCenter::V1::ListBigQueryExportsRequest, ::Google::Cloud::SecurityCenter::V1::ListBigQueryExportsResponse
119
133
  end
120
134
 
121
135
  Stub = Service.rpc_stub_class
@@ -2,7 +2,6 @@
2
2
  # source: google/cloud/securitycenter/v1/source.proto
3
3
 
4
4
  require 'google/api/resource_pb'
5
- require 'google/api/annotations_pb'
6
5
  require 'google/protobuf'
7
6
 
8
7
  Google::Protobuf::DescriptorPool.generated_pool.build do
@@ -1,7 +1,6 @@
1
1
  # Generated by the protocol buffer compiler. DO NOT EDIT!
2
2
  # source: google/cloud/securitycenter/v1/vulnerability.proto
3
3
 
4
- require 'google/api/annotations_pb'
5
4
  require 'google/protobuf'
6
5
 
7
6
  Google::Protobuf::DescriptorPool.generated_pool.build do
@@ -13,6 +12,7 @@ Google::Protobuf::DescriptorPool.generated_pool.build do
13
12
  optional :id, :string, 1
14
13
  repeated :references, :message, 2, "google.cloud.securitycenter.v1.Reference"
15
14
  optional :cvssv3, :message, 3, "google.cloud.securitycenter.v1.Cvssv3"
15
+ optional :upstream_fix_available, :bool, 4
16
16
  end
17
17
  add_message "google.cloud.securitycenter.v1.Reference" do
18
18
  optional :source, :string, 1
@@ -0,0 +1,92 @@
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
+ # Configures how to deliver Findings to BigQuery Instance.
25
+ # @!attribute [rw] name
26
+ # @return [::String]
27
+ # The relative resource name of this export. See:
28
+ # https://cloud.google.com/apis/design/resource_names#relative_resource_name.
29
+ # Example format:
30
+ # "organizations/\\{organization_id}/bigQueryExports/\\{export_id}" Example
31
+ # format: "folders/\\{folder_id}/bigQueryExports/\\{export_id}" Example format:
32
+ # "projects/\\{project_id}/bigQueryExports/\\{export_id}"
33
+ # This field is provided in responses, and is ignored when provided in create
34
+ # requests.
35
+ # @!attribute [rw] description
36
+ # @return [::String]
37
+ # The description of the export (max of 1024 characters).
38
+ # @!attribute [rw] filter
39
+ # @return [::String]
40
+ # Expression that defines the filter to apply across create/update events
41
+ # of findings. The expression is a list of zero or more restrictions combined
42
+ # via logical operators `AND` and `OR`. Parentheses are supported, and `OR`
43
+ # has higher precedence than `AND`.
44
+ #
45
+ # Restrictions have the form `<field> <operator> <value>` and may have a
46
+ # `-` character in front of them to indicate negation. The fields map to
47
+ # those defined in the corresponding resource.
48
+ #
49
+ # The supported operators are:
50
+ #
51
+ # * `=` for all value types.
52
+ # * `>`, `<`, `>=`, `<=` for integer values.
53
+ # * `:`, meaning substring matching, for strings.
54
+ #
55
+ # The supported value types are:
56
+ #
57
+ # * string literals in quotes.
58
+ # * integer literals without quotes.
59
+ # * boolean literals `true` and `false` without quotes.
60
+ # @!attribute [rw] dataset
61
+ # @return [::String]
62
+ # The dataset to write findings' updates to. Its format is
63
+ # "projects/[project_id]/datasets/[bigquery_dataset_id]".
64
+ # BigQuery Dataset unique ID must contain only letters (a-z, A-Z), numbers
65
+ # (0-9), or underscores (_).
66
+ # @!attribute [r] create_time
67
+ # @return [::Google::Protobuf::Timestamp]
68
+ # Output only. The time at which the big query export was created.
69
+ # This field is set by the server and will be ignored if provided on export
70
+ # on creation.
71
+ # @!attribute [r] update_time
72
+ # @return [::Google::Protobuf::Timestamp]
73
+ # Output only. The most recent time at which the big export was updated.
74
+ # This field is set by the server and will be ignored if provided on export
75
+ # creation or update.
76
+ # @!attribute [r] most_recent_editor
77
+ # @return [::String]
78
+ # Output only. Email address of the user who last edited the big query export.
79
+ # This field is set by the server and will be ignored if provided on export
80
+ # creation or update.
81
+ # @!attribute [r] principal
82
+ # @return [::String]
83
+ # Output only. The service account that needs permission to create table, upload data to
84
+ # the big query dataset.
85
+ class BigQueryExport
86
+ include ::Google::Protobuf::MessageExts
87
+ extend ::Google::Protobuf::MessageExts::ClassMethods
88
+ end
89
+ end
90
+ end
91
+ end
92
+ end
@@ -25,7 +25,8 @@ module Google
25
25
  # @!attribute [rw] name
26
26
  # @return [::String]
27
27
  # External System Name e.g. jira, demisto, etc.
28
- # e.g.: `organizations/1234/sources/5678/findings/123456/externalSystems/jira`
28
+ # e.g.:
29
+ # `organizations/1234/sources/5678/findings/123456/externalSystems/jira`
29
30
  # `folders/1234/sources/5678/findings/123456/externalSystems/jira`
30
31
  # `projects/1234/sources/5678/findings/123456/externalSystems/jira`
31
32
  # @!attribute [rw] assignees