google-cloud-chronicle-v1 1.3.0 → 1.4.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.
- checksums.yaml +4 -4
- data/lib/google/cloud/chronicle/v1/entity_pb.rb +6 -1
- data/lib/google/cloud/chronicle/v1/event_pb.rb +24 -0
- data/lib/google/cloud/chronicle/v1/rest.rb +1 -0
- data/lib/google/cloud/chronicle/v1/search_pb.rb +64 -0
- data/lib/google/cloud/chronicle/v1/search_service/client.rb +643 -0
- data/lib/google/cloud/chronicle/v1/search_service/credentials.rb +49 -0
- data/lib/google/cloud/chronicle/v1/search_service/operations.rb +843 -0
- data/lib/google/cloud/chronicle/v1/search_service/paths.rb +94 -0
- data/lib/google/cloud/chronicle/v1/search_service/rest/client.rb +586 -0
- data/lib/google/cloud/chronicle/v1/search_service/rest/operations.rb +927 -0
- data/lib/google/cloud/chronicle/v1/search_service/rest/service_stub.rb +204 -0
- data/lib/google/cloud/chronicle/v1/search_service/rest.rb +53 -0
- data/lib/google/cloud/chronicle/v1/search_service.rb +56 -0
- data/lib/google/cloud/chronicle/v1/search_services_pb.rb +47 -0
- data/lib/google/cloud/chronicle/v1/simulated_data_pb.rb +21 -0
- data/lib/google/cloud/chronicle/v1/version.rb +1 -1
- data/lib/google/cloud/chronicle/v1.rb +1 -0
- data/proto_docs/backstory/collection.rb +371 -0
- data/proto_docs/backstory/data_access.rb +59 -0
- data/proto_docs/backstory/entity.rb +639 -0
- data/proto_docs/backstory/entity_risk.rb +98 -0
- data/proto_docs/backstory/id.rb +73 -0
- data/proto_docs/backstory/udm.rb +7008 -0
- data/proto_docs/google/cloud/chronicle/v1/entity.rb +38 -0
- data/proto_docs/google/cloud/chronicle/v1/event.rb +42 -0
- data/proto_docs/google/cloud/chronicle/v1/search.rb +593 -0
- data/proto_docs/google/cloud/chronicle/v1/simulated_data.rb +40 -0
- data/proto_docs/google/protobuf/struct.rb +108 -0
- data/proto_docs/google/type/latlng.rb +38 -0
- metadata +45 -1
|
@@ -21,6 +21,44 @@ module Google
|
|
|
21
21
|
module Cloud
|
|
22
22
|
module Chronicle
|
|
23
23
|
module V1
|
|
24
|
+
# An Entity provides additional context about an entity in a UDM event (asset,
|
|
25
|
+
# user, etc.). For example, a PROCESS_LAUNCH event describes that user
|
|
26
|
+
# 'abc@example.corp' launched process 'shady.exe'. The event does not include
|
|
27
|
+
# information that user 'abc@example.com' is a recently terminated employee who
|
|
28
|
+
# administers a server storing finance data. Information stored in one or more
|
|
29
|
+
# Entities can add this additional context.
|
|
30
|
+
# @!attribute [rw] name
|
|
31
|
+
# @return [::String]
|
|
32
|
+
# The resource name of the entity.
|
|
33
|
+
# Format:
|
|
34
|
+
# `projects/{project}/locations/{location}/instances/{instance}/entities/{entity}`
|
|
35
|
+
# `projects/{project}/locations/{location}/instances/{instance}/analytics/{analytic}/entities/{entity}`
|
|
36
|
+
# `projects/{project}/locations/{location}/instances/{instance}/watchlists/{watchlist}/entities/{entity}`
|
|
37
|
+
# @!attribute [rw] metadata
|
|
38
|
+
# @return [::Google::Backstory::EntityMetadata]
|
|
39
|
+
# Entity metadata such as timestamp, product, etc.
|
|
40
|
+
# @!attribute [rw] entity
|
|
41
|
+
# @return [::Google::Backstory::Noun]
|
|
42
|
+
# Noun in the UDM event that this entity represents.
|
|
43
|
+
# @!attribute [rw] additional
|
|
44
|
+
# @return [::Google::Protobuf::Struct]
|
|
45
|
+
# Important entity data that cannot be adequately represented within
|
|
46
|
+
# the formal sections of the Entity.
|
|
47
|
+
# @!attribute [rw] risk_score
|
|
48
|
+
# @return [::Google::Backstory::EntityRisk]
|
|
49
|
+
# Represents the entity risk scores resource
|
|
50
|
+
# @!attribute [rw] metric
|
|
51
|
+
# @return [::Google::Backstory::Metric]
|
|
52
|
+
# Metric details of the entity. Used if EntityType is METRIC.
|
|
53
|
+
# @!attribute [rw] relations
|
|
54
|
+
# @return [::Array<::Google::Backstory::Relation>]
|
|
55
|
+
# One or more relationships between the entity (a) and other entities,
|
|
56
|
+
# including the relationship type and related entity.
|
|
57
|
+
class Entity
|
|
58
|
+
include ::Google::Protobuf::MessageExts
|
|
59
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
|
60
|
+
end
|
|
61
|
+
|
|
24
62
|
# A watchlist is a list of entities that allows for bulk operations over the
|
|
25
63
|
# included entities.
|
|
26
64
|
# @!attribute [rw] name
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
# Copyright 2026 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 Chronicle
|
|
23
|
+
module V1
|
|
24
|
+
# Event is a resource that contains information about a telemetry event.
|
|
25
|
+
# @!attribute [rw] name
|
|
26
|
+
# @return [::String]
|
|
27
|
+
# The resource name of the event.
|
|
28
|
+
# Format:
|
|
29
|
+
# projects/\\{project}/locations/\\{location}/instances/\\{instance}/events/\\{event}
|
|
30
|
+
# where 'event' is URL-encoded Base64. The unencoded value of 'event' can
|
|
31
|
+
# also be found in udm.metadata.id.
|
|
32
|
+
# @!attribute [rw] udm
|
|
33
|
+
# @return [::Google::Backstory::UDM]
|
|
34
|
+
# Event data in UDM format.
|
|
35
|
+
class Event
|
|
36
|
+
include ::Google::Protobuf::MessageExts
|
|
37
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
|
38
|
+
end
|
|
39
|
+
end
|
|
40
|
+
end
|
|
41
|
+
end
|
|
42
|
+
end
|
|
@@ -0,0 +1,593 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
# Copyright 2026 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 Chronicle
|
|
23
|
+
module V1
|
|
24
|
+
# SearchSession represents an asynchronous search session.
|
|
25
|
+
# @!attribute [rw] name
|
|
26
|
+
# @return [::String]
|
|
27
|
+
# Identifier. The resource name of the search session.
|
|
28
|
+
# Format:
|
|
29
|
+
# projects/\\{project}/locations/\\{location}/instances/\\{instance}/searchSessions/\\{search_session}
|
|
30
|
+
# @!attribute [rw] query
|
|
31
|
+
# @return [::String]
|
|
32
|
+
# Required. The search query, in the dialect set in `dialect`.
|
|
33
|
+
# Example: 'ip=/172.*/ AND metadata.event_type!="NETWORK_CONNECTION" AND (
|
|
34
|
+
# target.ip = "3.225.179.73" OR target.ip = "23.47.48.70")'
|
|
35
|
+
# @!attribute [rw] time_range
|
|
36
|
+
# @return [::Google::Type::Interval]
|
|
37
|
+
# Required. Time range to search for [Inclusive start time, exclusive end
|
|
38
|
+
# time).
|
|
39
|
+
# @!attribute [rw] dialect
|
|
40
|
+
# @return [::Google::Cloud::Chronicle::V1::QueryDialect]
|
|
41
|
+
# Optional. Specifies how to parse the 'query' string. If not specified, the
|
|
42
|
+
# query will be parsed as YL2.
|
|
43
|
+
# @!attribute [rw] draft_data_access_scope
|
|
44
|
+
# @return [::Google::Cloud::Chronicle::V1::DataAccessScope]
|
|
45
|
+
# Optional. Data access scope used to filter events. This is intended to be
|
|
46
|
+
# used by admins to preview in-development scopes. Should only be called by
|
|
47
|
+
# users with global access. If the caller does not have global access, the
|
|
48
|
+
# request will fail.
|
|
49
|
+
# @!attribute [r] metadata
|
|
50
|
+
# @return [::Google::Cloud::Chronicle::V1::SearchSessionMetadata]
|
|
51
|
+
# Output only. Metadata about the search session.
|
|
52
|
+
class SearchSession
|
|
53
|
+
include ::Google::Protobuf::MessageExts
|
|
54
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
|
55
|
+
end
|
|
56
|
+
|
|
57
|
+
# SearchedResult contains the results of a Search operation.
|
|
58
|
+
# @!attribute [rw] name
|
|
59
|
+
# @return [::String]
|
|
60
|
+
# Identifier. The resource name of the search results.
|
|
61
|
+
# Format:
|
|
62
|
+
# projects/\\{project}/locations/\\{location}/instances/\\{instance}/searchSessions/\\{search_session}/searchedResults/\\{searched_result}
|
|
63
|
+
# @!attribute [rw] result_row
|
|
64
|
+
# @return [::Google::Cloud::Chronicle::V1::ResultRow]
|
|
65
|
+
# Contains a flexible row which can support a standard UDM Event, Stats,
|
|
66
|
+
# Entity Context, Join result, Data Table, etc.
|
|
67
|
+
class SearchedResult
|
|
68
|
+
include ::Google::Protobuf::MessageExts
|
|
69
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
|
70
|
+
end
|
|
71
|
+
|
|
72
|
+
# Request message for the Search method.
|
|
73
|
+
# @!attribute [rw] parent
|
|
74
|
+
# @return [::String]
|
|
75
|
+
# Required. The resource name of the instance on which to perform the search.
|
|
76
|
+
# Format: projects/\\{project}/locations/\\{location}/instances/\\{instance}
|
|
77
|
+
# @!attribute [rw] query
|
|
78
|
+
# @return [::String]
|
|
79
|
+
# Required. The search query, in the dialect set in `dialect`.
|
|
80
|
+
# Example: 'ip=/172.*/ AND metadata.event_type!="NETWORK_CONNECTION" AND (
|
|
81
|
+
# target.ip = "3.225.179.73" OR target.ip = "23.47.48.70")'
|
|
82
|
+
# @!attribute [rw] time_range
|
|
83
|
+
# @return [::Google::Type::Interval]
|
|
84
|
+
# Required. Time range to search for [Inclusive start time, exclusive end
|
|
85
|
+
# time).
|
|
86
|
+
# @!attribute [rw] dialect
|
|
87
|
+
# @return [::Google::Cloud::Chronicle::V1::QueryDialect]
|
|
88
|
+
# Optional. Specifies the dialect the Search Query is written in. If not
|
|
89
|
+
# specified, the query will be parsed as YL2.
|
|
90
|
+
# @!attribute [rw] draft_data_access_scope
|
|
91
|
+
# @return [::Google::Cloud::Chronicle::V1::DataAccessScope]
|
|
92
|
+
# Optional. Data access scope used to filter events. This is intended to be
|
|
93
|
+
# used by admins to preview in-development scopes. Should only be called by
|
|
94
|
+
# users with global access. If the caller does not have global access, the
|
|
95
|
+
# request will fail.
|
|
96
|
+
# @!attribute [rw] result_limit
|
|
97
|
+
# @return [::Integer]
|
|
98
|
+
# Optional. Requested maximum number of rows to materialize. The service may
|
|
99
|
+
# return fewer. If unspecified, a server-side default of 10,000 is used. The
|
|
100
|
+
# maximum value is 1,000,000. Some dialects have a lower maximum; see
|
|
101
|
+
# `QueryDialect`.
|
|
102
|
+
# @!attribute [rw] simulated_data_visibility
|
|
103
|
+
# @return [::Google::Cloud::Chronicle::V1::SimulatedDataVisibility]
|
|
104
|
+
# Optional. Specifies visibility of simulated data to include in search
|
|
105
|
+
# results.
|
|
106
|
+
class SearchRequest
|
|
107
|
+
include ::Google::Protobuf::MessageExts
|
|
108
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
|
109
|
+
end
|
|
110
|
+
|
|
111
|
+
# Request message for the ListSearchedResults method.
|
|
112
|
+
# @!attribute [rw] parent
|
|
113
|
+
# @return [::String]
|
|
114
|
+
# Required. The parent SearchSession resource name.
|
|
115
|
+
# Format:
|
|
116
|
+
# projects/\\{project}/locations/\\{location}/instances/\\{instance}/searchSessions/\\{search_session}
|
|
117
|
+
# @!attribute [rw] page_size
|
|
118
|
+
# @return [::Integer]
|
|
119
|
+
# Optional. The maximum number of results to return. The service may return
|
|
120
|
+
# fewer. If unspecified, at most 100 results will be returned. The maximum
|
|
121
|
+
# value is 1000.
|
|
122
|
+
# @!attribute [rw] page_token
|
|
123
|
+
# @return [::String]
|
|
124
|
+
# Optional. A page token, received from a previous `ListSearchedResults`
|
|
125
|
+
# call. Provide this to retrieve the subsequent page.
|
|
126
|
+
# @!attribute [rw] order_by
|
|
127
|
+
# @return [::String]
|
|
128
|
+
# Optional. The column to sort the results on. Example: "event_timestamp
|
|
129
|
+
# desc", "principal.hostname asc". Multi-columnar sorting is not supported.
|
|
130
|
+
# @!attribute [rw] skip
|
|
131
|
+
# @return [::Integer]
|
|
132
|
+
# Optional. The number of results to skip before starting to return results.
|
|
133
|
+
# This field should not be used in conjunction with page_token.
|
|
134
|
+
class ListSearchedResultsRequest
|
|
135
|
+
include ::Google::Protobuf::MessageExts
|
|
136
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
|
137
|
+
end
|
|
138
|
+
|
|
139
|
+
# Response message for the ListSearchedResults method.
|
|
140
|
+
# @!attribute [rw] searched_results
|
|
141
|
+
# @return [::Array<::Google::Cloud::Chronicle::V1::SearchedResult>]
|
|
142
|
+
# List of Searched Results.
|
|
143
|
+
# @!attribute [rw] total_size
|
|
144
|
+
# @return [::Integer]
|
|
145
|
+
# Total number of rows in the result set of the search query.
|
|
146
|
+
# @!attribute [rw] column_names
|
|
147
|
+
# @return [::Google::Cloud::Chronicle::V1::ColumnNames]
|
|
148
|
+
# List of column names for the outcome section of the query result.
|
|
149
|
+
# @!attribute [rw] column_schema
|
|
150
|
+
# @return [::Google::Cloud::Chronicle::V1::ColumnSchema]
|
|
151
|
+
# Column schema for the results based on the query columns. Contains metadata
|
|
152
|
+
# like data source, event_name etc.
|
|
153
|
+
# @!attribute [rw] next_page_token
|
|
154
|
+
# @return [::String]
|
|
155
|
+
# A token, which can be sent as `page_token` to retrieve the next page.
|
|
156
|
+
# If this field is omitted, there are no subsequent pages.
|
|
157
|
+
class ListSearchedResultsResponse
|
|
158
|
+
include ::Google::Protobuf::MessageExts
|
|
159
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
|
160
|
+
end
|
|
161
|
+
|
|
162
|
+
# Metadata about the search session.
|
|
163
|
+
# @!attribute [r] operation_id
|
|
164
|
+
# @return [::String]
|
|
165
|
+
# Output only. The operation id corresponding to the search session which can
|
|
166
|
+
# be used to poll the operation resource to know its state and progress.
|
|
167
|
+
# @!attribute [r] start_time
|
|
168
|
+
# @return [::Google::Protobuf::Timestamp]
|
|
169
|
+
# Output only. The start time of the session.
|
|
170
|
+
# @!attribute [r] end_time
|
|
171
|
+
# @return [::Google::Protobuf::Timestamp]
|
|
172
|
+
# Output only. The end time of the session, if done.
|
|
173
|
+
# @!attribute [r] expire_time
|
|
174
|
+
# @return [::Google::Protobuf::Timestamp]
|
|
175
|
+
# Output only. The time when the search results expire.
|
|
176
|
+
# @!attribute [r] result_row_count
|
|
177
|
+
# @return [::Integer]
|
|
178
|
+
# Output only. Total number of rows returned in the search session.
|
|
179
|
+
# @!attribute [r] more_data_available
|
|
180
|
+
# @return [::Boolean]
|
|
181
|
+
# Output only. If true, there are more search results available than what can
|
|
182
|
+
# be returned and have been omitted.
|
|
183
|
+
class SearchSessionMetadata
|
|
184
|
+
include ::Google::Protobuf::MessageExts
|
|
185
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
|
186
|
+
end
|
|
187
|
+
|
|
188
|
+
# Metadata for the google.longrunning.Operation returned by the Search
|
|
189
|
+
# method.
|
|
190
|
+
# @!attribute [r] state
|
|
191
|
+
# @return [::Google::Cloud::Chronicle::V1::SearchOperationMetadata::State]
|
|
192
|
+
# Output only. State of the Search operation.
|
|
193
|
+
# @!attribute [r] start_time
|
|
194
|
+
# @return [::Google::Protobuf::Timestamp]
|
|
195
|
+
# Output only. The start time of the search.
|
|
196
|
+
# @!attribute [r] end_time
|
|
197
|
+
# @return [::Google::Protobuf::Timestamp]
|
|
198
|
+
# Output only. The end time of the search, if done.
|
|
199
|
+
# @!attribute [r] expire_time
|
|
200
|
+
# @return [::Google::Protobuf::Timestamp]
|
|
201
|
+
# Output only. The time when the search results expire.
|
|
202
|
+
# @!attribute [r] progress
|
|
203
|
+
# @return [::Integer]
|
|
204
|
+
# Output only. Progress Percentage of the search LRO, ranges from 0 to 100.
|
|
205
|
+
# @!attribute [r] datatable_export_metadata
|
|
206
|
+
# @return [::Google::Cloud::Chronicle::V1::DataTableExportMetadata]
|
|
207
|
+
# Output only. Metadata of the data table export operation if the search
|
|
208
|
+
# results are written to a Data Table.
|
|
209
|
+
class SearchOperationMetadata
|
|
210
|
+
include ::Google::Protobuf::MessageExts
|
|
211
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
|
212
|
+
|
|
213
|
+
# State of the Search operation.
|
|
214
|
+
module State
|
|
215
|
+
# Unspecified state.
|
|
216
|
+
STATE_UNSPECIFIED = 0
|
|
217
|
+
|
|
218
|
+
# Initial state, Search operation is running.
|
|
219
|
+
RUNNING = 1
|
|
220
|
+
|
|
221
|
+
# Search operation completed, results are available.
|
|
222
|
+
SUCCEEDED = 2
|
|
223
|
+
|
|
224
|
+
# Search operation failed.
|
|
225
|
+
FAILED = 3
|
|
226
|
+
|
|
227
|
+
# Search operation was cancelled.
|
|
228
|
+
CANCELLED = 4
|
|
229
|
+
|
|
230
|
+
# Search operation expired.
|
|
231
|
+
EXPIRED = 5
|
|
232
|
+
end
|
|
233
|
+
end
|
|
234
|
+
|
|
235
|
+
# Metadata about a DataTable export operation.
|
|
236
|
+
# @!attribute [rw] error
|
|
237
|
+
# @return [::Google::Rpc::Status]
|
|
238
|
+
# The error result of the export operation in case of failure.
|
|
239
|
+
#
|
|
240
|
+
# Note: The following fields are mutually exclusive: `error`, `result_metadata`. If a field in that set is populated, all other fields in the set will automatically be cleared.
|
|
241
|
+
# @!attribute [rw] result_metadata
|
|
242
|
+
# @return [::Google::Cloud::Chronicle::V1::DataTableExportMetadata::ResultMetadata]
|
|
243
|
+
# Metadata about the export operation's result in case of success.
|
|
244
|
+
#
|
|
245
|
+
# Note: The following fields are mutually exclusive: `result_metadata`, `error`. If a field in that set is populated, all other fields in the set will automatically be cleared.
|
|
246
|
+
# @!attribute [rw] data_table
|
|
247
|
+
# @return [::String]
|
|
248
|
+
# The name of the DataTable.
|
|
249
|
+
class DataTableExportMetadata
|
|
250
|
+
include ::Google::Protobuf::MessageExts
|
|
251
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
|
252
|
+
|
|
253
|
+
# The result of the export operation.
|
|
254
|
+
# @!attribute [rw] datatable_export_operation_id
|
|
255
|
+
# @return [::String]
|
|
256
|
+
# The operation ID of the export operation.
|
|
257
|
+
# @!attribute [rw] rows_count
|
|
258
|
+
# @return [::Integer]
|
|
259
|
+
# The number of rows exported to the datatable.
|
|
260
|
+
class ResultMetadata
|
|
261
|
+
include ::Google::Protobuf::MessageExts
|
|
262
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
|
263
|
+
end
|
|
264
|
+
end
|
|
265
|
+
|
|
266
|
+
# Metadata about a table used in a query.
|
|
267
|
+
# @!attribute [rw] table
|
|
268
|
+
# @return [::String]
|
|
269
|
+
# The alias of the table in the query.
|
|
270
|
+
# @!attribute [rw] data_source
|
|
271
|
+
# @return [::Google::Cloud::Chronicle::V1::TableMetadata::DataSource]
|
|
272
|
+
# The type of data source.
|
|
273
|
+
# @!attribute [rw] index
|
|
274
|
+
# @return [::Integer]
|
|
275
|
+
# The index of the table in the query.
|
|
276
|
+
class TableMetadata
|
|
277
|
+
include ::Google::Protobuf::MessageExts
|
|
278
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
|
279
|
+
|
|
280
|
+
# The type of data source.
|
|
281
|
+
module DataSource
|
|
282
|
+
# Unspecified data source.
|
|
283
|
+
DATA_SOURCE_UNSPECIFIED = 0
|
|
284
|
+
|
|
285
|
+
# UDM events.
|
|
286
|
+
EVENTS = 1
|
|
287
|
+
|
|
288
|
+
# Entity context.
|
|
289
|
+
ENTITY_CONTEXT = 2
|
|
290
|
+
|
|
291
|
+
# Data tables.
|
|
292
|
+
DATA_TABLES = 3
|
|
293
|
+
|
|
294
|
+
# Detections.
|
|
295
|
+
DETECTIONS = 4
|
|
296
|
+
|
|
297
|
+
# SOAR cases.
|
|
298
|
+
SOAR_CASE = 5
|
|
299
|
+
|
|
300
|
+
# SOAR case histories.
|
|
301
|
+
SOAR_CASE_HISTORY = 6
|
|
302
|
+
end
|
|
303
|
+
end
|
|
304
|
+
|
|
305
|
+
# Schema of the tables used in a query.
|
|
306
|
+
# @!attribute [rw] metadata
|
|
307
|
+
# @return [::Array<::Google::Cloud::Chronicle::V1::TableMetadata>]
|
|
308
|
+
# Metadata about the tables used in the query.
|
|
309
|
+
class ColumnSchema
|
|
310
|
+
include ::Google::Protobuf::MessageExts
|
|
311
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
|
312
|
+
end
|
|
313
|
+
|
|
314
|
+
# List of column names for the outcome section of the query result.
|
|
315
|
+
# @!attribute [rw] names
|
|
316
|
+
# @return [::Array<::String>]
|
|
317
|
+
# List of column names.
|
|
318
|
+
class ColumnNames
|
|
319
|
+
include ::Google::Protobuf::MessageExts
|
|
320
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
|
321
|
+
end
|
|
322
|
+
|
|
323
|
+
# ResultRow is a flexible collection that captures a search result row. It can
|
|
324
|
+
# currently support UDM Events, Entity Contexts, Data Tables, Join results,
|
|
325
|
+
# etc. and will support all other data sources in the future.
|
|
326
|
+
# @!attribute [rw] event_record
|
|
327
|
+
# @return [::Google::Cloud::Chronicle::V1::EventRecord]
|
|
328
|
+
# UDM event.
|
|
329
|
+
#
|
|
330
|
+
# Note: The following fields are mutually exclusive: `event_record`, `stats_record`, `entity_context_record`, `join_record`, `detection_record`, `data_table_record`. If a field in that set is populated, all other fields in the set will automatically be cleared.
|
|
331
|
+
# @!attribute [rw] stats_record
|
|
332
|
+
# @return [::Google::Cloud::Chronicle::V1::StatsRecord]
|
|
333
|
+
# Stats record.
|
|
334
|
+
#
|
|
335
|
+
# Note: The following fields are mutually exclusive: `stats_record`, `event_record`, `entity_context_record`, `join_record`, `detection_record`, `data_table_record`. If a field in that set is populated, all other fields in the set will automatically be cleared.
|
|
336
|
+
# @!attribute [rw] entity_context_record
|
|
337
|
+
# @return [::Google::Cloud::Chronicle::V1::EntityContextRecord]
|
|
338
|
+
# Entity context graph.
|
|
339
|
+
#
|
|
340
|
+
# Note: The following fields are mutually exclusive: `entity_context_record`, `event_record`, `stats_record`, `join_record`, `detection_record`, `data_table_record`. If a field in that set is populated, all other fields in the set will automatically be cleared.
|
|
341
|
+
# @!attribute [rw] join_record
|
|
342
|
+
# @return [::Google::Cloud::Chronicle::V1::JoinRecord]
|
|
343
|
+
# Join results.
|
|
344
|
+
#
|
|
345
|
+
# Note: The following fields are mutually exclusive: `join_record`, `event_record`, `stats_record`, `entity_context_record`, `detection_record`, `data_table_record`. If a field in that set is populated, all other fields in the set will automatically be cleared.
|
|
346
|
+
# @!attribute [rw] detection_record
|
|
347
|
+
# @return [::Google::Cloud::Chronicle::V1::DetectionRecord]
|
|
348
|
+
# Detection.
|
|
349
|
+
#
|
|
350
|
+
# Note: The following fields are mutually exclusive: `detection_record`, `event_record`, `stats_record`, `entity_context_record`, `join_record`, `data_table_record`. If a field in that set is populated, all other fields in the set will automatically be cleared.
|
|
351
|
+
# @!attribute [rw] data_table_record
|
|
352
|
+
# @return [::Google::Cloud::Chronicle::V1::DataTableRecord]
|
|
353
|
+
# Data table.
|
|
354
|
+
#
|
|
355
|
+
# Note: The following fields are mutually exclusive: `data_table_record`, `event_record`, `stats_record`, `entity_context_record`, `join_record`, `detection_record`. If a field in that set is populated, all other fields in the set will automatically be cleared.
|
|
356
|
+
# @!attribute [rw] outcomes
|
|
357
|
+
# @return [::Array<::Google::Cloud::Chronicle::V1::ColumnType>]
|
|
358
|
+
# Outcome fields for an event specified in query request.
|
|
359
|
+
class ResultRow
|
|
360
|
+
include ::Google::Protobuf::MessageExts
|
|
361
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
|
362
|
+
end
|
|
363
|
+
|
|
364
|
+
# StatsRecord contains a row in the response of a stats query.
|
|
365
|
+
# @!attribute [rw] results
|
|
366
|
+
# @return [::Array<::Google::Cloud::Chronicle::V1::StatsColumnData>]
|
|
367
|
+
# Contains all columns resulting from a stats query and one row of values.
|
|
368
|
+
class StatsRecord
|
|
369
|
+
include ::Google::Protobuf::MessageExts
|
|
370
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
|
371
|
+
end
|
|
372
|
+
|
|
373
|
+
# Represents a single column with a single cell in the set of columns
|
|
374
|
+
# returned as the stats query result.
|
|
375
|
+
# @!attribute [rw] column
|
|
376
|
+
# @return [::String]
|
|
377
|
+
# Used to store column names.
|
|
378
|
+
# @!attribute [rw] values
|
|
379
|
+
# @return [::Google::Cloud::Chronicle::V1::ColumnType]
|
|
380
|
+
# Store the values in a single column.
|
|
381
|
+
class StatsColumnData
|
|
382
|
+
include ::Google::Protobuf::MessageExts
|
|
383
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
|
384
|
+
end
|
|
385
|
+
|
|
386
|
+
# Singular vs list of values in a single column.
|
|
387
|
+
# @!attribute [rw] value
|
|
388
|
+
# @return [::Google::Cloud::Chronicle::V1::ColumnType::ColumnValue]
|
|
389
|
+
# Single value in a column.
|
|
390
|
+
#
|
|
391
|
+
# Note: The following fields are mutually exclusive: `value`, `list`. If a field in that set is populated, all other fields in the set will automatically be cleared.
|
|
392
|
+
# @!attribute [rw] list
|
|
393
|
+
# @return [::Google::Cloud::Chronicle::V1::ColumnType::ColumnValueList]
|
|
394
|
+
# List of values in a column e.g. IPs.
|
|
395
|
+
#
|
|
396
|
+
# Note: The following fields are mutually exclusive: `list`, `value`. If a field in that set is populated, all other fields in the set will automatically be cleared.
|
|
397
|
+
class ColumnType
|
|
398
|
+
include ::Google::Protobuf::MessageExts
|
|
399
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
|
400
|
+
|
|
401
|
+
# Represents a single value in the set of values returned as the query
|
|
402
|
+
# result.
|
|
403
|
+
# @!attribute [rw] null_val
|
|
404
|
+
# @return [::Boolean]
|
|
405
|
+
# True if the value is NULL.
|
|
406
|
+
#
|
|
407
|
+
# Note: The following fields are mutually exclusive: `null_val`, `bool_val`, `bytes_val`, `double_val`, `int64_val`, `uint64_val`, `string_val`, `timestamp_val`, `date_val`, `proto_val`. If a field in that set is populated, all other fields in the set will automatically be cleared.
|
|
408
|
+
# @!attribute [rw] bool_val
|
|
409
|
+
# @return [::Boolean]
|
|
410
|
+
# Boolean value.
|
|
411
|
+
#
|
|
412
|
+
# Note: The following fields are mutually exclusive: `bool_val`, `null_val`, `bytes_val`, `double_val`, `int64_val`, `uint64_val`, `string_val`, `timestamp_val`, `date_val`, `proto_val`. If a field in that set is populated, all other fields in the set will automatically be cleared.
|
|
413
|
+
# @!attribute [rw] bytes_val
|
|
414
|
+
# @return [::String]
|
|
415
|
+
# Bytes value.
|
|
416
|
+
#
|
|
417
|
+
# Note: The following fields are mutually exclusive: `bytes_val`, `null_val`, `bool_val`, `double_val`, `int64_val`, `uint64_val`, `string_val`, `timestamp_val`, `date_val`, `proto_val`. If a field in that set is populated, all other fields in the set will automatically be cleared.
|
|
418
|
+
# @!attribute [rw] double_val
|
|
419
|
+
# @return [::Float]
|
|
420
|
+
# Double value.
|
|
421
|
+
#
|
|
422
|
+
# Note: The following fields are mutually exclusive: `double_val`, `null_val`, `bool_val`, `bytes_val`, `int64_val`, `uint64_val`, `string_val`, `timestamp_val`, `date_val`, `proto_val`. If a field in that set is populated, all other fields in the set will automatically be cleared.
|
|
423
|
+
# @!attribute [rw] int64_val
|
|
424
|
+
# @return [::Integer]
|
|
425
|
+
# Integer value (signed).
|
|
426
|
+
#
|
|
427
|
+
# Note: The following fields are mutually exclusive: `int64_val`, `null_val`, `bool_val`, `bytes_val`, `double_val`, `uint64_val`, `string_val`, `timestamp_val`, `date_val`, `proto_val`. If a field in that set is populated, all other fields in the set will automatically be cleared.
|
|
428
|
+
# @!attribute [rw] uint64_val
|
|
429
|
+
# @return [::Integer]
|
|
430
|
+
# Un-signed integer value.
|
|
431
|
+
#
|
|
432
|
+
# Note: The following fields are mutually exclusive: `uint64_val`, `null_val`, `bool_val`, `bytes_val`, `double_val`, `int64_val`, `string_val`, `timestamp_val`, `date_val`, `proto_val`. If a field in that set is populated, all other fields in the set will automatically be cleared.
|
|
433
|
+
# @!attribute [rw] string_val
|
|
434
|
+
# @return [::String]
|
|
435
|
+
# String value. Enum values are returned as strings.
|
|
436
|
+
#
|
|
437
|
+
# Note: The following fields are mutually exclusive: `string_val`, `null_val`, `bool_val`, `bytes_val`, `double_val`, `int64_val`, `uint64_val`, `timestamp_val`, `date_val`, `proto_val`. If a field in that set is populated, all other fields in the set will automatically be cleared.
|
|
438
|
+
# @!attribute [rw] timestamp_val
|
|
439
|
+
# @return [::Google::Protobuf::Timestamp]
|
|
440
|
+
# Timestamp values.
|
|
441
|
+
#
|
|
442
|
+
# Note: The following fields are mutually exclusive: `timestamp_val`, `null_val`, `bool_val`, `bytes_val`, `double_val`, `int64_val`, `uint64_val`, `string_val`, `date_val`, `proto_val`. If a field in that set is populated, all other fields in the set will automatically be cleared.
|
|
443
|
+
# @!attribute [rw] date_val
|
|
444
|
+
# @return [::Google::Type::Date]
|
|
445
|
+
# Date values.
|
|
446
|
+
#
|
|
447
|
+
# Note: The following fields are mutually exclusive: `date_val`, `null_val`, `bool_val`, `bytes_val`, `double_val`, `int64_val`, `uint64_val`, `string_val`, `timestamp_val`, `proto_val`. If a field in that set is populated, all other fields in the set will automatically be cleared.
|
|
448
|
+
# @!attribute [rw] proto_val
|
|
449
|
+
# @return [::Google::Protobuf::Any]
|
|
450
|
+
# For any proto values that are not any of the above.
|
|
451
|
+
#
|
|
452
|
+
# Note: The following fields are mutually exclusive: `proto_val`, `null_val`, `bool_val`, `bytes_val`, `double_val`, `int64_val`, `uint64_val`, `string_val`, `timestamp_val`, `date_val`. If a field in that set is populated, all other fields in the set will automatically be cleared.
|
|
453
|
+
class ColumnValue
|
|
454
|
+
include ::Google::Protobuf::MessageExts
|
|
455
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
|
456
|
+
end
|
|
457
|
+
|
|
458
|
+
# Store list of values for a single column.
|
|
459
|
+
# @!attribute [rw] values
|
|
460
|
+
# @return [::Array<::Google::Cloud::Chronicle::V1::ColumnType::ColumnValue>]
|
|
461
|
+
# List of values in one cell of the column.
|
|
462
|
+
class ColumnValueList
|
|
463
|
+
include ::Google::Protobuf::MessageExts
|
|
464
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
|
465
|
+
end
|
|
466
|
+
end
|
|
467
|
+
|
|
468
|
+
# Contains a key-value pair of column name and its value. It represents a cell
|
|
469
|
+
# in the Data Table.
|
|
470
|
+
# @!attribute [rw] column
|
|
471
|
+
# @return [::String]
|
|
472
|
+
# The name of the column.
|
|
473
|
+
# @!attribute [rw] value
|
|
474
|
+
# @return [::String]
|
|
475
|
+
# The value of the column.
|
|
476
|
+
class SearchDataTableRowCell
|
|
477
|
+
include ::Google::Protobuf::MessageExts
|
|
478
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
|
479
|
+
end
|
|
480
|
+
|
|
481
|
+
# DataTableRecord contains information about a Data table.
|
|
482
|
+
# @!attribute [rw] data_table
|
|
483
|
+
# @return [::String]
|
|
484
|
+
# The resource name of the Data table.
|
|
485
|
+
# Format:
|
|
486
|
+
# projects/\\{project_id}/locations/\\{location}/instances/\\{instances}/dataTables/\\{data_table}
|
|
487
|
+
# @!attribute [rw] cells
|
|
488
|
+
# @return [::Array<::Google::Cloud::Chronicle::V1::SearchDataTableRowCell>]
|
|
489
|
+
# Stores information about a single row of a Data table.
|
|
490
|
+
class DataTableRecord
|
|
491
|
+
include ::Google::Protobuf::MessageExts
|
|
492
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
|
493
|
+
end
|
|
494
|
+
|
|
495
|
+
# EventRecord stores information about a UDM event.
|
|
496
|
+
# @!attribute [rw] event
|
|
497
|
+
# @return [::Google::Cloud::Chronicle::V1::Event]
|
|
498
|
+
# The UDM Event.
|
|
499
|
+
# @!attribute [rw] event_log_token
|
|
500
|
+
# @return [::String]
|
|
501
|
+
# Raw log tokens mapped to the event. Can be used to locate the raw log entry
|
|
502
|
+
# that generated the event.
|
|
503
|
+
# @!attribute [rw] alert_number
|
|
504
|
+
# @return [::Integer]
|
|
505
|
+
# If the event should be treated as an alert, the unique identifier for the
|
|
506
|
+
# alert.
|
|
507
|
+
# @!attribute [rw] alert_view_id
|
|
508
|
+
# @return [::String]
|
|
509
|
+
# Alert View specific Id. Helps create a link to Alert View.
|
|
510
|
+
# @!attribute [rw] annotations
|
|
511
|
+
# @return [::Array<::Google::Cloud::Chronicle::V1::EventRecord::Annotation>]
|
|
512
|
+
# Annotations added to an event.
|
|
513
|
+
# @!attribute [rw] detections
|
|
514
|
+
# @return [::Array<::Google::Backstory::Collection>]
|
|
515
|
+
# Detections associated with an event.
|
|
516
|
+
# @!attribute [rw] table
|
|
517
|
+
# @return [::String]
|
|
518
|
+
# User defined table name for the event in joins query.
|
|
519
|
+
class EventRecord
|
|
520
|
+
include ::Google::Protobuf::MessageExts
|
|
521
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
|
522
|
+
|
|
523
|
+
# Annotation for an event.
|
|
524
|
+
module Annotation
|
|
525
|
+
# Unspecified - no annotation to display.
|
|
526
|
+
ANNOTATION_UNSPECIFIED = 0
|
|
527
|
+
|
|
528
|
+
# Event is associated with one or more alerts.
|
|
529
|
+
ANNOTATION_ALERT = 1
|
|
530
|
+
end
|
|
531
|
+
end
|
|
532
|
+
|
|
533
|
+
# EntityContextRecord stores information about a entity context graph.
|
|
534
|
+
# @!attribute [rw] entity
|
|
535
|
+
# @return [::Google::Cloud::Chronicle::V1::Entity]
|
|
536
|
+
# The entity information to be retrieved with UDM ECG search.
|
|
537
|
+
# @!attribute [rw] event_log_token
|
|
538
|
+
# @return [::String]
|
|
539
|
+
# Raw log tokens mapped to the event that created the entity. This is only
|
|
540
|
+
# for entity context events.
|
|
541
|
+
# @!attribute [rw] timed
|
|
542
|
+
# @return [::Boolean]
|
|
543
|
+
# If the entity is timed or not.
|
|
544
|
+
# @!attribute [rw] table
|
|
545
|
+
# @return [::String]
|
|
546
|
+
# User defined table name for the entity in joins query.
|
|
547
|
+
class EntityContextRecord
|
|
548
|
+
include ::Google::Protobuf::MessageExts
|
|
549
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
|
550
|
+
end
|
|
551
|
+
|
|
552
|
+
# JoinRecord stores information about a join result.
|
|
553
|
+
# @!attribute [rw] events
|
|
554
|
+
# @return [::Array<::Google::Cloud::Chronicle::V1::EventRecord>]
|
|
555
|
+
# The events that are joined.
|
|
556
|
+
# @!attribute [rw] entities
|
|
557
|
+
# @return [::Array<::Google::Cloud::Chronicle::V1::EntityContextRecord>]
|
|
558
|
+
# The entities that are joined.
|
|
559
|
+
# @!attribute [rw] data_tables
|
|
560
|
+
# @return [::Array<::Google::Cloud::Chronicle::V1::DataTableRecord>]
|
|
561
|
+
# The data tables that are joined.
|
|
562
|
+
class JoinRecord
|
|
563
|
+
include ::Google::Protobuf::MessageExts
|
|
564
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
|
565
|
+
end
|
|
566
|
+
|
|
567
|
+
# DetectionRecord stores information about a detection.
|
|
568
|
+
# @!attribute [rw] id
|
|
569
|
+
# @return [::String]
|
|
570
|
+
# The ID of the detection.
|
|
571
|
+
# @!attribute [rw] collection
|
|
572
|
+
# @return [::Google::Backstory::Collection]
|
|
573
|
+
# The detection.
|
|
574
|
+
class DetectionRecord
|
|
575
|
+
include ::Google::Protobuf::MessageExts
|
|
576
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
|
577
|
+
end
|
|
578
|
+
|
|
579
|
+
# Specifies the dialect the Search Query is written in.
|
|
580
|
+
module QueryDialect
|
|
581
|
+
# Defaults to YL2.
|
|
582
|
+
QUERY_DIALECT_UNSPECIFIED = 0
|
|
583
|
+
|
|
584
|
+
# YL2 query dialect.
|
|
585
|
+
YL2 = 1
|
|
586
|
+
|
|
587
|
+
# SQL query dialect.
|
|
588
|
+
SQL = 2
|
|
589
|
+
end
|
|
590
|
+
end
|
|
591
|
+
end
|
|
592
|
+
end
|
|
593
|
+
end
|