cribl-control-plane 0.2.1rc3__py3-none-any.whl → 0.2.1rc4__py3-none-any.whl
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.
Potentially problematic release.
This version of cribl-control-plane might be problematic. Click here for more details.
- cribl_control_plane/_version.py +4 -4
- cribl_control_plane/groups_sdk.py +0 -3
- cribl_control_plane/models/__init__.py +105 -28
- cribl_control_plane/models/input.py +14 -14
- cribl_control_plane/models/inputappscope.py +20 -16
- cribl_control_plane/models/inputconfluentcloud.py +110 -0
- cribl_control_plane/models/inputcriblhttp.py +20 -16
- cribl_control_plane/models/inputcribllakehttp.py +20 -16
- cribl_control_plane/models/inputcribltcp.py +20 -16
- cribl_control_plane/models/inputdatadogagent.py +20 -16
- cribl_control_plane/models/inputedgeprometheus.py +44 -36
- cribl_control_plane/models/inputelastic.py +44 -27
- cribl_control_plane/models/inputeventhub.py +118 -0
- cribl_control_plane/models/inputfirehose.py +20 -16
- cribl_control_plane/models/inputgrafana.py +39 -31
- cribl_control_plane/models/inputhttp.py +20 -16
- cribl_control_plane/models/inputhttpraw.py +20 -16
- cribl_control_plane/models/inputkafka.py +108 -0
- cribl_control_plane/models/inputloki.py +20 -16
- cribl_control_plane/models/inputmetrics.py +20 -16
- cribl_control_plane/models/inputmodeldriventelemetry.py +20 -16
- cribl_control_plane/models/inputopentelemetry.py +19 -15
- cribl_control_plane/models/inputprometheus.py +44 -36
- cribl_control_plane/models/inputprometheusrw.py +20 -16
- cribl_control_plane/models/inputsplunk.py +20 -16
- cribl_control_plane/models/inputsplunkhec.py +19 -15
- cribl_control_plane/models/inputsyslog.py +39 -31
- cribl_control_plane/models/inputsystemmetrics.py +20 -10
- cribl_control_plane/models/inputtcp.py +30 -16
- cribl_control_plane/models/inputtcpjson.py +20 -16
- cribl_control_plane/models/inputwindowsmetrics.py +20 -10
- cribl_control_plane/models/inputwineventlogs.py +14 -0
- cribl_control_plane/models/inputwizwebhook.py +20 -16
- cribl_control_plane/models/inputzscalerhec.py +19 -15
- cribl_control_plane/models/output.py +22 -22
- cribl_control_plane/models/outputazureblob.py +7 -0
- cribl_control_plane/models/outputazuredataexplorer.py +283 -93
- cribl_control_plane/models/outputazureeventhub.py +169 -21
- cribl_control_plane/models/outputazurelogs.py +49 -21
- cribl_control_plane/models/outputchronicle.py +49 -21
- cribl_control_plane/models/outputclickhouse.py +49 -21
- cribl_control_plane/models/outputcloudwatch.py +49 -21
- cribl_control_plane/models/outputconfluentcloud.py +167 -22
- cribl_control_plane/models/outputcriblhttp.py +49 -21
- cribl_control_plane/models/outputcribltcp.py +49 -21
- cribl_control_plane/models/outputcrowdstrikenextgensiem.py +50 -22
- cribl_control_plane/models/outputdatabricks.py +7 -0
- cribl_control_plane/models/outputdatadog.py +49 -21
- cribl_control_plane/models/outputdataset.py +49 -21
- cribl_control_plane/models/outputdls3.py +7 -0
- cribl_control_plane/models/outputdynatracehttp.py +49 -21
- cribl_control_plane/models/outputdynatraceotlp.py +49 -21
- cribl_control_plane/models/outputelastic.py +74 -21
- cribl_control_plane/models/outputelasticcloud.py +74 -21
- cribl_control_plane/models/outputfilesystem.py +7 -0
- cribl_control_plane/models/outputgooglechronicle.py +65 -22
- cribl_control_plane/models/outputgooglecloudlogging.py +50 -22
- cribl_control_plane/models/outputgooglecloudstorage.py +7 -0
- cribl_control_plane/models/outputgooglepubsub.py +49 -21
- cribl_control_plane/models/outputgrafanacloud.py +98 -42
- cribl_control_plane/models/outputgraphite.py +49 -21
- cribl_control_plane/models/outputhoneycomb.py +49 -21
- cribl_control_plane/models/outputhumiohec.py +49 -21
- cribl_control_plane/models/outputinfluxdb.py +49 -21
- cribl_control_plane/models/outputkafka.py +162 -19
- cribl_control_plane/models/outputkinesis.py +56 -21
- cribl_control_plane/models/outputloki.py +47 -19
- cribl_control_plane/models/outputminio.py +7 -0
- cribl_control_plane/models/outputmsk.py +54 -19
- cribl_control_plane/models/outputnewrelic.py +49 -21
- cribl_control_plane/models/outputnewrelicevents.py +50 -22
- cribl_control_plane/models/outputopentelemetry.py +49 -21
- cribl_control_plane/models/outputprometheus.py +49 -21
- cribl_control_plane/models/outputs3.py +7 -0
- cribl_control_plane/models/outputsentinel.py +49 -21
- cribl_control_plane/models/outputsentineloneaisiem.py +50 -22
- cribl_control_plane/models/outputservicenow.py +49 -21
- cribl_control_plane/models/outputsignalfx.py +49 -21
- cribl_control_plane/models/outputsns.py +47 -19
- cribl_control_plane/models/outputsplunk.py +49 -21
- cribl_control_plane/models/outputsplunkhec.py +49 -21
- cribl_control_plane/models/outputsplunklb.py +49 -21
- cribl_control_plane/models/outputsqs.py +47 -19
- cribl_control_plane/models/outputstatsd.py +49 -21
- cribl_control_plane/models/outputstatsdext.py +49 -21
- cribl_control_plane/models/outputsumologic.py +49 -21
- cribl_control_plane/models/outputsyslog.py +129 -99
- cribl_control_plane/models/outputtcpjson.py +49 -21
- cribl_control_plane/models/outputwavefront.py +49 -21
- cribl_control_plane/models/outputwebhook.py +49 -21
- cribl_control_plane/models/outputxsiam.py +47 -19
- cribl_control_plane/models/pipeline.py +4 -4
- cribl_control_plane/models/runnablejobcollection.py +12 -8
- cribl_control_plane/models/runnablejobexecutor.py +12 -8
- cribl_control_plane/models/runnablejobscheduledsearch.py +12 -8
- cribl_control_plane/pipelines.py +8 -8
- {cribl_control_plane-0.2.1rc3.dist-info → cribl_control_plane-0.2.1rc4.dist-info}/METADATA +2 -6
- {cribl_control_plane-0.2.1rc3.dist-info → cribl_control_plane-0.2.1rc4.dist-info}/RECORD +99 -102
- cribl_control_plane/mappings.py +0 -205
- cribl_control_plane/models/createadminproductsmappingsactivatebyproductop.py +0 -52
- cribl_control_plane/models/rulesetid.py +0 -13
- {cribl_control_plane-0.2.1rc3.dist-info → cribl_control_plane-0.2.1rc4.dist-info}/WHEEL +0 -0
|
@@ -164,6 +164,19 @@ class MetricsProtocol(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
|
164
164
|
HTTPS = "https"
|
|
165
165
|
|
|
166
166
|
|
|
167
|
+
class InputPrometheusAwsAuthenticationMethodAuthenticationMethod(
|
|
168
|
+
str, Enum, metaclass=utils.OpenEnumMeta
|
|
169
|
+
):
|
|
170
|
+
r"""AWS authentication method. Choose Auto to use IAM roles."""
|
|
171
|
+
|
|
172
|
+
# Auto
|
|
173
|
+
AUTO = "auto"
|
|
174
|
+
# Manual
|
|
175
|
+
MANUAL = "manual"
|
|
176
|
+
# Secret Key pair
|
|
177
|
+
SECRET = "secret"
|
|
178
|
+
|
|
179
|
+
|
|
167
180
|
class InputPrometheusSearchFilterTypedDict(TypedDict):
|
|
168
181
|
name: str
|
|
169
182
|
r"""Search filter attribute name, see: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeInstances.html for more information. Attributes can be manually entered if not present in the drop down list"""
|
|
@@ -179,19 +192,6 @@ class InputPrometheusSearchFilter(BaseModel):
|
|
|
179
192
|
r"""Search Filter Values, if empty only \"running\" EC2 instances will be returned"""
|
|
180
193
|
|
|
181
194
|
|
|
182
|
-
class InputPrometheusAwsAuthenticationMethodAuthenticationMethod(
|
|
183
|
-
str, Enum, metaclass=utils.OpenEnumMeta
|
|
184
|
-
):
|
|
185
|
-
r"""AWS authentication method. Choose Auto to use IAM roles."""
|
|
186
|
-
|
|
187
|
-
# Auto
|
|
188
|
-
AUTO = "auto"
|
|
189
|
-
# Manual
|
|
190
|
-
MANUAL = "manual"
|
|
191
|
-
# Secret Key pair
|
|
192
|
-
SECRET = "secret"
|
|
193
|
-
|
|
194
|
-
|
|
195
195
|
class InputPrometheusSignatureVersion(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
196
196
|
r"""Signature version to use for signing EC2 requests"""
|
|
197
197
|
|
|
@@ -244,24 +244,27 @@ class InputPrometheusTypedDict(TypedDict):
|
|
|
244
244
|
description: NotRequired[str]
|
|
245
245
|
target_list: NotRequired[List[str]]
|
|
246
246
|
r"""List of Prometheus targets to pull metrics from. Values can be in URL or host[:port] format. For example: http://localhost:9090/metrics, localhost:9090, or localhost. In cases where just host[:port] is specified, the endpoint will resolve to 'http://host[:port]/metrics'."""
|
|
247
|
-
name_list: NotRequired[List[str]]
|
|
248
|
-
r"""List of DNS names to resolve"""
|
|
249
247
|
record_type: NotRequired[InputPrometheusRecordType]
|
|
250
248
|
r"""DNS Record type to resolve"""
|
|
249
|
+
scrape_port: NotRequired[float]
|
|
250
|
+
r"""The port number in the metrics URL for discovered targets."""
|
|
251
|
+
name_list: NotRequired[List[str]]
|
|
252
|
+
r"""List of DNS names to resolve"""
|
|
251
253
|
scrape_protocol: NotRequired[MetricsProtocol]
|
|
252
254
|
r"""Protocol to use when collecting metrics"""
|
|
253
255
|
scrape_path: NotRequired[str]
|
|
254
256
|
r"""Path to use when collecting metrics from discovered targets"""
|
|
255
|
-
use_public_ip: NotRequired[bool]
|
|
256
|
-
r"""Use public IP address for discovered targets. Set to false if the private IP address should be used."""
|
|
257
|
-
scrape_port: NotRequired[float]
|
|
258
|
-
r"""The port number in the metrics URL for discovered targets."""
|
|
259
|
-
search_filter: NotRequired[List[InputPrometheusSearchFilterTypedDict]]
|
|
260
|
-
r"""EC2 Instance Search Filter"""
|
|
261
257
|
aws_authentication_method: NotRequired[
|
|
262
258
|
InputPrometheusAwsAuthenticationMethodAuthenticationMethod
|
|
263
259
|
]
|
|
264
260
|
r"""AWS authentication method. Choose Auto to use IAM roles."""
|
|
261
|
+
aws_api_key: NotRequired[str]
|
|
262
|
+
aws_secret: NotRequired[str]
|
|
263
|
+
r"""Select or create a stored secret that references your access key and secret key"""
|
|
264
|
+
use_public_ip: NotRequired[bool]
|
|
265
|
+
r"""Use public IP address for discovered targets. Set to false if the private IP address should be used."""
|
|
266
|
+
search_filter: NotRequired[List[InputPrometheusSearchFilterTypedDict]]
|
|
267
|
+
r"""EC2 Instance Search Filter"""
|
|
265
268
|
aws_secret_key: NotRequired[str]
|
|
266
269
|
region: NotRequired[str]
|
|
267
270
|
r"""Region where the EC2 is located"""
|
|
@@ -387,9 +390,6 @@ class InputPrometheus(BaseModel):
|
|
|
387
390
|
)
|
|
388
391
|
r"""List of Prometheus targets to pull metrics from. Values can be in URL or host[:port] format. For example: http://localhost:9090/metrics, localhost:9090, or localhost. In cases where just host[:port] is specified, the endpoint will resolve to 'http://host[:port]/metrics'."""
|
|
389
392
|
|
|
390
|
-
name_list: Annotated[Optional[List[str]], pydantic.Field(alias="nameList")] = None
|
|
391
|
-
r"""List of DNS names to resolve"""
|
|
392
|
-
|
|
393
393
|
record_type: Annotated[
|
|
394
394
|
Annotated[
|
|
395
395
|
Optional[InputPrometheusRecordType],
|
|
@@ -399,6 +399,12 @@ class InputPrometheus(BaseModel):
|
|
|
399
399
|
] = InputPrometheusRecordType.SRV
|
|
400
400
|
r"""DNS Record type to resolve"""
|
|
401
401
|
|
|
402
|
+
scrape_port: Annotated[Optional[float], pydantic.Field(alias="scrapePort")] = 9090
|
|
403
|
+
r"""The port number in the metrics URL for discovered targets."""
|
|
404
|
+
|
|
405
|
+
name_list: Annotated[Optional[List[str]], pydantic.Field(alias="nameList")] = None
|
|
406
|
+
r"""List of DNS names to resolve"""
|
|
407
|
+
|
|
402
408
|
scrape_protocol: Annotated[
|
|
403
409
|
Annotated[Optional[MetricsProtocol], PlainValidator(validate_open_enum(False))],
|
|
404
410
|
pydantic.Field(alias="scrapeProtocol"),
|
|
@@ -410,18 +416,6 @@ class InputPrometheus(BaseModel):
|
|
|
410
416
|
)
|
|
411
417
|
r"""Path to use when collecting metrics from discovered targets"""
|
|
412
418
|
|
|
413
|
-
use_public_ip: Annotated[Optional[bool], pydantic.Field(alias="usePublicIp")] = True
|
|
414
|
-
r"""Use public IP address for discovered targets. Set to false if the private IP address should be used."""
|
|
415
|
-
|
|
416
|
-
scrape_port: Annotated[Optional[float], pydantic.Field(alias="scrapePort")] = 9090
|
|
417
|
-
r"""The port number in the metrics URL for discovered targets."""
|
|
418
|
-
|
|
419
|
-
search_filter: Annotated[
|
|
420
|
-
Optional[List[InputPrometheusSearchFilter]],
|
|
421
|
-
pydantic.Field(alias="searchFilter"),
|
|
422
|
-
] = None
|
|
423
|
-
r"""EC2 Instance Search Filter"""
|
|
424
|
-
|
|
425
419
|
aws_authentication_method: Annotated[
|
|
426
420
|
Annotated[
|
|
427
421
|
Optional[InputPrometheusAwsAuthenticationMethodAuthenticationMethod],
|
|
@@ -431,6 +425,20 @@ class InputPrometheus(BaseModel):
|
|
|
431
425
|
] = InputPrometheusAwsAuthenticationMethodAuthenticationMethod.AUTO
|
|
432
426
|
r"""AWS authentication method. Choose Auto to use IAM roles."""
|
|
433
427
|
|
|
428
|
+
aws_api_key: Annotated[Optional[str], pydantic.Field(alias="awsApiKey")] = None
|
|
429
|
+
|
|
430
|
+
aws_secret: Annotated[Optional[str], pydantic.Field(alias="awsSecret")] = None
|
|
431
|
+
r"""Select or create a stored secret that references your access key and secret key"""
|
|
432
|
+
|
|
433
|
+
use_public_ip: Annotated[Optional[bool], pydantic.Field(alias="usePublicIp")] = True
|
|
434
|
+
r"""Use public IP address for discovered targets. Set to false if the private IP address should be used."""
|
|
435
|
+
|
|
436
|
+
search_filter: Annotated[
|
|
437
|
+
Optional[List[InputPrometheusSearchFilter]],
|
|
438
|
+
pydantic.Field(alias="searchFilter"),
|
|
439
|
+
] = None
|
|
440
|
+
r"""EC2 Instance Search Filter"""
|
|
441
|
+
|
|
434
442
|
aws_secret_key: Annotated[Optional[str], pydantic.Field(alias="awsSecretKey")] = (
|
|
435
443
|
None
|
|
436
444
|
)
|
|
@@ -7,7 +7,7 @@ from cribl_control_plane.utils import validate_open_enum
|
|
|
7
7
|
from enum import Enum
|
|
8
8
|
import pydantic
|
|
9
9
|
from pydantic.functional_validators import PlainValidator
|
|
10
|
-
from typing import
|
|
10
|
+
from typing import List, Optional
|
|
11
11
|
from typing_extensions import Annotated, NotRequired, TypedDict
|
|
12
12
|
|
|
13
13
|
|
|
@@ -124,6 +124,12 @@ class InputPrometheusRwMaximumTLSVersion(str, Enum, metaclass=utils.OpenEnumMeta
|
|
|
124
124
|
|
|
125
125
|
class InputPrometheusRwTLSSettingsServerSideTypedDict(TypedDict):
|
|
126
126
|
disabled: NotRequired[bool]
|
|
127
|
+
request_cert: NotRequired[bool]
|
|
128
|
+
r"""Require clients to present their certificates. Used to perform client authentication using SSL certs."""
|
|
129
|
+
reject_unauthorized: NotRequired[bool]
|
|
130
|
+
r"""Reject certificates not authorized by a CA in the CA certificate path or by another trusted CA (such as the system's)"""
|
|
131
|
+
common_name_regex: NotRequired[str]
|
|
132
|
+
r"""Regex matching allowable common names in peer certificates' subject attribute"""
|
|
127
133
|
certificate_name: NotRequired[str]
|
|
128
134
|
r"""The name of the predefined certificate"""
|
|
129
135
|
priv_key_path: NotRequired[str]
|
|
@@ -134,10 +140,6 @@ class InputPrometheusRwTLSSettingsServerSideTypedDict(TypedDict):
|
|
|
134
140
|
r"""Path on server containing certificates to use. PEM format. Can reference $ENV_VARS."""
|
|
135
141
|
ca_path: NotRequired[str]
|
|
136
142
|
r"""Path on server containing CA certificates to use. PEM format. Can reference $ENV_VARS."""
|
|
137
|
-
request_cert: NotRequired[bool]
|
|
138
|
-
r"""Require clients to present their certificates. Used to perform client authentication using SSL certs."""
|
|
139
|
-
reject_unauthorized: NotRequired[Any]
|
|
140
|
-
common_name_regex: NotRequired[Any]
|
|
141
143
|
min_version: NotRequired[InputPrometheusRwMinimumTLSVersion]
|
|
142
144
|
max_version: NotRequired[InputPrometheusRwMaximumTLSVersion]
|
|
143
145
|
|
|
@@ -145,6 +147,19 @@ class InputPrometheusRwTLSSettingsServerSideTypedDict(TypedDict):
|
|
|
145
147
|
class InputPrometheusRwTLSSettingsServerSide(BaseModel):
|
|
146
148
|
disabled: Optional[bool] = True
|
|
147
149
|
|
|
150
|
+
request_cert: Annotated[Optional[bool], pydantic.Field(alias="requestCert")] = False
|
|
151
|
+
r"""Require clients to present their certificates. Used to perform client authentication using SSL certs."""
|
|
152
|
+
|
|
153
|
+
reject_unauthorized: Annotated[
|
|
154
|
+
Optional[bool], pydantic.Field(alias="rejectUnauthorized")
|
|
155
|
+
] = True
|
|
156
|
+
r"""Reject certificates not authorized by a CA in the CA certificate path or by another trusted CA (such as the system's)"""
|
|
157
|
+
|
|
158
|
+
common_name_regex: Annotated[
|
|
159
|
+
Optional[str], pydantic.Field(alias="commonNameRegex")
|
|
160
|
+
] = "/.*/"
|
|
161
|
+
r"""Regex matching allowable common names in peer certificates' subject attribute"""
|
|
162
|
+
|
|
148
163
|
certificate_name: Annotated[
|
|
149
164
|
Optional[str], pydantic.Field(alias="certificateName")
|
|
150
165
|
] = None
|
|
@@ -162,17 +177,6 @@ class InputPrometheusRwTLSSettingsServerSide(BaseModel):
|
|
|
162
177
|
ca_path: Annotated[Optional[str], pydantic.Field(alias="caPath")] = None
|
|
163
178
|
r"""Path on server containing CA certificates to use. PEM format. Can reference $ENV_VARS."""
|
|
164
179
|
|
|
165
|
-
request_cert: Annotated[Optional[bool], pydantic.Field(alias="requestCert")] = False
|
|
166
|
-
r"""Require clients to present their certificates. Used to perform client authentication using SSL certs."""
|
|
167
|
-
|
|
168
|
-
reject_unauthorized: Annotated[
|
|
169
|
-
Optional[Any], pydantic.Field(alias="rejectUnauthorized")
|
|
170
|
-
] = None
|
|
171
|
-
|
|
172
|
-
common_name_regex: Annotated[
|
|
173
|
-
Optional[Any], pydantic.Field(alias="commonNameRegex")
|
|
174
|
-
] = None
|
|
175
|
-
|
|
176
180
|
min_version: Annotated[
|
|
177
181
|
Annotated[
|
|
178
182
|
Optional[InputPrometheusRwMinimumTLSVersion],
|
|
@@ -7,7 +7,7 @@ from cribl_control_plane.utils import validate_open_enum
|
|
|
7
7
|
from enum import Enum
|
|
8
8
|
import pydantic
|
|
9
9
|
from pydantic.functional_validators import PlainValidator
|
|
10
|
-
from typing import
|
|
10
|
+
from typing import List, Optional
|
|
11
11
|
from typing_extensions import Annotated, NotRequired, TypedDict
|
|
12
12
|
|
|
13
13
|
|
|
@@ -123,6 +123,12 @@ class InputSplunkMaximumTLSVersion(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
|
123
123
|
|
|
124
124
|
class InputSplunkTLSSettingsServerSideTypedDict(TypedDict):
|
|
125
125
|
disabled: NotRequired[bool]
|
|
126
|
+
request_cert: NotRequired[bool]
|
|
127
|
+
r"""Require clients to present their certificates. Used to perform client authentication using SSL certs."""
|
|
128
|
+
reject_unauthorized: NotRequired[bool]
|
|
129
|
+
r"""Reject certificates not authorized by a CA in the CA certificate path or by another trusted CA (such as the system's)"""
|
|
130
|
+
common_name_regex: NotRequired[str]
|
|
131
|
+
r"""Regex matching allowable common names in peer certificates' subject attribute"""
|
|
126
132
|
certificate_name: NotRequired[str]
|
|
127
133
|
r"""The name of the predefined certificate"""
|
|
128
134
|
priv_key_path: NotRequired[str]
|
|
@@ -133,10 +139,6 @@ class InputSplunkTLSSettingsServerSideTypedDict(TypedDict):
|
|
|
133
139
|
r"""Path on server containing certificates to use. PEM format. Can reference $ENV_VARS."""
|
|
134
140
|
ca_path: NotRequired[str]
|
|
135
141
|
r"""Path on server containing CA certificates to use. PEM format. Can reference $ENV_VARS."""
|
|
136
|
-
request_cert: NotRequired[bool]
|
|
137
|
-
r"""Require clients to present their certificates. Used to perform client authentication using SSL certs."""
|
|
138
|
-
reject_unauthorized: NotRequired[Any]
|
|
139
|
-
common_name_regex: NotRequired[Any]
|
|
140
142
|
min_version: NotRequired[InputSplunkMinimumTLSVersion]
|
|
141
143
|
max_version: NotRequired[InputSplunkMaximumTLSVersion]
|
|
142
144
|
|
|
@@ -144,6 +146,19 @@ class InputSplunkTLSSettingsServerSideTypedDict(TypedDict):
|
|
|
144
146
|
class InputSplunkTLSSettingsServerSide(BaseModel):
|
|
145
147
|
disabled: Optional[bool] = True
|
|
146
148
|
|
|
149
|
+
request_cert: Annotated[Optional[bool], pydantic.Field(alias="requestCert")] = False
|
|
150
|
+
r"""Require clients to present their certificates. Used to perform client authentication using SSL certs."""
|
|
151
|
+
|
|
152
|
+
reject_unauthorized: Annotated[
|
|
153
|
+
Optional[bool], pydantic.Field(alias="rejectUnauthorized")
|
|
154
|
+
] = True
|
|
155
|
+
r"""Reject certificates not authorized by a CA in the CA certificate path or by another trusted CA (such as the system's)"""
|
|
156
|
+
|
|
157
|
+
common_name_regex: Annotated[
|
|
158
|
+
Optional[str], pydantic.Field(alias="commonNameRegex")
|
|
159
|
+
] = "/.*/"
|
|
160
|
+
r"""Regex matching allowable common names in peer certificates' subject attribute"""
|
|
161
|
+
|
|
147
162
|
certificate_name: Annotated[
|
|
148
163
|
Optional[str], pydantic.Field(alias="certificateName")
|
|
149
164
|
] = None
|
|
@@ -161,17 +176,6 @@ class InputSplunkTLSSettingsServerSide(BaseModel):
|
|
|
161
176
|
ca_path: Annotated[Optional[str], pydantic.Field(alias="caPath")] = None
|
|
162
177
|
r"""Path on server containing CA certificates to use. PEM format. Can reference $ENV_VARS."""
|
|
163
178
|
|
|
164
|
-
request_cert: Annotated[Optional[bool], pydantic.Field(alias="requestCert")] = False
|
|
165
|
-
r"""Require clients to present their certificates. Used to perform client authentication using SSL certs."""
|
|
166
|
-
|
|
167
|
-
reject_unauthorized: Annotated[
|
|
168
|
-
Optional[Any], pydantic.Field(alias="rejectUnauthorized")
|
|
169
|
-
] = None
|
|
170
|
-
|
|
171
|
-
common_name_regex: Annotated[
|
|
172
|
-
Optional[Any], pydantic.Field(alias="commonNameRegex")
|
|
173
|
-
] = None
|
|
174
|
-
|
|
175
179
|
min_version: Annotated[
|
|
176
180
|
Annotated[
|
|
177
181
|
Optional[InputSplunkMinimumTLSVersion],
|
|
@@ -185,6 +185,12 @@ class InputSplunkHecMaximumTLSVersion(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
|
185
185
|
|
|
186
186
|
class InputSplunkHecTLSSettingsServerSideTypedDict(TypedDict):
|
|
187
187
|
disabled: NotRequired[bool]
|
|
188
|
+
request_cert: NotRequired[bool]
|
|
189
|
+
r"""Require clients to present their certificates. Used to perform client authentication using SSL certs."""
|
|
190
|
+
reject_unauthorized: NotRequired[bool]
|
|
191
|
+
r"""Reject certificates not authorized by a CA in the CA certificate path or by another trusted CA (such as the system's)"""
|
|
192
|
+
common_name_regex: NotRequired[str]
|
|
193
|
+
r"""Regex matching allowable common names in peer certificates' subject attribute"""
|
|
188
194
|
certificate_name: NotRequired[str]
|
|
189
195
|
r"""The name of the predefined certificate"""
|
|
190
196
|
priv_key_path: NotRequired[str]
|
|
@@ -195,10 +201,6 @@ class InputSplunkHecTLSSettingsServerSideTypedDict(TypedDict):
|
|
|
195
201
|
r"""Path on server containing certificates to use. PEM format. Can reference $ENV_VARS."""
|
|
196
202
|
ca_path: NotRequired[str]
|
|
197
203
|
r"""Path on server containing CA certificates to use. PEM format. Can reference $ENV_VARS."""
|
|
198
|
-
request_cert: NotRequired[bool]
|
|
199
|
-
r"""Require clients to present their certificates. Used to perform client authentication using SSL certs."""
|
|
200
|
-
reject_unauthorized: NotRequired[Any]
|
|
201
|
-
common_name_regex: NotRequired[Any]
|
|
202
204
|
min_version: NotRequired[InputSplunkHecMinimumTLSVersion]
|
|
203
205
|
max_version: NotRequired[InputSplunkHecMaximumTLSVersion]
|
|
204
206
|
|
|
@@ -206,6 +208,19 @@ class InputSplunkHecTLSSettingsServerSideTypedDict(TypedDict):
|
|
|
206
208
|
class InputSplunkHecTLSSettingsServerSide(BaseModel):
|
|
207
209
|
disabled: Optional[bool] = True
|
|
208
210
|
|
|
211
|
+
request_cert: Annotated[Optional[bool], pydantic.Field(alias="requestCert")] = False
|
|
212
|
+
r"""Require clients to present their certificates. Used to perform client authentication using SSL certs."""
|
|
213
|
+
|
|
214
|
+
reject_unauthorized: Annotated[
|
|
215
|
+
Optional[bool], pydantic.Field(alias="rejectUnauthorized")
|
|
216
|
+
] = True
|
|
217
|
+
r"""Reject certificates not authorized by a CA in the CA certificate path or by another trusted CA (such as the system's)"""
|
|
218
|
+
|
|
219
|
+
common_name_regex: Annotated[
|
|
220
|
+
Optional[str], pydantic.Field(alias="commonNameRegex")
|
|
221
|
+
] = "/.*/"
|
|
222
|
+
r"""Regex matching allowable common names in peer certificates' subject attribute"""
|
|
223
|
+
|
|
209
224
|
certificate_name: Annotated[
|
|
210
225
|
Optional[str], pydantic.Field(alias="certificateName")
|
|
211
226
|
] = None
|
|
@@ -223,17 +238,6 @@ class InputSplunkHecTLSSettingsServerSide(BaseModel):
|
|
|
223
238
|
ca_path: Annotated[Optional[str], pydantic.Field(alias="caPath")] = None
|
|
224
239
|
r"""Path on server containing CA certificates to use. PEM format. Can reference $ENV_VARS."""
|
|
225
240
|
|
|
226
|
-
request_cert: Annotated[Optional[bool], pydantic.Field(alias="requestCert")] = False
|
|
227
|
-
r"""Require clients to present their certificates. Used to perform client authentication using SSL certs."""
|
|
228
|
-
|
|
229
|
-
reject_unauthorized: Annotated[
|
|
230
|
-
Optional[Any], pydantic.Field(alias="rejectUnauthorized")
|
|
231
|
-
] = None
|
|
232
|
-
|
|
233
|
-
common_name_regex: Annotated[
|
|
234
|
-
Optional[Any], pydantic.Field(alias="commonNameRegex")
|
|
235
|
-
] = None
|
|
236
|
-
|
|
237
241
|
min_version: Annotated[
|
|
238
242
|
Annotated[
|
|
239
243
|
Optional[InputSplunkHecMinimumTLSVersion],
|
|
@@ -7,7 +7,7 @@ from cribl_control_plane.utils import validate_open_enum
|
|
|
7
7
|
from enum import Enum
|
|
8
8
|
import pydantic
|
|
9
9
|
from pydantic.functional_validators import PlainValidator
|
|
10
|
-
from typing import
|
|
10
|
+
from typing import List, Optional, Union
|
|
11
11
|
from typing_extensions import Annotated, NotRequired, TypeAliasType, TypedDict
|
|
12
12
|
|
|
13
13
|
|
|
@@ -123,6 +123,12 @@ class InputSyslogMaximumTLSVersion2(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
|
123
123
|
|
|
124
124
|
class InputSyslogTLSSettingsServerSide2TypedDict(TypedDict):
|
|
125
125
|
disabled: NotRequired[bool]
|
|
126
|
+
request_cert: NotRequired[bool]
|
|
127
|
+
r"""Require clients to present their certificates. Used to perform client authentication using SSL certs."""
|
|
128
|
+
reject_unauthorized: NotRequired[bool]
|
|
129
|
+
r"""Reject certificates not authorized by a CA in the CA certificate path or by another trusted CA (such as the system's)"""
|
|
130
|
+
common_name_regex: NotRequired[str]
|
|
131
|
+
r"""Regex matching allowable common names in peer certificates' subject attribute"""
|
|
126
132
|
certificate_name: NotRequired[str]
|
|
127
133
|
r"""The name of the predefined certificate"""
|
|
128
134
|
priv_key_path: NotRequired[str]
|
|
@@ -133,10 +139,6 @@ class InputSyslogTLSSettingsServerSide2TypedDict(TypedDict):
|
|
|
133
139
|
r"""Path on server containing certificates to use. PEM format. Can reference $ENV_VARS."""
|
|
134
140
|
ca_path: NotRequired[str]
|
|
135
141
|
r"""Path on server containing CA certificates to use. PEM format. Can reference $ENV_VARS."""
|
|
136
|
-
request_cert: NotRequired[bool]
|
|
137
|
-
r"""Require clients to present their certificates. Used to perform client authentication using SSL certs."""
|
|
138
|
-
reject_unauthorized: NotRequired[Any]
|
|
139
|
-
common_name_regex: NotRequired[Any]
|
|
140
142
|
min_version: NotRequired[InputSyslogMinimumTLSVersion2]
|
|
141
143
|
max_version: NotRequired[InputSyslogMaximumTLSVersion2]
|
|
142
144
|
|
|
@@ -144,6 +146,19 @@ class InputSyslogTLSSettingsServerSide2TypedDict(TypedDict):
|
|
|
144
146
|
class InputSyslogTLSSettingsServerSide2(BaseModel):
|
|
145
147
|
disabled: Optional[bool] = True
|
|
146
148
|
|
|
149
|
+
request_cert: Annotated[Optional[bool], pydantic.Field(alias="requestCert")] = False
|
|
150
|
+
r"""Require clients to present their certificates. Used to perform client authentication using SSL certs."""
|
|
151
|
+
|
|
152
|
+
reject_unauthorized: Annotated[
|
|
153
|
+
Optional[bool], pydantic.Field(alias="rejectUnauthorized")
|
|
154
|
+
] = True
|
|
155
|
+
r"""Reject certificates not authorized by a CA in the CA certificate path or by another trusted CA (such as the system's)"""
|
|
156
|
+
|
|
157
|
+
common_name_regex: Annotated[
|
|
158
|
+
Optional[str], pydantic.Field(alias="commonNameRegex")
|
|
159
|
+
] = "/.*/"
|
|
160
|
+
r"""Regex matching allowable common names in peer certificates' subject attribute"""
|
|
161
|
+
|
|
147
162
|
certificate_name: Annotated[
|
|
148
163
|
Optional[str], pydantic.Field(alias="certificateName")
|
|
149
164
|
] = None
|
|
@@ -161,17 +176,6 @@ class InputSyslogTLSSettingsServerSide2(BaseModel):
|
|
|
161
176
|
ca_path: Annotated[Optional[str], pydantic.Field(alias="caPath")] = None
|
|
162
177
|
r"""Path on server containing CA certificates to use. PEM format. Can reference $ENV_VARS."""
|
|
163
178
|
|
|
164
|
-
request_cert: Annotated[Optional[bool], pydantic.Field(alias="requestCert")] = False
|
|
165
|
-
r"""Require clients to present their certificates. Used to perform client authentication using SSL certs."""
|
|
166
|
-
|
|
167
|
-
reject_unauthorized: Annotated[
|
|
168
|
-
Optional[Any], pydantic.Field(alias="rejectUnauthorized")
|
|
169
|
-
] = None
|
|
170
|
-
|
|
171
|
-
common_name_regex: Annotated[
|
|
172
|
-
Optional[Any], pydantic.Field(alias="commonNameRegex")
|
|
173
|
-
] = None
|
|
174
|
-
|
|
175
179
|
min_version: Annotated[
|
|
176
180
|
Annotated[
|
|
177
181
|
Optional[InputSyslogMinimumTLSVersion2],
|
|
@@ -510,6 +514,12 @@ class InputSyslogMaximumTLSVersion1(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
|
510
514
|
|
|
511
515
|
class InputSyslogTLSSettingsServerSide1TypedDict(TypedDict):
|
|
512
516
|
disabled: NotRequired[bool]
|
|
517
|
+
request_cert: NotRequired[bool]
|
|
518
|
+
r"""Require clients to present their certificates. Used to perform client authentication using SSL certs."""
|
|
519
|
+
reject_unauthorized: NotRequired[bool]
|
|
520
|
+
r"""Reject certificates not authorized by a CA in the CA certificate path or by another trusted CA (such as the system's)"""
|
|
521
|
+
common_name_regex: NotRequired[str]
|
|
522
|
+
r"""Regex matching allowable common names in peer certificates' subject attribute"""
|
|
513
523
|
certificate_name: NotRequired[str]
|
|
514
524
|
r"""The name of the predefined certificate"""
|
|
515
525
|
priv_key_path: NotRequired[str]
|
|
@@ -520,10 +530,6 @@ class InputSyslogTLSSettingsServerSide1TypedDict(TypedDict):
|
|
|
520
530
|
r"""Path on server containing certificates to use. PEM format. Can reference $ENV_VARS."""
|
|
521
531
|
ca_path: NotRequired[str]
|
|
522
532
|
r"""Path on server containing CA certificates to use. PEM format. Can reference $ENV_VARS."""
|
|
523
|
-
request_cert: NotRequired[bool]
|
|
524
|
-
r"""Require clients to present their certificates. Used to perform client authentication using SSL certs."""
|
|
525
|
-
reject_unauthorized: NotRequired[Any]
|
|
526
|
-
common_name_regex: NotRequired[Any]
|
|
527
533
|
min_version: NotRequired[InputSyslogMinimumTLSVersion1]
|
|
528
534
|
max_version: NotRequired[InputSyslogMaximumTLSVersion1]
|
|
529
535
|
|
|
@@ -531,6 +537,19 @@ class InputSyslogTLSSettingsServerSide1TypedDict(TypedDict):
|
|
|
531
537
|
class InputSyslogTLSSettingsServerSide1(BaseModel):
|
|
532
538
|
disabled: Optional[bool] = True
|
|
533
539
|
|
|
540
|
+
request_cert: Annotated[Optional[bool], pydantic.Field(alias="requestCert")] = False
|
|
541
|
+
r"""Require clients to present their certificates. Used to perform client authentication using SSL certs."""
|
|
542
|
+
|
|
543
|
+
reject_unauthorized: Annotated[
|
|
544
|
+
Optional[bool], pydantic.Field(alias="rejectUnauthorized")
|
|
545
|
+
] = True
|
|
546
|
+
r"""Reject certificates not authorized by a CA in the CA certificate path or by another trusted CA (such as the system's)"""
|
|
547
|
+
|
|
548
|
+
common_name_regex: Annotated[
|
|
549
|
+
Optional[str], pydantic.Field(alias="commonNameRegex")
|
|
550
|
+
] = "/.*/"
|
|
551
|
+
r"""Regex matching allowable common names in peer certificates' subject attribute"""
|
|
552
|
+
|
|
534
553
|
certificate_name: Annotated[
|
|
535
554
|
Optional[str], pydantic.Field(alias="certificateName")
|
|
536
555
|
] = None
|
|
@@ -548,17 +567,6 @@ class InputSyslogTLSSettingsServerSide1(BaseModel):
|
|
|
548
567
|
ca_path: Annotated[Optional[str], pydantic.Field(alias="caPath")] = None
|
|
549
568
|
r"""Path on server containing CA certificates to use. PEM format. Can reference $ENV_VARS."""
|
|
550
569
|
|
|
551
|
-
request_cert: Annotated[Optional[bool], pydantic.Field(alias="requestCert")] = False
|
|
552
|
-
r"""Require clients to present their certificates. Used to perform client authentication using SSL certs."""
|
|
553
|
-
|
|
554
|
-
reject_unauthorized: Annotated[
|
|
555
|
-
Optional[Any], pydantic.Field(alias="rejectUnauthorized")
|
|
556
|
-
] = None
|
|
557
|
-
|
|
558
|
-
common_name_regex: Annotated[
|
|
559
|
-
Optional[Any], pydantic.Field(alias="commonNameRegex")
|
|
560
|
-
] = None
|
|
561
|
-
|
|
562
570
|
min_version: Annotated[
|
|
563
571
|
Annotated[
|
|
564
572
|
Optional[InputSyslogMinimumTLSVersion1],
|
|
@@ -239,12 +239,14 @@ class InputSystemMetricsNetworkMode(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
|
239
239
|
class InputSystemMetricsNetworkTypedDict(TypedDict):
|
|
240
240
|
mode: NotRequired[InputSystemMetricsNetworkMode]
|
|
241
241
|
r"""Select the level of detail for network metrics"""
|
|
242
|
+
detail: NotRequired[bool]
|
|
243
|
+
r"""Generate full network metrics"""
|
|
244
|
+
protocols: NotRequired[bool]
|
|
245
|
+
r"""Generate protocol metrics for ICMP, ICMPMsg, IP, TCP, UDP and UDPLite"""
|
|
242
246
|
devices: NotRequired[List[str]]
|
|
243
247
|
r"""Network interfaces to include/exclude. Examples: eth0, !lo. All interfaces are included if this list is empty."""
|
|
244
248
|
per_interface: NotRequired[bool]
|
|
245
249
|
r"""Generate separate metrics for each interface"""
|
|
246
|
-
detail: NotRequired[bool]
|
|
247
|
-
r"""Generate full network metrics"""
|
|
248
250
|
|
|
249
251
|
|
|
250
252
|
class InputSystemMetricsNetwork(BaseModel):
|
|
@@ -254,6 +256,12 @@ class InputSystemMetricsNetwork(BaseModel):
|
|
|
254
256
|
] = InputSystemMetricsNetworkMode.BASIC
|
|
255
257
|
r"""Select the level of detail for network metrics"""
|
|
256
258
|
|
|
259
|
+
detail: Optional[bool] = False
|
|
260
|
+
r"""Generate full network metrics"""
|
|
261
|
+
|
|
262
|
+
protocols: Optional[bool] = False
|
|
263
|
+
r"""Generate protocol metrics for ICMP, ICMPMsg, IP, TCP, UDP and UDPLite"""
|
|
264
|
+
|
|
257
265
|
devices: Optional[List[str]] = None
|
|
258
266
|
r"""Network interfaces to include/exclude. Examples: eth0, !lo. All interfaces are included if this list is empty."""
|
|
259
267
|
|
|
@@ -262,9 +270,6 @@ class InputSystemMetricsNetwork(BaseModel):
|
|
|
262
270
|
)
|
|
263
271
|
r"""Generate separate metrics for each interface"""
|
|
264
272
|
|
|
265
|
-
detail: Optional[bool] = False
|
|
266
|
-
r"""Generate full network metrics"""
|
|
267
|
-
|
|
268
273
|
|
|
269
274
|
class InputSystemMetricsDiskMode(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
270
275
|
r"""Select the level of detail for disk metrics"""
|
|
@@ -282,6 +287,10 @@ class InputSystemMetricsDiskMode(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
|
282
287
|
class InputSystemMetricsDiskTypedDict(TypedDict):
|
|
283
288
|
mode: NotRequired[InputSystemMetricsDiskMode]
|
|
284
289
|
r"""Select the level of detail for disk metrics"""
|
|
290
|
+
detail: NotRequired[bool]
|
|
291
|
+
r"""Generate full disk metrics"""
|
|
292
|
+
inodes: NotRequired[bool]
|
|
293
|
+
r"""Generate filesystem inode metrics"""
|
|
285
294
|
devices: NotRequired[List[str]]
|
|
286
295
|
r"""Block devices to include/exclude. Examples: sda*, !loop*. Wildcards and ! (not) operators are supported. All devices are included if this list is empty."""
|
|
287
296
|
mountpoints: NotRequired[List[str]]
|
|
@@ -290,8 +299,6 @@ class InputSystemMetricsDiskTypedDict(TypedDict):
|
|
|
290
299
|
r"""Filesystem types to include/exclude. Examples: ext4, !*tmpfs, !squashfs. Wildcards and ! (not) operators are supported. All types are included if this list is empty."""
|
|
291
300
|
per_device: NotRequired[bool]
|
|
292
301
|
r"""Generate separate metrics for each device"""
|
|
293
|
-
detail: NotRequired[bool]
|
|
294
|
-
r"""Generate full disk metrics"""
|
|
295
302
|
|
|
296
303
|
|
|
297
304
|
class InputSystemMetricsDisk(BaseModel):
|
|
@@ -300,6 +307,12 @@ class InputSystemMetricsDisk(BaseModel):
|
|
|
300
307
|
] = InputSystemMetricsDiskMode.BASIC
|
|
301
308
|
r"""Select the level of detail for disk metrics"""
|
|
302
309
|
|
|
310
|
+
detail: Optional[bool] = False
|
|
311
|
+
r"""Generate full disk metrics"""
|
|
312
|
+
|
|
313
|
+
inodes: Optional[bool] = False
|
|
314
|
+
r"""Generate filesystem inode metrics"""
|
|
315
|
+
|
|
303
316
|
devices: Optional[List[str]] = None
|
|
304
317
|
r"""Block devices to include/exclude. Examples: sda*, !loop*. Wildcards and ! (not) operators are supported. All devices are included if this list is empty."""
|
|
305
318
|
|
|
@@ -312,9 +325,6 @@ class InputSystemMetricsDisk(BaseModel):
|
|
|
312
325
|
per_device: Annotated[Optional[bool], pydantic.Field(alias="perDevice")] = False
|
|
313
326
|
r"""Generate separate metrics for each device"""
|
|
314
327
|
|
|
315
|
-
detail: Optional[bool] = False
|
|
316
|
-
r"""Generate full disk metrics"""
|
|
317
|
-
|
|
318
328
|
|
|
319
329
|
class InputSystemMetricsCustomTypedDict(TypedDict):
|
|
320
330
|
system: NotRequired[InputSystemMetricsSystemTypedDict]
|
|
@@ -7,7 +7,7 @@ from cribl_control_plane.utils import validate_open_enum
|
|
|
7
7
|
from enum import Enum
|
|
8
8
|
import pydantic
|
|
9
9
|
from pydantic.functional_validators import PlainValidator
|
|
10
|
-
from typing import
|
|
10
|
+
from typing import List, Optional
|
|
11
11
|
from typing_extensions import Annotated, NotRequired, TypedDict
|
|
12
12
|
|
|
13
13
|
|
|
@@ -123,6 +123,12 @@ class InputTCPMaximumTLSVersion(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
|
123
123
|
|
|
124
124
|
class InputTCPTLSSettingsServerSideTypedDict(TypedDict):
|
|
125
125
|
disabled: NotRequired[bool]
|
|
126
|
+
request_cert: NotRequired[bool]
|
|
127
|
+
r"""Require clients to present their certificates. Used to perform client authentication using SSL certs."""
|
|
128
|
+
reject_unauthorized: NotRequired[bool]
|
|
129
|
+
r"""Reject certificates not authorized by a CA in the CA certificate path or by another trusted CA (such as the system's)"""
|
|
130
|
+
common_name_regex: NotRequired[str]
|
|
131
|
+
r"""Regex matching allowable common names in peer certificates' subject attribute"""
|
|
126
132
|
certificate_name: NotRequired[str]
|
|
127
133
|
r"""The name of the predefined certificate"""
|
|
128
134
|
priv_key_path: NotRequired[str]
|
|
@@ -133,10 +139,6 @@ class InputTCPTLSSettingsServerSideTypedDict(TypedDict):
|
|
|
133
139
|
r"""Path on server containing certificates to use. PEM format. Can reference $ENV_VARS."""
|
|
134
140
|
ca_path: NotRequired[str]
|
|
135
141
|
r"""Path on server containing CA certificates to use. PEM format. Can reference $ENV_VARS."""
|
|
136
|
-
request_cert: NotRequired[bool]
|
|
137
|
-
r"""Require clients to present their certificates. Used to perform client authentication using SSL certs."""
|
|
138
|
-
reject_unauthorized: NotRequired[Any]
|
|
139
|
-
common_name_regex: NotRequired[Any]
|
|
140
142
|
min_version: NotRequired[InputTCPMinimumTLSVersion]
|
|
141
143
|
max_version: NotRequired[InputTCPMaximumTLSVersion]
|
|
142
144
|
|
|
@@ -144,6 +146,19 @@ class InputTCPTLSSettingsServerSideTypedDict(TypedDict):
|
|
|
144
146
|
class InputTCPTLSSettingsServerSide(BaseModel):
|
|
145
147
|
disabled: Optional[bool] = True
|
|
146
148
|
|
|
149
|
+
request_cert: Annotated[Optional[bool], pydantic.Field(alias="requestCert")] = False
|
|
150
|
+
r"""Require clients to present their certificates. Used to perform client authentication using SSL certs."""
|
|
151
|
+
|
|
152
|
+
reject_unauthorized: Annotated[
|
|
153
|
+
Optional[bool], pydantic.Field(alias="rejectUnauthorized")
|
|
154
|
+
] = True
|
|
155
|
+
r"""Reject certificates not authorized by a CA in the CA certificate path or by another trusted CA (such as the system's)"""
|
|
156
|
+
|
|
157
|
+
common_name_regex: Annotated[
|
|
158
|
+
Optional[str], pydantic.Field(alias="commonNameRegex")
|
|
159
|
+
] = "/.*/"
|
|
160
|
+
r"""Regex matching allowable common names in peer certificates' subject attribute"""
|
|
161
|
+
|
|
147
162
|
certificate_name: Annotated[
|
|
148
163
|
Optional[str], pydantic.Field(alias="certificateName")
|
|
149
164
|
] = None
|
|
@@ -161,17 +176,6 @@ class InputTCPTLSSettingsServerSide(BaseModel):
|
|
|
161
176
|
ca_path: Annotated[Optional[str], pydantic.Field(alias="caPath")] = None
|
|
162
177
|
r"""Path on server containing CA certificates to use. PEM format. Can reference $ENV_VARS."""
|
|
163
178
|
|
|
164
|
-
request_cert: Annotated[Optional[bool], pydantic.Field(alias="requestCert")] = False
|
|
165
|
-
r"""Require clients to present their certificates. Used to perform client authentication using SSL certs."""
|
|
166
|
-
|
|
167
|
-
reject_unauthorized: Annotated[
|
|
168
|
-
Optional[Any], pydantic.Field(alias="rejectUnauthorized")
|
|
169
|
-
] = None
|
|
170
|
-
|
|
171
|
-
common_name_regex: Annotated[
|
|
172
|
-
Optional[Any], pydantic.Field(alias="commonNameRegex")
|
|
173
|
-
] = None
|
|
174
|
-
|
|
175
179
|
min_version: Annotated[
|
|
176
180
|
Annotated[
|
|
177
181
|
Optional[InputTCPMinimumTLSVersion],
|
|
@@ -272,8 +276,12 @@ class InputTCPTypedDict(TypedDict):
|
|
|
272
276
|
r"""Client will pass the header record with every new connection. The header can contain an authToken, and an object with a list of fields and values to add to every event. These fields can be used to simplify Event Breaker selection, routing, etc. Header has this format, and must be followed by a newline: { \"authToken\" : \"myToken\", \"fields\": { \"field1\": \"value1\", \"field2\": \"value2\" } }"""
|
|
273
277
|
preprocess: NotRequired[InputTCPPreprocessTypedDict]
|
|
274
278
|
description: NotRequired[str]
|
|
279
|
+
auth_token: NotRequired[str]
|
|
280
|
+
r"""Shared secret to be provided by any client (in authToken header field). If empty, unauthorized access is permitted."""
|
|
275
281
|
auth_type: NotRequired[InputTCPAuthenticationMethod]
|
|
276
282
|
r"""Select Manual to enter an auth token directly, or select Secret to use a text secret to authenticate"""
|
|
283
|
+
text_secret: NotRequired[str]
|
|
284
|
+
r"""Select or create a stored text secret"""
|
|
277
285
|
|
|
278
286
|
|
|
279
287
|
class InputTCP(BaseModel):
|
|
@@ -366,6 +374,9 @@ class InputTCP(BaseModel):
|
|
|
366
374
|
|
|
367
375
|
description: Optional[str] = None
|
|
368
376
|
|
|
377
|
+
auth_token: Annotated[Optional[str], pydantic.Field(alias="authToken")] = ""
|
|
378
|
+
r"""Shared secret to be provided by any client (in authToken header field). If empty, unauthorized access is permitted."""
|
|
379
|
+
|
|
369
380
|
auth_type: Annotated[
|
|
370
381
|
Annotated[
|
|
371
382
|
Optional[InputTCPAuthenticationMethod],
|
|
@@ -374,3 +385,6 @@ class InputTCP(BaseModel):
|
|
|
374
385
|
pydantic.Field(alias="authType"),
|
|
375
386
|
] = InputTCPAuthenticationMethod.MANUAL
|
|
376
387
|
r"""Select Manual to enter an auth token directly, or select Secret to use a text secret to authenticate"""
|
|
388
|
+
|
|
389
|
+
text_secret: Annotated[Optional[str], pydantic.Field(alias="textSecret")] = None
|
|
390
|
+
r"""Select or create a stored text secret"""
|