google-cloud-security_center-v1 0.15.0 → 0.18.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 (41) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +10 -5
  3. data/lib/google/cloud/security_center/v1/security_center/operations.rb +3 -0
  4. data/lib/google/cloud/security_center/v1/version.rb +1 -1
  5. data/lib/google/cloud/securitycenter/v1/asset_pb.rb +2 -1
  6. data/lib/google/cloud/securitycenter/v1/bigquery_export_pb.rb +2 -1
  7. data/lib/google/cloud/securitycenter/v1/compliance_pb.rb +24 -0
  8. data/lib/google/cloud/securitycenter/v1/contact_details_pb.rb +26 -0
  9. data/lib/google/cloud/securitycenter/v1/container_pb.rb +27 -0
  10. data/lib/google/cloud/securitycenter/v1/exfiltration_pb.rb +28 -0
  11. data/lib/google/cloud/securitycenter/v1/external_system_pb.rb +2 -1
  12. data/lib/google/cloud/securitycenter/v1/file_pb.rb +27 -0
  13. data/lib/google/cloud/securitycenter/v1/finding_pb.rb +14 -1
  14. data/lib/google/cloud/securitycenter/v1/indicator_pb.rb +22 -0
  15. data/lib/google/cloud/securitycenter/v1/kubernetes_pb.rb +88 -0
  16. data/lib/google/cloud/securitycenter/v1/label_pb.rb +23 -0
  17. data/lib/google/cloud/securitycenter/v1/mitre_attack_pb.rb +2 -0
  18. data/lib/google/cloud/securitycenter/v1/mute_config_pb.rb +2 -1
  19. data/lib/google/cloud/securitycenter/v1/notification_config_pb.rb +2 -1
  20. data/lib/google/cloud/securitycenter/v1/notification_message_pb.rb +2 -1
  21. data/lib/google/cloud/securitycenter/v1/organization_settings_pb.rb +2 -1
  22. data/lib/google/cloud/securitycenter/v1/process_pb.rb +38 -0
  23. data/lib/google/cloud/securitycenter/v1/resource_pb.rb +2 -1
  24. data/lib/google/cloud/securitycenter/v1/run_asset_discovery_response_pb.rb +2 -1
  25. data/lib/google/cloud/securitycenter/v1/security_marks_pb.rb +2 -1
  26. data/lib/google/cloud/securitycenter/v1/securitycenter_service_pb.rb +2 -1
  27. data/lib/google/cloud/securitycenter/v1/source_pb.rb +2 -1
  28. data/proto_docs/google/cloud/securitycenter/v1/compliance.rb +43 -0
  29. data/proto_docs/google/cloud/securitycenter/v1/contact_details.rb +44 -0
  30. data/proto_docs/google/cloud/securitycenter/v1/container.rb +47 -0
  31. data/proto_docs/google/cloud/securitycenter/v1/exfiltration.rb +59 -0
  32. data/proto_docs/google/cloud/securitycenter/v1/file.rb +56 -0
  33. data/proto_docs/google/cloud/securitycenter/v1/finding.rb +45 -0
  34. data/proto_docs/google/cloud/securitycenter/v1/indicator.rb +52 -0
  35. data/proto_docs/google/cloud/securitycenter/v1/kubernetes.rb +203 -0
  36. data/proto_docs/google/cloud/securitycenter/v1/label.rb +39 -0
  37. data/proto_docs/google/cloud/securitycenter/v1/mitre_attack.rb +6 -1
  38. data/proto_docs/google/cloud/securitycenter/v1/process.rb +79 -0
  39. data/proto_docs/google/protobuf/any.rb +3 -3
  40. data/proto_docs/google/protobuf/struct.rb +2 -2
  41. metadata +28 -12
@@ -0,0 +1,44 @@
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
+ # The details pertaining to specific contacts
25
+ # @!attribute [rw] contacts
26
+ # @return [::Array<::Google::Cloud::SecurityCenter::V1::Contact>]
27
+ # A list of contacts
28
+ class ContactDetails
29
+ include ::Google::Protobuf::MessageExts
30
+ extend ::Google::Protobuf::MessageExts::ClassMethods
31
+ end
32
+
33
+ # Representa a single contact's email address
34
+ # @!attribute [rw] email
35
+ # @return [::String]
36
+ # An email address e.g. "person123@company.com"
37
+ class Contact
38
+ include ::Google::Protobuf::MessageExts
39
+ extend ::Google::Protobuf::MessageExts::ClassMethods
40
+ end
41
+ end
42
+ end
43
+ end
44
+ end
@@ -0,0 +1,47 @@
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
+ # Container associated with the finding.
25
+ # @!attribute [rw] name
26
+ # @return [::String]
27
+ # Container name.
28
+ # @!attribute [rw] uri
29
+ # @return [::String]
30
+ # Container image URI provided when configuring a pod/container.
31
+ # May identify a container image version using mutable tags.
32
+ # @!attribute [rw] image_id
33
+ # @return [::String]
34
+ # Optional container image id, when provided by the container runtime.
35
+ # Uniquely identifies the container image launched using a container image
36
+ # digest.
37
+ # @!attribute [rw] labels
38
+ # @return [::Array<::Google::Cloud::SecurityCenter::V1::Label>]
39
+ # Container labels, as provided by the container runtime.
40
+ class Container
41
+ include ::Google::Protobuf::MessageExts
42
+ extend ::Google::Protobuf::MessageExts::ClassMethods
43
+ end
44
+ end
45
+ end
46
+ end
47
+ end
@@ -0,0 +1,59 @@
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
+ # Exfiltration represents a data exfiltration attempt of one or more
25
+ # sources to one or more targets. Sources represent the source
26
+ # of data that is exfiltrated, and Targets represents the destination the
27
+ # data was copied to.
28
+ # @!attribute [rw] sources
29
+ # @return [::Array<::Google::Cloud::SecurityCenter::V1::ExfilResource>]
30
+ # If there are multiple sources, then the data is considered "joined" between
31
+ # them. For instance, BigQuery can join multiple tables, and each
32
+ # table would be considered a source.
33
+ # @!attribute [rw] targets
34
+ # @return [::Array<::Google::Cloud::SecurityCenter::V1::ExfilResource>]
35
+ # If there are multiple targets, each target would get a complete copy of the
36
+ # "joined" source data.
37
+ class Exfiltration
38
+ include ::Google::Protobuf::MessageExts
39
+ extend ::Google::Protobuf::MessageExts::ClassMethods
40
+ end
41
+
42
+ # Resource that has been exfiltrated or exfiltrated_to.
43
+ # @!attribute [rw] name
44
+ # @return [::String]
45
+ # Resource's URI (https://google.aip.dev/122#full-resource-names)
46
+ # @!attribute [rw] components
47
+ # @return [::Array<::String>]
48
+ # Subcomponents of the asset that is exfiltrated - these could be
49
+ # URIs used during exfiltration, table names, databases, filenames, etc.
50
+ # For example, multiple tables may be exfiltrated from the same CloudSQL
51
+ # instance, or multiple files from the same Cloud Storage bucket.
52
+ class ExfilResource
53
+ include ::Google::Protobuf::MessageExts
54
+ extend ::Google::Protobuf::MessageExts::ClassMethods
55
+ end
56
+ end
57
+ end
58
+ end
59
+ end
@@ -0,0 +1,56 @@
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
+ # File information about the related binary/library used by an executable, or
25
+ # the script used by a script interpreter
26
+ # @!attribute [rw] path
27
+ # @return [::String]
28
+ # Absolute path of the file as a JSON encoded string.
29
+ # @!attribute [rw] size
30
+ # @return [::Integer]
31
+ # Size of the file in bytes.
32
+ # @!attribute [rw] sha256
33
+ # @return [::String]
34
+ # SHA256 hash of the first hashed_size bytes of the file encoded as a
35
+ # hex string. If hashed_size == size, sha256 represents the SHA256 hash
36
+ # of the entire file.
37
+ # @!attribute [rw] hashed_size
38
+ # @return [::Integer]
39
+ # The length in bytes of the file prefix that was hashed. If
40
+ # hashed_size == size, any hashes reported represent the entire
41
+ # file.
42
+ # @!attribute [rw] partially_hashed
43
+ # @return [::Boolean]
44
+ # True when the hash covers only a prefix of the file.
45
+ # @!attribute [rw] contents
46
+ # @return [::String]
47
+ # Prefix of the file contents as a JSON encoded string.
48
+ # (Currently only populated for Malicious Script Executed findings.)
49
+ class File
50
+ include ::Google::Protobuf::MessageExts
51
+ extend ::Google::Protobuf::MessageExts::ClassMethods
52
+ end
53
+ end
54
+ end
55
+ end
56
+ end
@@ -141,15 +141,51 @@ module Google
141
141
  # mute operation e.g. mute config that muted the finding, user who muted the
142
142
  # finding, etc. Unlike other attributes of a finding, a finding provider
143
143
  # shouldn't set the value of mute.
144
+ # @!attribute [rw] processes
145
+ # @return [::Array<::Google::Cloud::SecurityCenter::V1::Process>]
146
+ # Represents operating system processes associated with the Finding.
147
+ # @!attribute [r] contacts
148
+ # @return [::Google::Protobuf::Map{::String => ::Google::Cloud::SecurityCenter::V1::ContactDetails}]
149
+ # Output only. Map containing the point of contacts for the given finding. The key
150
+ # represents the type of contact, while the value contains a list of all the
151
+ # contacts that pertain. Please refer to:
152
+ # https://cloud.google.com/resource-manager/docs/managing-notification-contacts#notification-categories
153
+ #
154
+ # {
155
+ # "security": {
156
+ # "contacts": [
157
+ # {
158
+ # "email": "person1@company.com"
159
+ # },
160
+ # {
161
+ # "email": "person2@company.com"
162
+ # }
163
+ # ]
164
+ # }
165
+ # }
166
+ # @!attribute [rw] compliances
167
+ # @return [::Array<::Google::Cloud::SecurityCenter::V1::Compliance>]
168
+ # Contains compliance information for security standards associated to the
169
+ # finding.
144
170
  # @!attribute [rw] description
145
171
  # @return [::String]
146
172
  # Contains more detail about the finding.
173
+ # @!attribute [rw] exfiltration
174
+ # @return [::Google::Cloud::SecurityCenter::V1::Exfiltration]
175
+ # Represents exfiltration associated with the Finding.
147
176
  # @!attribute [rw] iam_bindings
148
177
  # @return [::Array<::Google::Cloud::SecurityCenter::V1::IamBinding>]
149
178
  # Represents IAM bindings associated with the Finding.
150
179
  # @!attribute [rw] next_steps
151
180
  # @return [::String]
152
181
  # Next steps associate to the finding.
182
+ # @!attribute [rw] containers
183
+ # @return [::Array<::Google::Cloud::SecurityCenter::V1::Container>]
184
+ # Containers associated with the finding. containers provides information
185
+ # for both Kubernetes and non-Kubernetes containers.
186
+ # @!attribute [rw] kubernetes
187
+ # @return [::Google::Cloud::SecurityCenter::V1::Kubernetes]
188
+ # Kubernetes resources associated with the finding.
153
189
  class Finding
154
190
  include ::Google::Protobuf::MessageExts
155
191
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -172,6 +208,15 @@ module Google
172
208
  extend ::Google::Protobuf::MessageExts::ClassMethods
173
209
  end
174
210
 
211
+ # @!attribute [rw] key
212
+ # @return [::String]
213
+ # @!attribute [rw] value
214
+ # @return [::Google::Cloud::SecurityCenter::V1::ContactDetails]
215
+ class ContactsEntry
216
+ include ::Google::Protobuf::MessageExts
217
+ extend ::Google::Protobuf::MessageExts::ClassMethods
218
+ end
219
+
175
220
  # The state of the finding.
176
221
  module State
177
222
  # Unspecified state.
@@ -31,9 +31,61 @@ module Google
31
31
  # @!attribute [rw] domains
32
32
  # @return [::Array<::String>]
33
33
  # List of domains associated to the Finding.
34
+ # @!attribute [rw] signatures
35
+ # @return [::Array<::Google::Cloud::SecurityCenter::V1::Indicator::ProcessSignature>]
36
+ # The list of matched signatures indicating that the given
37
+ # process is present in the environment.
34
38
  class Indicator
35
39
  include ::Google::Protobuf::MessageExts
36
40
  extend ::Google::Protobuf::MessageExts::ClassMethods
41
+
42
+ # Indicates what signature matched this process.
43
+ # @!attribute [rw] memory_hash_signature
44
+ # @return [::Google::Cloud::SecurityCenter::V1::Indicator::ProcessSignature::MemoryHashSignature]
45
+ # Signature indicating that a binary family was matched.
46
+ # @!attribute [rw] yara_rule_signature
47
+ # @return [::Google::Cloud::SecurityCenter::V1::Indicator::ProcessSignature::YaraRuleSignature]
48
+ # Signature indicating that a YARA rule was matched.
49
+ class ProcessSignature
50
+ include ::Google::Protobuf::MessageExts
51
+ extend ::Google::Protobuf::MessageExts::ClassMethods
52
+
53
+ # A signature corresponding to memory page hashes.
54
+ # @!attribute [rw] binary_family
55
+ # @return [::String]
56
+ # The binary family.
57
+ # @!attribute [rw] detections
58
+ # @return [::Array<::Google::Cloud::SecurityCenter::V1::Indicator::ProcessSignature::MemoryHashSignature::Detection>]
59
+ # The list of memory hash detections contributing to the binary family
60
+ # match.
61
+ class MemoryHashSignature
62
+ include ::Google::Protobuf::MessageExts
63
+ extend ::Google::Protobuf::MessageExts::ClassMethods
64
+
65
+ # Memory hash detection contributing to the binary family match.
66
+ # @!attribute [rw] binary
67
+ # @return [::String]
68
+ # The name of the binary associated with the memory hash
69
+ # signature detection.
70
+ # @!attribute [rw] percent_pages_matched
71
+ # @return [::Float]
72
+ # The percentage of memory page hashes in the signature
73
+ # that were matched.
74
+ class Detection
75
+ include ::Google::Protobuf::MessageExts
76
+ extend ::Google::Protobuf::MessageExts::ClassMethods
77
+ end
78
+ end
79
+
80
+ # A signature corresponding to a YARA rule.
81
+ # @!attribute [rw] yara_rule
82
+ # @return [::String]
83
+ # The name of the YARA rule.
84
+ class YaraRuleSignature
85
+ include ::Google::Protobuf::MessageExts
86
+ extend ::Google::Protobuf::MessageExts::ClassMethods
87
+ end
88
+ end
37
89
  end
38
90
  end
39
91
  end
@@ -0,0 +1,203 @@
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
+ # Kubernetes related attributes.
25
+ # @!attribute [rw] pods
26
+ # @return [::Array<::Google::Cloud::SecurityCenter::V1::Kubernetes::Pod>]
27
+ # Kubernetes Pods associated with the finding. This field will contain Pod
28
+ # records for each container that is owned by a Pod.
29
+ # @!attribute [rw] nodes
30
+ # @return [::Array<::Google::Cloud::SecurityCenter::V1::Kubernetes::Node>]
31
+ # Provides Kubernetes Node information.
32
+ # @!attribute [rw] node_pools
33
+ # @return [::Array<::Google::Cloud::SecurityCenter::V1::Kubernetes::NodePool>]
34
+ # GKE Node Pools associated with the finding. This field will
35
+ # contain NodePool information for each Node, when it is available.
36
+ # @!attribute [rw] roles
37
+ # @return [::Array<::Google::Cloud::SecurityCenter::V1::Kubernetes::Role>]
38
+ # Provides Kubernetes role information for findings that involve
39
+ # Roles or ClusterRoles.
40
+ # @!attribute [rw] bindings
41
+ # @return [::Array<::Google::Cloud::SecurityCenter::V1::Kubernetes::Binding>]
42
+ # Provides Kubernetes role binding information for findings that involve
43
+ # RoleBindings or ClusterRoleBindings.
44
+ # @!attribute [rw] access_reviews
45
+ # @return [::Array<::Google::Cloud::SecurityCenter::V1::Kubernetes::AccessReview>]
46
+ # Provides information on any Kubernetes access reviews (i.e. privilege
47
+ # checks) relevant to the finding.
48
+ class Kubernetes
49
+ include ::Google::Protobuf::MessageExts
50
+ extend ::Google::Protobuf::MessageExts::ClassMethods
51
+
52
+ # Kubernetes Pod.
53
+ # @!attribute [rw] ns
54
+ # @return [::String]
55
+ # Kubernetes Pod namespace.
56
+ # @!attribute [rw] name
57
+ # @return [::String]
58
+ # Kubernetes Pod name.
59
+ # @!attribute [rw] labels
60
+ # @return [::Array<::Google::Cloud::SecurityCenter::V1::Label>]
61
+ # Pod labels. For Kubernetes containers, these are applied to the
62
+ # container.
63
+ # @!attribute [rw] containers
64
+ # @return [::Array<::Google::Cloud::SecurityCenter::V1::Container>]
65
+ # Pod containers associated with this finding, if any.
66
+ class Pod
67
+ include ::Google::Protobuf::MessageExts
68
+ extend ::Google::Protobuf::MessageExts::ClassMethods
69
+ end
70
+
71
+ # Kubernetes Nodes associated with the finding.
72
+ # @!attribute [rw] name
73
+ # @return [::String]
74
+ # Full Resource name of the Compute Engine VM running the
75
+ # cluster node.
76
+ class Node
77
+ include ::Google::Protobuf::MessageExts
78
+ extend ::Google::Protobuf::MessageExts::ClassMethods
79
+ end
80
+
81
+ # Provides GKE Node Pool information.
82
+ # @!attribute [rw] name
83
+ # @return [::String]
84
+ # Kubernetes Node pool name.
85
+ # @!attribute [rw] nodes
86
+ # @return [::Array<::Google::Cloud::SecurityCenter::V1::Kubernetes::Node>]
87
+ # Nodes associated with the finding.
88
+ class NodePool
89
+ include ::Google::Protobuf::MessageExts
90
+ extend ::Google::Protobuf::MessageExts::ClassMethods
91
+ end
92
+
93
+ # Kubernetes Role or ClusterRole.
94
+ # @!attribute [rw] kind
95
+ # @return [::Google::Cloud::SecurityCenter::V1::Kubernetes::Role::Kind]
96
+ # Role type.
97
+ # @!attribute [rw] ns
98
+ # @return [::String]
99
+ # Role namespace.
100
+ # @!attribute [rw] name
101
+ # @return [::String]
102
+ # Role name.
103
+ class Role
104
+ include ::Google::Protobuf::MessageExts
105
+ extend ::Google::Protobuf::MessageExts::ClassMethods
106
+
107
+ # Types of Kubernetes roles.
108
+ module Kind
109
+ # Role type is not specified.
110
+ KIND_UNSPECIFIED = 0
111
+
112
+ # Kubernetes Role.
113
+ ROLE = 1
114
+
115
+ # Kubernetes ClusterRole.
116
+ CLUSTER_ROLE = 2
117
+ end
118
+ end
119
+
120
+ # Represents a Kubernetes RoleBinding or ClusterRoleBinding.
121
+ # @!attribute [rw] ns
122
+ # @return [::String]
123
+ # Namespace for binding.
124
+ # @!attribute [rw] name
125
+ # @return [::String]
126
+ # Name for binding.
127
+ # @!attribute [rw] role
128
+ # @return [::Google::Cloud::SecurityCenter::V1::Kubernetes::Role]
129
+ # The Role or ClusterRole referenced by the binding.
130
+ # @!attribute [rw] subjects
131
+ # @return [::Array<::Google::Cloud::SecurityCenter::V1::Kubernetes::Subject>]
132
+ # Represents the subjects(s) bound to the role. Not always available
133
+ # for PATCH requests.
134
+ class Binding
135
+ include ::Google::Protobuf::MessageExts
136
+ extend ::Google::Protobuf::MessageExts::ClassMethods
137
+ end
138
+
139
+ # Represents a Kubernetes Subject.
140
+ # @!attribute [rw] kind
141
+ # @return [::Google::Cloud::SecurityCenter::V1::Kubernetes::Subject::AuthType]
142
+ # Authentication type for subject.
143
+ # @!attribute [rw] ns
144
+ # @return [::String]
145
+ # Namespace for subject.
146
+ # @!attribute [rw] name
147
+ # @return [::String]
148
+ # Name for subject.
149
+ class Subject
150
+ include ::Google::Protobuf::MessageExts
151
+ extend ::Google::Protobuf::MessageExts::ClassMethods
152
+
153
+ # Auth types that can be used for Subject's kind field.
154
+ module AuthType
155
+ # Authentication is not specified.
156
+ AUTH_TYPE_UNSPECIFIED = 0
157
+
158
+ # User with valid certificate.
159
+ USER = 1
160
+
161
+ # Users managed by Kubernetes API with credentials stored as Secrets.
162
+ SERVICEACCOUNT = 2
163
+
164
+ # Collection of users.
165
+ GROUP = 3
166
+ end
167
+ end
168
+
169
+ # Conveys information about a Kubernetes access review (e.g. kubectl auth
170
+ # can-i ...) that was involved in a finding.
171
+ # @!attribute [rw] group
172
+ # @return [::String]
173
+ # Group is the API Group of the Resource. "*" means all.
174
+ # @!attribute [rw] ns
175
+ # @return [::String]
176
+ # Namespace of the action being requested. Currently, there is no
177
+ # distinction between no namespace and all namespaces. Both
178
+ # are represented by "" (empty).
179
+ # @!attribute [rw] name
180
+ # @return [::String]
181
+ # Name is the name of the resource being requested. Empty means all.
182
+ # @!attribute [rw] resource
183
+ # @return [::String]
184
+ # Resource is the optional resource type requested. "*" means all.
185
+ # @!attribute [rw] subresource
186
+ # @return [::String]
187
+ # Subresource is the optional subresource type.
188
+ # @!attribute [rw] verb
189
+ # @return [::String]
190
+ # Verb is a Kubernetes resource API verb, like: get, list, watch, create,
191
+ # update, delete, proxy. "*" means all.
192
+ # @!attribute [rw] version
193
+ # @return [::String]
194
+ # Version is the API Version of the Resource. "*" means all.
195
+ class AccessReview
196
+ include ::Google::Protobuf::MessageExts
197
+ extend ::Google::Protobuf::MessageExts::ClassMethods
198
+ end
199
+ end
200
+ end
201
+ end
202
+ end
203
+ end
@@ -0,0 +1,39 @@
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
+ # Label represents a generic name=value label. Label has separate name and
25
+ # value fields to support filtering with contains().
26
+ # @!attribute [rw] name
27
+ # @return [::String]
28
+ # Label name.
29
+ # @!attribute [rw] value
30
+ # @return [::String]
31
+ # Label value.
32
+ class Label
33
+ include ::Google::Protobuf::MessageExts
34
+ extend ::Google::Protobuf::MessageExts::ClassMethods
35
+ end
36
+ end
37
+ end
38
+ end
39
+ end
@@ -99,7 +99,6 @@ module Google
99
99
 
100
100
  # MITRE ATT&CK techniques that can be referenced by SCC findings.
101
101
  # See: https://attack.mitre.org/techniques/enterprise/
102
- # Next ID: 31
103
102
  module Technique
104
103
  # Unspecified value.
105
104
  TECHNIQUE_UNSPECIFIED = 0
@@ -193,6 +192,12 @@ module Google
193
192
 
194
193
  # T1484
195
194
  DOMAIN_POLICY_MODIFICATION = 30
195
+
196
+ # T1562
197
+ IMPAIR_DEFENSES = 31
198
+
199
+ # T1046
200
+ NETWORK_SERVICE_DISCOVERY = 32
196
201
  end
197
202
  end
198
203
  end
@@ -0,0 +1,79 @@
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 operating system process.
25
+ # @!attribute [rw] name
26
+ # @return [::String]
27
+ # The process name visible in utilities like `top` and `ps`; it can
28
+ # be accessed via `/proc/[pid]/comm` and changed with `prctl(PR_SET_NAME)`.
29
+ # @!attribute [rw] binary
30
+ # @return [::Google::Cloud::SecurityCenter::V1::File]
31
+ # File information for the process executable.
32
+ # @!attribute [rw] libraries
33
+ # @return [::Array<::Google::Cloud::SecurityCenter::V1::File>]
34
+ # File information for libraries loaded by the process.
35
+ # @!attribute [rw] script
36
+ # @return [::Google::Cloud::SecurityCenter::V1::File]
37
+ # When the process represents the invocation of a script,
38
+ # `binary` provides information about the interpreter while `script`
39
+ # provides information about the script file provided to the
40
+ # 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::V1::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
+ # EnvironmentVariable is a name-value pair to store environment variables for
65
+ # 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