pulumi-vault 6.5.0a1736850018__py3-none-any.whl → 6.6.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.
Files changed (48) hide show
  1. pulumi_vault/__init__.py +32 -0
  2. pulumi_vault/_utilities.py +8 -4
  3. pulumi_vault/aws/auth_backend_client.py +228 -4
  4. pulumi_vault/aws/auth_backend_sts_role.py +47 -0
  5. pulumi_vault/aws/secret_backend.py +395 -38
  6. pulumi_vault/aws/secret_backend_static_role.py +217 -0
  7. pulumi_vault/azure/auth_backend_config.py +257 -5
  8. pulumi_vault/azure/backend.py +249 -4
  9. pulumi_vault/database/_inputs.py +1740 -44
  10. pulumi_vault/database/outputs.py +1198 -18
  11. pulumi_vault/database/secret_backend_connection.py +220 -0
  12. pulumi_vault/database/secret_backend_static_role.py +143 -1
  13. pulumi_vault/database/secrets_mount.py +8 -0
  14. pulumi_vault/gcp/auth_backend.py +222 -2
  15. pulumi_vault/gcp/secret_backend.py +244 -4
  16. pulumi_vault/ldap/auth_backend.py +222 -2
  17. pulumi_vault/ldap/secret_backend.py +222 -2
  18. pulumi_vault/pkisecret/__init__.py +6 -0
  19. pulumi_vault/pkisecret/_inputs.py +34 -6
  20. pulumi_vault/pkisecret/backend_acme_eab.py +549 -0
  21. pulumi_vault/pkisecret/backend_config_acme.py +689 -0
  22. pulumi_vault/pkisecret/backend_config_auto_tidy.py +1376 -0
  23. pulumi_vault/pkisecret/backend_config_cmpv2.py +572 -0
  24. pulumi_vault/pkisecret/get_backend_cert_metadata.py +277 -0
  25. pulumi_vault/pkisecret/get_backend_config_cmpv2.py +226 -0
  26. pulumi_vault/pkisecret/get_backend_issuer.py +114 -1
  27. pulumi_vault/pkisecret/outputs.py +40 -4
  28. pulumi_vault/pkisecret/secret_backend_cert.py +148 -7
  29. pulumi_vault/pkisecret/secret_backend_crl_config.py +54 -0
  30. pulumi_vault/pkisecret/secret_backend_intermediate_cert_request.py +141 -0
  31. pulumi_vault/pkisecret/secret_backend_issuer.py +265 -0
  32. pulumi_vault/pkisecret/secret_backend_role.py +299 -3
  33. pulumi_vault/pkisecret/secret_backend_root_cert.py +423 -0
  34. pulumi_vault/pkisecret/secret_backend_root_sign_intermediate.py +581 -3
  35. pulumi_vault/pkisecret/secret_backend_sign.py +94 -0
  36. pulumi_vault/pulumi-plugin.json +1 -1
  37. pulumi_vault/ssh/__init__.py +1 -0
  38. pulumi_vault/ssh/get_secret_backend_sign.py +294 -0
  39. pulumi_vault/ssh/secret_backend_role.py +27 -0
  40. pulumi_vault/terraformcloud/secret_role.py +7 -7
  41. pulumi_vault/transit/__init__.py +2 -0
  42. pulumi_vault/transit/get_sign.py +324 -0
  43. pulumi_vault/transit/get_verify.py +354 -0
  44. pulumi_vault/transit/secret_backend_key.py +162 -0
  45. {pulumi_vault-6.5.0a1736850018.dist-info → pulumi_vault-6.6.0.dist-info}/METADATA +1 -1
  46. {pulumi_vault-6.5.0a1736850018.dist-info → pulumi_vault-6.6.0.dist-info}/RECORD +48 -39
  47. {pulumi_vault-6.5.0a1736850018.dist-info → pulumi_vault-6.6.0.dist-info}/WHEEL +1 -1
  48. {pulumi_vault-6.5.0a1736850018.dist-info → pulumi_vault-6.6.0.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,549 @@
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 sys
8
+ import pulumi
9
+ import pulumi.runtime
10
+ from typing import Any, Mapping, Optional, Sequence, Union, overload
11
+ if sys.version_info >= (3, 11):
12
+ from typing import NotRequired, TypedDict, TypeAlias
13
+ else:
14
+ from typing_extensions import NotRequired, TypedDict, TypeAlias
15
+ from .. import _utilities
16
+
17
+ __all__ = ['BackendAcmeEabArgs', 'BackendAcmeEab']
18
+
19
+ @pulumi.input_type
20
+ class BackendAcmeEabArgs:
21
+ def __init__(__self__, *,
22
+ backend: pulumi.Input[str],
23
+ issuer: Optional[pulumi.Input[str]] = None,
24
+ namespace: Optional[pulumi.Input[str]] = None,
25
+ role: Optional[pulumi.Input[str]] = None):
26
+ """
27
+ The set of arguments for constructing a BackendAcmeEab resource.
28
+ :param pulumi.Input[str] backend: The path to the PKI secret backend to
29
+ create the EAB token within, with no leading or trailing `/`s.
30
+ :param pulumi.Input[str] issuer: Create an EAB token that is specific to an issuer's ACME directory.
31
+ :param pulumi.Input[str] namespace: The namespace of the target resource.
32
+ The value should not contain leading or trailing forward slashes.
33
+ The `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault/index.html#namespace).
34
+ *Available only for Vault Enterprise*.
35
+ :param pulumi.Input[str] role: Create an EAB token that is specific to a role's ACME directory.
36
+
37
+ **NOTE**: Within Vault ACME there are different ACME directories which an EAB token is associated with;
38
+
39
+ 1. Default directory (`pki/acme/`) - Do not specify a value for issuer nor role parameters.
40
+ 2. Issuer specific (`pki/issuer/:issuer_ref/acme/`) - Specify a value for the issuer parameter
41
+ 3. Role specific (`pki/roles/:role/acme/`) - Specify a value for the role parameter
42
+ 4. Issuer and Role specific (`pki/issuer/:issuer_ref/roles/:role/acme/`) - Specify a value for both the issuer and role parameters
43
+ """
44
+ pulumi.set(__self__, "backend", backend)
45
+ if issuer is not None:
46
+ pulumi.set(__self__, "issuer", issuer)
47
+ if namespace is not None:
48
+ pulumi.set(__self__, "namespace", namespace)
49
+ if role is not None:
50
+ pulumi.set(__self__, "role", role)
51
+
52
+ @property
53
+ @pulumi.getter
54
+ def backend(self) -> pulumi.Input[str]:
55
+ """
56
+ The path to the PKI secret backend to
57
+ create the EAB token within, with no leading or trailing `/`s.
58
+ """
59
+ return pulumi.get(self, "backend")
60
+
61
+ @backend.setter
62
+ def backend(self, value: pulumi.Input[str]):
63
+ pulumi.set(self, "backend", value)
64
+
65
+ @property
66
+ @pulumi.getter
67
+ def issuer(self) -> Optional[pulumi.Input[str]]:
68
+ """
69
+ Create an EAB token that is specific to an issuer's ACME directory.
70
+ """
71
+ return pulumi.get(self, "issuer")
72
+
73
+ @issuer.setter
74
+ def issuer(self, value: Optional[pulumi.Input[str]]):
75
+ pulumi.set(self, "issuer", value)
76
+
77
+ @property
78
+ @pulumi.getter
79
+ def namespace(self) -> Optional[pulumi.Input[str]]:
80
+ """
81
+ The namespace of the target resource.
82
+ The value should not contain leading or trailing forward slashes.
83
+ The `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault/index.html#namespace).
84
+ *Available only for Vault Enterprise*.
85
+ """
86
+ return pulumi.get(self, "namespace")
87
+
88
+ @namespace.setter
89
+ def namespace(self, value: Optional[pulumi.Input[str]]):
90
+ pulumi.set(self, "namespace", value)
91
+
92
+ @property
93
+ @pulumi.getter
94
+ def role(self) -> Optional[pulumi.Input[str]]:
95
+ """
96
+ Create an EAB token that is specific to a role's ACME directory.
97
+
98
+ **NOTE**: Within Vault ACME there are different ACME directories which an EAB token is associated with;
99
+
100
+ 1. Default directory (`pki/acme/`) - Do not specify a value for issuer nor role parameters.
101
+ 2. Issuer specific (`pki/issuer/:issuer_ref/acme/`) - Specify a value for the issuer parameter
102
+ 3. Role specific (`pki/roles/:role/acme/`) - Specify a value for the role parameter
103
+ 4. Issuer and Role specific (`pki/issuer/:issuer_ref/roles/:role/acme/`) - Specify a value for both the issuer and role parameters
104
+ """
105
+ return pulumi.get(self, "role")
106
+
107
+ @role.setter
108
+ def role(self, value: Optional[pulumi.Input[str]]):
109
+ pulumi.set(self, "role", value)
110
+
111
+
112
+ @pulumi.input_type
113
+ class _BackendAcmeEabState:
114
+ def __init__(__self__, *,
115
+ acme_directory: Optional[pulumi.Input[str]] = None,
116
+ backend: Optional[pulumi.Input[str]] = None,
117
+ created_on: Optional[pulumi.Input[str]] = None,
118
+ eab_id: Optional[pulumi.Input[str]] = None,
119
+ issuer: Optional[pulumi.Input[str]] = None,
120
+ key: Optional[pulumi.Input[str]] = None,
121
+ key_type: Optional[pulumi.Input[str]] = None,
122
+ namespace: Optional[pulumi.Input[str]] = None,
123
+ role: Optional[pulumi.Input[str]] = None):
124
+ """
125
+ Input properties used for looking up and filtering BackendAcmeEab resources.
126
+ :param pulumi.Input[str] acme_directory: The ACME directory to which the key belongs
127
+ :param pulumi.Input[str] backend: The path to the PKI secret backend to
128
+ create the EAB token within, with no leading or trailing `/`s.
129
+ :param pulumi.Input[str] created_on: An RFC3339 formatted date time when the EAB token was created
130
+ :param pulumi.Input[str] eab_id: The identifier of a specific ACME EAB token
131
+ :param pulumi.Input[str] issuer: Create an EAB token that is specific to an issuer's ACME directory.
132
+ :param pulumi.Input[str] key: The EAB token
133
+ :param pulumi.Input[str] key_type: The key type of the EAB key
134
+ :param pulumi.Input[str] namespace: The namespace of the target resource.
135
+ The value should not contain leading or trailing forward slashes.
136
+ The `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault/index.html#namespace).
137
+ *Available only for Vault Enterprise*.
138
+ :param pulumi.Input[str] role: Create an EAB token that is specific to a role's ACME directory.
139
+
140
+ **NOTE**: Within Vault ACME there are different ACME directories which an EAB token is associated with;
141
+
142
+ 1. Default directory (`pki/acme/`) - Do not specify a value for issuer nor role parameters.
143
+ 2. Issuer specific (`pki/issuer/:issuer_ref/acme/`) - Specify a value for the issuer parameter
144
+ 3. Role specific (`pki/roles/:role/acme/`) - Specify a value for the role parameter
145
+ 4. Issuer and Role specific (`pki/issuer/:issuer_ref/roles/:role/acme/`) - Specify a value for both the issuer and role parameters
146
+ """
147
+ if acme_directory is not None:
148
+ pulumi.set(__self__, "acme_directory", acme_directory)
149
+ if backend is not None:
150
+ pulumi.set(__self__, "backend", backend)
151
+ if created_on is not None:
152
+ pulumi.set(__self__, "created_on", created_on)
153
+ if eab_id is not None:
154
+ pulumi.set(__self__, "eab_id", eab_id)
155
+ if issuer is not None:
156
+ pulumi.set(__self__, "issuer", issuer)
157
+ if key is not None:
158
+ pulumi.set(__self__, "key", key)
159
+ if key_type is not None:
160
+ pulumi.set(__self__, "key_type", key_type)
161
+ if namespace is not None:
162
+ pulumi.set(__self__, "namespace", namespace)
163
+ if role is not None:
164
+ pulumi.set(__self__, "role", role)
165
+
166
+ @property
167
+ @pulumi.getter(name="acmeDirectory")
168
+ def acme_directory(self) -> Optional[pulumi.Input[str]]:
169
+ """
170
+ The ACME directory to which the key belongs
171
+ """
172
+ return pulumi.get(self, "acme_directory")
173
+
174
+ @acme_directory.setter
175
+ def acme_directory(self, value: Optional[pulumi.Input[str]]):
176
+ pulumi.set(self, "acme_directory", value)
177
+
178
+ @property
179
+ @pulumi.getter
180
+ def backend(self) -> Optional[pulumi.Input[str]]:
181
+ """
182
+ The path to the PKI secret backend to
183
+ create the EAB token within, with no leading or trailing `/`s.
184
+ """
185
+ return pulumi.get(self, "backend")
186
+
187
+ @backend.setter
188
+ def backend(self, value: Optional[pulumi.Input[str]]):
189
+ pulumi.set(self, "backend", value)
190
+
191
+ @property
192
+ @pulumi.getter(name="createdOn")
193
+ def created_on(self) -> Optional[pulumi.Input[str]]:
194
+ """
195
+ An RFC3339 formatted date time when the EAB token was created
196
+ """
197
+ return pulumi.get(self, "created_on")
198
+
199
+ @created_on.setter
200
+ def created_on(self, value: Optional[pulumi.Input[str]]):
201
+ pulumi.set(self, "created_on", value)
202
+
203
+ @property
204
+ @pulumi.getter(name="eabId")
205
+ def eab_id(self) -> Optional[pulumi.Input[str]]:
206
+ """
207
+ The identifier of a specific ACME EAB token
208
+ """
209
+ return pulumi.get(self, "eab_id")
210
+
211
+ @eab_id.setter
212
+ def eab_id(self, value: Optional[pulumi.Input[str]]):
213
+ pulumi.set(self, "eab_id", value)
214
+
215
+ @property
216
+ @pulumi.getter
217
+ def issuer(self) -> Optional[pulumi.Input[str]]:
218
+ """
219
+ Create an EAB token that is specific to an issuer's ACME directory.
220
+ """
221
+ return pulumi.get(self, "issuer")
222
+
223
+ @issuer.setter
224
+ def issuer(self, value: Optional[pulumi.Input[str]]):
225
+ pulumi.set(self, "issuer", value)
226
+
227
+ @property
228
+ @pulumi.getter
229
+ def key(self) -> Optional[pulumi.Input[str]]:
230
+ """
231
+ The EAB token
232
+ """
233
+ return pulumi.get(self, "key")
234
+
235
+ @key.setter
236
+ def key(self, value: Optional[pulumi.Input[str]]):
237
+ pulumi.set(self, "key", value)
238
+
239
+ @property
240
+ @pulumi.getter(name="keyType")
241
+ def key_type(self) -> Optional[pulumi.Input[str]]:
242
+ """
243
+ The key type of the EAB key
244
+ """
245
+ return pulumi.get(self, "key_type")
246
+
247
+ @key_type.setter
248
+ def key_type(self, value: Optional[pulumi.Input[str]]):
249
+ pulumi.set(self, "key_type", value)
250
+
251
+ @property
252
+ @pulumi.getter
253
+ def namespace(self) -> Optional[pulumi.Input[str]]:
254
+ """
255
+ The namespace of the target resource.
256
+ The value should not contain leading or trailing forward slashes.
257
+ The `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault/index.html#namespace).
258
+ *Available only for Vault Enterprise*.
259
+ """
260
+ return pulumi.get(self, "namespace")
261
+
262
+ @namespace.setter
263
+ def namespace(self, value: Optional[pulumi.Input[str]]):
264
+ pulumi.set(self, "namespace", value)
265
+
266
+ @property
267
+ @pulumi.getter
268
+ def role(self) -> Optional[pulumi.Input[str]]:
269
+ """
270
+ Create an EAB token that is specific to a role's ACME directory.
271
+
272
+ **NOTE**: Within Vault ACME there are different ACME directories which an EAB token is associated with;
273
+
274
+ 1. Default directory (`pki/acme/`) - Do not specify a value for issuer nor role parameters.
275
+ 2. Issuer specific (`pki/issuer/:issuer_ref/acme/`) - Specify a value for the issuer parameter
276
+ 3. Role specific (`pki/roles/:role/acme/`) - Specify a value for the role parameter
277
+ 4. Issuer and Role specific (`pki/issuer/:issuer_ref/roles/:role/acme/`) - Specify a value for both the issuer and role parameters
278
+ """
279
+ return pulumi.get(self, "role")
280
+
281
+ @role.setter
282
+ def role(self, value: Optional[pulumi.Input[str]]):
283
+ pulumi.set(self, "role", value)
284
+
285
+
286
+ class BackendAcmeEab(pulumi.CustomResource):
287
+ @overload
288
+ def __init__(__self__,
289
+ resource_name: str,
290
+ opts: Optional[pulumi.ResourceOptions] = None,
291
+ backend: Optional[pulumi.Input[str]] = None,
292
+ issuer: Optional[pulumi.Input[str]] = None,
293
+ namespace: Optional[pulumi.Input[str]] = None,
294
+ role: Optional[pulumi.Input[str]] = None,
295
+ __props__=None):
296
+ """
297
+ Allows creating ACME EAB (External Account Binding) tokens and deleting unused ones.
298
+
299
+ ## Example Usage
300
+
301
+ ```python
302
+ import pulumi
303
+ import pulumi_vault as vault
304
+
305
+ test = vault.Mount("test",
306
+ path="pki",
307
+ type="pki",
308
+ description="PKI secret engine mount")
309
+ test_backend_acme_eab = vault.pki_secret.BackendAcmeEab("test", backend=test.path)
310
+ ```
311
+
312
+ ## Import
313
+
314
+ As EAB tokens are only available on initial creation there is no possibility to
315
+
316
+ import or update this resource.
317
+
318
+ :param str resource_name: The name of the resource.
319
+ :param pulumi.ResourceOptions opts: Options for the resource.
320
+ :param pulumi.Input[str] backend: The path to the PKI secret backend to
321
+ create the EAB token within, with no leading or trailing `/`s.
322
+ :param pulumi.Input[str] issuer: Create an EAB token that is specific to an issuer's ACME directory.
323
+ :param pulumi.Input[str] namespace: The namespace of the target resource.
324
+ The value should not contain leading or trailing forward slashes.
325
+ The `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault/index.html#namespace).
326
+ *Available only for Vault Enterprise*.
327
+ :param pulumi.Input[str] role: Create an EAB token that is specific to a role's ACME directory.
328
+
329
+ **NOTE**: Within Vault ACME there are different ACME directories which an EAB token is associated with;
330
+
331
+ 1. Default directory (`pki/acme/`) - Do not specify a value for issuer nor role parameters.
332
+ 2. Issuer specific (`pki/issuer/:issuer_ref/acme/`) - Specify a value for the issuer parameter
333
+ 3. Role specific (`pki/roles/:role/acme/`) - Specify a value for the role parameter
334
+ 4. Issuer and Role specific (`pki/issuer/:issuer_ref/roles/:role/acme/`) - Specify a value for both the issuer and role parameters
335
+ """
336
+ ...
337
+ @overload
338
+ def __init__(__self__,
339
+ resource_name: str,
340
+ args: BackendAcmeEabArgs,
341
+ opts: Optional[pulumi.ResourceOptions] = None):
342
+ """
343
+ Allows creating ACME EAB (External Account Binding) tokens and deleting unused ones.
344
+
345
+ ## Example Usage
346
+
347
+ ```python
348
+ import pulumi
349
+ import pulumi_vault as vault
350
+
351
+ test = vault.Mount("test",
352
+ path="pki",
353
+ type="pki",
354
+ description="PKI secret engine mount")
355
+ test_backend_acme_eab = vault.pki_secret.BackendAcmeEab("test", backend=test.path)
356
+ ```
357
+
358
+ ## Import
359
+
360
+ As EAB tokens are only available on initial creation there is no possibility to
361
+
362
+ import or update this resource.
363
+
364
+ :param str resource_name: The name of the resource.
365
+ :param BackendAcmeEabArgs args: The arguments to use to populate this resource's properties.
366
+ :param pulumi.ResourceOptions opts: Options for the resource.
367
+ """
368
+ ...
369
+ def __init__(__self__, resource_name: str, *args, **kwargs):
370
+ resource_args, opts = _utilities.get_resource_args_opts(BackendAcmeEabArgs, pulumi.ResourceOptions, *args, **kwargs)
371
+ if resource_args is not None:
372
+ __self__._internal_init(resource_name, opts, **resource_args.__dict__)
373
+ else:
374
+ __self__._internal_init(resource_name, *args, **kwargs)
375
+
376
+ def _internal_init(__self__,
377
+ resource_name: str,
378
+ opts: Optional[pulumi.ResourceOptions] = None,
379
+ backend: Optional[pulumi.Input[str]] = None,
380
+ issuer: Optional[pulumi.Input[str]] = None,
381
+ namespace: Optional[pulumi.Input[str]] = None,
382
+ role: Optional[pulumi.Input[str]] = None,
383
+ __props__=None):
384
+ opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
385
+ if not isinstance(opts, pulumi.ResourceOptions):
386
+ raise TypeError('Expected resource options to be a ResourceOptions instance')
387
+ if opts.id is None:
388
+ if __props__ is not None:
389
+ raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
390
+ __props__ = BackendAcmeEabArgs.__new__(BackendAcmeEabArgs)
391
+
392
+ if backend is None and not opts.urn:
393
+ raise TypeError("Missing required property 'backend'")
394
+ __props__.__dict__["backend"] = backend
395
+ __props__.__dict__["issuer"] = issuer
396
+ __props__.__dict__["namespace"] = namespace
397
+ __props__.__dict__["role"] = role
398
+ __props__.__dict__["acme_directory"] = None
399
+ __props__.__dict__["created_on"] = None
400
+ __props__.__dict__["eab_id"] = None
401
+ __props__.__dict__["key"] = None
402
+ __props__.__dict__["key_type"] = None
403
+ secret_opts = pulumi.ResourceOptions(additional_secret_outputs=["key"])
404
+ opts = pulumi.ResourceOptions.merge(opts, secret_opts)
405
+ super(BackendAcmeEab, __self__).__init__(
406
+ 'vault:pkiSecret/backendAcmeEab:BackendAcmeEab',
407
+ resource_name,
408
+ __props__,
409
+ opts)
410
+
411
+ @staticmethod
412
+ def get(resource_name: str,
413
+ id: pulumi.Input[str],
414
+ opts: Optional[pulumi.ResourceOptions] = None,
415
+ acme_directory: Optional[pulumi.Input[str]] = None,
416
+ backend: Optional[pulumi.Input[str]] = None,
417
+ created_on: Optional[pulumi.Input[str]] = None,
418
+ eab_id: Optional[pulumi.Input[str]] = None,
419
+ issuer: Optional[pulumi.Input[str]] = None,
420
+ key: Optional[pulumi.Input[str]] = None,
421
+ key_type: Optional[pulumi.Input[str]] = None,
422
+ namespace: Optional[pulumi.Input[str]] = None,
423
+ role: Optional[pulumi.Input[str]] = None) -> 'BackendAcmeEab':
424
+ """
425
+ Get an existing BackendAcmeEab resource's state with the given name, id, and optional extra
426
+ properties used to qualify the lookup.
427
+
428
+ :param str resource_name: The unique name of the resulting resource.
429
+ :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
430
+ :param pulumi.ResourceOptions opts: Options for the resource.
431
+ :param pulumi.Input[str] acme_directory: The ACME directory to which the key belongs
432
+ :param pulumi.Input[str] backend: The path to the PKI secret backend to
433
+ create the EAB token within, with no leading or trailing `/`s.
434
+ :param pulumi.Input[str] created_on: An RFC3339 formatted date time when the EAB token was created
435
+ :param pulumi.Input[str] eab_id: The identifier of a specific ACME EAB token
436
+ :param pulumi.Input[str] issuer: Create an EAB token that is specific to an issuer's ACME directory.
437
+ :param pulumi.Input[str] key: The EAB token
438
+ :param pulumi.Input[str] key_type: The key type of the EAB key
439
+ :param pulumi.Input[str] namespace: The namespace of the target resource.
440
+ The value should not contain leading or trailing forward slashes.
441
+ The `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault/index.html#namespace).
442
+ *Available only for Vault Enterprise*.
443
+ :param pulumi.Input[str] role: Create an EAB token that is specific to a role's ACME directory.
444
+
445
+ **NOTE**: Within Vault ACME there are different ACME directories which an EAB token is associated with;
446
+
447
+ 1. Default directory (`pki/acme/`) - Do not specify a value for issuer nor role parameters.
448
+ 2. Issuer specific (`pki/issuer/:issuer_ref/acme/`) - Specify a value for the issuer parameter
449
+ 3. Role specific (`pki/roles/:role/acme/`) - Specify a value for the role parameter
450
+ 4. Issuer and Role specific (`pki/issuer/:issuer_ref/roles/:role/acme/`) - Specify a value for both the issuer and role parameters
451
+ """
452
+ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
453
+
454
+ __props__ = _BackendAcmeEabState.__new__(_BackendAcmeEabState)
455
+
456
+ __props__.__dict__["acme_directory"] = acme_directory
457
+ __props__.__dict__["backend"] = backend
458
+ __props__.__dict__["created_on"] = created_on
459
+ __props__.__dict__["eab_id"] = eab_id
460
+ __props__.__dict__["issuer"] = issuer
461
+ __props__.__dict__["key"] = key
462
+ __props__.__dict__["key_type"] = key_type
463
+ __props__.__dict__["namespace"] = namespace
464
+ __props__.__dict__["role"] = role
465
+ return BackendAcmeEab(resource_name, opts=opts, __props__=__props__)
466
+
467
+ @property
468
+ @pulumi.getter(name="acmeDirectory")
469
+ def acme_directory(self) -> pulumi.Output[str]:
470
+ """
471
+ The ACME directory to which the key belongs
472
+ """
473
+ return pulumi.get(self, "acme_directory")
474
+
475
+ @property
476
+ @pulumi.getter
477
+ def backend(self) -> pulumi.Output[str]:
478
+ """
479
+ The path to the PKI secret backend to
480
+ create the EAB token within, with no leading or trailing `/`s.
481
+ """
482
+ return pulumi.get(self, "backend")
483
+
484
+ @property
485
+ @pulumi.getter(name="createdOn")
486
+ def created_on(self) -> pulumi.Output[str]:
487
+ """
488
+ An RFC3339 formatted date time when the EAB token was created
489
+ """
490
+ return pulumi.get(self, "created_on")
491
+
492
+ @property
493
+ @pulumi.getter(name="eabId")
494
+ def eab_id(self) -> pulumi.Output[str]:
495
+ """
496
+ The identifier of a specific ACME EAB token
497
+ """
498
+ return pulumi.get(self, "eab_id")
499
+
500
+ @property
501
+ @pulumi.getter
502
+ def issuer(self) -> pulumi.Output[Optional[str]]:
503
+ """
504
+ Create an EAB token that is specific to an issuer's ACME directory.
505
+ """
506
+ return pulumi.get(self, "issuer")
507
+
508
+ @property
509
+ @pulumi.getter
510
+ def key(self) -> pulumi.Output[str]:
511
+ """
512
+ The EAB token
513
+ """
514
+ return pulumi.get(self, "key")
515
+
516
+ @property
517
+ @pulumi.getter(name="keyType")
518
+ def key_type(self) -> pulumi.Output[str]:
519
+ """
520
+ The key type of the EAB key
521
+ """
522
+ return pulumi.get(self, "key_type")
523
+
524
+ @property
525
+ @pulumi.getter
526
+ def namespace(self) -> pulumi.Output[Optional[str]]:
527
+ """
528
+ The namespace of the target resource.
529
+ The value should not contain leading or trailing forward slashes.
530
+ The `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault/index.html#namespace).
531
+ *Available only for Vault Enterprise*.
532
+ """
533
+ return pulumi.get(self, "namespace")
534
+
535
+ @property
536
+ @pulumi.getter
537
+ def role(self) -> pulumi.Output[Optional[str]]:
538
+ """
539
+ Create an EAB token that is specific to a role's ACME directory.
540
+
541
+ **NOTE**: Within Vault ACME there are different ACME directories which an EAB token is associated with;
542
+
543
+ 1. Default directory (`pki/acme/`) - Do not specify a value for issuer nor role parameters.
544
+ 2. Issuer specific (`pki/issuer/:issuer_ref/acme/`) - Specify a value for the issuer parameter
545
+ 3. Role specific (`pki/roles/:role/acme/`) - Specify a value for the role parameter
546
+ 4. Issuer and Role specific (`pki/issuer/:issuer_ref/roles/:role/acme/`) - Specify a value for both the issuer and role parameters
547
+ """
548
+ return pulumi.get(self, "role")
549
+