pulumi-vault 6.1.1__py3-none-any.whl → 6.2.0__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.
@@ -0,0 +1,614 @@
1
+ # coding=utf-8
2
+ # *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
3
+ # *** Do not edit by hand unless you're certain you know what you are doing! ***
4
+
5
+ import copy
6
+ import warnings
7
+ import pulumi
8
+ import pulumi.runtime
9
+ from typing import Any, Mapping, Optional, Sequence, Union, overload
10
+ from .. import _utilities
11
+ from . import outputs
12
+ from ._inputs import *
13
+
14
+ __all__ = ['BackendConfigEstArgs', 'BackendConfigEst']
15
+
16
+ @pulumi.input_type
17
+ class BackendConfigEstArgs:
18
+ def __init__(__self__, *,
19
+ backend: pulumi.Input[str],
20
+ audit_fields: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
21
+ authenticators: Optional[pulumi.Input['BackendConfigEstAuthenticatorsArgs']] = None,
22
+ default_mount: Optional[pulumi.Input[bool]] = None,
23
+ default_path_policy: Optional[pulumi.Input[str]] = None,
24
+ enable_sentinel_parsing: Optional[pulumi.Input[bool]] = None,
25
+ enabled: Optional[pulumi.Input[bool]] = None,
26
+ label_to_path_policy: Optional[pulumi.Input[Mapping[str, Any]]] = None,
27
+ namespace: Optional[pulumi.Input[str]] = None):
28
+ """
29
+ The set of arguments for constructing a BackendConfigEst resource.
30
+ :param pulumi.Input[str] backend: The path to the PKI secret backend to
31
+ read the EST configuration from, with no leading or trailing `/`s.
32
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] audit_fields: Fields parsed from the CSR that appear in the audit and can be used by sentinel policies.
33
+
34
+ <a id="nestedatt--authenticators"></a>
35
+ :param pulumi.Input['BackendConfigEstAuthenticatorsArgs'] authenticators: Lists the mount accessors EST should delegate authentication requests towards (see below for nested schema).
36
+ :param pulumi.Input[bool] default_mount: If set, this mount will register the default `.well-known/est` URL path. Only a single mount can enable this across a Vault cluster.
37
+ :param pulumi.Input[str] default_path_policy: Required to be set if default_mount is enabled. Specifies the behavior for requests using the default EST label. Can be sign-verbatim or a role given by role:<role_name>.
38
+ :param pulumi.Input[bool] enable_sentinel_parsing: If set, parse out fields from the provided CSR making them available for Sentinel policies.
39
+ :param pulumi.Input[bool] enabled: Specifies whether EST is enabled.
40
+ :param pulumi.Input[Mapping[str, Any]] label_to_path_policy: Configures a pairing of an EST label with the redirected behavior for requests hitting that role. The path policy can be sign-verbatim or a role given by role:<role_name>. Labels must be unique across Vault cluster, and will register .well-known/est/<label> URL paths.
41
+ :param pulumi.Input[str] namespace: The namespace of the target resource.
42
+ The value should not contain leading or trailing forward slashes.
43
+ The `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault/index.html#namespace).
44
+ *Available only for Vault Enterprise*.
45
+ """
46
+ pulumi.set(__self__, "backend", backend)
47
+ if audit_fields is not None:
48
+ pulumi.set(__self__, "audit_fields", audit_fields)
49
+ if authenticators is not None:
50
+ pulumi.set(__self__, "authenticators", authenticators)
51
+ if default_mount is not None:
52
+ pulumi.set(__self__, "default_mount", default_mount)
53
+ if default_path_policy is not None:
54
+ pulumi.set(__self__, "default_path_policy", default_path_policy)
55
+ if enable_sentinel_parsing is not None:
56
+ pulumi.set(__self__, "enable_sentinel_parsing", enable_sentinel_parsing)
57
+ if enabled is not None:
58
+ pulumi.set(__self__, "enabled", enabled)
59
+ if label_to_path_policy is not None:
60
+ pulumi.set(__self__, "label_to_path_policy", label_to_path_policy)
61
+ if namespace is not None:
62
+ pulumi.set(__self__, "namespace", namespace)
63
+
64
+ @property
65
+ @pulumi.getter
66
+ def backend(self) -> pulumi.Input[str]:
67
+ """
68
+ The path to the PKI secret backend to
69
+ read the EST configuration from, with no leading or trailing `/`s.
70
+ """
71
+ return pulumi.get(self, "backend")
72
+
73
+ @backend.setter
74
+ def backend(self, value: pulumi.Input[str]):
75
+ pulumi.set(self, "backend", value)
76
+
77
+ @property
78
+ @pulumi.getter(name="auditFields")
79
+ def audit_fields(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
80
+ """
81
+ Fields parsed from the CSR that appear in the audit and can be used by sentinel policies.
82
+
83
+ <a id="nestedatt--authenticators"></a>
84
+ """
85
+ return pulumi.get(self, "audit_fields")
86
+
87
+ @audit_fields.setter
88
+ def audit_fields(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
89
+ pulumi.set(self, "audit_fields", value)
90
+
91
+ @property
92
+ @pulumi.getter
93
+ def authenticators(self) -> Optional[pulumi.Input['BackendConfigEstAuthenticatorsArgs']]:
94
+ """
95
+ Lists the mount accessors EST should delegate authentication requests towards (see below for nested schema).
96
+ """
97
+ return pulumi.get(self, "authenticators")
98
+
99
+ @authenticators.setter
100
+ def authenticators(self, value: Optional[pulumi.Input['BackendConfigEstAuthenticatorsArgs']]):
101
+ pulumi.set(self, "authenticators", value)
102
+
103
+ @property
104
+ @pulumi.getter(name="defaultMount")
105
+ def default_mount(self) -> Optional[pulumi.Input[bool]]:
106
+ """
107
+ If set, this mount will register the default `.well-known/est` URL path. Only a single mount can enable this across a Vault cluster.
108
+ """
109
+ return pulumi.get(self, "default_mount")
110
+
111
+ @default_mount.setter
112
+ def default_mount(self, value: Optional[pulumi.Input[bool]]):
113
+ pulumi.set(self, "default_mount", value)
114
+
115
+ @property
116
+ @pulumi.getter(name="defaultPathPolicy")
117
+ def default_path_policy(self) -> Optional[pulumi.Input[str]]:
118
+ """
119
+ Required to be set if default_mount is enabled. Specifies the behavior for requests using the default EST label. Can be sign-verbatim or a role given by role:<role_name>.
120
+ """
121
+ return pulumi.get(self, "default_path_policy")
122
+
123
+ @default_path_policy.setter
124
+ def default_path_policy(self, value: Optional[pulumi.Input[str]]):
125
+ pulumi.set(self, "default_path_policy", value)
126
+
127
+ @property
128
+ @pulumi.getter(name="enableSentinelParsing")
129
+ def enable_sentinel_parsing(self) -> Optional[pulumi.Input[bool]]:
130
+ """
131
+ If set, parse out fields from the provided CSR making them available for Sentinel policies.
132
+ """
133
+ return pulumi.get(self, "enable_sentinel_parsing")
134
+
135
+ @enable_sentinel_parsing.setter
136
+ def enable_sentinel_parsing(self, value: Optional[pulumi.Input[bool]]):
137
+ pulumi.set(self, "enable_sentinel_parsing", value)
138
+
139
+ @property
140
+ @pulumi.getter
141
+ def enabled(self) -> Optional[pulumi.Input[bool]]:
142
+ """
143
+ Specifies whether EST is enabled.
144
+ """
145
+ return pulumi.get(self, "enabled")
146
+
147
+ @enabled.setter
148
+ def enabled(self, value: Optional[pulumi.Input[bool]]):
149
+ pulumi.set(self, "enabled", value)
150
+
151
+ @property
152
+ @pulumi.getter(name="labelToPathPolicy")
153
+ def label_to_path_policy(self) -> Optional[pulumi.Input[Mapping[str, Any]]]:
154
+ """
155
+ Configures a pairing of an EST label with the redirected behavior for requests hitting that role. The path policy can be sign-verbatim or a role given by role:<role_name>. Labels must be unique across Vault cluster, and will register .well-known/est/<label> URL paths.
156
+ """
157
+ return pulumi.get(self, "label_to_path_policy")
158
+
159
+ @label_to_path_policy.setter
160
+ def label_to_path_policy(self, value: Optional[pulumi.Input[Mapping[str, Any]]]):
161
+ pulumi.set(self, "label_to_path_policy", value)
162
+
163
+ @property
164
+ @pulumi.getter
165
+ def namespace(self) -> Optional[pulumi.Input[str]]:
166
+ """
167
+ The namespace of the target resource.
168
+ The value should not contain leading or trailing forward slashes.
169
+ The `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault/index.html#namespace).
170
+ *Available only for Vault Enterprise*.
171
+ """
172
+ return pulumi.get(self, "namespace")
173
+
174
+ @namespace.setter
175
+ def namespace(self, value: Optional[pulumi.Input[str]]):
176
+ pulumi.set(self, "namespace", value)
177
+
178
+
179
+ @pulumi.input_type
180
+ class _BackendConfigEstState:
181
+ def __init__(__self__, *,
182
+ audit_fields: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
183
+ authenticators: Optional[pulumi.Input['BackendConfigEstAuthenticatorsArgs']] = None,
184
+ backend: Optional[pulumi.Input[str]] = None,
185
+ default_mount: Optional[pulumi.Input[bool]] = None,
186
+ default_path_policy: Optional[pulumi.Input[str]] = None,
187
+ enable_sentinel_parsing: Optional[pulumi.Input[bool]] = None,
188
+ enabled: Optional[pulumi.Input[bool]] = None,
189
+ label_to_path_policy: Optional[pulumi.Input[Mapping[str, Any]]] = None,
190
+ last_updated: Optional[pulumi.Input[str]] = None,
191
+ namespace: Optional[pulumi.Input[str]] = None):
192
+ """
193
+ Input properties used for looking up and filtering BackendConfigEst resources.
194
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] audit_fields: Fields parsed from the CSR that appear in the audit and can be used by sentinel policies.
195
+
196
+ <a id="nestedatt--authenticators"></a>
197
+ :param pulumi.Input['BackendConfigEstAuthenticatorsArgs'] authenticators: Lists the mount accessors EST should delegate authentication requests towards (see below for nested schema).
198
+ :param pulumi.Input[str] backend: The path to the PKI secret backend to
199
+ read the EST configuration from, with no leading or trailing `/`s.
200
+ :param pulumi.Input[bool] default_mount: If set, this mount will register the default `.well-known/est` URL path. Only a single mount can enable this across a Vault cluster.
201
+ :param pulumi.Input[str] default_path_policy: Required to be set if default_mount is enabled. Specifies the behavior for requests using the default EST label. Can be sign-verbatim or a role given by role:<role_name>.
202
+ :param pulumi.Input[bool] enable_sentinel_parsing: If set, parse out fields from the provided CSR making them available for Sentinel policies.
203
+ :param pulumi.Input[bool] enabled: Specifies whether EST is enabled.
204
+ :param pulumi.Input[Mapping[str, Any]] label_to_path_policy: Configures a pairing of an EST label with the redirected behavior for requests hitting that role. The path policy can be sign-verbatim or a role given by role:<role_name>. Labels must be unique across Vault cluster, and will register .well-known/est/<label> URL paths.
205
+ :param pulumi.Input[str] last_updated: A read-only timestamp representing the last time the configuration was updated.
206
+ :param pulumi.Input[str] namespace: The namespace of the target resource.
207
+ The value should not contain leading or trailing forward slashes.
208
+ The `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault/index.html#namespace).
209
+ *Available only for Vault Enterprise*.
210
+ """
211
+ if audit_fields is not None:
212
+ pulumi.set(__self__, "audit_fields", audit_fields)
213
+ if authenticators is not None:
214
+ pulumi.set(__self__, "authenticators", authenticators)
215
+ if backend is not None:
216
+ pulumi.set(__self__, "backend", backend)
217
+ if default_mount is not None:
218
+ pulumi.set(__self__, "default_mount", default_mount)
219
+ if default_path_policy is not None:
220
+ pulumi.set(__self__, "default_path_policy", default_path_policy)
221
+ if enable_sentinel_parsing is not None:
222
+ pulumi.set(__self__, "enable_sentinel_parsing", enable_sentinel_parsing)
223
+ if enabled is not None:
224
+ pulumi.set(__self__, "enabled", enabled)
225
+ if label_to_path_policy is not None:
226
+ pulumi.set(__self__, "label_to_path_policy", label_to_path_policy)
227
+ if last_updated is not None:
228
+ pulumi.set(__self__, "last_updated", last_updated)
229
+ if namespace is not None:
230
+ pulumi.set(__self__, "namespace", namespace)
231
+
232
+ @property
233
+ @pulumi.getter(name="auditFields")
234
+ def audit_fields(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
235
+ """
236
+ Fields parsed from the CSR that appear in the audit and can be used by sentinel policies.
237
+
238
+ <a id="nestedatt--authenticators"></a>
239
+ """
240
+ return pulumi.get(self, "audit_fields")
241
+
242
+ @audit_fields.setter
243
+ def audit_fields(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
244
+ pulumi.set(self, "audit_fields", value)
245
+
246
+ @property
247
+ @pulumi.getter
248
+ def authenticators(self) -> Optional[pulumi.Input['BackendConfigEstAuthenticatorsArgs']]:
249
+ """
250
+ Lists the mount accessors EST should delegate authentication requests towards (see below for nested schema).
251
+ """
252
+ return pulumi.get(self, "authenticators")
253
+
254
+ @authenticators.setter
255
+ def authenticators(self, value: Optional[pulumi.Input['BackendConfigEstAuthenticatorsArgs']]):
256
+ pulumi.set(self, "authenticators", value)
257
+
258
+ @property
259
+ @pulumi.getter
260
+ def backend(self) -> Optional[pulumi.Input[str]]:
261
+ """
262
+ The path to the PKI secret backend to
263
+ read the EST configuration from, with no leading or trailing `/`s.
264
+ """
265
+ return pulumi.get(self, "backend")
266
+
267
+ @backend.setter
268
+ def backend(self, value: Optional[pulumi.Input[str]]):
269
+ pulumi.set(self, "backend", value)
270
+
271
+ @property
272
+ @pulumi.getter(name="defaultMount")
273
+ def default_mount(self) -> Optional[pulumi.Input[bool]]:
274
+ """
275
+ If set, this mount will register the default `.well-known/est` URL path. Only a single mount can enable this across a Vault cluster.
276
+ """
277
+ return pulumi.get(self, "default_mount")
278
+
279
+ @default_mount.setter
280
+ def default_mount(self, value: Optional[pulumi.Input[bool]]):
281
+ pulumi.set(self, "default_mount", value)
282
+
283
+ @property
284
+ @pulumi.getter(name="defaultPathPolicy")
285
+ def default_path_policy(self) -> Optional[pulumi.Input[str]]:
286
+ """
287
+ Required to be set if default_mount is enabled. Specifies the behavior for requests using the default EST label. Can be sign-verbatim or a role given by role:<role_name>.
288
+ """
289
+ return pulumi.get(self, "default_path_policy")
290
+
291
+ @default_path_policy.setter
292
+ def default_path_policy(self, value: Optional[pulumi.Input[str]]):
293
+ pulumi.set(self, "default_path_policy", value)
294
+
295
+ @property
296
+ @pulumi.getter(name="enableSentinelParsing")
297
+ def enable_sentinel_parsing(self) -> Optional[pulumi.Input[bool]]:
298
+ """
299
+ If set, parse out fields from the provided CSR making them available for Sentinel policies.
300
+ """
301
+ return pulumi.get(self, "enable_sentinel_parsing")
302
+
303
+ @enable_sentinel_parsing.setter
304
+ def enable_sentinel_parsing(self, value: Optional[pulumi.Input[bool]]):
305
+ pulumi.set(self, "enable_sentinel_parsing", value)
306
+
307
+ @property
308
+ @pulumi.getter
309
+ def enabled(self) -> Optional[pulumi.Input[bool]]:
310
+ """
311
+ Specifies whether EST is enabled.
312
+ """
313
+ return pulumi.get(self, "enabled")
314
+
315
+ @enabled.setter
316
+ def enabled(self, value: Optional[pulumi.Input[bool]]):
317
+ pulumi.set(self, "enabled", value)
318
+
319
+ @property
320
+ @pulumi.getter(name="labelToPathPolicy")
321
+ def label_to_path_policy(self) -> Optional[pulumi.Input[Mapping[str, Any]]]:
322
+ """
323
+ Configures a pairing of an EST label with the redirected behavior for requests hitting that role. The path policy can be sign-verbatim or a role given by role:<role_name>. Labels must be unique across Vault cluster, and will register .well-known/est/<label> URL paths.
324
+ """
325
+ return pulumi.get(self, "label_to_path_policy")
326
+
327
+ @label_to_path_policy.setter
328
+ def label_to_path_policy(self, value: Optional[pulumi.Input[Mapping[str, Any]]]):
329
+ pulumi.set(self, "label_to_path_policy", value)
330
+
331
+ @property
332
+ @pulumi.getter(name="lastUpdated")
333
+ def last_updated(self) -> Optional[pulumi.Input[str]]:
334
+ """
335
+ A read-only timestamp representing the last time the configuration was updated.
336
+ """
337
+ return pulumi.get(self, "last_updated")
338
+
339
+ @last_updated.setter
340
+ def last_updated(self, value: Optional[pulumi.Input[str]]):
341
+ pulumi.set(self, "last_updated", value)
342
+
343
+ @property
344
+ @pulumi.getter
345
+ def namespace(self) -> Optional[pulumi.Input[str]]:
346
+ """
347
+ The namespace of the target resource.
348
+ The value should not contain leading or trailing forward slashes.
349
+ The `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault/index.html#namespace).
350
+ *Available only for Vault Enterprise*.
351
+ """
352
+ return pulumi.get(self, "namespace")
353
+
354
+ @namespace.setter
355
+ def namespace(self, value: Optional[pulumi.Input[str]]):
356
+ pulumi.set(self, "namespace", value)
357
+
358
+
359
+ class BackendConfigEst(pulumi.CustomResource):
360
+ @overload
361
+ def __init__(__self__,
362
+ resource_name: str,
363
+ opts: Optional[pulumi.ResourceOptions] = None,
364
+ audit_fields: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
365
+ authenticators: Optional[pulumi.Input[pulumi.InputType['BackendConfigEstAuthenticatorsArgs']]] = None,
366
+ backend: Optional[pulumi.Input[str]] = None,
367
+ default_mount: Optional[pulumi.Input[bool]] = None,
368
+ default_path_policy: Optional[pulumi.Input[str]] = None,
369
+ enable_sentinel_parsing: Optional[pulumi.Input[bool]] = None,
370
+ enabled: Optional[pulumi.Input[bool]] = None,
371
+ label_to_path_policy: Optional[pulumi.Input[Mapping[str, Any]]] = None,
372
+ namespace: Optional[pulumi.Input[str]] = None,
373
+ __props__=None):
374
+ """
375
+ Allows setting the EST configuration on a PKI Secret Backend
376
+
377
+ ## Import
378
+
379
+ The PKI config cluster can be imported using the resource's `id`.
380
+ In the case of the example above the `id` would be `pki-root/config/est`,
381
+ where the `pki-root` component is the resource's `backend`, e.g.
382
+
383
+ ```sh
384
+ $ pulumi import vault:pkiSecret/backendConfigEst:BackendConfigEst example pki-root/config/est
385
+ ```
386
+
387
+ :param str resource_name: The name of the resource.
388
+ :param pulumi.ResourceOptions opts: Options for the resource.
389
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] audit_fields: Fields parsed from the CSR that appear in the audit and can be used by sentinel policies.
390
+
391
+ <a id="nestedatt--authenticators"></a>
392
+ :param pulumi.Input[pulumi.InputType['BackendConfigEstAuthenticatorsArgs']] authenticators: Lists the mount accessors EST should delegate authentication requests towards (see below for nested schema).
393
+ :param pulumi.Input[str] backend: The path to the PKI secret backend to
394
+ read the EST configuration from, with no leading or trailing `/`s.
395
+ :param pulumi.Input[bool] default_mount: If set, this mount will register the default `.well-known/est` URL path. Only a single mount can enable this across a Vault cluster.
396
+ :param pulumi.Input[str] default_path_policy: Required to be set if default_mount is enabled. Specifies the behavior for requests using the default EST label. Can be sign-verbatim or a role given by role:<role_name>.
397
+ :param pulumi.Input[bool] enable_sentinel_parsing: If set, parse out fields from the provided CSR making them available for Sentinel policies.
398
+ :param pulumi.Input[bool] enabled: Specifies whether EST is enabled.
399
+ :param pulumi.Input[Mapping[str, Any]] label_to_path_policy: Configures a pairing of an EST label with the redirected behavior for requests hitting that role. The path policy can be sign-verbatim or a role given by role:<role_name>. Labels must be unique across Vault cluster, and will register .well-known/est/<label> URL paths.
400
+ :param pulumi.Input[str] namespace: The namespace of the target resource.
401
+ The value should not contain leading or trailing forward slashes.
402
+ The `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault/index.html#namespace).
403
+ *Available only for Vault Enterprise*.
404
+ """
405
+ ...
406
+ @overload
407
+ def __init__(__self__,
408
+ resource_name: str,
409
+ args: BackendConfigEstArgs,
410
+ opts: Optional[pulumi.ResourceOptions] = None):
411
+ """
412
+ Allows setting the EST configuration on a PKI Secret Backend
413
+
414
+ ## Import
415
+
416
+ The PKI config cluster can be imported using the resource's `id`.
417
+ In the case of the example above the `id` would be `pki-root/config/est`,
418
+ where the `pki-root` component is the resource's `backend`, e.g.
419
+
420
+ ```sh
421
+ $ pulumi import vault:pkiSecret/backendConfigEst:BackendConfigEst example pki-root/config/est
422
+ ```
423
+
424
+ :param str resource_name: The name of the resource.
425
+ :param BackendConfigEstArgs args: The arguments to use to populate this resource's properties.
426
+ :param pulumi.ResourceOptions opts: Options for the resource.
427
+ """
428
+ ...
429
+ def __init__(__self__, resource_name: str, *args, **kwargs):
430
+ resource_args, opts = _utilities.get_resource_args_opts(BackendConfigEstArgs, pulumi.ResourceOptions, *args, **kwargs)
431
+ if resource_args is not None:
432
+ __self__._internal_init(resource_name, opts, **resource_args.__dict__)
433
+ else:
434
+ __self__._internal_init(resource_name, *args, **kwargs)
435
+
436
+ def _internal_init(__self__,
437
+ resource_name: str,
438
+ opts: Optional[pulumi.ResourceOptions] = None,
439
+ audit_fields: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
440
+ authenticators: Optional[pulumi.Input[pulumi.InputType['BackendConfigEstAuthenticatorsArgs']]] = None,
441
+ backend: Optional[pulumi.Input[str]] = None,
442
+ default_mount: Optional[pulumi.Input[bool]] = None,
443
+ default_path_policy: Optional[pulumi.Input[str]] = None,
444
+ enable_sentinel_parsing: Optional[pulumi.Input[bool]] = None,
445
+ enabled: Optional[pulumi.Input[bool]] = None,
446
+ label_to_path_policy: Optional[pulumi.Input[Mapping[str, Any]]] = None,
447
+ namespace: Optional[pulumi.Input[str]] = None,
448
+ __props__=None):
449
+ opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
450
+ if not isinstance(opts, pulumi.ResourceOptions):
451
+ raise TypeError('Expected resource options to be a ResourceOptions instance')
452
+ if opts.id is None:
453
+ if __props__ is not None:
454
+ raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
455
+ __props__ = BackendConfigEstArgs.__new__(BackendConfigEstArgs)
456
+
457
+ __props__.__dict__["audit_fields"] = audit_fields
458
+ __props__.__dict__["authenticators"] = authenticators
459
+ if backend is None and not opts.urn:
460
+ raise TypeError("Missing required property 'backend'")
461
+ __props__.__dict__["backend"] = backend
462
+ __props__.__dict__["default_mount"] = default_mount
463
+ __props__.__dict__["default_path_policy"] = default_path_policy
464
+ __props__.__dict__["enable_sentinel_parsing"] = enable_sentinel_parsing
465
+ __props__.__dict__["enabled"] = enabled
466
+ __props__.__dict__["label_to_path_policy"] = label_to_path_policy
467
+ __props__.__dict__["namespace"] = namespace
468
+ __props__.__dict__["last_updated"] = None
469
+ super(BackendConfigEst, __self__).__init__(
470
+ 'vault:pkiSecret/backendConfigEst:BackendConfigEst',
471
+ resource_name,
472
+ __props__,
473
+ opts)
474
+
475
+ @staticmethod
476
+ def get(resource_name: str,
477
+ id: pulumi.Input[str],
478
+ opts: Optional[pulumi.ResourceOptions] = None,
479
+ audit_fields: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
480
+ authenticators: Optional[pulumi.Input[pulumi.InputType['BackendConfigEstAuthenticatorsArgs']]] = None,
481
+ backend: Optional[pulumi.Input[str]] = None,
482
+ default_mount: Optional[pulumi.Input[bool]] = None,
483
+ default_path_policy: Optional[pulumi.Input[str]] = None,
484
+ enable_sentinel_parsing: Optional[pulumi.Input[bool]] = None,
485
+ enabled: Optional[pulumi.Input[bool]] = None,
486
+ label_to_path_policy: Optional[pulumi.Input[Mapping[str, Any]]] = None,
487
+ last_updated: Optional[pulumi.Input[str]] = None,
488
+ namespace: Optional[pulumi.Input[str]] = None) -> 'BackendConfigEst':
489
+ """
490
+ Get an existing BackendConfigEst resource's state with the given name, id, and optional extra
491
+ properties used to qualify the lookup.
492
+
493
+ :param str resource_name: The unique name of the resulting resource.
494
+ :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
495
+ :param pulumi.ResourceOptions opts: Options for the resource.
496
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] audit_fields: Fields parsed from the CSR that appear in the audit and can be used by sentinel policies.
497
+
498
+ <a id="nestedatt--authenticators"></a>
499
+ :param pulumi.Input[pulumi.InputType['BackendConfigEstAuthenticatorsArgs']] authenticators: Lists the mount accessors EST should delegate authentication requests towards (see below for nested schema).
500
+ :param pulumi.Input[str] backend: The path to the PKI secret backend to
501
+ read the EST configuration from, with no leading or trailing `/`s.
502
+ :param pulumi.Input[bool] default_mount: If set, this mount will register the default `.well-known/est` URL path. Only a single mount can enable this across a Vault cluster.
503
+ :param pulumi.Input[str] default_path_policy: Required to be set if default_mount is enabled. Specifies the behavior for requests using the default EST label. Can be sign-verbatim or a role given by role:<role_name>.
504
+ :param pulumi.Input[bool] enable_sentinel_parsing: If set, parse out fields from the provided CSR making them available for Sentinel policies.
505
+ :param pulumi.Input[bool] enabled: Specifies whether EST is enabled.
506
+ :param pulumi.Input[Mapping[str, Any]] label_to_path_policy: Configures a pairing of an EST label with the redirected behavior for requests hitting that role. The path policy can be sign-verbatim or a role given by role:<role_name>. Labels must be unique across Vault cluster, and will register .well-known/est/<label> URL paths.
507
+ :param pulumi.Input[str] last_updated: A read-only timestamp representing the last time the configuration was updated.
508
+ :param pulumi.Input[str] namespace: The namespace of the target resource.
509
+ The value should not contain leading or trailing forward slashes.
510
+ The `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault/index.html#namespace).
511
+ *Available only for Vault Enterprise*.
512
+ """
513
+ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
514
+
515
+ __props__ = _BackendConfigEstState.__new__(_BackendConfigEstState)
516
+
517
+ __props__.__dict__["audit_fields"] = audit_fields
518
+ __props__.__dict__["authenticators"] = authenticators
519
+ __props__.__dict__["backend"] = backend
520
+ __props__.__dict__["default_mount"] = default_mount
521
+ __props__.__dict__["default_path_policy"] = default_path_policy
522
+ __props__.__dict__["enable_sentinel_parsing"] = enable_sentinel_parsing
523
+ __props__.__dict__["enabled"] = enabled
524
+ __props__.__dict__["label_to_path_policy"] = label_to_path_policy
525
+ __props__.__dict__["last_updated"] = last_updated
526
+ __props__.__dict__["namespace"] = namespace
527
+ return BackendConfigEst(resource_name, opts=opts, __props__=__props__)
528
+
529
+ @property
530
+ @pulumi.getter(name="auditFields")
531
+ def audit_fields(self) -> pulumi.Output[Sequence[str]]:
532
+ """
533
+ Fields parsed from the CSR that appear in the audit and can be used by sentinel policies.
534
+
535
+ <a id="nestedatt--authenticators"></a>
536
+ """
537
+ return pulumi.get(self, "audit_fields")
538
+
539
+ @property
540
+ @pulumi.getter
541
+ def authenticators(self) -> pulumi.Output['outputs.BackendConfigEstAuthenticators']:
542
+ """
543
+ Lists the mount accessors EST should delegate authentication requests towards (see below for nested schema).
544
+ """
545
+ return pulumi.get(self, "authenticators")
546
+
547
+ @property
548
+ @pulumi.getter
549
+ def backend(self) -> pulumi.Output[str]:
550
+ """
551
+ The path to the PKI secret backend to
552
+ read the EST configuration from, with no leading or trailing `/`s.
553
+ """
554
+ return pulumi.get(self, "backend")
555
+
556
+ @property
557
+ @pulumi.getter(name="defaultMount")
558
+ def default_mount(self) -> pulumi.Output[Optional[bool]]:
559
+ """
560
+ If set, this mount will register the default `.well-known/est` URL path. Only a single mount can enable this across a Vault cluster.
561
+ """
562
+ return pulumi.get(self, "default_mount")
563
+
564
+ @property
565
+ @pulumi.getter(name="defaultPathPolicy")
566
+ def default_path_policy(self) -> pulumi.Output[Optional[str]]:
567
+ """
568
+ Required to be set if default_mount is enabled. Specifies the behavior for requests using the default EST label. Can be sign-verbatim or a role given by role:<role_name>.
569
+ """
570
+ return pulumi.get(self, "default_path_policy")
571
+
572
+ @property
573
+ @pulumi.getter(name="enableSentinelParsing")
574
+ def enable_sentinel_parsing(self) -> pulumi.Output[Optional[bool]]:
575
+ """
576
+ If set, parse out fields from the provided CSR making them available for Sentinel policies.
577
+ """
578
+ return pulumi.get(self, "enable_sentinel_parsing")
579
+
580
+ @property
581
+ @pulumi.getter
582
+ def enabled(self) -> pulumi.Output[Optional[bool]]:
583
+ """
584
+ Specifies whether EST is enabled.
585
+ """
586
+ return pulumi.get(self, "enabled")
587
+
588
+ @property
589
+ @pulumi.getter(name="labelToPathPolicy")
590
+ def label_to_path_policy(self) -> pulumi.Output[Optional[Mapping[str, Any]]]:
591
+ """
592
+ Configures a pairing of an EST label with the redirected behavior for requests hitting that role. The path policy can be sign-verbatim or a role given by role:<role_name>. Labels must be unique across Vault cluster, and will register .well-known/est/<label> URL paths.
593
+ """
594
+ return pulumi.get(self, "label_to_path_policy")
595
+
596
+ @property
597
+ @pulumi.getter(name="lastUpdated")
598
+ def last_updated(self) -> pulumi.Output[str]:
599
+ """
600
+ A read-only timestamp representing the last time the configuration was updated.
601
+ """
602
+ return pulumi.get(self, "last_updated")
603
+
604
+ @property
605
+ @pulumi.getter
606
+ def namespace(self) -> pulumi.Output[Optional[str]]:
607
+ """
608
+ The namespace of the target resource.
609
+ The value should not contain leading or trailing forward slashes.
610
+ The `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault/index.html#namespace).
611
+ *Available only for Vault Enterprise*.
612
+ """
613
+ return pulumi.get(self, "namespace")
614
+