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.
- pulumi_vault/__init__.py +26 -0
- pulumi_vault/auth_backend.py +47 -0
- pulumi_vault/aws/auth_backend_client.py +247 -7
- pulumi_vault/aws/secret_backend_role.py +54 -0
- pulumi_vault/azure/auth_backend_config.py +133 -0
- pulumi_vault/azure/backend.py +203 -0
- pulumi_vault/database/secrets_mount.py +282 -0
- pulumi_vault/gcp/auth_backend.py +244 -0
- pulumi_vault/gcp/secret_backend.py +271 -3
- pulumi_vault/jwt/auth_backend_role.py +28 -35
- pulumi_vault/kubernetes/secret_backend.py +282 -0
- pulumi_vault/ldap/secret_backend.py +282 -0
- pulumi_vault/mount.py +324 -0
- pulumi_vault/okta/auth_backend.py +453 -0
- pulumi_vault/pkisecret/__init__.py +2 -0
- pulumi_vault/pkisecret/_inputs.py +30 -0
- pulumi_vault/pkisecret/backend_config_est.py +614 -0
- pulumi_vault/pkisecret/get_backend_config_est.py +233 -0
- pulumi_vault/pkisecret/outputs.py +54 -0
- pulumi_vault/plugin.py +590 -0
- pulumi_vault/plugin_pinned_version.py +293 -0
- pulumi_vault/pulumi-plugin.json +1 -1
- pulumi_vault/quota_lease_count.py +47 -0
- pulumi_vault/quota_rate_limit.py +47 -0
- pulumi_vault/ssh/secret_backend_ca.py +94 -0
- {pulumi_vault-6.1.1.dist-info → pulumi_vault-6.2.0.dist-info}/METADATA +1 -1
- {pulumi_vault-6.1.1.dist-info → pulumi_vault-6.2.0.dist-info}/RECORD +29 -25
- {pulumi_vault-6.1.1.dist-info → pulumi_vault-6.2.0.dist-info}/WHEEL +1 -1
- {pulumi_vault-6.1.1.dist-info → pulumi_vault-6.2.0.dist-info}/top_level.txt +0 -0
pulumi_vault/gcp/auth_backend.py
CHANGED
@@ -22,11 +22,15 @@ class AuthBackendArgs:
|
|
22
22
|
custom_endpoint: Optional[pulumi.Input['AuthBackendCustomEndpointArgs']] = None,
|
23
23
|
description: Optional[pulumi.Input[str]] = None,
|
24
24
|
disable_remount: Optional[pulumi.Input[bool]] = None,
|
25
|
+
identity_token_audience: Optional[pulumi.Input[str]] = None,
|
26
|
+
identity_token_key: Optional[pulumi.Input[str]] = None,
|
27
|
+
identity_token_ttl: Optional[pulumi.Input[int]] = None,
|
25
28
|
local: Optional[pulumi.Input[bool]] = None,
|
26
29
|
namespace: Optional[pulumi.Input[str]] = None,
|
27
30
|
path: Optional[pulumi.Input[str]] = None,
|
28
31
|
private_key_id: Optional[pulumi.Input[str]] = None,
|
29
32
|
project_id: Optional[pulumi.Input[str]] = None,
|
33
|
+
service_account_email: Optional[pulumi.Input[str]] = None,
|
30
34
|
tune: Optional[pulumi.Input['AuthBackendTuneArgs']] = None):
|
31
35
|
"""
|
32
36
|
The set of arguments for constructing a AuthBackend resource.
|
@@ -43,6 +47,12 @@ class AuthBackendArgs:
|
|
43
47
|
:param pulumi.Input[str] description: A description of the auth method.
|
44
48
|
:param pulumi.Input[bool] disable_remount: If set, opts out of mount migration on path updates.
|
45
49
|
See here for more info on [Mount Migration](https://www.vaultproject.io/docs/concepts/mount-migration)
|
50
|
+
:param pulumi.Input[str] identity_token_audience: The audience claim value for plugin identity
|
51
|
+
tokens. Must match an allowed audience configured for the target [Workload Identity Pool](https://cloud.google.com/iam/docs/workload-identity-federation-with-other-providers#prepare).
|
52
|
+
Mutually exclusive with `credentials`. Requires Vault 1.17+. *Available only for Vault Enterprise*.
|
53
|
+
:param pulumi.Input[str] identity_token_key: The key to use for signing plugin identity
|
54
|
+
tokens. Requires Vault 1.17+. *Available only for Vault Enterprise*.
|
55
|
+
:param pulumi.Input[int] identity_token_ttl: The TTL of generated tokens.
|
46
56
|
:param pulumi.Input[bool] local: Specifies if the auth method is local only.
|
47
57
|
:param pulumi.Input[str] namespace: The namespace to provision the resource in.
|
48
58
|
The value should not contain leading or trailing forward slashes.
|
@@ -51,6 +61,8 @@ class AuthBackendArgs:
|
|
51
61
|
:param pulumi.Input[str] path: The path to mount the auth method — this defaults to 'gcp'.
|
52
62
|
:param pulumi.Input[str] private_key_id: The ID of the private key from the credentials
|
53
63
|
:param pulumi.Input[str] project_id: The GCP Project ID
|
64
|
+
:param pulumi.Input[str] service_account_email: Service Account to impersonate for plugin workload identity federation.
|
65
|
+
Required with `identity_token_audience`. Requires Vault 1.17+. *Available only for Vault Enterprise*.
|
54
66
|
:param pulumi.Input['AuthBackendTuneArgs'] tune: Extra configuration block. Structure is documented below.
|
55
67
|
|
56
68
|
The `tune` block is used to tune the auth backend:
|
@@ -67,6 +79,12 @@ class AuthBackendArgs:
|
|
67
79
|
pulumi.set(__self__, "description", description)
|
68
80
|
if disable_remount is not None:
|
69
81
|
pulumi.set(__self__, "disable_remount", disable_remount)
|
82
|
+
if identity_token_audience is not None:
|
83
|
+
pulumi.set(__self__, "identity_token_audience", identity_token_audience)
|
84
|
+
if identity_token_key is not None:
|
85
|
+
pulumi.set(__self__, "identity_token_key", identity_token_key)
|
86
|
+
if identity_token_ttl is not None:
|
87
|
+
pulumi.set(__self__, "identity_token_ttl", identity_token_ttl)
|
70
88
|
if local is not None:
|
71
89
|
pulumi.set(__self__, "local", local)
|
72
90
|
if namespace is not None:
|
@@ -77,6 +95,8 @@ class AuthBackendArgs:
|
|
77
95
|
pulumi.set(__self__, "private_key_id", private_key_id)
|
78
96
|
if project_id is not None:
|
79
97
|
pulumi.set(__self__, "project_id", project_id)
|
98
|
+
if service_account_email is not None:
|
99
|
+
pulumi.set(__self__, "service_account_email", service_account_email)
|
80
100
|
if tune is not None:
|
81
101
|
pulumi.set(__self__, "tune", tune)
|
82
102
|
|
@@ -159,6 +179,45 @@ class AuthBackendArgs:
|
|
159
179
|
def disable_remount(self, value: Optional[pulumi.Input[bool]]):
|
160
180
|
pulumi.set(self, "disable_remount", value)
|
161
181
|
|
182
|
+
@property
|
183
|
+
@pulumi.getter(name="identityTokenAudience")
|
184
|
+
def identity_token_audience(self) -> Optional[pulumi.Input[str]]:
|
185
|
+
"""
|
186
|
+
The audience claim value for plugin identity
|
187
|
+
tokens. Must match an allowed audience configured for the target [Workload Identity Pool](https://cloud.google.com/iam/docs/workload-identity-federation-with-other-providers#prepare).
|
188
|
+
Mutually exclusive with `credentials`. Requires Vault 1.17+. *Available only for Vault Enterprise*.
|
189
|
+
"""
|
190
|
+
return pulumi.get(self, "identity_token_audience")
|
191
|
+
|
192
|
+
@identity_token_audience.setter
|
193
|
+
def identity_token_audience(self, value: Optional[pulumi.Input[str]]):
|
194
|
+
pulumi.set(self, "identity_token_audience", value)
|
195
|
+
|
196
|
+
@property
|
197
|
+
@pulumi.getter(name="identityTokenKey")
|
198
|
+
def identity_token_key(self) -> Optional[pulumi.Input[str]]:
|
199
|
+
"""
|
200
|
+
The key to use for signing plugin identity
|
201
|
+
tokens. Requires Vault 1.17+. *Available only for Vault Enterprise*.
|
202
|
+
"""
|
203
|
+
return pulumi.get(self, "identity_token_key")
|
204
|
+
|
205
|
+
@identity_token_key.setter
|
206
|
+
def identity_token_key(self, value: Optional[pulumi.Input[str]]):
|
207
|
+
pulumi.set(self, "identity_token_key", value)
|
208
|
+
|
209
|
+
@property
|
210
|
+
@pulumi.getter(name="identityTokenTtl")
|
211
|
+
def identity_token_ttl(self) -> Optional[pulumi.Input[int]]:
|
212
|
+
"""
|
213
|
+
The TTL of generated tokens.
|
214
|
+
"""
|
215
|
+
return pulumi.get(self, "identity_token_ttl")
|
216
|
+
|
217
|
+
@identity_token_ttl.setter
|
218
|
+
def identity_token_ttl(self, value: Optional[pulumi.Input[int]]):
|
219
|
+
pulumi.set(self, "identity_token_ttl", value)
|
220
|
+
|
162
221
|
@property
|
163
222
|
@pulumi.getter
|
164
223
|
def local(self) -> Optional[pulumi.Input[bool]]:
|
@@ -222,6 +281,19 @@ class AuthBackendArgs:
|
|
222
281
|
def project_id(self, value: Optional[pulumi.Input[str]]):
|
223
282
|
pulumi.set(self, "project_id", value)
|
224
283
|
|
284
|
+
@property
|
285
|
+
@pulumi.getter(name="serviceAccountEmail")
|
286
|
+
def service_account_email(self) -> Optional[pulumi.Input[str]]:
|
287
|
+
"""
|
288
|
+
Service Account to impersonate for plugin workload identity federation.
|
289
|
+
Required with `identity_token_audience`. Requires Vault 1.17+. *Available only for Vault Enterprise*.
|
290
|
+
"""
|
291
|
+
return pulumi.get(self, "service_account_email")
|
292
|
+
|
293
|
+
@service_account_email.setter
|
294
|
+
def service_account_email(self, value: Optional[pulumi.Input[str]]):
|
295
|
+
pulumi.set(self, "service_account_email", value)
|
296
|
+
|
225
297
|
@property
|
226
298
|
@pulumi.getter
|
227
299
|
def tune(self) -> Optional[pulumi.Input['AuthBackendTuneArgs']]:
|
@@ -247,11 +319,15 @@ class _AuthBackendState:
|
|
247
319
|
custom_endpoint: Optional[pulumi.Input['AuthBackendCustomEndpointArgs']] = None,
|
248
320
|
description: Optional[pulumi.Input[str]] = None,
|
249
321
|
disable_remount: Optional[pulumi.Input[bool]] = None,
|
322
|
+
identity_token_audience: Optional[pulumi.Input[str]] = None,
|
323
|
+
identity_token_key: Optional[pulumi.Input[str]] = None,
|
324
|
+
identity_token_ttl: Optional[pulumi.Input[int]] = None,
|
250
325
|
local: Optional[pulumi.Input[bool]] = None,
|
251
326
|
namespace: Optional[pulumi.Input[str]] = None,
|
252
327
|
path: Optional[pulumi.Input[str]] = None,
|
253
328
|
private_key_id: Optional[pulumi.Input[str]] = None,
|
254
329
|
project_id: Optional[pulumi.Input[str]] = None,
|
330
|
+
service_account_email: Optional[pulumi.Input[str]] = None,
|
255
331
|
tune: Optional[pulumi.Input['AuthBackendTuneArgs']] = None):
|
256
332
|
"""
|
257
333
|
Input properties used for looking up and filtering AuthBackend resources.
|
@@ -269,6 +345,12 @@ class _AuthBackendState:
|
|
269
345
|
:param pulumi.Input[str] description: A description of the auth method.
|
270
346
|
:param pulumi.Input[bool] disable_remount: If set, opts out of mount migration on path updates.
|
271
347
|
See here for more info on [Mount Migration](https://www.vaultproject.io/docs/concepts/mount-migration)
|
348
|
+
:param pulumi.Input[str] identity_token_audience: The audience claim value for plugin identity
|
349
|
+
tokens. Must match an allowed audience configured for the target [Workload Identity Pool](https://cloud.google.com/iam/docs/workload-identity-federation-with-other-providers#prepare).
|
350
|
+
Mutually exclusive with `credentials`. Requires Vault 1.17+. *Available only for Vault Enterprise*.
|
351
|
+
:param pulumi.Input[str] identity_token_key: The key to use for signing plugin identity
|
352
|
+
tokens. Requires Vault 1.17+. *Available only for Vault Enterprise*.
|
353
|
+
:param pulumi.Input[int] identity_token_ttl: The TTL of generated tokens.
|
272
354
|
:param pulumi.Input[bool] local: Specifies if the auth method is local only.
|
273
355
|
:param pulumi.Input[str] namespace: The namespace to provision the resource in.
|
274
356
|
The value should not contain leading or trailing forward slashes.
|
@@ -277,6 +359,8 @@ class _AuthBackendState:
|
|
277
359
|
:param pulumi.Input[str] path: The path to mount the auth method — this defaults to 'gcp'.
|
278
360
|
:param pulumi.Input[str] private_key_id: The ID of the private key from the credentials
|
279
361
|
:param pulumi.Input[str] project_id: The GCP Project ID
|
362
|
+
:param pulumi.Input[str] service_account_email: Service Account to impersonate for plugin workload identity federation.
|
363
|
+
Required with `identity_token_audience`. Requires Vault 1.17+. *Available only for Vault Enterprise*.
|
280
364
|
:param pulumi.Input['AuthBackendTuneArgs'] tune: Extra configuration block. Structure is documented below.
|
281
365
|
|
282
366
|
The `tune` block is used to tune the auth backend:
|
@@ -295,6 +379,12 @@ class _AuthBackendState:
|
|
295
379
|
pulumi.set(__self__, "description", description)
|
296
380
|
if disable_remount is not None:
|
297
381
|
pulumi.set(__self__, "disable_remount", disable_remount)
|
382
|
+
if identity_token_audience is not None:
|
383
|
+
pulumi.set(__self__, "identity_token_audience", identity_token_audience)
|
384
|
+
if identity_token_key is not None:
|
385
|
+
pulumi.set(__self__, "identity_token_key", identity_token_key)
|
386
|
+
if identity_token_ttl is not None:
|
387
|
+
pulumi.set(__self__, "identity_token_ttl", identity_token_ttl)
|
298
388
|
if local is not None:
|
299
389
|
pulumi.set(__self__, "local", local)
|
300
390
|
if namespace is not None:
|
@@ -305,6 +395,8 @@ class _AuthBackendState:
|
|
305
395
|
pulumi.set(__self__, "private_key_id", private_key_id)
|
306
396
|
if project_id is not None:
|
307
397
|
pulumi.set(__self__, "project_id", project_id)
|
398
|
+
if service_account_email is not None:
|
399
|
+
pulumi.set(__self__, "service_account_email", service_account_email)
|
308
400
|
if tune is not None:
|
309
401
|
pulumi.set(__self__, "tune", tune)
|
310
402
|
|
@@ -399,6 +491,45 @@ class _AuthBackendState:
|
|
399
491
|
def disable_remount(self, value: Optional[pulumi.Input[bool]]):
|
400
492
|
pulumi.set(self, "disable_remount", value)
|
401
493
|
|
494
|
+
@property
|
495
|
+
@pulumi.getter(name="identityTokenAudience")
|
496
|
+
def identity_token_audience(self) -> Optional[pulumi.Input[str]]:
|
497
|
+
"""
|
498
|
+
The audience claim value for plugin identity
|
499
|
+
tokens. Must match an allowed audience configured for the target [Workload Identity Pool](https://cloud.google.com/iam/docs/workload-identity-federation-with-other-providers#prepare).
|
500
|
+
Mutually exclusive with `credentials`. Requires Vault 1.17+. *Available only for Vault Enterprise*.
|
501
|
+
"""
|
502
|
+
return pulumi.get(self, "identity_token_audience")
|
503
|
+
|
504
|
+
@identity_token_audience.setter
|
505
|
+
def identity_token_audience(self, value: Optional[pulumi.Input[str]]):
|
506
|
+
pulumi.set(self, "identity_token_audience", value)
|
507
|
+
|
508
|
+
@property
|
509
|
+
@pulumi.getter(name="identityTokenKey")
|
510
|
+
def identity_token_key(self) -> Optional[pulumi.Input[str]]:
|
511
|
+
"""
|
512
|
+
The key to use for signing plugin identity
|
513
|
+
tokens. Requires Vault 1.17+. *Available only for Vault Enterprise*.
|
514
|
+
"""
|
515
|
+
return pulumi.get(self, "identity_token_key")
|
516
|
+
|
517
|
+
@identity_token_key.setter
|
518
|
+
def identity_token_key(self, value: Optional[pulumi.Input[str]]):
|
519
|
+
pulumi.set(self, "identity_token_key", value)
|
520
|
+
|
521
|
+
@property
|
522
|
+
@pulumi.getter(name="identityTokenTtl")
|
523
|
+
def identity_token_ttl(self) -> Optional[pulumi.Input[int]]:
|
524
|
+
"""
|
525
|
+
The TTL of generated tokens.
|
526
|
+
"""
|
527
|
+
return pulumi.get(self, "identity_token_ttl")
|
528
|
+
|
529
|
+
@identity_token_ttl.setter
|
530
|
+
def identity_token_ttl(self, value: Optional[pulumi.Input[int]]):
|
531
|
+
pulumi.set(self, "identity_token_ttl", value)
|
532
|
+
|
402
533
|
@property
|
403
534
|
@pulumi.getter
|
404
535
|
def local(self) -> Optional[pulumi.Input[bool]]:
|
@@ -462,6 +593,19 @@ class _AuthBackendState:
|
|
462
593
|
def project_id(self, value: Optional[pulumi.Input[str]]):
|
463
594
|
pulumi.set(self, "project_id", value)
|
464
595
|
|
596
|
+
@property
|
597
|
+
@pulumi.getter(name="serviceAccountEmail")
|
598
|
+
def service_account_email(self) -> Optional[pulumi.Input[str]]:
|
599
|
+
"""
|
600
|
+
Service Account to impersonate for plugin workload identity federation.
|
601
|
+
Required with `identity_token_audience`. Requires Vault 1.17+. *Available only for Vault Enterprise*.
|
602
|
+
"""
|
603
|
+
return pulumi.get(self, "service_account_email")
|
604
|
+
|
605
|
+
@service_account_email.setter
|
606
|
+
def service_account_email(self, value: Optional[pulumi.Input[str]]):
|
607
|
+
pulumi.set(self, "service_account_email", value)
|
608
|
+
|
465
609
|
@property
|
466
610
|
@pulumi.getter
|
467
611
|
def tune(self) -> Optional[pulumi.Input['AuthBackendTuneArgs']]:
|
@@ -488,16 +632,34 @@ class AuthBackend(pulumi.CustomResource):
|
|
488
632
|
custom_endpoint: Optional[pulumi.Input[pulumi.InputType['AuthBackendCustomEndpointArgs']]] = None,
|
489
633
|
description: Optional[pulumi.Input[str]] = None,
|
490
634
|
disable_remount: Optional[pulumi.Input[bool]] = None,
|
635
|
+
identity_token_audience: Optional[pulumi.Input[str]] = None,
|
636
|
+
identity_token_key: Optional[pulumi.Input[str]] = None,
|
637
|
+
identity_token_ttl: Optional[pulumi.Input[int]] = None,
|
491
638
|
local: Optional[pulumi.Input[bool]] = None,
|
492
639
|
namespace: Optional[pulumi.Input[str]] = None,
|
493
640
|
path: Optional[pulumi.Input[str]] = None,
|
494
641
|
private_key_id: Optional[pulumi.Input[str]] = None,
|
495
642
|
project_id: Optional[pulumi.Input[str]] = None,
|
643
|
+
service_account_email: Optional[pulumi.Input[str]] = None,
|
496
644
|
tune: Optional[pulumi.Input[pulumi.InputType['AuthBackendTuneArgs']]] = None,
|
497
645
|
__props__=None):
|
498
646
|
"""
|
499
647
|
Provides a resource to configure the [GCP auth backend within Vault](https://www.vaultproject.io/docs/auth/gcp.html).
|
500
648
|
|
649
|
+
## Example Usage
|
650
|
+
|
651
|
+
You can setup the GCP auth backend with Workload Identity Federation (WIF) for a secret-less configuration:
|
652
|
+
```python
|
653
|
+
import pulumi
|
654
|
+
import pulumi_vault as vault
|
655
|
+
|
656
|
+
gcp = vault.gcp.AuthBackend("gcp",
|
657
|
+
identity_token_key="example-key",
|
658
|
+
identity_token_ttl=1800,
|
659
|
+
identity_token_audience="<TOKEN_AUDIENCE>",
|
660
|
+
service_account_email="<SERVICE_ACCOUNT_EMAIL>")
|
661
|
+
```
|
662
|
+
|
501
663
|
## Import
|
502
664
|
|
503
665
|
GCP authentication backends can be imported using the backend name, e.g.
|
@@ -521,6 +683,12 @@ class AuthBackend(pulumi.CustomResource):
|
|
521
683
|
:param pulumi.Input[str] description: A description of the auth method.
|
522
684
|
:param pulumi.Input[bool] disable_remount: If set, opts out of mount migration on path updates.
|
523
685
|
See here for more info on [Mount Migration](https://www.vaultproject.io/docs/concepts/mount-migration)
|
686
|
+
:param pulumi.Input[str] identity_token_audience: The audience claim value for plugin identity
|
687
|
+
tokens. Must match an allowed audience configured for the target [Workload Identity Pool](https://cloud.google.com/iam/docs/workload-identity-federation-with-other-providers#prepare).
|
688
|
+
Mutually exclusive with `credentials`. Requires Vault 1.17+. *Available only for Vault Enterprise*.
|
689
|
+
:param pulumi.Input[str] identity_token_key: The key to use for signing plugin identity
|
690
|
+
tokens. Requires Vault 1.17+. *Available only for Vault Enterprise*.
|
691
|
+
:param pulumi.Input[int] identity_token_ttl: The TTL of generated tokens.
|
524
692
|
:param pulumi.Input[bool] local: Specifies if the auth method is local only.
|
525
693
|
:param pulumi.Input[str] namespace: The namespace to provision the resource in.
|
526
694
|
The value should not contain leading or trailing forward slashes.
|
@@ -529,6 +697,8 @@ class AuthBackend(pulumi.CustomResource):
|
|
529
697
|
:param pulumi.Input[str] path: The path to mount the auth method — this defaults to 'gcp'.
|
530
698
|
:param pulumi.Input[str] private_key_id: The ID of the private key from the credentials
|
531
699
|
:param pulumi.Input[str] project_id: The GCP Project ID
|
700
|
+
:param pulumi.Input[str] service_account_email: Service Account to impersonate for plugin workload identity federation.
|
701
|
+
Required with `identity_token_audience`. Requires Vault 1.17+. *Available only for Vault Enterprise*.
|
532
702
|
:param pulumi.Input[pulumi.InputType['AuthBackendTuneArgs']] tune: Extra configuration block. Structure is documented below.
|
533
703
|
|
534
704
|
The `tune` block is used to tune the auth backend:
|
@@ -542,6 +712,20 @@ class AuthBackend(pulumi.CustomResource):
|
|
542
712
|
"""
|
543
713
|
Provides a resource to configure the [GCP auth backend within Vault](https://www.vaultproject.io/docs/auth/gcp.html).
|
544
714
|
|
715
|
+
## Example Usage
|
716
|
+
|
717
|
+
You can setup the GCP auth backend with Workload Identity Federation (WIF) for a secret-less configuration:
|
718
|
+
```python
|
719
|
+
import pulumi
|
720
|
+
import pulumi_vault as vault
|
721
|
+
|
722
|
+
gcp = vault.gcp.AuthBackend("gcp",
|
723
|
+
identity_token_key="example-key",
|
724
|
+
identity_token_ttl=1800,
|
725
|
+
identity_token_audience="<TOKEN_AUDIENCE>",
|
726
|
+
service_account_email="<SERVICE_ACCOUNT_EMAIL>")
|
727
|
+
```
|
728
|
+
|
545
729
|
## Import
|
546
730
|
|
547
731
|
GCP authentication backends can be imported using the backend name, e.g.
|
@@ -571,11 +755,15 @@ class AuthBackend(pulumi.CustomResource):
|
|
571
755
|
custom_endpoint: Optional[pulumi.Input[pulumi.InputType['AuthBackendCustomEndpointArgs']]] = None,
|
572
756
|
description: Optional[pulumi.Input[str]] = None,
|
573
757
|
disable_remount: Optional[pulumi.Input[bool]] = None,
|
758
|
+
identity_token_audience: Optional[pulumi.Input[str]] = None,
|
759
|
+
identity_token_key: Optional[pulumi.Input[str]] = None,
|
760
|
+
identity_token_ttl: Optional[pulumi.Input[int]] = None,
|
574
761
|
local: Optional[pulumi.Input[bool]] = None,
|
575
762
|
namespace: Optional[pulumi.Input[str]] = None,
|
576
763
|
path: Optional[pulumi.Input[str]] = None,
|
577
764
|
private_key_id: Optional[pulumi.Input[str]] = None,
|
578
765
|
project_id: Optional[pulumi.Input[str]] = None,
|
766
|
+
service_account_email: Optional[pulumi.Input[str]] = None,
|
579
767
|
tune: Optional[pulumi.Input[pulumi.InputType['AuthBackendTuneArgs']]] = None,
|
580
768
|
__props__=None):
|
581
769
|
opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
|
@@ -592,11 +780,15 @@ class AuthBackend(pulumi.CustomResource):
|
|
592
780
|
__props__.__dict__["custom_endpoint"] = custom_endpoint
|
593
781
|
__props__.__dict__["description"] = description
|
594
782
|
__props__.__dict__["disable_remount"] = disable_remount
|
783
|
+
__props__.__dict__["identity_token_audience"] = identity_token_audience
|
784
|
+
__props__.__dict__["identity_token_key"] = identity_token_key
|
785
|
+
__props__.__dict__["identity_token_ttl"] = identity_token_ttl
|
595
786
|
__props__.__dict__["local"] = local
|
596
787
|
__props__.__dict__["namespace"] = namespace
|
597
788
|
__props__.__dict__["path"] = path
|
598
789
|
__props__.__dict__["private_key_id"] = private_key_id
|
599
790
|
__props__.__dict__["project_id"] = project_id
|
791
|
+
__props__.__dict__["service_account_email"] = service_account_email
|
600
792
|
__props__.__dict__["tune"] = tune
|
601
793
|
__props__.__dict__["accessor"] = None
|
602
794
|
secret_opts = pulumi.ResourceOptions(additional_secret_outputs=["credentials"])
|
@@ -618,11 +810,15 @@ class AuthBackend(pulumi.CustomResource):
|
|
618
810
|
custom_endpoint: Optional[pulumi.Input[pulumi.InputType['AuthBackendCustomEndpointArgs']]] = None,
|
619
811
|
description: Optional[pulumi.Input[str]] = None,
|
620
812
|
disable_remount: Optional[pulumi.Input[bool]] = None,
|
813
|
+
identity_token_audience: Optional[pulumi.Input[str]] = None,
|
814
|
+
identity_token_key: Optional[pulumi.Input[str]] = None,
|
815
|
+
identity_token_ttl: Optional[pulumi.Input[int]] = None,
|
621
816
|
local: Optional[pulumi.Input[bool]] = None,
|
622
817
|
namespace: Optional[pulumi.Input[str]] = None,
|
623
818
|
path: Optional[pulumi.Input[str]] = None,
|
624
819
|
private_key_id: Optional[pulumi.Input[str]] = None,
|
625
820
|
project_id: Optional[pulumi.Input[str]] = None,
|
821
|
+
service_account_email: Optional[pulumi.Input[str]] = None,
|
626
822
|
tune: Optional[pulumi.Input[pulumi.InputType['AuthBackendTuneArgs']]] = None) -> 'AuthBackend':
|
627
823
|
"""
|
628
824
|
Get an existing AuthBackend resource's state with the given name, id, and optional extra
|
@@ -645,6 +841,12 @@ class AuthBackend(pulumi.CustomResource):
|
|
645
841
|
:param pulumi.Input[str] description: A description of the auth method.
|
646
842
|
:param pulumi.Input[bool] disable_remount: If set, opts out of mount migration on path updates.
|
647
843
|
See here for more info on [Mount Migration](https://www.vaultproject.io/docs/concepts/mount-migration)
|
844
|
+
:param pulumi.Input[str] identity_token_audience: The audience claim value for plugin identity
|
845
|
+
tokens. Must match an allowed audience configured for the target [Workload Identity Pool](https://cloud.google.com/iam/docs/workload-identity-federation-with-other-providers#prepare).
|
846
|
+
Mutually exclusive with `credentials`. Requires Vault 1.17+. *Available only for Vault Enterprise*.
|
847
|
+
:param pulumi.Input[str] identity_token_key: The key to use for signing plugin identity
|
848
|
+
tokens. Requires Vault 1.17+. *Available only for Vault Enterprise*.
|
849
|
+
:param pulumi.Input[int] identity_token_ttl: The TTL of generated tokens.
|
648
850
|
:param pulumi.Input[bool] local: Specifies if the auth method is local only.
|
649
851
|
:param pulumi.Input[str] namespace: The namespace to provision the resource in.
|
650
852
|
The value should not contain leading or trailing forward slashes.
|
@@ -653,6 +855,8 @@ class AuthBackend(pulumi.CustomResource):
|
|
653
855
|
:param pulumi.Input[str] path: The path to mount the auth method — this defaults to 'gcp'.
|
654
856
|
:param pulumi.Input[str] private_key_id: The ID of the private key from the credentials
|
655
857
|
:param pulumi.Input[str] project_id: The GCP Project ID
|
858
|
+
:param pulumi.Input[str] service_account_email: Service Account to impersonate for plugin workload identity federation.
|
859
|
+
Required with `identity_token_audience`. Requires Vault 1.17+. *Available only for Vault Enterprise*.
|
656
860
|
:param pulumi.Input[pulumi.InputType['AuthBackendTuneArgs']] tune: Extra configuration block. Structure is documented below.
|
657
861
|
|
658
862
|
The `tune` block is used to tune the auth backend:
|
@@ -668,11 +872,15 @@ class AuthBackend(pulumi.CustomResource):
|
|
668
872
|
__props__.__dict__["custom_endpoint"] = custom_endpoint
|
669
873
|
__props__.__dict__["description"] = description
|
670
874
|
__props__.__dict__["disable_remount"] = disable_remount
|
875
|
+
__props__.__dict__["identity_token_audience"] = identity_token_audience
|
876
|
+
__props__.__dict__["identity_token_key"] = identity_token_key
|
877
|
+
__props__.__dict__["identity_token_ttl"] = identity_token_ttl
|
671
878
|
__props__.__dict__["local"] = local
|
672
879
|
__props__.__dict__["namespace"] = namespace
|
673
880
|
__props__.__dict__["path"] = path
|
674
881
|
__props__.__dict__["private_key_id"] = private_key_id
|
675
882
|
__props__.__dict__["project_id"] = project_id
|
883
|
+
__props__.__dict__["service_account_email"] = service_account_email
|
676
884
|
__props__.__dict__["tune"] = tune
|
677
885
|
return AuthBackend(resource_name, opts=opts, __props__=__props__)
|
678
886
|
|
@@ -739,6 +947,33 @@ class AuthBackend(pulumi.CustomResource):
|
|
739
947
|
"""
|
740
948
|
return pulumi.get(self, "disable_remount")
|
741
949
|
|
950
|
+
@property
|
951
|
+
@pulumi.getter(name="identityTokenAudience")
|
952
|
+
def identity_token_audience(self) -> pulumi.Output[Optional[str]]:
|
953
|
+
"""
|
954
|
+
The audience claim value for plugin identity
|
955
|
+
tokens. Must match an allowed audience configured for the target [Workload Identity Pool](https://cloud.google.com/iam/docs/workload-identity-federation-with-other-providers#prepare).
|
956
|
+
Mutually exclusive with `credentials`. Requires Vault 1.17+. *Available only for Vault Enterprise*.
|
957
|
+
"""
|
958
|
+
return pulumi.get(self, "identity_token_audience")
|
959
|
+
|
960
|
+
@property
|
961
|
+
@pulumi.getter(name="identityTokenKey")
|
962
|
+
def identity_token_key(self) -> pulumi.Output[Optional[str]]:
|
963
|
+
"""
|
964
|
+
The key to use for signing plugin identity
|
965
|
+
tokens. Requires Vault 1.17+. *Available only for Vault Enterprise*.
|
966
|
+
"""
|
967
|
+
return pulumi.get(self, "identity_token_key")
|
968
|
+
|
969
|
+
@property
|
970
|
+
@pulumi.getter(name="identityTokenTtl")
|
971
|
+
def identity_token_ttl(self) -> pulumi.Output[Optional[int]]:
|
972
|
+
"""
|
973
|
+
The TTL of generated tokens.
|
974
|
+
"""
|
975
|
+
return pulumi.get(self, "identity_token_ttl")
|
976
|
+
|
742
977
|
@property
|
743
978
|
@pulumi.getter
|
744
979
|
def local(self) -> pulumi.Output[Optional[bool]]:
|
@@ -782,6 +1017,15 @@ class AuthBackend(pulumi.CustomResource):
|
|
782
1017
|
"""
|
783
1018
|
return pulumi.get(self, "project_id")
|
784
1019
|
|
1020
|
+
@property
|
1021
|
+
@pulumi.getter(name="serviceAccountEmail")
|
1022
|
+
def service_account_email(self) -> pulumi.Output[Optional[str]]:
|
1023
|
+
"""
|
1024
|
+
Service Account to impersonate for plugin workload identity federation.
|
1025
|
+
Required with `identity_token_audience`. Requires Vault 1.17+. *Available only for Vault Enterprise*.
|
1026
|
+
"""
|
1027
|
+
return pulumi.get(self, "service_account_email")
|
1028
|
+
|
785
1029
|
@property
|
786
1030
|
@pulumi.getter
|
787
1031
|
def tune(self) -> pulumi.Output['outputs.AuthBackendTune']:
|