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
@@ -0,0 +1,233 @@
|
|
1
|
+
# coding=utf-8
|
2
|
+
# *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
|
3
|
+
# *** Do not edit by hand unless you're certain you know what you are doing! ***
|
4
|
+
|
5
|
+
import copy
|
6
|
+
import warnings
|
7
|
+
import pulumi
|
8
|
+
import pulumi.runtime
|
9
|
+
from typing import Any, Mapping, Optional, Sequence, Union, overload
|
10
|
+
from .. import _utilities
|
11
|
+
from . import outputs
|
12
|
+
|
13
|
+
__all__ = [
|
14
|
+
'GetBackendConfigEstResult',
|
15
|
+
'AwaitableGetBackendConfigEstResult',
|
16
|
+
'get_backend_config_est',
|
17
|
+
'get_backend_config_est_output',
|
18
|
+
]
|
19
|
+
|
20
|
+
@pulumi.output_type
|
21
|
+
class GetBackendConfigEstResult:
|
22
|
+
"""
|
23
|
+
A collection of values returned by getBackendConfigEst.
|
24
|
+
"""
|
25
|
+
def __init__(__self__, audit_fields=None, authenticators=None, backend=None, default_mount=None, default_path_policy=None, enable_sentinel_parsing=None, enabled=None, id=None, label_to_path_policy=None, last_updated=None, namespace=None):
|
26
|
+
if audit_fields and not isinstance(audit_fields, list):
|
27
|
+
raise TypeError("Expected argument 'audit_fields' to be a list")
|
28
|
+
pulumi.set(__self__, "audit_fields", audit_fields)
|
29
|
+
if authenticators and not isinstance(authenticators, list):
|
30
|
+
raise TypeError("Expected argument 'authenticators' to be a list")
|
31
|
+
pulumi.set(__self__, "authenticators", authenticators)
|
32
|
+
if backend and not isinstance(backend, str):
|
33
|
+
raise TypeError("Expected argument 'backend' to be a str")
|
34
|
+
pulumi.set(__self__, "backend", backend)
|
35
|
+
if default_mount and not isinstance(default_mount, bool):
|
36
|
+
raise TypeError("Expected argument 'default_mount' to be a bool")
|
37
|
+
pulumi.set(__self__, "default_mount", default_mount)
|
38
|
+
if default_path_policy and not isinstance(default_path_policy, str):
|
39
|
+
raise TypeError("Expected argument 'default_path_policy' to be a str")
|
40
|
+
pulumi.set(__self__, "default_path_policy", default_path_policy)
|
41
|
+
if enable_sentinel_parsing and not isinstance(enable_sentinel_parsing, bool):
|
42
|
+
raise TypeError("Expected argument 'enable_sentinel_parsing' to be a bool")
|
43
|
+
pulumi.set(__self__, "enable_sentinel_parsing", enable_sentinel_parsing)
|
44
|
+
if enabled and not isinstance(enabled, bool):
|
45
|
+
raise TypeError("Expected argument 'enabled' to be a bool")
|
46
|
+
pulumi.set(__self__, "enabled", enabled)
|
47
|
+
if id and not isinstance(id, str):
|
48
|
+
raise TypeError("Expected argument 'id' to be a str")
|
49
|
+
pulumi.set(__self__, "id", id)
|
50
|
+
if label_to_path_policy and not isinstance(label_to_path_policy, dict):
|
51
|
+
raise TypeError("Expected argument 'label_to_path_policy' to be a dict")
|
52
|
+
pulumi.set(__self__, "label_to_path_policy", label_to_path_policy)
|
53
|
+
if last_updated and not isinstance(last_updated, str):
|
54
|
+
raise TypeError("Expected argument 'last_updated' to be a str")
|
55
|
+
pulumi.set(__self__, "last_updated", last_updated)
|
56
|
+
if namespace and not isinstance(namespace, str):
|
57
|
+
raise TypeError("Expected argument 'namespace' to be a str")
|
58
|
+
pulumi.set(__self__, "namespace", namespace)
|
59
|
+
|
60
|
+
@property
|
61
|
+
@pulumi.getter(name="auditFields")
|
62
|
+
def audit_fields(self) -> Sequence[str]:
|
63
|
+
"""
|
64
|
+
Fields parsed from the CSR that appear in the audit and can be used by sentinel policies.
|
65
|
+
"""
|
66
|
+
return pulumi.get(self, "audit_fields")
|
67
|
+
|
68
|
+
@property
|
69
|
+
@pulumi.getter
|
70
|
+
def authenticators(self) -> Sequence['outputs.GetBackendConfigEstAuthenticatorResult']:
|
71
|
+
"""
|
72
|
+
Lists the mount accessors EST should delegate authentication requests towards (see below for nested schema).
|
73
|
+
"""
|
74
|
+
return pulumi.get(self, "authenticators")
|
75
|
+
|
76
|
+
@property
|
77
|
+
@pulumi.getter
|
78
|
+
def backend(self) -> str:
|
79
|
+
return pulumi.get(self, "backend")
|
80
|
+
|
81
|
+
@property
|
82
|
+
@pulumi.getter(name="defaultMount")
|
83
|
+
def default_mount(self) -> bool:
|
84
|
+
"""
|
85
|
+
If set, this mount is registered as the default `.well-known/est` URL path. Only a single mount can enable this across a Vault cluster.
|
86
|
+
"""
|
87
|
+
return pulumi.get(self, "default_mount")
|
88
|
+
|
89
|
+
@property
|
90
|
+
@pulumi.getter(name="defaultPathPolicy")
|
91
|
+
def default_path_policy(self) -> str:
|
92
|
+
"""
|
93
|
+
Required to be set if default_mount is enabled. Specifies the behavior for requests using the default EST label. Can be sign-verbatim or a role given by role:<role_name>.
|
94
|
+
"""
|
95
|
+
return pulumi.get(self, "default_path_policy")
|
96
|
+
|
97
|
+
@property
|
98
|
+
@pulumi.getter(name="enableSentinelParsing")
|
99
|
+
def enable_sentinel_parsing(self) -> bool:
|
100
|
+
"""
|
101
|
+
If set, parse out fields from the provided CSR making them available for Sentinel policies.
|
102
|
+
"""
|
103
|
+
return pulumi.get(self, "enable_sentinel_parsing")
|
104
|
+
|
105
|
+
@property
|
106
|
+
@pulumi.getter
|
107
|
+
def enabled(self) -> bool:
|
108
|
+
"""
|
109
|
+
Specifies whether EST is enabled.
|
110
|
+
"""
|
111
|
+
return pulumi.get(self, "enabled")
|
112
|
+
|
113
|
+
@property
|
114
|
+
@pulumi.getter
|
115
|
+
def id(self) -> str:
|
116
|
+
"""
|
117
|
+
The provider-assigned unique ID for this managed resource.
|
118
|
+
"""
|
119
|
+
return pulumi.get(self, "id")
|
120
|
+
|
121
|
+
@property
|
122
|
+
@pulumi.getter(name="labelToPathPolicy")
|
123
|
+
def label_to_path_policy(self) -> Mapping[str, Any]:
|
124
|
+
"""
|
125
|
+
A pairing of an EST label with the redirected behavior for requests hitting that role. The path policy can be sign-verbatim or a role given by role:<role_name>. Labels must be unique across Vault cluster, and will register .well-known/est/<label> URL paths.
|
126
|
+
"""
|
127
|
+
return pulumi.get(self, "label_to_path_policy")
|
128
|
+
|
129
|
+
@property
|
130
|
+
@pulumi.getter(name="lastUpdated")
|
131
|
+
def last_updated(self) -> str:
|
132
|
+
"""
|
133
|
+
A read-only timestamp representing the last time the configuration was updated.
|
134
|
+
"""
|
135
|
+
return pulumi.get(self, "last_updated")
|
136
|
+
|
137
|
+
@property
|
138
|
+
@pulumi.getter
|
139
|
+
def namespace(self) -> Optional[str]:
|
140
|
+
return pulumi.get(self, "namespace")
|
141
|
+
|
142
|
+
|
143
|
+
class AwaitableGetBackendConfigEstResult(GetBackendConfigEstResult):
|
144
|
+
# pylint: disable=using-constant-test
|
145
|
+
def __await__(self):
|
146
|
+
if False:
|
147
|
+
yield self
|
148
|
+
return GetBackendConfigEstResult(
|
149
|
+
audit_fields=self.audit_fields,
|
150
|
+
authenticators=self.authenticators,
|
151
|
+
backend=self.backend,
|
152
|
+
default_mount=self.default_mount,
|
153
|
+
default_path_policy=self.default_path_policy,
|
154
|
+
enable_sentinel_parsing=self.enable_sentinel_parsing,
|
155
|
+
enabled=self.enabled,
|
156
|
+
id=self.id,
|
157
|
+
label_to_path_policy=self.label_to_path_policy,
|
158
|
+
last_updated=self.last_updated,
|
159
|
+
namespace=self.namespace)
|
160
|
+
|
161
|
+
|
162
|
+
def get_backend_config_est(backend: Optional[str] = None,
|
163
|
+
namespace: Optional[str] = None,
|
164
|
+
opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetBackendConfigEstResult:
|
165
|
+
"""
|
166
|
+
## Example Usage
|
167
|
+
|
168
|
+
```python
|
169
|
+
import pulumi
|
170
|
+
import pulumi_vault as vault
|
171
|
+
|
172
|
+
pki = vault.Mount("pki",
|
173
|
+
path="pki",
|
174
|
+
type="pki",
|
175
|
+
description="PKI secret engine mount")
|
176
|
+
est_config = vault.pkiSecret.get_backend_config_est_output(backend=pki.path)
|
177
|
+
```
|
178
|
+
|
179
|
+
|
180
|
+
:param str backend: The path to the PKI secret backend to
|
181
|
+
read the EST configuration from, with no leading or trailing `/`s.
|
182
|
+
:param str namespace: The namespace of the target resource.
|
183
|
+
The value should not contain leading or trailing forward slashes.
|
184
|
+
The `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault/index.html#namespace).
|
185
|
+
*Available only for Vault Enterprise*.
|
186
|
+
"""
|
187
|
+
__args__ = dict()
|
188
|
+
__args__['backend'] = backend
|
189
|
+
__args__['namespace'] = namespace
|
190
|
+
opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
|
191
|
+
__ret__ = pulumi.runtime.invoke('vault:pkiSecret/getBackendConfigEst:getBackendConfigEst', __args__, opts=opts, typ=GetBackendConfigEstResult).value
|
192
|
+
|
193
|
+
return AwaitableGetBackendConfigEstResult(
|
194
|
+
audit_fields=pulumi.get(__ret__, 'audit_fields'),
|
195
|
+
authenticators=pulumi.get(__ret__, 'authenticators'),
|
196
|
+
backend=pulumi.get(__ret__, 'backend'),
|
197
|
+
default_mount=pulumi.get(__ret__, 'default_mount'),
|
198
|
+
default_path_policy=pulumi.get(__ret__, 'default_path_policy'),
|
199
|
+
enable_sentinel_parsing=pulumi.get(__ret__, 'enable_sentinel_parsing'),
|
200
|
+
enabled=pulumi.get(__ret__, 'enabled'),
|
201
|
+
id=pulumi.get(__ret__, 'id'),
|
202
|
+
label_to_path_policy=pulumi.get(__ret__, 'label_to_path_policy'),
|
203
|
+
last_updated=pulumi.get(__ret__, 'last_updated'),
|
204
|
+
namespace=pulumi.get(__ret__, 'namespace'))
|
205
|
+
|
206
|
+
|
207
|
+
@_utilities.lift_output_func(get_backend_config_est)
|
208
|
+
def get_backend_config_est_output(backend: Optional[pulumi.Input[str]] = None,
|
209
|
+
namespace: Optional[pulumi.Input[Optional[str]]] = None,
|
210
|
+
opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetBackendConfigEstResult]:
|
211
|
+
"""
|
212
|
+
## Example Usage
|
213
|
+
|
214
|
+
```python
|
215
|
+
import pulumi
|
216
|
+
import pulumi_vault as vault
|
217
|
+
|
218
|
+
pki = vault.Mount("pki",
|
219
|
+
path="pki",
|
220
|
+
type="pki",
|
221
|
+
description="PKI secret engine mount")
|
222
|
+
est_config = vault.pkiSecret.get_backend_config_est_output(backend=pki.path)
|
223
|
+
```
|
224
|
+
|
225
|
+
|
226
|
+
:param str backend: The path to the PKI secret backend to
|
227
|
+
read the EST configuration from, with no leading or trailing `/`s.
|
228
|
+
:param str namespace: The namespace of the target resource.
|
229
|
+
The value should not contain leading or trailing forward slashes.
|
230
|
+
The `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault/index.html#namespace).
|
231
|
+
*Available only for Vault Enterprise*.
|
232
|
+
"""
|
233
|
+
...
|
@@ -10,9 +10,32 @@ from typing import Any, Mapping, Optional, Sequence, Union, overload
|
|
10
10
|
from .. import _utilities
|
11
11
|
|
12
12
|
__all__ = [
|
13
|
+
'BackendConfigEstAuthenticators',
|
13
14
|
'SecretBackendRolePolicyIdentifier',
|
15
|
+
'GetBackendConfigEstAuthenticatorResult',
|
14
16
|
]
|
15
17
|
|
18
|
+
@pulumi.output_type
|
19
|
+
class BackendConfigEstAuthenticators(dict):
|
20
|
+
def __init__(__self__, *,
|
21
|
+
cert: Optional[Mapping[str, Any]] = None,
|
22
|
+
userpass: Optional[Mapping[str, Any]] = None):
|
23
|
+
if cert is not None:
|
24
|
+
pulumi.set(__self__, "cert", cert)
|
25
|
+
if userpass is not None:
|
26
|
+
pulumi.set(__self__, "userpass", userpass)
|
27
|
+
|
28
|
+
@property
|
29
|
+
@pulumi.getter
|
30
|
+
def cert(self) -> Optional[Mapping[str, Any]]:
|
31
|
+
return pulumi.get(self, "cert")
|
32
|
+
|
33
|
+
@property
|
34
|
+
@pulumi.getter
|
35
|
+
def userpass(self) -> Optional[Mapping[str, Any]]:
|
36
|
+
return pulumi.get(self, "userpass")
|
37
|
+
|
38
|
+
|
16
39
|
@pulumi.output_type
|
17
40
|
class SecretBackendRolePolicyIdentifier(dict):
|
18
41
|
def __init__(__self__, *,
|
@@ -59,3 +82,34 @@ class SecretBackendRolePolicyIdentifier(dict):
|
|
59
82
|
return pulumi.get(self, "notice")
|
60
83
|
|
61
84
|
|
85
|
+
@pulumi.output_type
|
86
|
+
class GetBackendConfigEstAuthenticatorResult(dict):
|
87
|
+
def __init__(__self__, *,
|
88
|
+
cert: Optional[Mapping[str, Any]] = None,
|
89
|
+
userpass: Optional[Mapping[str, Any]] = None):
|
90
|
+
"""
|
91
|
+
:param Mapping[str, Any] cert: "The accessor and cert_role properties for cert auth backends".
|
92
|
+
:param Mapping[str, Any] userpass: "The accessor property for user pass auth backends".
|
93
|
+
"""
|
94
|
+
if cert is not None:
|
95
|
+
pulumi.set(__self__, "cert", cert)
|
96
|
+
if userpass is not None:
|
97
|
+
pulumi.set(__self__, "userpass", userpass)
|
98
|
+
|
99
|
+
@property
|
100
|
+
@pulumi.getter
|
101
|
+
def cert(self) -> Optional[Mapping[str, Any]]:
|
102
|
+
"""
|
103
|
+
"The accessor and cert_role properties for cert auth backends".
|
104
|
+
"""
|
105
|
+
return pulumi.get(self, "cert")
|
106
|
+
|
107
|
+
@property
|
108
|
+
@pulumi.getter
|
109
|
+
def userpass(self) -> Optional[Mapping[str, Any]]:
|
110
|
+
"""
|
111
|
+
"The accessor property for user pass auth backends".
|
112
|
+
"""
|
113
|
+
return pulumi.get(self, "userpass")
|
114
|
+
|
115
|
+
|