google-cloud-security_center-v2 0.a → 0.2.0

Sign up to get free protection for your applications and to get access to all the features.
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