cribl-control-plane 0.2.1rc4__py3-none-any.whl → 0.2.1rc5__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.

Files changed (110) hide show
  1. cribl_control_plane/_version.py +3 -3
  2. cribl_control_plane/groups_sdk.py +3 -0
  3. cribl_control_plane/mappings.py +1185 -0
  4. cribl_control_plane/models/__init__.py +149 -105
  5. cribl_control_plane/models/createadminproductsmappingsactivatebyproductop.py +52 -0
  6. cribl_control_plane/models/createadminproductsmappingsbyproductop.py +53 -0
  7. cribl_control_plane/models/deleteadminproductsmappingsbyproductandidop.py +51 -0
  8. cribl_control_plane/models/getadminproductsmappingsbyproductandidop.py +51 -0
  9. cribl_control_plane/models/getadminproductsmappingsbyproductop.py +44 -0
  10. cribl_control_plane/models/input.py +14 -14
  11. cribl_control_plane/models/inputappscope.py +16 -20
  12. cribl_control_plane/models/inputconfluentcloud.py +0 -110
  13. cribl_control_plane/models/inputcriblhttp.py +16 -20
  14. cribl_control_plane/models/inputcribllakehttp.py +16 -20
  15. cribl_control_plane/models/inputcribltcp.py +16 -20
  16. cribl_control_plane/models/inputdatadogagent.py +16 -20
  17. cribl_control_plane/models/inputedgeprometheus.py +36 -44
  18. cribl_control_plane/models/inputelastic.py +27 -44
  19. cribl_control_plane/models/inputeventhub.py +0 -118
  20. cribl_control_plane/models/inputfirehose.py +16 -20
  21. cribl_control_plane/models/inputgrafana.py +31 -39
  22. cribl_control_plane/models/inputhttp.py +16 -20
  23. cribl_control_plane/models/inputhttpraw.py +16 -20
  24. cribl_control_plane/models/inputkafka.py +0 -108
  25. cribl_control_plane/models/inputloki.py +16 -20
  26. cribl_control_plane/models/inputmetrics.py +16 -20
  27. cribl_control_plane/models/inputmodeldriventelemetry.py +16 -20
  28. cribl_control_plane/models/inputopentelemetry.py +15 -19
  29. cribl_control_plane/models/inputprometheus.py +36 -44
  30. cribl_control_plane/models/inputprometheusrw.py +16 -20
  31. cribl_control_plane/models/inputsplunk.py +16 -20
  32. cribl_control_plane/models/inputsplunkhec.py +15 -19
  33. cribl_control_plane/models/inputsyslog.py +31 -39
  34. cribl_control_plane/models/inputsystemmetrics.py +10 -20
  35. cribl_control_plane/models/inputtcp.py +16 -30
  36. cribl_control_plane/models/inputtcpjson.py +16 -20
  37. cribl_control_plane/models/inputwindowsmetrics.py +10 -20
  38. cribl_control_plane/models/inputwineventlogs.py +0 -14
  39. cribl_control_plane/models/inputwizwebhook.py +16 -20
  40. cribl_control_plane/models/inputzscalerhec.py +15 -19
  41. cribl_control_plane/models/mappingruleset.py +53 -0
  42. cribl_control_plane/models/mappingrulesetevalmappingfunction.py +71 -0
  43. cribl_control_plane/models/mappingrulesetgenericmappingfunction.py +29 -0
  44. cribl_control_plane/models/output.py +22 -22
  45. cribl_control_plane/models/outputazureblob.py +0 -7
  46. cribl_control_plane/models/outputazuredataexplorer.py +93 -283
  47. cribl_control_plane/models/outputazureeventhub.py +21 -169
  48. cribl_control_plane/models/outputazurelogs.py +21 -49
  49. cribl_control_plane/models/outputchronicle.py +21 -49
  50. cribl_control_plane/models/outputclickhouse.py +21 -49
  51. cribl_control_plane/models/outputcloudwatch.py +21 -49
  52. cribl_control_plane/models/outputconfluentcloud.py +22 -167
  53. cribl_control_plane/models/outputcriblhttp.py +21 -49
  54. cribl_control_plane/models/outputcribltcp.py +21 -49
  55. cribl_control_plane/models/outputcrowdstrikenextgensiem.py +22 -50
  56. cribl_control_plane/models/outputdatabricks.py +0 -7
  57. cribl_control_plane/models/outputdatadog.py +21 -49
  58. cribl_control_plane/models/outputdataset.py +21 -49
  59. cribl_control_plane/models/outputdls3.py +0 -7
  60. cribl_control_plane/models/outputdynatracehttp.py +21 -49
  61. cribl_control_plane/models/outputdynatraceotlp.py +21 -49
  62. cribl_control_plane/models/outputelastic.py +21 -74
  63. cribl_control_plane/models/outputelasticcloud.py +21 -74
  64. cribl_control_plane/models/outputfilesystem.py +0 -7
  65. cribl_control_plane/models/outputgooglechronicle.py +22 -65
  66. cribl_control_plane/models/outputgooglecloudlogging.py +22 -50
  67. cribl_control_plane/models/outputgooglecloudstorage.py +0 -7
  68. cribl_control_plane/models/outputgooglepubsub.py +21 -49
  69. cribl_control_plane/models/outputgrafanacloud.py +42 -98
  70. cribl_control_plane/models/outputgraphite.py +21 -49
  71. cribl_control_plane/models/outputhoneycomb.py +21 -49
  72. cribl_control_plane/models/outputhumiohec.py +21 -49
  73. cribl_control_plane/models/outputinfluxdb.py +21 -49
  74. cribl_control_plane/models/outputkafka.py +19 -162
  75. cribl_control_plane/models/outputkinesis.py +21 -56
  76. cribl_control_plane/models/outputloki.py +19 -47
  77. cribl_control_plane/models/outputminio.py +0 -7
  78. cribl_control_plane/models/outputmsk.py +19 -54
  79. cribl_control_plane/models/outputnewrelic.py +21 -49
  80. cribl_control_plane/models/outputnewrelicevents.py +22 -50
  81. cribl_control_plane/models/outputopentelemetry.py +21 -49
  82. cribl_control_plane/models/outputprometheus.py +21 -49
  83. cribl_control_plane/models/outputs3.py +0 -7
  84. cribl_control_plane/models/outputsentinel.py +21 -49
  85. cribl_control_plane/models/outputsentineloneaisiem.py +22 -50
  86. cribl_control_plane/models/outputservicenow.py +21 -49
  87. cribl_control_plane/models/outputsignalfx.py +21 -49
  88. cribl_control_plane/models/outputsns.py +19 -47
  89. cribl_control_plane/models/outputsplunk.py +21 -49
  90. cribl_control_plane/models/outputsplunkhec.py +21 -49
  91. cribl_control_plane/models/outputsplunklb.py +21 -49
  92. cribl_control_plane/models/outputsqs.py +19 -47
  93. cribl_control_plane/models/outputstatsd.py +21 -49
  94. cribl_control_plane/models/outputstatsdext.py +21 -49
  95. cribl_control_plane/models/outputsumologic.py +21 -49
  96. cribl_control_plane/models/outputsyslog.py +99 -129
  97. cribl_control_plane/models/outputtcpjson.py +21 -49
  98. cribl_control_plane/models/outputwavefront.py +21 -49
  99. cribl_control_plane/models/outputwebhook.py +21 -49
  100. cribl_control_plane/models/outputxsiam.py +19 -47
  101. cribl_control_plane/models/pipeline.py +4 -4
  102. cribl_control_plane/models/rulesetid.py +13 -0
  103. cribl_control_plane/models/runnablejobcollection.py +8 -12
  104. cribl_control_plane/models/runnablejobexecutor.py +8 -12
  105. cribl_control_plane/models/runnablejobscheduledsearch.py +8 -12
  106. cribl_control_plane/models/updateadminproductsmappingsbyproductandidop.py +63 -0
  107. cribl_control_plane/pipelines.py +8 -8
  108. {cribl_control_plane-0.2.1rc4.dist-info → cribl_control_plane-0.2.1rc5.dist-info}/METADATA +11 -2
  109. {cribl_control_plane-0.2.1rc4.dist-info → cribl_control_plane-0.2.1rc5.dist-info}/RECORD +110 -99
  110. {cribl_control_plane-0.2.1rc4.dist-info → cribl_control_plane-0.2.1rc5.dist-info}/WHEEL +0 -0
@@ -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 List, Optional
10
+ from typing import Any, List, Optional
11
11
  from typing_extensions import Annotated, NotRequired, TypedDict
12
12
 
13
13
 
@@ -123,12 +123,6 @@ class InputFirehoseMaximumTLSVersion(str, Enum, metaclass=utils.OpenEnumMeta):
123
123
 
124
124
  class InputFirehoseTLSSettingsServerSideTypedDict(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"""
132
126
  certificate_name: NotRequired[str]
133
127
  r"""The name of the predefined certificate"""
134
128
  priv_key_path: NotRequired[str]
@@ -139,6 +133,10 @@ class InputFirehoseTLSSettingsServerSideTypedDict(TypedDict):
139
133
  r"""Path on server containing certificates to use. PEM format. Can reference $ENV_VARS."""
140
134
  ca_path: NotRequired[str]
141
135
  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]
142
140
  min_version: NotRequired[InputFirehoseMinimumTLSVersion]
143
141
  max_version: NotRequired[InputFirehoseMaximumTLSVersion]
144
142
 
@@ -146,19 +144,6 @@ class InputFirehoseTLSSettingsServerSideTypedDict(TypedDict):
146
144
  class InputFirehoseTLSSettingsServerSide(BaseModel):
147
145
  disabled: Optional[bool] = True
148
146
 
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
-
162
147
  certificate_name: Annotated[
163
148
  Optional[str], pydantic.Field(alias="certificateName")
164
149
  ] = None
@@ -176,6 +161,17 @@ class InputFirehoseTLSSettingsServerSide(BaseModel):
176
161
  ca_path: Annotated[Optional[str], pydantic.Field(alias="caPath")] = None
177
162
  r"""Path on server containing CA certificates to use. PEM format. Can reference $ENV_VARS."""
178
163
 
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
+
179
175
  min_version: Annotated[
180
176
  Annotated[
181
177
  Optional[InputFirehoseMinimumTLSVersion],
@@ -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 List, Optional, Union
10
+ from typing import Any, List, Optional, Union
11
11
  from typing_extensions import Annotated, NotRequired, TypeAliasType, TypedDict
12
12
 
13
13
 
@@ -123,12 +123,6 @@ class InputGrafanaMaximumTLSVersion2(str, Enum, metaclass=utils.OpenEnumMeta):
123
123
 
124
124
  class InputGrafanaTLSSettingsServerSide2TypedDict(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"""
132
126
  certificate_name: NotRequired[str]
133
127
  r"""The name of the predefined certificate"""
134
128
  priv_key_path: NotRequired[str]
@@ -139,6 +133,10 @@ class InputGrafanaTLSSettingsServerSide2TypedDict(TypedDict):
139
133
  r"""Path on server containing certificates to use. PEM format. Can reference $ENV_VARS."""
140
134
  ca_path: NotRequired[str]
141
135
  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]
142
140
  min_version: NotRequired[InputGrafanaMinimumTLSVersion2]
143
141
  max_version: NotRequired[InputGrafanaMaximumTLSVersion2]
144
142
 
@@ -146,19 +144,6 @@ class InputGrafanaTLSSettingsServerSide2TypedDict(TypedDict):
146
144
  class InputGrafanaTLSSettingsServerSide2(BaseModel):
147
145
  disabled: Optional[bool] = True
148
146
 
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
-
162
147
  certificate_name: Annotated[
163
148
  Optional[str], pydantic.Field(alias="certificateName")
164
149
  ] = None
@@ -176,6 +161,17 @@ class InputGrafanaTLSSettingsServerSide2(BaseModel):
176
161
  ca_path: Annotated[Optional[str], pydantic.Field(alias="caPath")] = None
177
162
  r"""Path on server containing CA certificates to use. PEM format. Can reference $ENV_VARS."""
178
163
 
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
+
179
175
  min_version: Annotated[
180
176
  Annotated[
181
177
  Optional[InputGrafanaMinimumTLSVersion2],
@@ -757,12 +753,6 @@ class InputGrafanaMaximumTLSVersion1(str, Enum, metaclass=utils.OpenEnumMeta):
757
753
 
758
754
  class InputGrafanaTLSSettingsServerSide1TypedDict(TypedDict):
759
755
  disabled: NotRequired[bool]
760
- request_cert: NotRequired[bool]
761
- r"""Require clients to present their certificates. Used to perform client authentication using SSL certs."""
762
- reject_unauthorized: NotRequired[bool]
763
- r"""Reject certificates not authorized by a CA in the CA certificate path or by another trusted CA (such as the system's)"""
764
- common_name_regex: NotRequired[str]
765
- r"""Regex matching allowable common names in peer certificates' subject attribute"""
766
756
  certificate_name: NotRequired[str]
767
757
  r"""The name of the predefined certificate"""
768
758
  priv_key_path: NotRequired[str]
@@ -773,6 +763,10 @@ class InputGrafanaTLSSettingsServerSide1TypedDict(TypedDict):
773
763
  r"""Path on server containing certificates to use. PEM format. Can reference $ENV_VARS."""
774
764
  ca_path: NotRequired[str]
775
765
  r"""Path on server containing CA certificates to use. PEM format. Can reference $ENV_VARS."""
766
+ request_cert: NotRequired[bool]
767
+ r"""Require clients to present their certificates. Used to perform client authentication using SSL certs."""
768
+ reject_unauthorized: NotRequired[Any]
769
+ common_name_regex: NotRequired[Any]
776
770
  min_version: NotRequired[InputGrafanaMinimumTLSVersion1]
777
771
  max_version: NotRequired[InputGrafanaMaximumTLSVersion1]
778
772
 
@@ -780,19 +774,6 @@ class InputGrafanaTLSSettingsServerSide1TypedDict(TypedDict):
780
774
  class InputGrafanaTLSSettingsServerSide1(BaseModel):
781
775
  disabled: Optional[bool] = True
782
776
 
783
- request_cert: Annotated[Optional[bool], pydantic.Field(alias="requestCert")] = False
784
- r"""Require clients to present their certificates. Used to perform client authentication using SSL certs."""
785
-
786
- reject_unauthorized: Annotated[
787
- Optional[bool], pydantic.Field(alias="rejectUnauthorized")
788
- ] = True
789
- r"""Reject certificates not authorized by a CA in the CA certificate path or by another trusted CA (such as the system's)"""
790
-
791
- common_name_regex: Annotated[
792
- Optional[str], pydantic.Field(alias="commonNameRegex")
793
- ] = "/.*/"
794
- r"""Regex matching allowable common names in peer certificates' subject attribute"""
795
-
796
777
  certificate_name: Annotated[
797
778
  Optional[str], pydantic.Field(alias="certificateName")
798
779
  ] = None
@@ -810,6 +791,17 @@ class InputGrafanaTLSSettingsServerSide1(BaseModel):
810
791
  ca_path: Annotated[Optional[str], pydantic.Field(alias="caPath")] = None
811
792
  r"""Path on server containing CA certificates to use. PEM format. Can reference $ENV_VARS."""
812
793
 
794
+ request_cert: Annotated[Optional[bool], pydantic.Field(alias="requestCert")] = False
795
+ r"""Require clients to present their certificates. Used to perform client authentication using SSL certs."""
796
+
797
+ reject_unauthorized: Annotated[
798
+ Optional[Any], pydantic.Field(alias="rejectUnauthorized")
799
+ ] = None
800
+
801
+ common_name_regex: Annotated[
802
+ Optional[Any], pydantic.Field(alias="commonNameRegex")
803
+ ] = None
804
+
813
805
  min_version: Annotated[
814
806
  Annotated[
815
807
  Optional[InputGrafanaMinimumTLSVersion1],
@@ -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 List, Optional
10
+ from typing import Any, List, Optional
11
11
  from typing_extensions import Annotated, NotRequired, TypedDict
12
12
 
13
13
 
@@ -123,12 +123,6 @@ class InputHTTPMaximumTLSVersion(str, Enum, metaclass=utils.OpenEnumMeta):
123
123
 
124
124
  class InputHTTPTLSSettingsServerSideTypedDict(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"""
132
126
  certificate_name: NotRequired[str]
133
127
  r"""The name of the predefined certificate"""
134
128
  priv_key_path: NotRequired[str]
@@ -139,6 +133,10 @@ class InputHTTPTLSSettingsServerSideTypedDict(TypedDict):
139
133
  r"""Path on server containing certificates to use. PEM format. Can reference $ENV_VARS."""
140
134
  ca_path: NotRequired[str]
141
135
  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]
142
140
  min_version: NotRequired[InputHTTPMinimumTLSVersion]
143
141
  max_version: NotRequired[InputHTTPMaximumTLSVersion]
144
142
 
@@ -146,19 +144,6 @@ class InputHTTPTLSSettingsServerSideTypedDict(TypedDict):
146
144
  class InputHTTPTLSSettingsServerSide(BaseModel):
147
145
  disabled: Optional[bool] = True
148
146
 
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
-
162
147
  certificate_name: Annotated[
163
148
  Optional[str], pydantic.Field(alias="certificateName")
164
149
  ] = None
@@ -176,6 +161,17 @@ class InputHTTPTLSSettingsServerSide(BaseModel):
176
161
  ca_path: Annotated[Optional[str], pydantic.Field(alias="caPath")] = None
177
162
  r"""Path on server containing CA certificates to use. PEM format. Can reference $ENV_VARS."""
178
163
 
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
+
179
175
  min_version: Annotated[
180
176
  Annotated[
181
177
  Optional[InputHTTPMinimumTLSVersion],
@@ -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 List, Optional
10
+ from typing import Any, List, Optional
11
11
  from typing_extensions import Annotated, NotRequired, TypedDict
12
12
 
13
13
 
@@ -123,12 +123,6 @@ class InputHTTPRawMaximumTLSVersion(str, Enum, metaclass=utils.OpenEnumMeta):
123
123
 
124
124
  class InputHTTPRawTLSSettingsServerSideTypedDict(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"""
132
126
  certificate_name: NotRequired[str]
133
127
  r"""The name of the predefined certificate"""
134
128
  priv_key_path: NotRequired[str]
@@ -139,6 +133,10 @@ class InputHTTPRawTLSSettingsServerSideTypedDict(TypedDict):
139
133
  r"""Path on server containing certificates to use. PEM format. Can reference $ENV_VARS."""
140
134
  ca_path: NotRequired[str]
141
135
  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]
142
140
  min_version: NotRequired[InputHTTPRawMinimumTLSVersion]
143
141
  max_version: NotRequired[InputHTTPRawMaximumTLSVersion]
144
142
 
@@ -146,19 +144,6 @@ class InputHTTPRawTLSSettingsServerSideTypedDict(TypedDict):
146
144
  class InputHTTPRawTLSSettingsServerSide(BaseModel):
147
145
  disabled: Optional[bool] = True
148
146
 
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
-
162
147
  certificate_name: Annotated[
163
148
  Optional[str], pydantic.Field(alias="certificateName")
164
149
  ] = None
@@ -176,6 +161,17 @@ class InputHTTPRawTLSSettingsServerSide(BaseModel):
176
161
  ca_path: Annotated[Optional[str], pydantic.Field(alias="caPath")] = None
177
162
  r"""Path on server containing CA certificates to use. PEM format. Can reference $ENV_VARS."""
178
163
 
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
+
179
175
  min_version: Annotated[
180
176
  Annotated[
181
177
  Optional[InputHTTPRawMinimumTLSVersion],
@@ -255,13 +255,6 @@ class InputKafkaKafkaSchemaRegistryAuthentication(BaseModel):
255
255
  tls: Optional[InputKafkaKafkaSchemaRegistryTLSSettingsClientSide] = None
256
256
 
257
257
 
258
- class InputKafkaAuthenticationMethod(str, Enum, metaclass=utils.OpenEnumMeta):
259
- r"""Enter credentials directly, or select a stored secret"""
260
-
261
- MANUAL = "manual"
262
- SECRET = "secret"
263
-
264
-
265
258
  class InputKafkaSASLMechanism(str, Enum, metaclass=utils.OpenEnumMeta):
266
259
  # PLAIN
267
260
  PLAIN = "plain"
@@ -273,58 +266,13 @@ class InputKafkaSASLMechanism(str, Enum, metaclass=utils.OpenEnumMeta):
273
266
  KERBEROS = "kerberos"
274
267
 
275
268
 
276
- class InputKafkaOauthParamTypedDict(TypedDict):
277
- name: str
278
- value: str
279
-
280
-
281
- class InputKafkaOauthParam(BaseModel):
282
- name: str
283
-
284
- value: str
285
-
286
-
287
- class InputKafkaSaslExtensionTypedDict(TypedDict):
288
- name: str
289
- value: str
290
-
291
-
292
- class InputKafkaSaslExtension(BaseModel):
293
- name: str
294
-
295
- value: str
296
-
297
-
298
269
  class InputKafkaAuthenticationTypedDict(TypedDict):
299
270
  r"""Authentication parameters to use when connecting to brokers. Using TLS is highly recommended."""
300
271
 
301
272
  disabled: NotRequired[bool]
302
- username: NotRequired[str]
303
- password: NotRequired[str]
304
- auth_type: NotRequired[InputKafkaAuthenticationMethod]
305
- r"""Enter credentials directly, or select a stored secret"""
306
- credentials_secret: NotRequired[str]
307
- r"""Select or create a secret that references your credentials"""
308
273
  mechanism: NotRequired[InputKafkaSASLMechanism]
309
- keytab_location: NotRequired[str]
310
- r"""Location of keytab file for authentication principal"""
311
- principal: NotRequired[str]
312
- r"""Authentication principal, such as `kafka_user@example.com`"""
313
- broker_service_class: NotRequired[str]
314
- r"""Kerberos service class for Kafka brokers, such as `kafka`"""
315
274
  oauth_enabled: NotRequired[bool]
316
275
  r"""Enable OAuth authentication"""
317
- token_url: NotRequired[str]
318
- r"""URL of the token endpoint to use for OAuth authentication"""
319
- client_id: NotRequired[str]
320
- r"""Client ID to use for OAuth authentication"""
321
- oauth_secret_type: NotRequired[str]
322
- client_text_secret: NotRequired[str]
323
- r"""Select or create a stored text secret"""
324
- oauth_params: NotRequired[List[InputKafkaOauthParamTypedDict]]
325
- r"""Additional fields to send to the token endpoint, such as scope or audience"""
326
- sasl_extensions: NotRequired[List[InputKafkaSaslExtensionTypedDict]]
327
- r"""Additional SASL extension fields, such as Confluent's logicalCluster or identityPoolId"""
328
276
 
329
277
 
330
278
  class InputKafkaAuthentication(BaseModel):
@@ -332,71 +280,15 @@ class InputKafkaAuthentication(BaseModel):
332
280
 
333
281
  disabled: Optional[bool] = True
334
282
 
335
- username: Optional[str] = None
336
-
337
- password: Optional[str] = None
338
-
339
- auth_type: Annotated[
340
- Annotated[
341
- Optional[InputKafkaAuthenticationMethod],
342
- PlainValidator(validate_open_enum(False)),
343
- ],
344
- pydantic.Field(alias="authType"),
345
- ] = InputKafkaAuthenticationMethod.MANUAL
346
- r"""Enter credentials directly, or select a stored secret"""
347
-
348
- credentials_secret: Annotated[
349
- Optional[str], pydantic.Field(alias="credentialsSecret")
350
- ] = None
351
- r"""Select or create a secret that references your credentials"""
352
-
353
283
  mechanism: Annotated[
354
284
  Optional[InputKafkaSASLMechanism], PlainValidator(validate_open_enum(False))
355
285
  ] = InputKafkaSASLMechanism.PLAIN
356
286
 
357
- keytab_location: Annotated[
358
- Optional[str], pydantic.Field(alias="keytabLocation")
359
- ] = None
360
- r"""Location of keytab file for authentication principal"""
361
-
362
- principal: Optional[str] = None
363
- r"""Authentication principal, such as `kafka_user@example.com`"""
364
-
365
- broker_service_class: Annotated[
366
- Optional[str], pydantic.Field(alias="brokerServiceClass")
367
- ] = None
368
- r"""Kerberos service class for Kafka brokers, such as `kafka`"""
369
-
370
287
  oauth_enabled: Annotated[Optional[bool], pydantic.Field(alias="oauthEnabled")] = (
371
288
  False
372
289
  )
373
290
  r"""Enable OAuth authentication"""
374
291
 
375
- token_url: Annotated[Optional[str], pydantic.Field(alias="tokenUrl")] = None
376
- r"""URL of the token endpoint to use for OAuth authentication"""
377
-
378
- client_id: Annotated[Optional[str], pydantic.Field(alias="clientId")] = None
379
- r"""Client ID to use for OAuth authentication"""
380
-
381
- oauth_secret_type: Annotated[
382
- Optional[str], pydantic.Field(alias="oauthSecretType")
383
- ] = "secret"
384
-
385
- client_text_secret: Annotated[
386
- Optional[str], pydantic.Field(alias="clientTextSecret")
387
- ] = None
388
- r"""Select or create a stored text secret"""
389
-
390
- oauth_params: Annotated[
391
- Optional[List[InputKafkaOauthParam]], pydantic.Field(alias="oauthParams")
392
- ] = None
393
- r"""Additional fields to send to the token endpoint, such as scope or audience"""
394
-
395
- sasl_extensions: Annotated[
396
- Optional[List[InputKafkaSaslExtension]], pydantic.Field(alias="saslExtensions")
397
- ] = None
398
- r"""Additional SASL extension fields, such as Confluent's logicalCluster or identityPoolId"""
399
-
400
292
 
401
293
  class InputKafkaMinimumTLSVersion(str, Enum, metaclass=utils.OpenEnumMeta):
402
294
  TL_SV1 = "TLSv1"
@@ -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 List, Optional
10
+ from typing import Any, List, Optional
11
11
  from typing_extensions import Annotated, NotRequired, TypedDict
12
12
 
13
13
 
@@ -123,12 +123,6 @@ class InputLokiMaximumTLSVersion(str, Enum, metaclass=utils.OpenEnumMeta):
123
123
 
124
124
  class InputLokiTLSSettingsServerSideTypedDict(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"""
132
126
  certificate_name: NotRequired[str]
133
127
  r"""The name of the predefined certificate"""
134
128
  priv_key_path: NotRequired[str]
@@ -139,6 +133,10 @@ class InputLokiTLSSettingsServerSideTypedDict(TypedDict):
139
133
  r"""Path on server containing certificates to use. PEM format. Can reference $ENV_VARS."""
140
134
  ca_path: NotRequired[str]
141
135
  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]
142
140
  min_version: NotRequired[InputLokiMinimumTLSVersion]
143
141
  max_version: NotRequired[InputLokiMaximumTLSVersion]
144
142
 
@@ -146,19 +144,6 @@ class InputLokiTLSSettingsServerSideTypedDict(TypedDict):
146
144
  class InputLokiTLSSettingsServerSide(BaseModel):
147
145
  disabled: Optional[bool] = True
148
146
 
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
-
162
147
  certificate_name: Annotated[
163
148
  Optional[str], pydantic.Field(alias="certificateName")
164
149
  ] = None
@@ -176,6 +161,17 @@ class InputLokiTLSSettingsServerSide(BaseModel):
176
161
  ca_path: Annotated[Optional[str], pydantic.Field(alias="caPath")] = None
177
162
  r"""Path on server containing CA certificates to use. PEM format. Can reference $ENV_VARS."""
178
163
 
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
+
179
175
  min_version: Annotated[
180
176
  Annotated[
181
177
  Optional[InputLokiMinimumTLSVersion],
@@ -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 List, Optional
10
+ from typing import Any, List, Optional
11
11
  from typing_extensions import Annotated, NotRequired, TypedDict
12
12
 
13
13
 
@@ -123,12 +123,6 @@ class InputMetricsMaximumTLSVersion(str, Enum, metaclass=utils.OpenEnumMeta):
123
123
 
124
124
  class InputMetricsTLSSettingsServerSideTypedDict(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"""
132
126
  certificate_name: NotRequired[str]
133
127
  r"""The name of the predefined certificate"""
134
128
  priv_key_path: NotRequired[str]
@@ -139,6 +133,10 @@ class InputMetricsTLSSettingsServerSideTypedDict(TypedDict):
139
133
  r"""Path on server containing certificates to use. PEM format. Can reference $ENV_VARS."""
140
134
  ca_path: NotRequired[str]
141
135
  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]
142
140
  min_version: NotRequired[InputMetricsMinimumTLSVersion]
143
141
  max_version: NotRequired[InputMetricsMaximumTLSVersion]
144
142
 
@@ -146,19 +144,6 @@ class InputMetricsTLSSettingsServerSideTypedDict(TypedDict):
146
144
  class InputMetricsTLSSettingsServerSide(BaseModel):
147
145
  disabled: Optional[bool] = True
148
146
 
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
-
162
147
  certificate_name: Annotated[
163
148
  Optional[str], pydantic.Field(alias="certificateName")
164
149
  ] = None
@@ -176,6 +161,17 @@ class InputMetricsTLSSettingsServerSide(BaseModel):
176
161
  ca_path: Annotated[Optional[str], pydantic.Field(alias="caPath")] = None
177
162
  r"""Path on server containing CA certificates to use. PEM format. Can reference $ENV_VARS."""
178
163
 
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
+
179
175
  min_version: Annotated[
180
176
  Annotated[
181
177
  Optional[InputMetricsMinimumTLSVersion],