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/__init__.py
CHANGED
@@ -26,6 +26,8 @@ from .namespace import *
|
|
26
26
|
from .nomad_secret_backend import *
|
27
27
|
from .nomad_secret_role import *
|
28
28
|
from .password_policy import *
|
29
|
+
from .plugin import *
|
30
|
+
from .plugin_pinned_version import *
|
29
31
|
from .policy import *
|
30
32
|
from .provider import *
|
31
33
|
from .quota_lease_count import *
|
@@ -739,6 +741,22 @@ _utilities.register(
|
|
739
741
|
"vault:index/passwordPolicy:PasswordPolicy": "PasswordPolicy"
|
740
742
|
}
|
741
743
|
},
|
744
|
+
{
|
745
|
+
"pkg": "vault",
|
746
|
+
"mod": "index/plugin",
|
747
|
+
"fqn": "pulumi_vault",
|
748
|
+
"classes": {
|
749
|
+
"vault:index/plugin:Plugin": "Plugin"
|
750
|
+
}
|
751
|
+
},
|
752
|
+
{
|
753
|
+
"pkg": "vault",
|
754
|
+
"mod": "index/pluginPinnedVersion",
|
755
|
+
"fqn": "pulumi_vault",
|
756
|
+
"classes": {
|
757
|
+
"vault:index/pluginPinnedVersion:PluginPinnedVersion": "PluginPinnedVersion"
|
758
|
+
}
|
759
|
+
},
|
742
760
|
{
|
743
761
|
"pkg": "vault",
|
744
762
|
"mod": "index/policy",
|
@@ -1003,6 +1021,14 @@ _utilities.register(
|
|
1003
1021
|
"vault:pkiSecret/backendConfigCluster:BackendConfigCluster": "BackendConfigCluster"
|
1004
1022
|
}
|
1005
1023
|
},
|
1024
|
+
{
|
1025
|
+
"pkg": "vault",
|
1026
|
+
"mod": "pkiSecret/backendConfigEst",
|
1027
|
+
"fqn": "pulumi_vault.pkisecret",
|
1028
|
+
"classes": {
|
1029
|
+
"vault:pkiSecret/backendConfigEst:BackendConfigEst": "BackendConfigEst"
|
1030
|
+
}
|
1031
|
+
},
|
1006
1032
|
{
|
1007
1033
|
"pkg": "vault",
|
1008
1034
|
"mod": "pkiSecret/secretBackendCert",
|
pulumi_vault/auth_backend.py
CHANGED
@@ -19,6 +19,7 @@ class AuthBackendArgs:
|
|
19
19
|
type: pulumi.Input[str],
|
20
20
|
description: Optional[pulumi.Input[str]] = None,
|
21
21
|
disable_remount: Optional[pulumi.Input[bool]] = None,
|
22
|
+
identity_token_key: Optional[pulumi.Input[str]] = None,
|
22
23
|
local: Optional[pulumi.Input[bool]] = None,
|
23
24
|
namespace: Optional[pulumi.Input[str]] = None,
|
24
25
|
path: Optional[pulumi.Input[str]] = None,
|
@@ -29,6 +30,7 @@ class AuthBackendArgs:
|
|
29
30
|
:param pulumi.Input[str] description: A description of the auth method.
|
30
31
|
:param pulumi.Input[bool] disable_remount: If set, opts out of mount migration on path updates.
|
31
32
|
See here for more info on [Mount Migration](https://www.vaultproject.io/docs/concepts/mount-migration)
|
33
|
+
:param pulumi.Input[str] identity_token_key: The key to use for signing identity tokens.
|
32
34
|
:param pulumi.Input[bool] local: Specifies if the auth method is local only.
|
33
35
|
:param pulumi.Input[str] namespace: The namespace to provision the resource in.
|
34
36
|
The value should not contain leading or trailing forward slashes.
|
@@ -44,6 +46,8 @@ class AuthBackendArgs:
|
|
44
46
|
pulumi.set(__self__, "description", description)
|
45
47
|
if disable_remount is not None:
|
46
48
|
pulumi.set(__self__, "disable_remount", disable_remount)
|
49
|
+
if identity_token_key is not None:
|
50
|
+
pulumi.set(__self__, "identity_token_key", identity_token_key)
|
47
51
|
if local is not None:
|
48
52
|
pulumi.set(__self__, "local", local)
|
49
53
|
if namespace is not None:
|
@@ -90,6 +94,18 @@ class AuthBackendArgs:
|
|
90
94
|
def disable_remount(self, value: Optional[pulumi.Input[bool]]):
|
91
95
|
pulumi.set(self, "disable_remount", value)
|
92
96
|
|
97
|
+
@property
|
98
|
+
@pulumi.getter(name="identityTokenKey")
|
99
|
+
def identity_token_key(self) -> Optional[pulumi.Input[str]]:
|
100
|
+
"""
|
101
|
+
The key to use for signing identity tokens.
|
102
|
+
"""
|
103
|
+
return pulumi.get(self, "identity_token_key")
|
104
|
+
|
105
|
+
@identity_token_key.setter
|
106
|
+
def identity_token_key(self, value: Optional[pulumi.Input[str]]):
|
107
|
+
pulumi.set(self, "identity_token_key", value)
|
108
|
+
|
93
109
|
@property
|
94
110
|
@pulumi.getter
|
95
111
|
def local(self) -> Optional[pulumi.Input[bool]]:
|
@@ -150,6 +166,7 @@ class _AuthBackendState:
|
|
150
166
|
accessor: Optional[pulumi.Input[str]] = None,
|
151
167
|
description: Optional[pulumi.Input[str]] = None,
|
152
168
|
disable_remount: Optional[pulumi.Input[bool]] = None,
|
169
|
+
identity_token_key: Optional[pulumi.Input[str]] = None,
|
153
170
|
local: Optional[pulumi.Input[bool]] = None,
|
154
171
|
namespace: Optional[pulumi.Input[str]] = None,
|
155
172
|
path: Optional[pulumi.Input[str]] = None,
|
@@ -161,6 +178,7 @@ class _AuthBackendState:
|
|
161
178
|
:param pulumi.Input[str] description: A description of the auth method.
|
162
179
|
:param pulumi.Input[bool] disable_remount: If set, opts out of mount migration on path updates.
|
163
180
|
See here for more info on [Mount Migration](https://www.vaultproject.io/docs/concepts/mount-migration)
|
181
|
+
:param pulumi.Input[str] identity_token_key: The key to use for signing identity tokens.
|
164
182
|
:param pulumi.Input[bool] local: Specifies if the auth method is local only.
|
165
183
|
:param pulumi.Input[str] namespace: The namespace to provision the resource in.
|
166
184
|
The value should not contain leading or trailing forward slashes.
|
@@ -178,6 +196,8 @@ class _AuthBackendState:
|
|
178
196
|
pulumi.set(__self__, "description", description)
|
179
197
|
if disable_remount is not None:
|
180
198
|
pulumi.set(__self__, "disable_remount", disable_remount)
|
199
|
+
if identity_token_key is not None:
|
200
|
+
pulumi.set(__self__, "identity_token_key", identity_token_key)
|
181
201
|
if local is not None:
|
182
202
|
pulumi.set(__self__, "local", local)
|
183
203
|
if namespace is not None:
|
@@ -226,6 +246,18 @@ class _AuthBackendState:
|
|
226
246
|
def disable_remount(self, value: Optional[pulumi.Input[bool]]):
|
227
247
|
pulumi.set(self, "disable_remount", value)
|
228
248
|
|
249
|
+
@property
|
250
|
+
@pulumi.getter(name="identityTokenKey")
|
251
|
+
def identity_token_key(self) -> Optional[pulumi.Input[str]]:
|
252
|
+
"""
|
253
|
+
The key to use for signing identity tokens.
|
254
|
+
"""
|
255
|
+
return pulumi.get(self, "identity_token_key")
|
256
|
+
|
257
|
+
@identity_token_key.setter
|
258
|
+
def identity_token_key(self, value: Optional[pulumi.Input[str]]):
|
259
|
+
pulumi.set(self, "identity_token_key", value)
|
260
|
+
|
229
261
|
@property
|
230
262
|
@pulumi.getter
|
231
263
|
def local(self) -> Optional[pulumi.Input[bool]]:
|
@@ -299,6 +331,7 @@ class AuthBackend(pulumi.CustomResource):
|
|
299
331
|
opts: Optional[pulumi.ResourceOptions] = None,
|
300
332
|
description: Optional[pulumi.Input[str]] = None,
|
301
333
|
disable_remount: Optional[pulumi.Input[bool]] = None,
|
334
|
+
identity_token_key: Optional[pulumi.Input[str]] = None,
|
302
335
|
local: Optional[pulumi.Input[bool]] = None,
|
303
336
|
namespace: Optional[pulumi.Input[str]] = None,
|
304
337
|
path: Optional[pulumi.Input[str]] = None,
|
@@ -319,6 +352,7 @@ class AuthBackend(pulumi.CustomResource):
|
|
319
352
|
:param pulumi.Input[str] description: A description of the auth method.
|
320
353
|
:param pulumi.Input[bool] disable_remount: If set, opts out of mount migration on path updates.
|
321
354
|
See here for more info on [Mount Migration](https://www.vaultproject.io/docs/concepts/mount-migration)
|
355
|
+
:param pulumi.Input[str] identity_token_key: The key to use for signing identity tokens.
|
322
356
|
:param pulumi.Input[bool] local: Specifies if the auth method is local only.
|
323
357
|
:param pulumi.Input[str] namespace: The namespace to provision the resource in.
|
324
358
|
The value should not contain leading or trailing forward slashes.
|
@@ -362,6 +396,7 @@ class AuthBackend(pulumi.CustomResource):
|
|
362
396
|
opts: Optional[pulumi.ResourceOptions] = None,
|
363
397
|
description: Optional[pulumi.Input[str]] = None,
|
364
398
|
disable_remount: Optional[pulumi.Input[bool]] = None,
|
399
|
+
identity_token_key: Optional[pulumi.Input[str]] = None,
|
365
400
|
local: Optional[pulumi.Input[bool]] = None,
|
366
401
|
namespace: Optional[pulumi.Input[str]] = None,
|
367
402
|
path: Optional[pulumi.Input[str]] = None,
|
@@ -378,6 +413,7 @@ class AuthBackend(pulumi.CustomResource):
|
|
378
413
|
|
379
414
|
__props__.__dict__["description"] = description
|
380
415
|
__props__.__dict__["disable_remount"] = disable_remount
|
416
|
+
__props__.__dict__["identity_token_key"] = identity_token_key
|
381
417
|
__props__.__dict__["local"] = local
|
382
418
|
__props__.__dict__["namespace"] = namespace
|
383
419
|
__props__.__dict__["path"] = path
|
@@ -399,6 +435,7 @@ class AuthBackend(pulumi.CustomResource):
|
|
399
435
|
accessor: Optional[pulumi.Input[str]] = None,
|
400
436
|
description: Optional[pulumi.Input[str]] = None,
|
401
437
|
disable_remount: Optional[pulumi.Input[bool]] = None,
|
438
|
+
identity_token_key: Optional[pulumi.Input[str]] = None,
|
402
439
|
local: Optional[pulumi.Input[bool]] = None,
|
403
440
|
namespace: Optional[pulumi.Input[str]] = None,
|
404
441
|
path: Optional[pulumi.Input[str]] = None,
|
@@ -415,6 +452,7 @@ class AuthBackend(pulumi.CustomResource):
|
|
415
452
|
:param pulumi.Input[str] description: A description of the auth method.
|
416
453
|
:param pulumi.Input[bool] disable_remount: If set, opts out of mount migration on path updates.
|
417
454
|
See here for more info on [Mount Migration](https://www.vaultproject.io/docs/concepts/mount-migration)
|
455
|
+
:param pulumi.Input[str] identity_token_key: The key to use for signing identity tokens.
|
418
456
|
:param pulumi.Input[bool] local: Specifies if the auth method is local only.
|
419
457
|
:param pulumi.Input[str] namespace: The namespace to provision the resource in.
|
420
458
|
The value should not contain leading or trailing forward slashes.
|
@@ -433,6 +471,7 @@ class AuthBackend(pulumi.CustomResource):
|
|
433
471
|
__props__.__dict__["accessor"] = accessor
|
434
472
|
__props__.__dict__["description"] = description
|
435
473
|
__props__.__dict__["disable_remount"] = disable_remount
|
474
|
+
__props__.__dict__["identity_token_key"] = identity_token_key
|
436
475
|
__props__.__dict__["local"] = local
|
437
476
|
__props__.__dict__["namespace"] = namespace
|
438
477
|
__props__.__dict__["path"] = path
|
@@ -465,6 +504,14 @@ class AuthBackend(pulumi.CustomResource):
|
|
465
504
|
"""
|
466
505
|
return pulumi.get(self, "disable_remount")
|
467
506
|
|
507
|
+
@property
|
508
|
+
@pulumi.getter(name="identityTokenKey")
|
509
|
+
def identity_token_key(self) -> pulumi.Output[Optional[str]]:
|
510
|
+
"""
|
511
|
+
The key to use for signing identity tokens.
|
512
|
+
"""
|
513
|
+
return pulumi.get(self, "identity_token_key")
|
514
|
+
|
468
515
|
@property
|
469
516
|
@pulumi.getter
|
470
517
|
def local(self) -> pulumi.Output[Optional[bool]]:
|
@@ -19,7 +19,11 @@ class AuthBackendClientArgs:
|
|
19
19
|
ec2_endpoint: Optional[pulumi.Input[str]] = None,
|
20
20
|
iam_endpoint: Optional[pulumi.Input[str]] = None,
|
21
21
|
iam_server_id_header_value: Optional[pulumi.Input[str]] = None,
|
22
|
+
identity_token_audience: Optional[pulumi.Input[str]] = None,
|
23
|
+
identity_token_ttl: Optional[pulumi.Input[int]] = None,
|
24
|
+
max_retries: Optional[pulumi.Input[int]] = None,
|
22
25
|
namespace: Optional[pulumi.Input[str]] = None,
|
26
|
+
role_arn: Optional[pulumi.Input[str]] = None,
|
23
27
|
secret_key: Optional[pulumi.Input[str]] = None,
|
24
28
|
sts_endpoint: Optional[pulumi.Input[str]] = None,
|
25
29
|
sts_region: Optional[pulumi.Input[str]] = None,
|
@@ -27,7 +31,7 @@ class AuthBackendClientArgs:
|
|
27
31
|
"""
|
28
32
|
The set of arguments for constructing a AuthBackendClient resource.
|
29
33
|
:param pulumi.Input[str] access_key: The AWS access key that Vault should use for the
|
30
|
-
auth backend.
|
34
|
+
auth backend. Mutually exclusive with `identity_token_audience`.
|
31
35
|
:param pulumi.Input[str] backend: The path the AWS auth backend being configured was
|
32
36
|
mounted at. Defaults to `aws`.
|
33
37
|
:param pulumi.Input[str] ec2_endpoint: Override the URL Vault uses when making EC2 API
|
@@ -37,10 +41,18 @@ class AuthBackendClientArgs:
|
|
37
41
|
:param pulumi.Input[str] iam_server_id_header_value: The value to require in the
|
38
42
|
`X-Vault-AWS-IAM-Server-ID` header as part of `GetCallerIdentity` requests
|
39
43
|
that are used in the IAM auth method.
|
44
|
+
:param pulumi.Input[str] identity_token_audience: The audience claim value. Mutually exclusive with `access_key`.
|
45
|
+
Requires Vault 1.17+. *Available only for Vault Enterprise*
|
46
|
+
:param pulumi.Input[int] identity_token_ttl: The TTL of generated identity tokens in seconds. Requires Vault 1.17+.
|
47
|
+
*Available only for Vault Enterprise*
|
48
|
+
:param pulumi.Input[int] max_retries: Number of max retries the client should use for recoverable errors.
|
49
|
+
The default `-1` falls back to the AWS SDK's default behavior.
|
40
50
|
:param pulumi.Input[str] namespace: The namespace to provision the resource in.
|
41
51
|
The value should not contain leading or trailing forward slashes.
|
42
52
|
The `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault/index.html#namespace).
|
43
53
|
*Available only for Vault Enterprise*.
|
54
|
+
:param pulumi.Input[str] role_arn: Role ARN to assume for plugin identity token federation. Requires Vault 1.17+.
|
55
|
+
*Available only for Vault Enterprise*
|
44
56
|
:param pulumi.Input[str] secret_key: The AWS secret key that Vault should use for the
|
45
57
|
auth backend.
|
46
58
|
:param pulumi.Input[str] sts_endpoint: Override the URL Vault uses when making STS API
|
@@ -63,8 +75,16 @@ class AuthBackendClientArgs:
|
|
63
75
|
pulumi.set(__self__, "iam_endpoint", iam_endpoint)
|
64
76
|
if iam_server_id_header_value is not None:
|
65
77
|
pulumi.set(__self__, "iam_server_id_header_value", iam_server_id_header_value)
|
78
|
+
if identity_token_audience is not None:
|
79
|
+
pulumi.set(__self__, "identity_token_audience", identity_token_audience)
|
80
|
+
if identity_token_ttl is not None:
|
81
|
+
pulumi.set(__self__, "identity_token_ttl", identity_token_ttl)
|
82
|
+
if max_retries is not None:
|
83
|
+
pulumi.set(__self__, "max_retries", max_retries)
|
66
84
|
if namespace is not None:
|
67
85
|
pulumi.set(__self__, "namespace", namespace)
|
86
|
+
if role_arn is not None:
|
87
|
+
pulumi.set(__self__, "role_arn", role_arn)
|
68
88
|
if secret_key is not None:
|
69
89
|
pulumi.set(__self__, "secret_key", secret_key)
|
70
90
|
if sts_endpoint is not None:
|
@@ -79,7 +99,7 @@ class AuthBackendClientArgs:
|
|
79
99
|
def access_key(self) -> Optional[pulumi.Input[str]]:
|
80
100
|
"""
|
81
101
|
The AWS access key that Vault should use for the
|
82
|
-
auth backend.
|
102
|
+
auth backend. Mutually exclusive with `identity_token_audience`.
|
83
103
|
"""
|
84
104
|
return pulumi.get(self, "access_key")
|
85
105
|
|
@@ -140,6 +160,45 @@ class AuthBackendClientArgs:
|
|
140
160
|
def iam_server_id_header_value(self, value: Optional[pulumi.Input[str]]):
|
141
161
|
pulumi.set(self, "iam_server_id_header_value", value)
|
142
162
|
|
163
|
+
@property
|
164
|
+
@pulumi.getter(name="identityTokenAudience")
|
165
|
+
def identity_token_audience(self) -> Optional[pulumi.Input[str]]:
|
166
|
+
"""
|
167
|
+
The audience claim value. Mutually exclusive with `access_key`.
|
168
|
+
Requires Vault 1.17+. *Available only for Vault Enterprise*
|
169
|
+
"""
|
170
|
+
return pulumi.get(self, "identity_token_audience")
|
171
|
+
|
172
|
+
@identity_token_audience.setter
|
173
|
+
def identity_token_audience(self, value: Optional[pulumi.Input[str]]):
|
174
|
+
pulumi.set(self, "identity_token_audience", value)
|
175
|
+
|
176
|
+
@property
|
177
|
+
@pulumi.getter(name="identityTokenTtl")
|
178
|
+
def identity_token_ttl(self) -> Optional[pulumi.Input[int]]:
|
179
|
+
"""
|
180
|
+
The TTL of generated identity tokens in seconds. Requires Vault 1.17+.
|
181
|
+
*Available only for Vault Enterprise*
|
182
|
+
"""
|
183
|
+
return pulumi.get(self, "identity_token_ttl")
|
184
|
+
|
185
|
+
@identity_token_ttl.setter
|
186
|
+
def identity_token_ttl(self, value: Optional[pulumi.Input[int]]):
|
187
|
+
pulumi.set(self, "identity_token_ttl", value)
|
188
|
+
|
189
|
+
@property
|
190
|
+
@pulumi.getter(name="maxRetries")
|
191
|
+
def max_retries(self) -> Optional[pulumi.Input[int]]:
|
192
|
+
"""
|
193
|
+
Number of max retries the client should use for recoverable errors.
|
194
|
+
The default `-1` falls back to the AWS SDK's default behavior.
|
195
|
+
"""
|
196
|
+
return pulumi.get(self, "max_retries")
|
197
|
+
|
198
|
+
@max_retries.setter
|
199
|
+
def max_retries(self, value: Optional[pulumi.Input[int]]):
|
200
|
+
pulumi.set(self, "max_retries", value)
|
201
|
+
|
143
202
|
@property
|
144
203
|
@pulumi.getter
|
145
204
|
def namespace(self) -> Optional[pulumi.Input[str]]:
|
@@ -155,6 +214,19 @@ class AuthBackendClientArgs:
|
|
155
214
|
def namespace(self, value: Optional[pulumi.Input[str]]):
|
156
215
|
pulumi.set(self, "namespace", value)
|
157
216
|
|
217
|
+
@property
|
218
|
+
@pulumi.getter(name="roleArn")
|
219
|
+
def role_arn(self) -> Optional[pulumi.Input[str]]:
|
220
|
+
"""
|
221
|
+
Role ARN to assume for plugin identity token federation. Requires Vault 1.17+.
|
222
|
+
*Available only for Vault Enterprise*
|
223
|
+
"""
|
224
|
+
return pulumi.get(self, "role_arn")
|
225
|
+
|
226
|
+
@role_arn.setter
|
227
|
+
def role_arn(self, value: Optional[pulumi.Input[str]]):
|
228
|
+
pulumi.set(self, "role_arn", value)
|
229
|
+
|
158
230
|
@property
|
159
231
|
@pulumi.getter(name="secretKey")
|
160
232
|
def secret_key(self) -> Optional[pulumi.Input[str]]:
|
@@ -219,7 +291,11 @@ class _AuthBackendClientState:
|
|
219
291
|
ec2_endpoint: Optional[pulumi.Input[str]] = None,
|
220
292
|
iam_endpoint: Optional[pulumi.Input[str]] = None,
|
221
293
|
iam_server_id_header_value: Optional[pulumi.Input[str]] = None,
|
294
|
+
identity_token_audience: Optional[pulumi.Input[str]] = None,
|
295
|
+
identity_token_ttl: Optional[pulumi.Input[int]] = None,
|
296
|
+
max_retries: Optional[pulumi.Input[int]] = None,
|
222
297
|
namespace: Optional[pulumi.Input[str]] = None,
|
298
|
+
role_arn: Optional[pulumi.Input[str]] = None,
|
223
299
|
secret_key: Optional[pulumi.Input[str]] = None,
|
224
300
|
sts_endpoint: Optional[pulumi.Input[str]] = None,
|
225
301
|
sts_region: Optional[pulumi.Input[str]] = None,
|
@@ -227,7 +303,7 @@ class _AuthBackendClientState:
|
|
227
303
|
"""
|
228
304
|
Input properties used for looking up and filtering AuthBackendClient resources.
|
229
305
|
:param pulumi.Input[str] access_key: The AWS access key that Vault should use for the
|
230
|
-
auth backend.
|
306
|
+
auth backend. Mutually exclusive with `identity_token_audience`.
|
231
307
|
:param pulumi.Input[str] backend: The path the AWS auth backend being configured was
|
232
308
|
mounted at. Defaults to `aws`.
|
233
309
|
:param pulumi.Input[str] ec2_endpoint: Override the URL Vault uses when making EC2 API
|
@@ -237,10 +313,18 @@ class _AuthBackendClientState:
|
|
237
313
|
:param pulumi.Input[str] iam_server_id_header_value: The value to require in the
|
238
314
|
`X-Vault-AWS-IAM-Server-ID` header as part of `GetCallerIdentity` requests
|
239
315
|
that are used in the IAM auth method.
|
316
|
+
:param pulumi.Input[str] identity_token_audience: The audience claim value. Mutually exclusive with `access_key`.
|
317
|
+
Requires Vault 1.17+. *Available only for Vault Enterprise*
|
318
|
+
:param pulumi.Input[int] identity_token_ttl: The TTL of generated identity tokens in seconds. Requires Vault 1.17+.
|
319
|
+
*Available only for Vault Enterprise*
|
320
|
+
:param pulumi.Input[int] max_retries: Number of max retries the client should use for recoverable errors.
|
321
|
+
The default `-1` falls back to the AWS SDK's default behavior.
|
240
322
|
:param pulumi.Input[str] namespace: The namespace to provision the resource in.
|
241
323
|
The value should not contain leading or trailing forward slashes.
|
242
324
|
The `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault/index.html#namespace).
|
243
325
|
*Available only for Vault Enterprise*.
|
326
|
+
:param pulumi.Input[str] role_arn: Role ARN to assume for plugin identity token federation. Requires Vault 1.17+.
|
327
|
+
*Available only for Vault Enterprise*
|
244
328
|
:param pulumi.Input[str] secret_key: The AWS secret key that Vault should use for the
|
245
329
|
auth backend.
|
246
330
|
:param pulumi.Input[str] sts_endpoint: Override the URL Vault uses when making STS API
|
@@ -263,8 +347,16 @@ class _AuthBackendClientState:
|
|
263
347
|
pulumi.set(__self__, "iam_endpoint", iam_endpoint)
|
264
348
|
if iam_server_id_header_value is not None:
|
265
349
|
pulumi.set(__self__, "iam_server_id_header_value", iam_server_id_header_value)
|
350
|
+
if identity_token_audience is not None:
|
351
|
+
pulumi.set(__self__, "identity_token_audience", identity_token_audience)
|
352
|
+
if identity_token_ttl is not None:
|
353
|
+
pulumi.set(__self__, "identity_token_ttl", identity_token_ttl)
|
354
|
+
if max_retries is not None:
|
355
|
+
pulumi.set(__self__, "max_retries", max_retries)
|
266
356
|
if namespace is not None:
|
267
357
|
pulumi.set(__self__, "namespace", namespace)
|
358
|
+
if role_arn is not None:
|
359
|
+
pulumi.set(__self__, "role_arn", role_arn)
|
268
360
|
if secret_key is not None:
|
269
361
|
pulumi.set(__self__, "secret_key", secret_key)
|
270
362
|
if sts_endpoint is not None:
|
@@ -279,7 +371,7 @@ class _AuthBackendClientState:
|
|
279
371
|
def access_key(self) -> Optional[pulumi.Input[str]]:
|
280
372
|
"""
|
281
373
|
The AWS access key that Vault should use for the
|
282
|
-
auth backend.
|
374
|
+
auth backend. Mutually exclusive with `identity_token_audience`.
|
283
375
|
"""
|
284
376
|
return pulumi.get(self, "access_key")
|
285
377
|
|
@@ -340,6 +432,45 @@ class _AuthBackendClientState:
|
|
340
432
|
def iam_server_id_header_value(self, value: Optional[pulumi.Input[str]]):
|
341
433
|
pulumi.set(self, "iam_server_id_header_value", value)
|
342
434
|
|
435
|
+
@property
|
436
|
+
@pulumi.getter(name="identityTokenAudience")
|
437
|
+
def identity_token_audience(self) -> Optional[pulumi.Input[str]]:
|
438
|
+
"""
|
439
|
+
The audience claim value. Mutually exclusive with `access_key`.
|
440
|
+
Requires Vault 1.17+. *Available only for Vault Enterprise*
|
441
|
+
"""
|
442
|
+
return pulumi.get(self, "identity_token_audience")
|
443
|
+
|
444
|
+
@identity_token_audience.setter
|
445
|
+
def identity_token_audience(self, value: Optional[pulumi.Input[str]]):
|
446
|
+
pulumi.set(self, "identity_token_audience", value)
|
447
|
+
|
448
|
+
@property
|
449
|
+
@pulumi.getter(name="identityTokenTtl")
|
450
|
+
def identity_token_ttl(self) -> Optional[pulumi.Input[int]]:
|
451
|
+
"""
|
452
|
+
The TTL of generated identity tokens in seconds. Requires Vault 1.17+.
|
453
|
+
*Available only for Vault Enterprise*
|
454
|
+
"""
|
455
|
+
return pulumi.get(self, "identity_token_ttl")
|
456
|
+
|
457
|
+
@identity_token_ttl.setter
|
458
|
+
def identity_token_ttl(self, value: Optional[pulumi.Input[int]]):
|
459
|
+
pulumi.set(self, "identity_token_ttl", value)
|
460
|
+
|
461
|
+
@property
|
462
|
+
@pulumi.getter(name="maxRetries")
|
463
|
+
def max_retries(self) -> Optional[pulumi.Input[int]]:
|
464
|
+
"""
|
465
|
+
Number of max retries the client should use for recoverable errors.
|
466
|
+
The default `-1` falls back to the AWS SDK's default behavior.
|
467
|
+
"""
|
468
|
+
return pulumi.get(self, "max_retries")
|
469
|
+
|
470
|
+
@max_retries.setter
|
471
|
+
def max_retries(self, value: Optional[pulumi.Input[int]]):
|
472
|
+
pulumi.set(self, "max_retries", value)
|
473
|
+
|
343
474
|
@property
|
344
475
|
@pulumi.getter
|
345
476
|
def namespace(self) -> Optional[pulumi.Input[str]]:
|
@@ -355,6 +486,19 @@ class _AuthBackendClientState:
|
|
355
486
|
def namespace(self, value: Optional[pulumi.Input[str]]):
|
356
487
|
pulumi.set(self, "namespace", value)
|
357
488
|
|
489
|
+
@property
|
490
|
+
@pulumi.getter(name="roleArn")
|
491
|
+
def role_arn(self) -> Optional[pulumi.Input[str]]:
|
492
|
+
"""
|
493
|
+
Role ARN to assume for plugin identity token federation. Requires Vault 1.17+.
|
494
|
+
*Available only for Vault Enterprise*
|
495
|
+
"""
|
496
|
+
return pulumi.get(self, "role_arn")
|
497
|
+
|
498
|
+
@role_arn.setter
|
499
|
+
def role_arn(self, value: Optional[pulumi.Input[str]]):
|
500
|
+
pulumi.set(self, "role_arn", value)
|
501
|
+
|
358
502
|
@property
|
359
503
|
@pulumi.getter(name="secretKey")
|
360
504
|
def secret_key(self) -> Optional[pulumi.Input[str]]:
|
@@ -421,7 +565,11 @@ class AuthBackendClient(pulumi.CustomResource):
|
|
421
565
|
ec2_endpoint: Optional[pulumi.Input[str]] = None,
|
422
566
|
iam_endpoint: Optional[pulumi.Input[str]] = None,
|
423
567
|
iam_server_id_header_value: Optional[pulumi.Input[str]] = None,
|
568
|
+
identity_token_audience: Optional[pulumi.Input[str]] = None,
|
569
|
+
identity_token_ttl: Optional[pulumi.Input[int]] = None,
|
570
|
+
max_retries: Optional[pulumi.Input[int]] = None,
|
424
571
|
namespace: Optional[pulumi.Input[str]] = None,
|
572
|
+
role_arn: Optional[pulumi.Input[str]] = None,
|
425
573
|
secret_key: Optional[pulumi.Input[str]] = None,
|
426
574
|
sts_endpoint: Optional[pulumi.Input[str]] = None,
|
427
575
|
sts_region: Optional[pulumi.Input[str]] = None,
|
@@ -430,6 +578,18 @@ class AuthBackendClient(pulumi.CustomResource):
|
|
430
578
|
"""
|
431
579
|
## Example Usage
|
432
580
|
|
581
|
+
You can setup the AWS auth engine with Workload Identity Federation (WIF) for a secret-less configuration:
|
582
|
+
```python
|
583
|
+
import pulumi
|
584
|
+
import pulumi_vault as vault
|
585
|
+
|
586
|
+
example = vault.AuthBackend("example", type="aws")
|
587
|
+
example_auth_backend_client = vault.aws.AuthBackendClient("example",
|
588
|
+
identity_token_audience="<TOKEN_AUDIENCE>",
|
589
|
+
identity_token_ttl="<TOKEN_TTL>",
|
590
|
+
role_arn="<AWS_ROLE_ARN>")
|
591
|
+
```
|
592
|
+
|
433
593
|
```python
|
434
594
|
import pulumi
|
435
595
|
import pulumi_vault as vault
|
@@ -452,7 +612,7 @@ class AuthBackendClient(pulumi.CustomResource):
|
|
452
612
|
:param str resource_name: The name of the resource.
|
453
613
|
:param pulumi.ResourceOptions opts: Options for the resource.
|
454
614
|
:param pulumi.Input[str] access_key: The AWS access key that Vault should use for the
|
455
|
-
auth backend.
|
615
|
+
auth backend. Mutually exclusive with `identity_token_audience`.
|
456
616
|
:param pulumi.Input[str] backend: The path the AWS auth backend being configured was
|
457
617
|
mounted at. Defaults to `aws`.
|
458
618
|
:param pulumi.Input[str] ec2_endpoint: Override the URL Vault uses when making EC2 API
|
@@ -462,10 +622,18 @@ class AuthBackendClient(pulumi.CustomResource):
|
|
462
622
|
:param pulumi.Input[str] iam_server_id_header_value: The value to require in the
|
463
623
|
`X-Vault-AWS-IAM-Server-ID` header as part of `GetCallerIdentity` requests
|
464
624
|
that are used in the IAM auth method.
|
625
|
+
:param pulumi.Input[str] identity_token_audience: The audience claim value. Mutually exclusive with `access_key`.
|
626
|
+
Requires Vault 1.17+. *Available only for Vault Enterprise*
|
627
|
+
:param pulumi.Input[int] identity_token_ttl: The TTL of generated identity tokens in seconds. Requires Vault 1.17+.
|
628
|
+
*Available only for Vault Enterprise*
|
629
|
+
:param pulumi.Input[int] max_retries: Number of max retries the client should use for recoverable errors.
|
630
|
+
The default `-1` falls back to the AWS SDK's default behavior.
|
465
631
|
:param pulumi.Input[str] namespace: The namespace to provision the resource in.
|
466
632
|
The value should not contain leading or trailing forward slashes.
|
467
633
|
The `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault/index.html#namespace).
|
468
634
|
*Available only for Vault Enterprise*.
|
635
|
+
:param pulumi.Input[str] role_arn: Role ARN to assume for plugin identity token federation. Requires Vault 1.17+.
|
636
|
+
*Available only for Vault Enterprise*
|
469
637
|
:param pulumi.Input[str] secret_key: The AWS secret key that Vault should use for the
|
470
638
|
auth backend.
|
471
639
|
:param pulumi.Input[str] sts_endpoint: Override the URL Vault uses when making STS API
|
@@ -487,6 +655,18 @@ class AuthBackendClient(pulumi.CustomResource):
|
|
487
655
|
"""
|
488
656
|
## Example Usage
|
489
657
|
|
658
|
+
You can setup the AWS auth engine with Workload Identity Federation (WIF) for a secret-less configuration:
|
659
|
+
```python
|
660
|
+
import pulumi
|
661
|
+
import pulumi_vault as vault
|
662
|
+
|
663
|
+
example = vault.AuthBackend("example", type="aws")
|
664
|
+
example_auth_backend_client = vault.aws.AuthBackendClient("example",
|
665
|
+
identity_token_audience="<TOKEN_AUDIENCE>",
|
666
|
+
identity_token_ttl="<TOKEN_TTL>",
|
667
|
+
role_arn="<AWS_ROLE_ARN>")
|
668
|
+
```
|
669
|
+
|
490
670
|
```python
|
491
671
|
import pulumi
|
492
672
|
import pulumi_vault as vault
|
@@ -526,7 +706,11 @@ class AuthBackendClient(pulumi.CustomResource):
|
|
526
706
|
ec2_endpoint: Optional[pulumi.Input[str]] = None,
|
527
707
|
iam_endpoint: Optional[pulumi.Input[str]] = None,
|
528
708
|
iam_server_id_header_value: Optional[pulumi.Input[str]] = None,
|
709
|
+
identity_token_audience: Optional[pulumi.Input[str]] = None,
|
710
|
+
identity_token_ttl: Optional[pulumi.Input[int]] = None,
|
711
|
+
max_retries: Optional[pulumi.Input[int]] = None,
|
529
712
|
namespace: Optional[pulumi.Input[str]] = None,
|
713
|
+
role_arn: Optional[pulumi.Input[str]] = None,
|
530
714
|
secret_key: Optional[pulumi.Input[str]] = None,
|
531
715
|
sts_endpoint: Optional[pulumi.Input[str]] = None,
|
532
716
|
sts_region: Optional[pulumi.Input[str]] = None,
|
@@ -545,7 +729,11 @@ class AuthBackendClient(pulumi.CustomResource):
|
|
545
729
|
__props__.__dict__["ec2_endpoint"] = ec2_endpoint
|
546
730
|
__props__.__dict__["iam_endpoint"] = iam_endpoint
|
547
731
|
__props__.__dict__["iam_server_id_header_value"] = iam_server_id_header_value
|
732
|
+
__props__.__dict__["identity_token_audience"] = identity_token_audience
|
733
|
+
__props__.__dict__["identity_token_ttl"] = identity_token_ttl
|
734
|
+
__props__.__dict__["max_retries"] = max_retries
|
548
735
|
__props__.__dict__["namespace"] = namespace
|
736
|
+
__props__.__dict__["role_arn"] = role_arn
|
549
737
|
__props__.__dict__["secret_key"] = None if secret_key is None else pulumi.Output.secret(secret_key)
|
550
738
|
__props__.__dict__["sts_endpoint"] = sts_endpoint
|
551
739
|
__props__.__dict__["sts_region"] = sts_region
|
@@ -567,7 +755,11 @@ class AuthBackendClient(pulumi.CustomResource):
|
|
567
755
|
ec2_endpoint: Optional[pulumi.Input[str]] = None,
|
568
756
|
iam_endpoint: Optional[pulumi.Input[str]] = None,
|
569
757
|
iam_server_id_header_value: Optional[pulumi.Input[str]] = None,
|
758
|
+
identity_token_audience: Optional[pulumi.Input[str]] = None,
|
759
|
+
identity_token_ttl: Optional[pulumi.Input[int]] = None,
|
760
|
+
max_retries: Optional[pulumi.Input[int]] = None,
|
570
761
|
namespace: Optional[pulumi.Input[str]] = None,
|
762
|
+
role_arn: Optional[pulumi.Input[str]] = None,
|
571
763
|
secret_key: Optional[pulumi.Input[str]] = None,
|
572
764
|
sts_endpoint: Optional[pulumi.Input[str]] = None,
|
573
765
|
sts_region: Optional[pulumi.Input[str]] = None,
|
@@ -580,7 +772,7 @@ class AuthBackendClient(pulumi.CustomResource):
|
|
580
772
|
:param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
|
581
773
|
:param pulumi.ResourceOptions opts: Options for the resource.
|
582
774
|
:param pulumi.Input[str] access_key: The AWS access key that Vault should use for the
|
583
|
-
auth backend.
|
775
|
+
auth backend. Mutually exclusive with `identity_token_audience`.
|
584
776
|
:param pulumi.Input[str] backend: The path the AWS auth backend being configured was
|
585
777
|
mounted at. Defaults to `aws`.
|
586
778
|
:param pulumi.Input[str] ec2_endpoint: Override the URL Vault uses when making EC2 API
|
@@ -590,10 +782,18 @@ class AuthBackendClient(pulumi.CustomResource):
|
|
590
782
|
:param pulumi.Input[str] iam_server_id_header_value: The value to require in the
|
591
783
|
`X-Vault-AWS-IAM-Server-ID` header as part of `GetCallerIdentity` requests
|
592
784
|
that are used in the IAM auth method.
|
785
|
+
:param pulumi.Input[str] identity_token_audience: The audience claim value. Mutually exclusive with `access_key`.
|
786
|
+
Requires Vault 1.17+. *Available only for Vault Enterprise*
|
787
|
+
:param pulumi.Input[int] identity_token_ttl: The TTL of generated identity tokens in seconds. Requires Vault 1.17+.
|
788
|
+
*Available only for Vault Enterprise*
|
789
|
+
:param pulumi.Input[int] max_retries: Number of max retries the client should use for recoverable errors.
|
790
|
+
The default `-1` falls back to the AWS SDK's default behavior.
|
593
791
|
:param pulumi.Input[str] namespace: The namespace to provision the resource in.
|
594
792
|
The value should not contain leading or trailing forward slashes.
|
595
793
|
The `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault/index.html#namespace).
|
596
794
|
*Available only for Vault Enterprise*.
|
795
|
+
:param pulumi.Input[str] role_arn: Role ARN to assume for plugin identity token federation. Requires Vault 1.17+.
|
796
|
+
*Available only for Vault Enterprise*
|
597
797
|
:param pulumi.Input[str] secret_key: The AWS secret key that Vault should use for the
|
598
798
|
auth backend.
|
599
799
|
:param pulumi.Input[str] sts_endpoint: Override the URL Vault uses when making STS API
|
@@ -615,7 +815,11 @@ class AuthBackendClient(pulumi.CustomResource):
|
|
615
815
|
__props__.__dict__["ec2_endpoint"] = ec2_endpoint
|
616
816
|
__props__.__dict__["iam_endpoint"] = iam_endpoint
|
617
817
|
__props__.__dict__["iam_server_id_header_value"] = iam_server_id_header_value
|
818
|
+
__props__.__dict__["identity_token_audience"] = identity_token_audience
|
819
|
+
__props__.__dict__["identity_token_ttl"] = identity_token_ttl
|
820
|
+
__props__.__dict__["max_retries"] = max_retries
|
618
821
|
__props__.__dict__["namespace"] = namespace
|
822
|
+
__props__.__dict__["role_arn"] = role_arn
|
619
823
|
__props__.__dict__["secret_key"] = secret_key
|
620
824
|
__props__.__dict__["sts_endpoint"] = sts_endpoint
|
621
825
|
__props__.__dict__["sts_region"] = sts_region
|
@@ -627,7 +831,7 @@ class AuthBackendClient(pulumi.CustomResource):
|
|
627
831
|
def access_key(self) -> pulumi.Output[Optional[str]]:
|
628
832
|
"""
|
629
833
|
The AWS access key that Vault should use for the
|
630
|
-
auth backend.
|
834
|
+
auth backend. Mutually exclusive with `identity_token_audience`.
|
631
835
|
"""
|
632
836
|
return pulumi.get(self, "access_key")
|
633
837
|
|
@@ -668,6 +872,33 @@ class AuthBackendClient(pulumi.CustomResource):
|
|
668
872
|
"""
|
669
873
|
return pulumi.get(self, "iam_server_id_header_value")
|
670
874
|
|
875
|
+
@property
|
876
|
+
@pulumi.getter(name="identityTokenAudience")
|
877
|
+
def identity_token_audience(self) -> pulumi.Output[Optional[str]]:
|
878
|
+
"""
|
879
|
+
The audience claim value. Mutually exclusive with `access_key`.
|
880
|
+
Requires Vault 1.17+. *Available only for Vault Enterprise*
|
881
|
+
"""
|
882
|
+
return pulumi.get(self, "identity_token_audience")
|
883
|
+
|
884
|
+
@property
|
885
|
+
@pulumi.getter(name="identityTokenTtl")
|
886
|
+
def identity_token_ttl(self) -> pulumi.Output[int]:
|
887
|
+
"""
|
888
|
+
The TTL of generated identity tokens in seconds. Requires Vault 1.17+.
|
889
|
+
*Available only for Vault Enterprise*
|
890
|
+
"""
|
891
|
+
return pulumi.get(self, "identity_token_ttl")
|
892
|
+
|
893
|
+
@property
|
894
|
+
@pulumi.getter(name="maxRetries")
|
895
|
+
def max_retries(self) -> pulumi.Output[Optional[int]]:
|
896
|
+
"""
|
897
|
+
Number of max retries the client should use for recoverable errors.
|
898
|
+
The default `-1` falls back to the AWS SDK's default behavior.
|
899
|
+
"""
|
900
|
+
return pulumi.get(self, "max_retries")
|
901
|
+
|
671
902
|
@property
|
672
903
|
@pulumi.getter
|
673
904
|
def namespace(self) -> pulumi.Output[Optional[str]]:
|
@@ -679,6 +910,15 @@ class AuthBackendClient(pulumi.CustomResource):
|
|
679
910
|
"""
|
680
911
|
return pulumi.get(self, "namespace")
|
681
912
|
|
913
|
+
@property
|
914
|
+
@pulumi.getter(name="roleArn")
|
915
|
+
def role_arn(self) -> pulumi.Output[Optional[str]]:
|
916
|
+
"""
|
917
|
+
Role ARN to assume for plugin identity token federation. Requires Vault 1.17+.
|
918
|
+
*Available only for Vault Enterprise*
|
919
|
+
"""
|
920
|
+
return pulumi.get(self, "role_arn")
|
921
|
+
|
682
922
|
@property
|
683
923
|
@pulumi.getter(name="secretKey")
|
684
924
|
def secret_key(self) -> pulumi.Output[Optional[str]]:
|