google-cloud-security_center-v2 0.a → 0.2.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 (119) hide show
  1. checksums.yaml +4 -4
  2. data/.yardopts +12 -0
  3. data/AUTHENTICATION.md +122 -0
  4. data/README.md +144 -8
  5. data/lib/google/cloud/security_center/v2/rest.rb +37 -0
  6. data/lib/google/cloud/security_center/v2/security_center/client.rb +4771 -0
  7. data/lib/google/cloud/security_center/v2/security_center/credentials.rb +51 -0
  8. data/lib/google/cloud/security_center/v2/security_center/operations.rb +809 -0
  9. data/lib/google/cloud/security_center/v2/security_center/paths.rb +973 -0
  10. data/lib/google/cloud/security_center/v2/security_center/rest/client.rb +4390 -0
  11. data/lib/google/cloud/security_center/v2/security_center/rest/operations.rb +901 -0
  12. data/lib/google/cloud/security_center/v2/security_center/rest/service_stub.rb +3165 -0
  13. data/lib/google/cloud/security_center/v2/security_center/rest.rb +53 -0
  14. data/lib/google/cloud/security_center/v2/security_center.rb +56 -0
  15. data/lib/google/cloud/security_center/v2/version.rb +7 -2
  16. data/lib/google/cloud/security_center/v2.rb +45 -0
  17. data/lib/google/cloud/securitycenter/v2/access_pb.rb +44 -0
  18. data/lib/google/cloud/securitycenter/v2/application_pb.rb +42 -0
  19. data/lib/google/cloud/securitycenter/v2/attack_exposure_pb.rb +47 -0
  20. data/lib/google/cloud/securitycenter/v2/attack_path_pb.rb +49 -0
  21. data/lib/google/cloud/securitycenter/v2/backup_disaster_recovery_pb.rb +45 -0
  22. data/lib/google/cloud/securitycenter/v2/bigquery_export_pb.rb +47 -0
  23. data/lib/google/cloud/securitycenter/v2/cloud_dlp_data_profile_pb.rb +45 -0
  24. data/lib/google/cloud/securitycenter/v2/cloud_dlp_inspection_pb.rb +44 -0
  25. data/lib/google/cloud/securitycenter/v2/compliance_pb.rb +42 -0
  26. data/lib/google/cloud/securitycenter/v2/connection_pb.rb +43 -0
  27. data/lib/google/cloud/securitycenter/v2/contact_details_pb.rb +43 -0
  28. data/lib/google/cloud/securitycenter/v2/container_pb.rb +47 -0
  29. data/lib/google/cloud/securitycenter/v2/database_pb.rb +42 -0
  30. data/lib/google/cloud/securitycenter/v2/exfiltration_pb.rb +43 -0
  31. data/lib/google/cloud/securitycenter/v2/external_system_pb.rb +47 -0
  32. data/lib/google/cloud/securitycenter/v2/file_pb.rb +43 -0
  33. data/lib/google/cloud/securitycenter/v2/finding_pb.rb +109 -0
  34. data/lib/google/cloud/securitycenter/v2/group_membership_pb.rb +43 -0
  35. data/lib/google/cloud/securitycenter/v2/iam_binding_pb.rb +43 -0
  36. data/lib/google/cloud/securitycenter/v2/indicator_pb.rb +47 -0
  37. data/lib/google/cloud/securitycenter/v2/kernel_rootkit_pb.rb +42 -0
  38. data/lib/google/cloud/securitycenter/v2/kubernetes_pb.rb +57 -0
  39. data/lib/google/cloud/securitycenter/v2/label_pb.rb +42 -0
  40. data/lib/google/cloud/securitycenter/v2/load_balancer_pb.rb +42 -0
  41. data/lib/google/cloud/securitycenter/v2/log_entry_pb.rb +46 -0
  42. data/lib/google/cloud/securitycenter/v2/mitre_attack_pb.rb +44 -0
  43. data/lib/google/cloud/securitycenter/v2/mute_config_pb.rb +48 -0
  44. data/lib/google/cloud/securitycenter/v2/notification_config_pb.rb +46 -0
  45. data/lib/google/cloud/securitycenter/v2/notification_message_pb.rb +47 -0
  46. data/lib/google/cloud/securitycenter/v2/org_policy_pb.rb +44 -0
  47. data/lib/google/cloud/securitycenter/v2/process_pb.rb +46 -0
  48. data/lib/google/cloud/securitycenter/v2/resource_pb.rb +44 -0
  49. data/lib/google/cloud/securitycenter/v2/resource_value_config_pb.rb +49 -0
  50. data/lib/google/cloud/securitycenter/v2/security_marks_pb.rb +44 -0
  51. data/lib/google/cloud/securitycenter/v2/security_posture_pb.rb +43 -0
  52. data/lib/google/cloud/securitycenter/v2/securitycenter_service_pb.rb +128 -0
  53. data/lib/google/cloud/securitycenter/v2/securitycenter_service_services_pb.rb +167 -0
  54. data/lib/google/cloud/securitycenter/v2/simulation_pb.rb +49 -0
  55. data/lib/google/cloud/securitycenter/v2/source_pb.rb +44 -0
  56. data/lib/google/cloud/securitycenter/v2/toxic_combination_pb.rb +42 -0
  57. data/lib/google/cloud/securitycenter/v2/valued_resource_pb.rb +46 -0
  58. data/lib/google/cloud/securitycenter/v2/vulnerability_pb.rb +58 -0
  59. data/lib/google-cloud-security_center-v2.rb +21 -0
  60. data/proto_docs/README.md +4 -0
  61. data/proto_docs/google/api/client.rb +399 -0
  62. data/proto_docs/google/api/field_behavior.rb +85 -0
  63. data/proto_docs/google/api/launch_stage.rb +71 -0
  64. data/proto_docs/google/api/resource.rb +222 -0
  65. data/proto_docs/google/api/routing.rb +459 -0
  66. data/proto_docs/google/cloud/securitycenter/v2/access.rb +120 -0
  67. data/proto_docs/google/cloud/securitycenter/v2/application.rb +40 -0
  68. data/proto_docs/google/cloud/securitycenter/v2/attack_exposure.rb +73 -0
  69. data/proto_docs/google/cloud/securitycenter/v2/attack_path.rb +147 -0
  70. data/proto_docs/google/cloud/securitycenter/v2/backup_disaster_recovery.rb +90 -0
  71. data/proto_docs/google/cloud/securitycenter/v2/bigquery_export.rb +96 -0
  72. data/proto_docs/google/cloud/securitycenter/v2/cloud_dlp_data_profile.rb +52 -0
  73. data/proto_docs/google/cloud/securitycenter/v2/cloud_dlp_inspection.rb +50 -0
  74. data/proto_docs/google/cloud/securitycenter/v2/compliance.rb +43 -0
  75. data/proto_docs/google/cloud/securitycenter/v2/connection.rb +70 -0
  76. data/proto_docs/google/cloud/securitycenter/v2/contact_details.rb +44 -0
  77. data/proto_docs/google/cloud/securitycenter/v2/container.rb +49 -0
  78. data/proto_docs/google/cloud/securitycenter/v2/database.rb +67 -0
  79. data/proto_docs/google/cloud/securitycenter/v2/exfiltration.rb +64 -0
  80. data/proto_docs/google/cloud/securitycenter/v2/external_system.rb +106 -0
  81. data/proto_docs/google/cloud/securitycenter/v2/file.rb +72 -0
  82. data/proto_docs/google/cloud/securitycenter/v2/finding.rb +427 -0
  83. data/proto_docs/google/cloud/securitycenter/v2/group_membership.rb +48 -0
  84. data/proto_docs/google/cloud/securitycenter/v2/iam_binding.rb +56 -0
  85. data/proto_docs/google/cloud/securitycenter/v2/indicator.rb +112 -0
  86. data/proto_docs/google/cloud/securitycenter/v2/kernel_rootkit.rb +66 -0
  87. data/proto_docs/google/cloud/securitycenter/v2/kubernetes.rb +241 -0
  88. data/proto_docs/google/cloud/securitycenter/v2/label.rb +41 -0
  89. data/proto_docs/google/cloud/securitycenter/v2/load_balancer.rb +36 -0
  90. data/proto_docs/google/cloud/securitycenter/v2/log_entry.rb +58 -0
  91. data/proto_docs/google/cloud/securitycenter/v2/mitre_attack.rb +285 -0
  92. data/proto_docs/google/cloud/securitycenter/v2/mute_config.rb +100 -0
  93. data/proto_docs/google/cloud/securitycenter/v2/notification_config.rb +90 -0
  94. data/proto_docs/google/cloud/securitycenter/v2/notification_message.rb +42 -0
  95. data/proto_docs/google/cloud/securitycenter/v2/org_policy.rb +37 -0
  96. data/proto_docs/google/cloud/securitycenter/v2/process.rb +79 -0
  97. data/proto_docs/google/cloud/securitycenter/v2/resource.rb +42 -0
  98. data/proto_docs/google/cloud/securitycenter/v2/resource_value_config.rb +122 -0
  99. data/proto_docs/google/cloud/securitycenter/v2/security_marks.rb +84 -0
  100. data/proto_docs/google/cloud/securitycenter/v2/security_posture.rb +83 -0
  101. data/proto_docs/google/cloud/securitycenter/v2/securitycenter_service.rb +1136 -0
  102. data/proto_docs/google/cloud/securitycenter/v2/simulation.rb +43 -0
  103. data/proto_docs/google/cloud/securitycenter/v2/source.rb +65 -0
  104. data/proto_docs/google/cloud/securitycenter/v2/toxic_combination.rb +46 -0
  105. data/proto_docs/google/cloud/securitycenter/v2/valued_resource.rb +86 -0
  106. data/proto_docs/google/cloud/securitycenter/v2/vulnerability.rb +333 -0
  107. data/proto_docs/google/iam/v1/iam_policy.rb +87 -0
  108. data/proto_docs/google/iam/v1/options.rb +50 -0
  109. data/proto_docs/google/iam/v1/policy.rb +426 -0
  110. data/proto_docs/google/longrunning/operations.rb +164 -0
  111. data/proto_docs/google/protobuf/any.rb +145 -0
  112. data/proto_docs/google/protobuf/duration.rb +98 -0
  113. data/proto_docs/google/protobuf/empty.rb +34 -0
  114. data/proto_docs/google/protobuf/field_mask.rb +229 -0
  115. data/proto_docs/google/protobuf/struct.rb +96 -0
  116. data/proto_docs/google/protobuf/timestamp.rb +127 -0
  117. data/proto_docs/google/rpc/status.rb +48 -0
  118. data/proto_docs/google/type/expr.rb +75 -0
  119. metadata +173 -10
@@ -0,0 +1,285 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2024 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 V2
24
+ # MITRE ATT&CK tactics and techniques related to this finding.
25
+ # See: https://attack.mitre.org
26
+ # @!attribute [rw] primary_tactic
27
+ # @return [::Google::Cloud::SecurityCenter::V2::MitreAttack::Tactic]
28
+ # The MITRE ATT&CK tactic most closely represented by this finding, if any.
29
+ # @!attribute [rw] primary_techniques
30
+ # @return [::Array<::Google::Cloud::SecurityCenter::V2::MitreAttack::Technique>]
31
+ # The MITRE ATT&CK technique most closely represented by this finding, if
32
+ # any. primary_techniques is a repeated field because there are multiple
33
+ # levels of MITRE ATT&CK techniques. If the technique most closely
34
+ # represented by this finding is a sub-technique (e.g. `SCANNING_IP_BLOCKS`),
35
+ # both the sub-technique and its parent technique(s) will be listed (e.g.
36
+ # `SCANNING_IP_BLOCKS`, `ACTIVE_SCANNING`).
37
+ # @!attribute [rw] additional_tactics
38
+ # @return [::Array<::Google::Cloud::SecurityCenter::V2::MitreAttack::Tactic>]
39
+ # Additional MITRE ATT&CK tactics related to this finding, if any.
40
+ # @!attribute [rw] additional_techniques
41
+ # @return [::Array<::Google::Cloud::SecurityCenter::V2::MitreAttack::Technique>]
42
+ # Additional MITRE ATT&CK techniques related to this finding, if any, along
43
+ # with any of their respective parent techniques.
44
+ # @!attribute [rw] version
45
+ # @return [::String]
46
+ # The MITRE ATT&CK version referenced by the above fields. E.g. "8".
47
+ class MitreAttack
48
+ include ::Google::Protobuf::MessageExts
49
+ extend ::Google::Protobuf::MessageExts::ClassMethods
50
+
51
+ # MITRE ATT&CK tactics that can be referenced by SCC findings.
52
+ # See: https://attack.mitre.org/tactics/enterprise/
53
+ module Tactic
54
+ # Unspecified value.
55
+ TACTIC_UNSPECIFIED = 0
56
+
57
+ # TA0043
58
+ RECONNAISSANCE = 1
59
+
60
+ # TA0042
61
+ RESOURCE_DEVELOPMENT = 2
62
+
63
+ # TA0001
64
+ INITIAL_ACCESS = 5
65
+
66
+ # TA0002
67
+ EXECUTION = 3
68
+
69
+ # TA0003
70
+ PERSISTENCE = 6
71
+
72
+ # TA0004
73
+ PRIVILEGE_ESCALATION = 8
74
+
75
+ # TA0005
76
+ DEFENSE_EVASION = 7
77
+
78
+ # TA0006
79
+ CREDENTIAL_ACCESS = 9
80
+
81
+ # TA0007
82
+ DISCOVERY = 10
83
+
84
+ # TA0008
85
+ LATERAL_MOVEMENT = 11
86
+
87
+ # TA0009
88
+ COLLECTION = 12
89
+
90
+ # TA0011
91
+ COMMAND_AND_CONTROL = 4
92
+
93
+ # TA0010
94
+ EXFILTRATION = 13
95
+
96
+ # TA0040
97
+ IMPACT = 14
98
+ end
99
+
100
+ # MITRE ATT&CK techniques that can be referenced by SCC findings.
101
+ # See: https://attack.mitre.org/techniques/enterprise/
102
+ # Next ID: 59
103
+ module Technique
104
+ # Unspecified value.
105
+ TECHNIQUE_UNSPECIFIED = 0
106
+
107
+ # T1036
108
+ MASQUERADING = 49
109
+
110
+ # T1036.005
111
+ MATCH_LEGITIMATE_NAME_OR_LOCATION = 50
112
+
113
+ # T1037
114
+ BOOT_OR_LOGON_INITIALIZATION_SCRIPTS = 37
115
+
116
+ # T1037.005
117
+ STARTUP_ITEMS = 38
118
+
119
+ # T1046
120
+ NETWORK_SERVICE_DISCOVERY = 32
121
+
122
+ # T1057
123
+ PROCESS_DISCOVERY = 56
124
+
125
+ # T1059
126
+ COMMAND_AND_SCRIPTING_INTERPRETER = 6
127
+
128
+ # T1059.004
129
+ UNIX_SHELL = 7
130
+
131
+ # T1069
132
+ PERMISSION_GROUPS_DISCOVERY = 18
133
+
134
+ # T1069.003
135
+ CLOUD_GROUPS = 19
136
+
137
+ # T1071
138
+ APPLICATION_LAYER_PROTOCOL = 45
139
+
140
+ # T1071.004
141
+ DNS = 46
142
+
143
+ # T1072
144
+ SOFTWARE_DEPLOYMENT_TOOLS = 47
145
+
146
+ # T1078
147
+ VALID_ACCOUNTS = 14
148
+
149
+ # T1078.001
150
+ DEFAULT_ACCOUNTS = 35
151
+
152
+ # T1078.003
153
+ LOCAL_ACCOUNTS = 15
154
+
155
+ # T1078.004
156
+ CLOUD_ACCOUNTS = 16
157
+
158
+ # T1090
159
+ PROXY = 9
160
+
161
+ # T1090.002
162
+ EXTERNAL_PROXY = 10
163
+
164
+ # T1090.003
165
+ MULTI_HOP_PROXY = 11
166
+
167
+ # T1098
168
+ ACCOUNT_MANIPULATION = 22
169
+
170
+ # T1098.001
171
+ ADDITIONAL_CLOUD_CREDENTIALS = 40
172
+
173
+ # T1098.004
174
+ SSH_AUTHORIZED_KEYS = 23
175
+
176
+ # T1098.006
177
+ ADDITIONAL_CONTAINER_CLUSTER_ROLES = 58
178
+
179
+ # T1105
180
+ INGRESS_TOOL_TRANSFER = 3
181
+
182
+ # T1106
183
+ NATIVE_API = 4
184
+
185
+ # T1110
186
+ BRUTE_FORCE = 44
187
+
188
+ # T1129
189
+ SHARED_MODULES = 5
190
+
191
+ # T1134
192
+ ACCESS_TOKEN_MANIPULATION = 33
193
+
194
+ # T1134.001
195
+ TOKEN_IMPERSONATION_OR_THEFT = 39
196
+
197
+ # T1190
198
+ EXPLOIT_PUBLIC_FACING_APPLICATION = 27
199
+
200
+ # T1484
201
+ DOMAIN_POLICY_MODIFICATION = 30
202
+
203
+ # T1485
204
+ DATA_DESTRUCTION = 29
205
+
206
+ # T1489
207
+ SERVICE_STOP = 52
208
+
209
+ # T1490
210
+ INHIBIT_SYSTEM_RECOVERY = 36
211
+
212
+ # T1496
213
+ RESOURCE_HIJACKING = 8
214
+
215
+ # T1498
216
+ NETWORK_DENIAL_OF_SERVICE = 17
217
+
218
+ # T1526
219
+ CLOUD_SERVICE_DISCOVERY = 48
220
+
221
+ # T1528
222
+ STEAL_APPLICATION_ACCESS_TOKEN = 42
223
+
224
+ # T1531
225
+ ACCOUNT_ACCESS_REMOVAL = 51
226
+
227
+ # T1539
228
+ STEAL_WEB_SESSION_COOKIE = 25
229
+
230
+ # T1543
231
+ CREATE_OR_MODIFY_SYSTEM_PROCESS = 24
232
+
233
+ # T1548
234
+ ABUSE_ELEVATION_CONTROL_MECHANISM = 34
235
+
236
+ # T1552
237
+ UNSECURED_CREDENTIALS = 13
238
+
239
+ # T1556
240
+ MODIFY_AUTHENTICATION_PROCESS = 28
241
+
242
+ # T1562
243
+ IMPAIR_DEFENSES = 31
244
+
245
+ # T1562.001
246
+ DISABLE_OR_MODIFY_TOOLS = 55
247
+
248
+ # T1567
249
+ EXFILTRATION_OVER_WEB_SERVICE = 20
250
+
251
+ # T1567.002
252
+ EXFILTRATION_TO_CLOUD_STORAGE = 21
253
+
254
+ # T1568
255
+ DYNAMIC_RESOLUTION = 12
256
+
257
+ # T1570
258
+ LATERAL_TOOL_TRANSFER = 41
259
+
260
+ # T1578
261
+ MODIFY_CLOUD_COMPUTE_INFRASTRUCTURE = 26
262
+
263
+ # T1578.001
264
+ CREATE_SNAPSHOT = 54
265
+
266
+ # T1580
267
+ CLOUD_INFRASTRUCTURE_DISCOVERY = 53
268
+
269
+ # T1588
270
+ OBTAIN_CAPABILITIES = 43
271
+
272
+ # T1595
273
+ ACTIVE_SCANNING = 1
274
+
275
+ # T1595.001
276
+ SCANNING_IP_BLOCKS = 2
277
+
278
+ # T1613
279
+ CONTAINER_AND_RESOURCE_DISCOVERY = 57
280
+ end
281
+ end
282
+ end
283
+ end
284
+ end
285
+ end
@@ -0,0 +1,100 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2024 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 V2
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. The following
29
+ # list shows some examples of the format:
30
+ #
31
+ # + `organizations/{organization}/muteConfigs/{mute_config}`
32
+ # +
33
+ # `organizations/{organization}locations/{location}//muteConfigs/{mute_config}`
34
+ # + `folders/{folder}/muteConfigs/{mute_config}`
35
+ # + `folders/{folder}/locations/{location}/muteConfigs/{mute_config}`
36
+ # + `projects/{project}/muteConfigs/{mute_config}`
37
+ # + `projects/{project}/locations/{location}/muteConfigs/{mute_config}`
38
+ # @!attribute [rw] description
39
+ # @return [::String]
40
+ # A description of the mute config.
41
+ # @!attribute [rw] filter
42
+ # @return [::String]
43
+ # Required. An expression that defines the filter to apply across
44
+ # create/update events of findings. While creating a filter string, be
45
+ # mindful of the scope in which the mute configuration is being created.
46
+ # E.g., If a filter contains project = X but is created under the project = Y
47
+ # scope, it might not match any findings.
48
+ #
49
+ # The following field and operator combinations are supported:
50
+ #
51
+ # * severity: `=`, `:`
52
+ # * category: `=`, `:`
53
+ # * resource.name: `=`, `:`
54
+ # * resource.project_name: `=`, `:`
55
+ # * resource.project_display_name: `=`, `:`
56
+ # * resource.folders.resource_folder: `=`, `:`
57
+ # * resource.parent_name: `=`, `:`
58
+ # * resource.parent_display_name: `=`, `:`
59
+ # * resource.type: `=`, `:`
60
+ # * finding_class: `=`, `:`
61
+ # * indicator.ip_addresses: `=`, `:`
62
+ # * indicator.domains: `=`, `:`
63
+ # @!attribute [r] create_time
64
+ # @return [::Google::Protobuf::Timestamp]
65
+ # Output only. The time at which the mute config was created.
66
+ # This field is set by the server and will be ignored if provided on config
67
+ # creation.
68
+ # @!attribute [r] update_time
69
+ # @return [::Google::Protobuf::Timestamp]
70
+ # Output only. The most recent time at which the mute config was updated.
71
+ # This field is set by the server and will be ignored if provided on config
72
+ # creation or update.
73
+ # @!attribute [r] most_recent_editor
74
+ # @return [::String]
75
+ # Output only. Email address of the user who last edited the mute config.
76
+ # This field is set by the server and will be ignored if provided on config
77
+ # creation or update.
78
+ # @!attribute [rw] type
79
+ # @return [::Google::Cloud::SecurityCenter::V2::MuteConfig::MuteConfigType]
80
+ # Required. The type of the mute config, which determines what type of mute
81
+ # state the config affects. Immutable after creation.
82
+ class MuteConfig
83
+ include ::Google::Protobuf::MessageExts
84
+ extend ::Google::Protobuf::MessageExts::ClassMethods
85
+
86
+ # The type of MuteConfig.
87
+ module MuteConfigType
88
+ # Unused.
89
+ MUTE_CONFIG_TYPE_UNSPECIFIED = 0
90
+
91
+ # A static mute config, which sets the static mute state of future matching
92
+ # findings to muted. Once the static mute state has been set, finding or
93
+ # config modifications will not affect the state.
94
+ STATIC = 1
95
+ end
96
+ end
97
+ end
98
+ end
99
+ end
100
+ end
@@ -0,0 +1,90 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2024 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 V2
24
+ # Cloud Security Command Center (Cloud SCC) notification configs.
25
+ #
26
+ # A notification config is a Cloud SCC resource that contains the configuration
27
+ # to send notifications for create/update events of findings, assets and etc.
28
+ # @!attribute [rw] name
29
+ # @return [::String]
30
+ # The relative resource name of this notification config. See:
31
+ # https://cloud.google.com/apis/design/resource_names#relative_resource_name
32
+ # The following list shows some examples:
33
+ # +
34
+ # `organizations/{organization_id}/locations/{location_id}/notificationConfigs/notify_public_bucket`
35
+ # +
36
+ # `folders/{folder_id}/locations/{location_id}/notificationConfigs/notify_public_bucket`
37
+ # +
38
+ # `projects/{project_id}/locations/{location_id}/notificationConfigs/notify_public_bucket`
39
+ # @!attribute [rw] description
40
+ # @return [::String]
41
+ # The description of the notification config (max of 1024 characters).
42
+ # @!attribute [rw] pubsub_topic
43
+ # @return [::String]
44
+ # The Pub/Sub topic to send notifications to. Its format is
45
+ # "projects/[project_id]/topics/[topic]".
46
+ # @!attribute [r] service_account
47
+ # @return [::String]
48
+ # Output only. The service account that needs "pubsub.topics.publish"
49
+ # permission to publish to the Pub/Sub topic.
50
+ # @!attribute [rw] streaming_config
51
+ # @return [::Google::Cloud::SecurityCenter::V2::NotificationConfig::StreamingConfig]
52
+ # The config for triggering streaming-based notifications.
53
+ class NotificationConfig
54
+ include ::Google::Protobuf::MessageExts
55
+ extend ::Google::Protobuf::MessageExts::ClassMethods
56
+
57
+ # The config for streaming-based notifications, which send each event as soon
58
+ # as it is detected.
59
+ # @!attribute [rw] filter
60
+ # @return [::String]
61
+ # Expression that defines the filter to apply across create/update events
62
+ # of assets or findings as specified by the event type. The expression is a
63
+ # list of zero or more restrictions combined via logical operators `AND`
64
+ # and `OR`. Parentheses are supported, and `OR` has higher precedence than
65
+ # `AND`.
66
+ #
67
+ # Restrictions have the form `<field> <operator> <value>` and may have a
68
+ # `-` character in front of them to indicate negation. The fields map to
69
+ # those defined in the corresponding resource.
70
+ #
71
+ # The supported operators are:
72
+ #
73
+ # * `=` for all value types.
74
+ # * `>`, `<`, `>=`, `<=` for integer values.
75
+ # * `:`, meaning substring matching, for strings.
76
+ #
77
+ # The supported value types are:
78
+ #
79
+ # * string literals in quotes.
80
+ # * integer literals without quotes.
81
+ # * boolean literals `true` and `false` without quotes.
82
+ class StreamingConfig
83
+ include ::Google::Protobuf::MessageExts
84
+ extend ::Google::Protobuf::MessageExts::ClassMethods
85
+ end
86
+ end
87
+ end
88
+ end
89
+ end
90
+ end
@@ -0,0 +1,42 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2024 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 V2
24
+ # Cloud SCC's Notification
25
+ # @!attribute [rw] notification_config_name
26
+ # @return [::String]
27
+ # Name of the notification config that generated current notification.
28
+ # @!attribute [rw] finding
29
+ # @return [::Google::Cloud::SecurityCenter::V2::Finding]
30
+ # If it's a Finding based notification config, this field will be
31
+ # populated.
32
+ # @!attribute [rw] resource
33
+ # @return [::Google::Cloud::SecurityCenter::V2::Resource]
34
+ # The Cloud resource tied to this notification's Finding.
35
+ class NotificationMessage
36
+ include ::Google::Protobuf::MessageExts
37
+ extend ::Google::Protobuf::MessageExts::ClassMethods
38
+ end
39
+ end
40
+ end
41
+ end
42
+ end
@@ -0,0 +1,37 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2024 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 V2
24
+ # Contains information about the org policies associated with the finding.
25
+ # @!attribute [rw] name
26
+ # @return [::String]
27
+ # The resource name of the org policy.
28
+ # Example:
29
+ # "organizations/\\{organization_id}/policies/\\{constraint_name}"
30
+ class OrgPolicy
31
+ include ::Google::Protobuf::MessageExts
32
+ extend ::Google::Protobuf::MessageExts::ClassMethods
33
+ end
34
+ end
35
+ end
36
+ end
37
+ end
@@ -0,0 +1,79 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2024 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 V2
24
+ # Represents an operating system process.
25
+ # @!attribute [rw] name
26
+ # @return [::String]
27
+ # The process name, as displayed in utilities like `top` and `ps`. This name
28
+ # can be accessed through `/proc/[pid]/comm` and changed with
29
+ # `prctl(PR_SET_NAME)`.
30
+ # @!attribute [rw] binary
31
+ # @return [::Google::Cloud::SecurityCenter::V2::File]
32
+ # File information for the process executable.
33
+ # @!attribute [rw] libraries
34
+ # @return [::Array<::Google::Cloud::SecurityCenter::V2::File>]
35
+ # File information for libraries loaded by the process.
36
+ # @!attribute [rw] script
37
+ # @return [::Google::Cloud::SecurityCenter::V2::File]
38
+ # When the process represents the invocation of a script, `binary` provides
39
+ # information about the interpreter, while `script` provides information
40
+ # about the script file provided to the interpreter.
41
+ # @!attribute [rw] args
42
+ # @return [::Array<::String>]
43
+ # Process arguments as JSON encoded strings.
44
+ # @!attribute [rw] arguments_truncated
45
+ # @return [::Boolean]
46
+ # True if `args` is incomplete.
47
+ # @!attribute [rw] env_variables
48
+ # @return [::Array<::Google::Cloud::SecurityCenter::V2::EnvironmentVariable>]
49
+ # Process environment variables.
50
+ # @!attribute [rw] env_variables_truncated
51
+ # @return [::Boolean]
52
+ # True if `env_variables` is incomplete.
53
+ # @!attribute [rw] pid
54
+ # @return [::Integer]
55
+ # The process ID.
56
+ # @!attribute [rw] parent_pid
57
+ # @return [::Integer]
58
+ # The parent process ID.
59
+ class Process
60
+ include ::Google::Protobuf::MessageExts
61
+ extend ::Google::Protobuf::MessageExts::ClassMethods
62
+ end
63
+
64
+ # A name-value pair representing an environment variable used in an operating
65
+ # system process.
66
+ # @!attribute [rw] name
67
+ # @return [::String]
68
+ # Environment variable name as a JSON encoded string.
69
+ # @!attribute [rw] val
70
+ # @return [::String]
71
+ # Environment variable value as a JSON encoded string.
72
+ class EnvironmentVariable
73
+ include ::Google::Protobuf::MessageExts
74
+ extend ::Google::Protobuf::MessageExts::ClassMethods
75
+ end
76
+ end
77
+ end
78
+ end
79
+ end
@@ -0,0 +1,42 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2024 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 V2
24
+ # Information related to the Google Cloud resource.
25
+ # @!attribute [rw] name
26
+ # @return [::String]
27
+ # The full resource name of the resource. See:
28
+ # https://cloud.google.com/apis/design/resource_names#full_resource_name
29
+ # @!attribute [rw] display_name
30
+ # @return [::String]
31
+ # The human readable name of the resource.
32
+ # @!attribute [rw] type
33
+ # @return [::String]
34
+ # The full resource type of the resource.
35
+ class Resource
36
+ include ::Google::Protobuf::MessageExts
37
+ extend ::Google::Protobuf::MessageExts::ClassMethods
38
+ end
39
+ end
40
+ end
41
+ end
42
+ end