pulumi-vault 6.3.0a1723010642__py3-none-any.whl → 6.3.1__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/_inputs.py +560 -0
- pulumi_vault/_utilities.py +1 -1
- pulumi_vault/ad/get_access_credentials.py +19 -4
- pulumi_vault/ad/secret_backend.py +5 -0
- pulumi_vault/ad/secret_library.py +5 -0
- pulumi_vault/ad/secret_role.py +5 -0
- pulumi_vault/alicloud/auth_backend_role.py +5 -0
- pulumi_vault/approle/auth_backend_login.py +5 -0
- pulumi_vault/approle/auth_backend_role.py +5 -0
- pulumi_vault/approle/auth_backend_role_secret_id.py +5 -0
- pulumi_vault/approle/get_auth_backend_role_id.py +17 -4
- pulumi_vault/audit.py +5 -0
- pulumi_vault/audit_request_header.py +5 -0
- pulumi_vault/auth_backend.py +10 -5
- pulumi_vault/aws/auth_backend_cert.py +5 -0
- pulumi_vault/aws/auth_backend_client.py +5 -0
- pulumi_vault/aws/auth_backend_config_identity.py +5 -0
- pulumi_vault/aws/auth_backend_identity_whitelist.py +5 -0
- pulumi_vault/aws/auth_backend_login.py +12 -7
- pulumi_vault/aws/auth_backend_role.py +5 -0
- pulumi_vault/aws/auth_backend_role_tag.py +5 -0
- pulumi_vault/aws/auth_backend_roletag_blacklist.py +5 -0
- pulumi_vault/aws/auth_backend_sts_role.py +5 -0
- pulumi_vault/aws/get_access_credentials.py +31 -4
- pulumi_vault/aws/get_static_access_credentials.py +18 -4
- pulumi_vault/aws/secret_backend.py +5 -0
- pulumi_vault/aws/secret_backend_role.py +120 -0
- pulumi_vault/aws/secret_backend_static_role.py +5 -0
- pulumi_vault/azure/_inputs.py +24 -0
- pulumi_vault/azure/auth_backend_config.py +5 -0
- pulumi_vault/azure/auth_backend_role.py +5 -0
- pulumi_vault/azure/backend.py +5 -0
- pulumi_vault/azure/backend_role.py +23 -18
- pulumi_vault/azure/get_access_credentials.py +36 -4
- pulumi_vault/azure/outputs.py +5 -0
- pulumi_vault/cert_auth_backend_role.py +5 -0
- pulumi_vault/config/__init__.pyi +5 -0
- pulumi_vault/config/_inputs.py +21 -0
- pulumi_vault/config/outputs.py +5 -0
- pulumi_vault/config/ui_custom_message.py +24 -19
- pulumi_vault/config/vars.py +5 -0
- pulumi_vault/consul/secret_backend.py +5 -0
- pulumi_vault/consul/secret_backend_role.py +5 -0
- pulumi_vault/database/_inputs.py +2091 -140
- pulumi_vault/database/outputs.py +59 -54
- pulumi_vault/database/secret_backend_connection.py +115 -110
- pulumi_vault/database/secret_backend_role.py +25 -20
- pulumi_vault/database/secret_backend_static_role.py +11 -6
- pulumi_vault/database/secrets_mount.py +139 -134
- pulumi_vault/egp_policy.py +5 -0
- pulumi_vault/gcp/_inputs.py +111 -0
- pulumi_vault/gcp/auth_backend.py +15 -10
- pulumi_vault/gcp/auth_backend_role.py +5 -0
- pulumi_vault/gcp/get_auth_backend_role.py +42 -4
- pulumi_vault/gcp/outputs.py +5 -0
- pulumi_vault/gcp/secret_backend.py +5 -0
- pulumi_vault/gcp/secret_impersonated_account.py +5 -0
- pulumi_vault/gcp/secret_roleset.py +18 -13
- pulumi_vault/gcp/secret_static_account.py +18 -13
- pulumi_vault/generic/endpoint.py +5 -0
- pulumi_vault/generic/get_secret.py +25 -5
- pulumi_vault/generic/secret.py +12 -7
- pulumi_vault/get_auth_backend.py +21 -4
- pulumi_vault/get_auth_backends.py +16 -4
- pulumi_vault/get_namespace.py +18 -5
- pulumi_vault/get_namespaces.py +13 -4
- pulumi_vault/get_nomad_access_token.py +28 -8
- pulumi_vault/get_policy_document.py +27 -16
- pulumi_vault/get_raft_autopilot_state.py +26 -7
- pulumi_vault/github/_inputs.py +55 -0
- pulumi_vault/github/auth_backend.py +10 -5
- pulumi_vault/github/outputs.py +5 -0
- pulumi_vault/github/team.py +5 -0
- pulumi_vault/github/user.py +5 -0
- pulumi_vault/identity/entity.py +5 -0
- pulumi_vault/identity/entity_alias.py +5 -0
- pulumi_vault/identity/entity_policies.py +5 -0
- pulumi_vault/identity/get_entity.py +37 -7
- pulumi_vault/identity/get_group.py +42 -6
- pulumi_vault/identity/get_oidc_client_creds.py +16 -4
- pulumi_vault/identity/get_oidc_openid_config.py +26 -4
- pulumi_vault/identity/get_oidc_public_keys.py +16 -5
- pulumi_vault/identity/group.py +5 -0
- pulumi_vault/identity/group_alias.py +5 -0
- pulumi_vault/identity/group_member_entity_ids.py +5 -0
- pulumi_vault/identity/group_member_group_ids.py +5 -0
- pulumi_vault/identity/group_policies.py +5 -0
- pulumi_vault/identity/mfa_duo.py +5 -0
- pulumi_vault/identity/mfa_login_enforcement.py +5 -0
- pulumi_vault/identity/mfa_okta.py +5 -0
- pulumi_vault/identity/mfa_pingid.py +5 -0
- pulumi_vault/identity/mfa_totp.py +5 -0
- pulumi_vault/identity/oidc.py +5 -0
- pulumi_vault/identity/oidc_assignment.py +5 -0
- pulumi_vault/identity/oidc_client.py +5 -0
- pulumi_vault/identity/oidc_key.py +5 -0
- pulumi_vault/identity/oidc_key_allowed_client_id.py +5 -0
- pulumi_vault/identity/oidc_provider.py +5 -0
- pulumi_vault/identity/oidc_role.py +5 -0
- pulumi_vault/identity/oidc_scope.py +5 -0
- pulumi_vault/identity/outputs.py +8 -3
- pulumi_vault/jwt/_inputs.py +55 -0
- pulumi_vault/jwt/auth_backend.py +14 -9
- pulumi_vault/jwt/auth_backend_role.py +33 -28
- pulumi_vault/jwt/outputs.py +5 -0
- pulumi_vault/kmip/secret_backend.py +5 -0
- pulumi_vault/kmip/secret_role.py +5 -0
- pulumi_vault/kmip/secret_scope.py +5 -0
- pulumi_vault/kubernetes/auth_backend_config.py +5 -0
- pulumi_vault/kubernetes/auth_backend_role.py +5 -0
- pulumi_vault/kubernetes/get_auth_backend_config.py +26 -4
- pulumi_vault/kubernetes/get_auth_backend_role.py +39 -4
- pulumi_vault/kubernetes/get_service_account_token.py +28 -4
- pulumi_vault/kubernetes/secret_backend.py +19 -14
- pulumi_vault/kubernetes/secret_backend_role.py +5 -0
- pulumi_vault/kv/_inputs.py +36 -4
- pulumi_vault/kv/get_secret.py +20 -5
- pulumi_vault/kv/get_secret_subkeys_v2.py +24 -5
- pulumi_vault/kv/get_secret_v2.py +27 -6
- pulumi_vault/kv/get_secrets_list.py +15 -4
- pulumi_vault/kv/get_secrets_list_v2.py +18 -4
- pulumi_vault/kv/outputs.py +8 -3
- pulumi_vault/kv/secret.py +12 -7
- pulumi_vault/kv/secret_backend_v2.py +5 -0
- pulumi_vault/kv/secret_v2.py +46 -41
- pulumi_vault/ldap/auth_backend.py +5 -0
- pulumi_vault/ldap/auth_backend_group.py +5 -0
- pulumi_vault/ldap/auth_backend_user.py +5 -0
- pulumi_vault/ldap/get_dynamic_credentials.py +22 -4
- pulumi_vault/ldap/get_static_credentials.py +23 -4
- pulumi_vault/ldap/secret_backend.py +19 -14
- pulumi_vault/ldap/secret_backend_dynamic_role.py +5 -0
- pulumi_vault/ldap/secret_backend_library_set.py +5 -0
- pulumi_vault/ldap/secret_backend_static_role.py +5 -0
- pulumi_vault/managed/_inputs.py +205 -0
- pulumi_vault/managed/keys.py +20 -15
- pulumi_vault/managed/outputs.py +5 -0
- pulumi_vault/mfa_duo.py +5 -0
- pulumi_vault/mfa_okta.py +5 -0
- pulumi_vault/mfa_pingid.py +5 -0
- pulumi_vault/mfa_totp.py +5 -0
- pulumi_vault/mongodbatlas/secret_backend.py +5 -0
- pulumi_vault/mongodbatlas/secret_role.py +5 -0
- pulumi_vault/mount.py +35 -23
- pulumi_vault/namespace.py +19 -14
- pulumi_vault/nomad_secret_backend.py +5 -0
- pulumi_vault/nomad_secret_role.py +5 -0
- pulumi_vault/okta/_inputs.py +39 -0
- pulumi_vault/okta/auth_backend.py +31 -26
- pulumi_vault/okta/auth_backend_group.py +5 -0
- pulumi_vault/okta/auth_backend_user.py +5 -0
- pulumi_vault/okta/outputs.py +5 -0
- pulumi_vault/outputs.py +5 -0
- pulumi_vault/password_policy.py +5 -0
- pulumi_vault/pkisecret/_inputs.py +49 -8
- pulumi_vault/pkisecret/backend_config_cluster.py +5 -0
- pulumi_vault/pkisecret/backend_config_est.py +24 -19
- pulumi_vault/pkisecret/get_backend_config_est.py +23 -5
- pulumi_vault/pkisecret/get_backend_issuer.py +24 -4
- pulumi_vault/pkisecret/get_backend_issuers.py +18 -5
- pulumi_vault/pkisecret/get_backend_key.py +19 -4
- pulumi_vault/pkisecret/get_backend_keys.py +18 -5
- pulumi_vault/pkisecret/outputs.py +17 -12
- pulumi_vault/pkisecret/secret_backend_cert.py +5 -0
- pulumi_vault/pkisecret/secret_backend_config_ca.py +5 -0
- pulumi_vault/pkisecret/secret_backend_config_issuers.py +5 -0
- pulumi_vault/pkisecret/secret_backend_config_urls.py +5 -0
- pulumi_vault/pkisecret/secret_backend_crl_config.py +5 -0
- pulumi_vault/pkisecret/secret_backend_intermediate_cert_request.py +5 -0
- pulumi_vault/pkisecret/secret_backend_intermediate_set_signed.py +5 -0
- pulumi_vault/pkisecret/secret_backend_issuer.py +5 -0
- pulumi_vault/pkisecret/secret_backend_key.py +5 -0
- pulumi_vault/pkisecret/secret_backend_role.py +10 -5
- pulumi_vault/pkisecret/secret_backend_root_cert.py +5 -0
- pulumi_vault/pkisecret/secret_backend_root_sign_intermediate.py +5 -0
- pulumi_vault/pkisecret/secret_backend_sign.py +5 -0
- pulumi_vault/plugin.py +5 -0
- pulumi_vault/plugin_pinned_version.py +5 -0
- pulumi_vault/policy.py +5 -0
- pulumi_vault/provider.py +47 -42
- pulumi_vault/pulumi-plugin.json +1 -1
- pulumi_vault/quota_lease_count.py +5 -0
- pulumi_vault/quota_rate_limit.py +5 -0
- pulumi_vault/rabbitmq/_inputs.py +61 -0
- pulumi_vault/rabbitmq/outputs.py +5 -0
- pulumi_vault/rabbitmq/secret_backend.py +5 -0
- pulumi_vault/rabbitmq/secret_backend_role.py +43 -38
- pulumi_vault/raft_autopilot.py +5 -0
- pulumi_vault/raft_snapshot_agent_config.py +5 -0
- pulumi_vault/rgp_policy.py +5 -0
- pulumi_vault/saml/auth_backend.py +5 -0
- pulumi_vault/saml/auth_backend_role.py +19 -14
- pulumi_vault/secrets/_inputs.py +30 -0
- pulumi_vault/secrets/outputs.py +5 -0
- pulumi_vault/secrets/sync_association.py +7 -2
- pulumi_vault/secrets/sync_aws_destination.py +19 -14
- pulumi_vault/secrets/sync_azure_destination.py +19 -14
- pulumi_vault/secrets/sync_config.py +5 -0
- pulumi_vault/secrets/sync_gcp_destination.py +19 -14
- pulumi_vault/secrets/sync_gh_destination.py +5 -0
- pulumi_vault/secrets/sync_github_apps.py +5 -0
- pulumi_vault/secrets/sync_vercel_destination.py +5 -0
- pulumi_vault/ssh/_inputs.py +22 -0
- pulumi_vault/ssh/outputs.py +5 -0
- pulumi_vault/ssh/secret_backend_ca.py +5 -0
- pulumi_vault/ssh/secret_backend_role.py +38 -33
- pulumi_vault/terraformcloud/secret_backend.py +5 -0
- pulumi_vault/terraformcloud/secret_creds.py +5 -0
- pulumi_vault/terraformcloud/secret_role.py +5 -0
- pulumi_vault/token.py +5 -0
- pulumi_vault/tokenauth/auth_backend_role.py +5 -14
- pulumi_vault/transform/alphabet.py +5 -0
- pulumi_vault/transform/get_decode.py +38 -14
- pulumi_vault/transform/get_encode.py +38 -14
- pulumi_vault/transform/role.py +5 -0
- pulumi_vault/transform/template.py +19 -14
- pulumi_vault/transform/transformation.py +5 -0
- pulumi_vault/transit/get_decrypt.py +21 -4
- pulumi_vault/transit/get_encrypt.py +23 -4
- pulumi_vault/transit/secret_backend_key.py +12 -7
- pulumi_vault/transit/secret_cache_config.py +5 -0
- {pulumi_vault-6.3.0a1723010642.dist-info → pulumi_vault-6.3.1.dist-info}/METADATA +3 -2
- pulumi_vault-6.3.1.dist-info/RECORD +256 -0
- {pulumi_vault-6.3.0a1723010642.dist-info → pulumi_vault-6.3.1.dist-info}/WHEEL +1 -1
- pulumi_vault-6.3.0a1723010642.dist-info/RECORD +0 -256
- {pulumi_vault-6.3.0a1723010642.dist-info → pulumi_vault-6.3.1.dist-info}/top_level.txt +0 -0
pulumi_vault/gcp/_inputs.py
CHANGED
@@ -4,18 +4,53 @@
|
|
4
4
|
|
5
5
|
import copy
|
6
6
|
import warnings
|
7
|
+
import sys
|
7
8
|
import pulumi
|
8
9
|
import pulumi.runtime
|
9
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
|
10
15
|
from .. import _utilities
|
11
16
|
|
12
17
|
__all__ = [
|
13
18
|
'AuthBackendCustomEndpointArgs',
|
19
|
+
'AuthBackendCustomEndpointArgsDict',
|
14
20
|
'AuthBackendTuneArgs',
|
21
|
+
'AuthBackendTuneArgsDict',
|
15
22
|
'SecretRolesetBindingArgs',
|
23
|
+
'SecretRolesetBindingArgsDict',
|
16
24
|
'SecretStaticAccountBindingArgs',
|
25
|
+
'SecretStaticAccountBindingArgsDict',
|
17
26
|
]
|
18
27
|
|
28
|
+
MYPY = False
|
29
|
+
|
30
|
+
if not MYPY:
|
31
|
+
class AuthBackendCustomEndpointArgsDict(TypedDict):
|
32
|
+
api: NotRequired[pulumi.Input[str]]
|
33
|
+
"""
|
34
|
+
Replaces the service endpoint used in API requests to `https://www.googleapis.com`.
|
35
|
+
"""
|
36
|
+
compute: NotRequired[pulumi.Input[str]]
|
37
|
+
"""
|
38
|
+
Replaces the service endpoint used in API requests to `https://compute.googleapis.com`.
|
39
|
+
|
40
|
+
The endpoint value provided for a given key has the form of `scheme://host:port`.
|
41
|
+
The `scheme://` and `:port` portions of the endpoint value are optional.
|
42
|
+
"""
|
43
|
+
crm: NotRequired[pulumi.Input[str]]
|
44
|
+
"""
|
45
|
+
Replaces the service endpoint used in API requests to `https://cloudresourcemanager.googleapis.com`.
|
46
|
+
"""
|
47
|
+
iam: NotRequired[pulumi.Input[str]]
|
48
|
+
"""
|
49
|
+
Replaces the service endpoint used in API requests to `https://iam.googleapis.com`.
|
50
|
+
"""
|
51
|
+
elif False:
|
52
|
+
AuthBackendCustomEndpointArgsDict: TypeAlias = Mapping[str, Any]
|
53
|
+
|
19
54
|
@pulumi.input_type
|
20
55
|
class AuthBackendCustomEndpointArgs:
|
21
56
|
def __init__(__self__, *,
|
@@ -93,6 +128,56 @@ class AuthBackendCustomEndpointArgs:
|
|
93
128
|
pulumi.set(self, "iam", value)
|
94
129
|
|
95
130
|
|
131
|
+
if not MYPY:
|
132
|
+
class AuthBackendTuneArgsDict(TypedDict):
|
133
|
+
allowed_response_headers: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]]
|
134
|
+
"""
|
135
|
+
List of headers to whitelist and allowing
|
136
|
+
a plugin to include them in the response.
|
137
|
+
"""
|
138
|
+
audit_non_hmac_request_keys: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]]
|
139
|
+
"""
|
140
|
+
Specifies the list of keys that will
|
141
|
+
not be HMAC'd by audit devices in the request data object.
|
142
|
+
"""
|
143
|
+
audit_non_hmac_response_keys: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]]
|
144
|
+
"""
|
145
|
+
Specifies the list of keys that will
|
146
|
+
not be HMAC'd by audit devices in the response data object.
|
147
|
+
"""
|
148
|
+
default_lease_ttl: NotRequired[pulumi.Input[str]]
|
149
|
+
"""
|
150
|
+
Specifies the default time-to-live.
|
151
|
+
If set, this overrides the global default.
|
152
|
+
Must be a valid [duration string](https://golang.org/pkg/time/#ParseDuration)
|
153
|
+
"""
|
154
|
+
listing_visibility: NotRequired[pulumi.Input[str]]
|
155
|
+
"""
|
156
|
+
Specifies whether to show this mount in
|
157
|
+
the UI-specific listing endpoint. Valid values are "unauth" or "hidden".
|
158
|
+
"""
|
159
|
+
max_lease_ttl: NotRequired[pulumi.Input[str]]
|
160
|
+
"""
|
161
|
+
Specifies the maximum time-to-live.
|
162
|
+
If set, this overrides the global default.
|
163
|
+
Must be a valid [duration string](https://golang.org/pkg/time/#ParseDuration)
|
164
|
+
"""
|
165
|
+
passthrough_request_headers: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]]
|
166
|
+
"""
|
167
|
+
List of headers to whitelist and
|
168
|
+
pass from the request to the backend.
|
169
|
+
"""
|
170
|
+
token_type: NotRequired[pulumi.Input[str]]
|
171
|
+
"""
|
172
|
+
Specifies the type of tokens that should be returned by
|
173
|
+
the mount. Valid values are "default-service", "default-batch", "service", "batch".
|
174
|
+
|
175
|
+
|
176
|
+
For more details on the usage of each argument consult the [Vault GCP API documentation](https://www.vaultproject.io/api-docs/auth/gcp#configure).
|
177
|
+
"""
|
178
|
+
elif False:
|
179
|
+
AuthBackendTuneArgsDict: TypeAlias = Mapping[str, Any]
|
180
|
+
|
96
181
|
@pulumi.input_type
|
97
182
|
class AuthBackendTuneArgs:
|
98
183
|
def __init__(__self__, *,
|
@@ -254,6 +339,19 @@ class AuthBackendTuneArgs:
|
|
254
339
|
pulumi.set(self, "token_type", value)
|
255
340
|
|
256
341
|
|
342
|
+
if not MYPY:
|
343
|
+
class SecretRolesetBindingArgsDict(TypedDict):
|
344
|
+
resource: pulumi.Input[str]
|
345
|
+
"""
|
346
|
+
Resource or resource path for which IAM policy information will be bound. The resource path may be specified in a few different [formats](https://www.vaultproject.io/docs/secrets/gcp/index.html#roleset-bindings).
|
347
|
+
"""
|
348
|
+
roles: pulumi.Input[Sequence[pulumi.Input[str]]]
|
349
|
+
"""
|
350
|
+
List of [GCP IAM roles](https://cloud.google.com/iam/docs/understanding-roles) for the resource.
|
351
|
+
"""
|
352
|
+
elif False:
|
353
|
+
SecretRolesetBindingArgsDict: TypeAlias = Mapping[str, Any]
|
354
|
+
|
257
355
|
@pulumi.input_type
|
258
356
|
class SecretRolesetBindingArgs:
|
259
357
|
def __init__(__self__, *,
|
@@ -291,6 +389,19 @@ class SecretRolesetBindingArgs:
|
|
291
389
|
pulumi.set(self, "roles", value)
|
292
390
|
|
293
391
|
|
392
|
+
if not MYPY:
|
393
|
+
class SecretStaticAccountBindingArgsDict(TypedDict):
|
394
|
+
resource: pulumi.Input[str]
|
395
|
+
"""
|
396
|
+
Resource or resource path for which IAM policy information will be bound. The resource path may be specified in a few different [formats](https://www.vaultproject.io/docs/secrets/gcp/index.html#bindings).
|
397
|
+
"""
|
398
|
+
roles: pulumi.Input[Sequence[pulumi.Input[str]]]
|
399
|
+
"""
|
400
|
+
List of [GCP IAM roles](https://cloud.google.com/iam/docs/understanding-roles) for the resource.
|
401
|
+
"""
|
402
|
+
elif False:
|
403
|
+
SecretStaticAccountBindingArgsDict: TypeAlias = Mapping[str, Any]
|
404
|
+
|
294
405
|
@pulumi.input_type
|
295
406
|
class SecretStaticAccountBindingArgs:
|
296
407
|
def __init__(__self__, *,
|
pulumi_vault/gcp/auth_backend.py
CHANGED
@@ -4,9 +4,14 @@
|
|
4
4
|
|
5
5
|
import copy
|
6
6
|
import warnings
|
7
|
+
import sys
|
7
8
|
import pulumi
|
8
9
|
import pulumi.runtime
|
9
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
|
10
15
|
from .. import _utilities
|
11
16
|
from . import outputs
|
12
17
|
from ._inputs import *
|
@@ -629,7 +634,7 @@ class AuthBackend(pulumi.CustomResource):
|
|
629
634
|
client_email: Optional[pulumi.Input[str]] = None,
|
630
635
|
client_id: Optional[pulumi.Input[str]] = None,
|
631
636
|
credentials: Optional[pulumi.Input[str]] = None,
|
632
|
-
custom_endpoint: Optional[pulumi.Input[
|
637
|
+
custom_endpoint: Optional[pulumi.Input[Union['AuthBackendCustomEndpointArgs', 'AuthBackendCustomEndpointArgsDict']]] = None,
|
633
638
|
description: Optional[pulumi.Input[str]] = None,
|
634
639
|
disable_remount: Optional[pulumi.Input[bool]] = None,
|
635
640
|
identity_token_audience: Optional[pulumi.Input[str]] = None,
|
@@ -641,7 +646,7 @@ class AuthBackend(pulumi.CustomResource):
|
|
641
646
|
private_key_id: Optional[pulumi.Input[str]] = None,
|
642
647
|
project_id: Optional[pulumi.Input[str]] = None,
|
643
648
|
service_account_email: Optional[pulumi.Input[str]] = None,
|
644
|
-
tune: Optional[pulumi.Input[
|
649
|
+
tune: Optional[pulumi.Input[Union['AuthBackendTuneArgs', 'AuthBackendTuneArgsDict']]] = None,
|
645
650
|
__props__=None):
|
646
651
|
"""
|
647
652
|
Provides a resource to configure the [GCP auth backend within Vault](https://www.vaultproject.io/docs/auth/gcp.html).
|
@@ -673,7 +678,7 @@ class AuthBackend(pulumi.CustomResource):
|
|
673
678
|
:param pulumi.Input[str] client_email: The clients email associated with the credentials
|
674
679
|
:param pulumi.Input[str] client_id: The Client ID of the credentials
|
675
680
|
:param pulumi.Input[str] credentials: A JSON string containing the contents of a GCP credentials file. If this value is empty, Vault will try to use Application Default Credentials from the machine on which the Vault server is running.
|
676
|
-
:param pulumi.Input[
|
681
|
+
:param pulumi.Input[Union['AuthBackendCustomEndpointArgs', 'AuthBackendCustomEndpointArgsDict']] custom_endpoint: Specifies overrides to
|
677
682
|
[service endpoints](https://cloud.google.com/apis/design/glossary#api_service_endpoint)
|
678
683
|
used when making API requests. This allows specific requests made during authentication
|
679
684
|
to target alternative service endpoints for use in [Private Google Access](https://cloud.google.com/vpc/docs/configure-private-google-access)
|
@@ -699,7 +704,7 @@ class AuthBackend(pulumi.CustomResource):
|
|
699
704
|
:param pulumi.Input[str] project_id: The GCP Project ID
|
700
705
|
:param pulumi.Input[str] service_account_email: Service Account to impersonate for plugin workload identity federation.
|
701
706
|
Required with `identity_token_audience`. Requires Vault 1.17+. *Available only for Vault Enterprise*.
|
702
|
-
:param pulumi.Input[
|
707
|
+
:param pulumi.Input[Union['AuthBackendTuneArgs', 'AuthBackendTuneArgsDict']] tune: Extra configuration block. Structure is documented below.
|
703
708
|
|
704
709
|
The `tune` block is used to tune the auth backend:
|
705
710
|
"""
|
@@ -752,7 +757,7 @@ class AuthBackend(pulumi.CustomResource):
|
|
752
757
|
client_email: Optional[pulumi.Input[str]] = None,
|
753
758
|
client_id: Optional[pulumi.Input[str]] = None,
|
754
759
|
credentials: Optional[pulumi.Input[str]] = None,
|
755
|
-
custom_endpoint: Optional[pulumi.Input[
|
760
|
+
custom_endpoint: Optional[pulumi.Input[Union['AuthBackendCustomEndpointArgs', 'AuthBackendCustomEndpointArgsDict']]] = None,
|
756
761
|
description: Optional[pulumi.Input[str]] = None,
|
757
762
|
disable_remount: Optional[pulumi.Input[bool]] = None,
|
758
763
|
identity_token_audience: Optional[pulumi.Input[str]] = None,
|
@@ -764,7 +769,7 @@ class AuthBackend(pulumi.CustomResource):
|
|
764
769
|
private_key_id: Optional[pulumi.Input[str]] = None,
|
765
770
|
project_id: Optional[pulumi.Input[str]] = None,
|
766
771
|
service_account_email: Optional[pulumi.Input[str]] = None,
|
767
|
-
tune: Optional[pulumi.Input[
|
772
|
+
tune: Optional[pulumi.Input[Union['AuthBackendTuneArgs', 'AuthBackendTuneArgsDict']]] = None,
|
768
773
|
__props__=None):
|
769
774
|
opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
|
770
775
|
if not isinstance(opts, pulumi.ResourceOptions):
|
@@ -807,7 +812,7 @@ class AuthBackend(pulumi.CustomResource):
|
|
807
812
|
client_email: Optional[pulumi.Input[str]] = None,
|
808
813
|
client_id: Optional[pulumi.Input[str]] = None,
|
809
814
|
credentials: Optional[pulumi.Input[str]] = None,
|
810
|
-
custom_endpoint: Optional[pulumi.Input[
|
815
|
+
custom_endpoint: Optional[pulumi.Input[Union['AuthBackendCustomEndpointArgs', 'AuthBackendCustomEndpointArgsDict']]] = None,
|
811
816
|
description: Optional[pulumi.Input[str]] = None,
|
812
817
|
disable_remount: Optional[pulumi.Input[bool]] = None,
|
813
818
|
identity_token_audience: Optional[pulumi.Input[str]] = None,
|
@@ -819,7 +824,7 @@ class AuthBackend(pulumi.CustomResource):
|
|
819
824
|
private_key_id: Optional[pulumi.Input[str]] = None,
|
820
825
|
project_id: Optional[pulumi.Input[str]] = None,
|
821
826
|
service_account_email: Optional[pulumi.Input[str]] = None,
|
822
|
-
tune: Optional[pulumi.Input[
|
827
|
+
tune: Optional[pulumi.Input[Union['AuthBackendTuneArgs', 'AuthBackendTuneArgsDict']]] = None) -> 'AuthBackend':
|
823
828
|
"""
|
824
829
|
Get an existing AuthBackend resource's state with the given name, id, and optional extra
|
825
830
|
properties used to qualify the lookup.
|
@@ -831,7 +836,7 @@ class AuthBackend(pulumi.CustomResource):
|
|
831
836
|
:param pulumi.Input[str] client_email: The clients email associated with the credentials
|
832
837
|
:param pulumi.Input[str] client_id: The Client ID of the credentials
|
833
838
|
:param pulumi.Input[str] credentials: A JSON string containing the contents of a GCP credentials file. If this value is empty, Vault will try to use Application Default Credentials from the machine on which the Vault server is running.
|
834
|
-
:param pulumi.Input[
|
839
|
+
:param pulumi.Input[Union['AuthBackendCustomEndpointArgs', 'AuthBackendCustomEndpointArgsDict']] custom_endpoint: Specifies overrides to
|
835
840
|
[service endpoints](https://cloud.google.com/apis/design/glossary#api_service_endpoint)
|
836
841
|
used when making API requests. This allows specific requests made during authentication
|
837
842
|
to target alternative service endpoints for use in [Private Google Access](https://cloud.google.com/vpc/docs/configure-private-google-access)
|
@@ -857,7 +862,7 @@ class AuthBackend(pulumi.CustomResource):
|
|
857
862
|
:param pulumi.Input[str] project_id: The GCP Project ID
|
858
863
|
:param pulumi.Input[str] service_account_email: Service Account to impersonate for plugin workload identity federation.
|
859
864
|
Required with `identity_token_audience`. Requires Vault 1.17+. *Available only for Vault Enterprise*.
|
860
|
-
:param pulumi.Input[
|
865
|
+
:param pulumi.Input[Union['AuthBackendTuneArgs', 'AuthBackendTuneArgsDict']] tune: Extra configuration block. Structure is documented below.
|
861
866
|
|
862
867
|
The `tune` block is used to tune the auth backend:
|
863
868
|
"""
|
@@ -4,9 +4,14 @@
|
|
4
4
|
|
5
5
|
import copy
|
6
6
|
import warnings
|
7
|
+
import sys
|
7
8
|
import pulumi
|
8
9
|
import pulumi.runtime
|
9
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
|
10
15
|
from .. import _utilities
|
11
16
|
|
12
17
|
__all__ = ['AuthBackendRoleArgs', 'AuthBackendRole']
|
@@ -4,9 +4,14 @@
|
|
4
4
|
|
5
5
|
import copy
|
6
6
|
import warnings
|
7
|
+
import sys
|
7
8
|
import pulumi
|
8
9
|
import pulumi.runtime
|
9
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
|
10
15
|
from .. import _utilities
|
11
16
|
|
12
17
|
__all__ = [
|
@@ -393,9 +398,6 @@ def get_auth_backend_role(backend: Optional[str] = None,
|
|
393
398
|
token_ttl=pulumi.get(__ret__, 'token_ttl'),
|
394
399
|
token_type=pulumi.get(__ret__, 'token_type'),
|
395
400
|
type=pulumi.get(__ret__, 'type'))
|
396
|
-
|
397
|
-
|
398
|
-
@_utilities.lift_output_func(get_auth_backend_role)
|
399
401
|
def get_auth_backend_role_output(backend: Optional[pulumi.Input[Optional[str]]] = None,
|
400
402
|
namespace: Optional[pulumi.Input[Optional[str]]] = None,
|
401
403
|
role_name: Optional[pulumi.Input[str]] = None,
|
@@ -458,4 +460,40 @@ def get_auth_backend_role_output(backend: Optional[pulumi.Input[Optional[str]]]
|
|
458
460
|
`default-service` and `default-batch` which specify the type to return unless the client
|
459
461
|
requests a different type at generation time.
|
460
462
|
"""
|
461
|
-
|
463
|
+
__args__ = dict()
|
464
|
+
__args__['backend'] = backend
|
465
|
+
__args__['namespace'] = namespace
|
466
|
+
__args__['roleName'] = role_name
|
467
|
+
__args__['tokenBoundCidrs'] = token_bound_cidrs
|
468
|
+
__args__['tokenExplicitMaxTtl'] = token_explicit_max_ttl
|
469
|
+
__args__['tokenMaxTtl'] = token_max_ttl
|
470
|
+
__args__['tokenNoDefaultPolicy'] = token_no_default_policy
|
471
|
+
__args__['tokenNumUses'] = token_num_uses
|
472
|
+
__args__['tokenPeriod'] = token_period
|
473
|
+
__args__['tokenPolicies'] = token_policies
|
474
|
+
__args__['tokenTtl'] = token_ttl
|
475
|
+
__args__['tokenType'] = token_type
|
476
|
+
opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
|
477
|
+
__ret__ = pulumi.runtime.invoke_output('vault:gcp/getAuthBackendRole:getAuthBackendRole', __args__, opts=opts, typ=GetAuthBackendRoleResult)
|
478
|
+
return __ret__.apply(lambda __response__: GetAuthBackendRoleResult(
|
479
|
+
backend=pulumi.get(__response__, 'backend'),
|
480
|
+
bound_instance_groups=pulumi.get(__response__, 'bound_instance_groups'),
|
481
|
+
bound_labels=pulumi.get(__response__, 'bound_labels'),
|
482
|
+
bound_projects=pulumi.get(__response__, 'bound_projects'),
|
483
|
+
bound_regions=pulumi.get(__response__, 'bound_regions'),
|
484
|
+
bound_service_accounts=pulumi.get(__response__, 'bound_service_accounts'),
|
485
|
+
bound_zones=pulumi.get(__response__, 'bound_zones'),
|
486
|
+
id=pulumi.get(__response__, 'id'),
|
487
|
+
namespace=pulumi.get(__response__, 'namespace'),
|
488
|
+
role_id=pulumi.get(__response__, 'role_id'),
|
489
|
+
role_name=pulumi.get(__response__, 'role_name'),
|
490
|
+
token_bound_cidrs=pulumi.get(__response__, 'token_bound_cidrs'),
|
491
|
+
token_explicit_max_ttl=pulumi.get(__response__, 'token_explicit_max_ttl'),
|
492
|
+
token_max_ttl=pulumi.get(__response__, 'token_max_ttl'),
|
493
|
+
token_no_default_policy=pulumi.get(__response__, 'token_no_default_policy'),
|
494
|
+
token_num_uses=pulumi.get(__response__, 'token_num_uses'),
|
495
|
+
token_period=pulumi.get(__response__, 'token_period'),
|
496
|
+
token_policies=pulumi.get(__response__, 'token_policies'),
|
497
|
+
token_ttl=pulumi.get(__response__, 'token_ttl'),
|
498
|
+
token_type=pulumi.get(__response__, 'token_type'),
|
499
|
+
type=pulumi.get(__response__, 'type')))
|
pulumi_vault/gcp/outputs.py
CHANGED
@@ -4,9 +4,14 @@
|
|
4
4
|
|
5
5
|
import copy
|
6
6
|
import warnings
|
7
|
+
import sys
|
7
8
|
import pulumi
|
8
9
|
import pulumi.runtime
|
9
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
|
10
15
|
from .. import _utilities
|
11
16
|
|
12
17
|
__all__ = [
|
@@ -4,9 +4,14 @@
|
|
4
4
|
|
5
5
|
import copy
|
6
6
|
import warnings
|
7
|
+
import sys
|
7
8
|
import pulumi
|
8
9
|
import pulumi.runtime
|
9
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
|
10
15
|
from .. import _utilities
|
11
16
|
|
12
17
|
__all__ = ['SecretBackendArgs', 'SecretBackend']
|
@@ -4,9 +4,14 @@
|
|
4
4
|
|
5
5
|
import copy
|
6
6
|
import warnings
|
7
|
+
import sys
|
7
8
|
import pulumi
|
8
9
|
import pulumi.runtime
|
9
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
|
10
15
|
from .. import _utilities
|
11
16
|
|
12
17
|
__all__ = ['SecretImpersonatedAccountArgs', 'SecretImpersonatedAccount']
|
@@ -4,9 +4,14 @@
|
|
4
4
|
|
5
5
|
import copy
|
6
6
|
import warnings
|
7
|
+
import sys
|
7
8
|
import pulumi
|
8
9
|
import pulumi.runtime
|
9
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
|
10
15
|
from .. import _utilities
|
11
16
|
from . import outputs
|
12
17
|
from ._inputs import *
|
@@ -283,7 +288,7 @@ class SecretRoleset(pulumi.CustomResource):
|
|
283
288
|
resource_name: str,
|
284
289
|
opts: Optional[pulumi.ResourceOptions] = None,
|
285
290
|
backend: Optional[pulumi.Input[str]] = None,
|
286
|
-
bindings: Optional[pulumi.Input[Sequence[pulumi.Input[
|
291
|
+
bindings: Optional[pulumi.Input[Sequence[pulumi.Input[Union['SecretRolesetBindingArgs', 'SecretRolesetBindingArgsDict']]]]] = None,
|
287
292
|
namespace: Optional[pulumi.Input[str]] = None,
|
288
293
|
project: Optional[pulumi.Input[str]] = None,
|
289
294
|
roleset: Optional[pulumi.Input[str]] = None,
|
@@ -312,10 +317,10 @@ class SecretRoleset(pulumi.CustomResource):
|
|
312
317
|
secret_type="access_token",
|
313
318
|
project=project,
|
314
319
|
token_scopes=["https://www.googleapis.com/auth/cloud-platform"],
|
315
|
-
bindings=[
|
316
|
-
resource
|
317
|
-
roles
|
318
|
-
|
320
|
+
bindings=[{
|
321
|
+
"resource": f"//cloudresourcemanager.googleapis.com/projects/{project}",
|
322
|
+
"roles": ["roles/viewer"],
|
323
|
+
}])
|
319
324
|
```
|
320
325
|
|
321
326
|
## Import
|
@@ -329,7 +334,7 @@ class SecretRoleset(pulumi.CustomResource):
|
|
329
334
|
:param str resource_name: The name of the resource.
|
330
335
|
:param pulumi.ResourceOptions opts: Options for the resource.
|
331
336
|
:param pulumi.Input[str] backend: Path where the GCP Secrets Engine is mounted
|
332
|
-
:param pulumi.Input[Sequence[pulumi.Input[
|
337
|
+
:param pulumi.Input[Sequence[pulumi.Input[Union['SecretRolesetBindingArgs', 'SecretRolesetBindingArgsDict']]]] bindings: Bindings to create for this roleset. This can be specified multiple times for multiple bindings. Structure is documented below.
|
333
338
|
:param pulumi.Input[str] namespace: The namespace to provision the resource in.
|
334
339
|
The value should not contain leading or trailing forward slashes.
|
335
340
|
The `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault/index.html#namespace).
|
@@ -367,10 +372,10 @@ class SecretRoleset(pulumi.CustomResource):
|
|
367
372
|
secret_type="access_token",
|
368
373
|
project=project,
|
369
374
|
token_scopes=["https://www.googleapis.com/auth/cloud-platform"],
|
370
|
-
bindings=[
|
371
|
-
resource
|
372
|
-
roles
|
373
|
-
|
375
|
+
bindings=[{
|
376
|
+
"resource": f"//cloudresourcemanager.googleapis.com/projects/{project}",
|
377
|
+
"roles": ["roles/viewer"],
|
378
|
+
}])
|
374
379
|
```
|
375
380
|
|
376
381
|
## Import
|
@@ -397,7 +402,7 @@ class SecretRoleset(pulumi.CustomResource):
|
|
397
402
|
resource_name: str,
|
398
403
|
opts: Optional[pulumi.ResourceOptions] = None,
|
399
404
|
backend: Optional[pulumi.Input[str]] = None,
|
400
|
-
bindings: Optional[pulumi.Input[Sequence[pulumi.Input[
|
405
|
+
bindings: Optional[pulumi.Input[Sequence[pulumi.Input[Union['SecretRolesetBindingArgs', 'SecretRolesetBindingArgsDict']]]]] = None,
|
401
406
|
namespace: Optional[pulumi.Input[str]] = None,
|
402
407
|
project: Optional[pulumi.Input[str]] = None,
|
403
408
|
roleset: Optional[pulumi.Input[str]] = None,
|
@@ -439,7 +444,7 @@ class SecretRoleset(pulumi.CustomResource):
|
|
439
444
|
id: pulumi.Input[str],
|
440
445
|
opts: Optional[pulumi.ResourceOptions] = None,
|
441
446
|
backend: Optional[pulumi.Input[str]] = None,
|
442
|
-
bindings: Optional[pulumi.Input[Sequence[pulumi.Input[
|
447
|
+
bindings: Optional[pulumi.Input[Sequence[pulumi.Input[Union['SecretRolesetBindingArgs', 'SecretRolesetBindingArgsDict']]]]] = None,
|
443
448
|
namespace: Optional[pulumi.Input[str]] = None,
|
444
449
|
project: Optional[pulumi.Input[str]] = None,
|
445
450
|
roleset: Optional[pulumi.Input[str]] = None,
|
@@ -454,7 +459,7 @@ class SecretRoleset(pulumi.CustomResource):
|
|
454
459
|
:param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
|
455
460
|
:param pulumi.ResourceOptions opts: Options for the resource.
|
456
461
|
:param pulumi.Input[str] backend: Path where the GCP Secrets Engine is mounted
|
457
|
-
:param pulumi.Input[Sequence[pulumi.Input[
|
462
|
+
:param pulumi.Input[Sequence[pulumi.Input[Union['SecretRolesetBindingArgs', 'SecretRolesetBindingArgsDict']]]] bindings: Bindings to create for this roleset. This can be specified multiple times for multiple bindings. Structure is documented below.
|
458
463
|
:param pulumi.Input[str] namespace: The namespace to provision the resource in.
|
459
464
|
The value should not contain leading or trailing forward slashes.
|
460
465
|
The `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault/index.html#namespace).
|
@@ -4,9 +4,14 @@
|
|
4
4
|
|
5
5
|
import copy
|
6
6
|
import warnings
|
7
|
+
import sys
|
7
8
|
import pulumi
|
8
9
|
import pulumi.runtime
|
9
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
|
10
15
|
from .. import _utilities
|
11
16
|
from . import outputs
|
12
17
|
from ._inputs import *
|
@@ -284,7 +289,7 @@ class SecretStaticAccount(pulumi.CustomResource):
|
|
284
289
|
resource_name: str,
|
285
290
|
opts: Optional[pulumi.ResourceOptions] = None,
|
286
291
|
backend: Optional[pulumi.Input[str]] = None,
|
287
|
-
bindings: Optional[pulumi.Input[Sequence[pulumi.Input[
|
292
|
+
bindings: Optional[pulumi.Input[Sequence[pulumi.Input[Union['SecretStaticAccountBindingArgs', 'SecretStaticAccountBindingArgsDict']]]]] = None,
|
288
293
|
namespace: Optional[pulumi.Input[str]] = None,
|
289
294
|
secret_type: Optional[pulumi.Input[str]] = None,
|
290
295
|
service_account_email: Optional[pulumi.Input[str]] = None,
|
@@ -315,10 +320,10 @@ class SecretStaticAccount(pulumi.CustomResource):
|
|
315
320
|
secret_type="access_token",
|
316
321
|
token_scopes=["https://www.googleapis.com/auth/cloud-platform"],
|
317
322
|
service_account_email=this["email"],
|
318
|
-
bindings=[
|
319
|
-
resource
|
320
|
-
roles
|
321
|
-
|
323
|
+
bindings=[{
|
324
|
+
"resource": f"//cloudresourcemanager.googleapis.com/projects/{this['project']}",
|
325
|
+
"roles": ["roles/viewer"],
|
326
|
+
}])
|
322
327
|
```
|
323
328
|
|
324
329
|
## Import
|
@@ -332,7 +337,7 @@ class SecretStaticAccount(pulumi.CustomResource):
|
|
332
337
|
:param str resource_name: The name of the resource.
|
333
338
|
:param pulumi.ResourceOptions opts: Options for the resource.
|
334
339
|
:param pulumi.Input[str] backend: Path where the GCP Secrets Engine is mounted
|
335
|
-
:param pulumi.Input[Sequence[pulumi.Input[
|
340
|
+
:param pulumi.Input[Sequence[pulumi.Input[Union['SecretStaticAccountBindingArgs', 'SecretStaticAccountBindingArgsDict']]]] bindings: Bindings to create for this static account. This can be specified multiple times for multiple bindings. Structure is documented below.
|
336
341
|
:param pulumi.Input[str] namespace: The namespace to provision the resource in.
|
337
342
|
The value should not contain leading or trailing forward slashes.
|
338
343
|
The `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault/index.html#namespace).
|
@@ -372,10 +377,10 @@ class SecretStaticAccount(pulumi.CustomResource):
|
|
372
377
|
secret_type="access_token",
|
373
378
|
token_scopes=["https://www.googleapis.com/auth/cloud-platform"],
|
374
379
|
service_account_email=this["email"],
|
375
|
-
bindings=[
|
376
|
-
resource
|
377
|
-
roles
|
378
|
-
|
380
|
+
bindings=[{
|
381
|
+
"resource": f"//cloudresourcemanager.googleapis.com/projects/{this['project']}",
|
382
|
+
"roles": ["roles/viewer"],
|
383
|
+
}])
|
379
384
|
```
|
380
385
|
|
381
386
|
## Import
|
@@ -402,7 +407,7 @@ class SecretStaticAccount(pulumi.CustomResource):
|
|
402
407
|
resource_name: str,
|
403
408
|
opts: Optional[pulumi.ResourceOptions] = None,
|
404
409
|
backend: Optional[pulumi.Input[str]] = None,
|
405
|
-
bindings: Optional[pulumi.Input[Sequence[pulumi.Input[
|
410
|
+
bindings: Optional[pulumi.Input[Sequence[pulumi.Input[Union['SecretStaticAccountBindingArgs', 'SecretStaticAccountBindingArgsDict']]]]] = None,
|
406
411
|
namespace: Optional[pulumi.Input[str]] = None,
|
407
412
|
secret_type: Optional[pulumi.Input[str]] = None,
|
408
413
|
service_account_email: Optional[pulumi.Input[str]] = None,
|
@@ -442,7 +447,7 @@ class SecretStaticAccount(pulumi.CustomResource):
|
|
442
447
|
id: pulumi.Input[str],
|
443
448
|
opts: Optional[pulumi.ResourceOptions] = None,
|
444
449
|
backend: Optional[pulumi.Input[str]] = None,
|
445
|
-
bindings: Optional[pulumi.Input[Sequence[pulumi.Input[
|
450
|
+
bindings: Optional[pulumi.Input[Sequence[pulumi.Input[Union['SecretStaticAccountBindingArgs', 'SecretStaticAccountBindingArgsDict']]]]] = None,
|
446
451
|
namespace: Optional[pulumi.Input[str]] = None,
|
447
452
|
secret_type: Optional[pulumi.Input[str]] = None,
|
448
453
|
service_account_email: Optional[pulumi.Input[str]] = None,
|
@@ -457,7 +462,7 @@ class SecretStaticAccount(pulumi.CustomResource):
|
|
457
462
|
:param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
|
458
463
|
:param pulumi.ResourceOptions opts: Options for the resource.
|
459
464
|
:param pulumi.Input[str] backend: Path where the GCP Secrets Engine is mounted
|
460
|
-
:param pulumi.Input[Sequence[pulumi.Input[
|
465
|
+
:param pulumi.Input[Sequence[pulumi.Input[Union['SecretStaticAccountBindingArgs', 'SecretStaticAccountBindingArgsDict']]]] bindings: Bindings to create for this static account. This can be specified multiple times for multiple bindings. Structure is documented below.
|
461
466
|
:param pulumi.Input[str] namespace: The namespace to provision the resource in.
|
462
467
|
The value should not contain leading or trailing forward slashes.
|
463
468
|
The `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault/index.html#namespace).
|
pulumi_vault/generic/endpoint.py
CHANGED
@@ -4,9 +4,14 @@
|
|
4
4
|
|
5
5
|
import copy
|
6
6
|
import warnings
|
7
|
+
import sys
|
7
8
|
import pulumi
|
8
9
|
import pulumi.runtime
|
9
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
|
10
15
|
from .. import _utilities
|
11
16
|
|
12
17
|
__all__ = ['EndpointArgs', 'Endpoint']
|
@@ -4,9 +4,14 @@
|
|
4
4
|
|
5
5
|
import copy
|
6
6
|
import warnings
|
7
|
+
import sys
|
7
8
|
import pulumi
|
8
9
|
import pulumi.runtime
|
9
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
|
10
15
|
from .. import _utilities
|
11
16
|
|
12
17
|
__all__ = [
|
@@ -58,7 +63,7 @@ class GetSecretResult:
|
|
58
63
|
|
59
64
|
@property
|
60
65
|
@pulumi.getter
|
61
|
-
def data(self) -> Mapping[str,
|
66
|
+
def data(self) -> Mapping[str, str]:
|
62
67
|
"""
|
63
68
|
A mapping whose keys are the top-level data keys returned from
|
64
69
|
Vault and whose values are the corresponding values. This map can only
|
@@ -226,9 +231,6 @@ def get_secret(namespace: Optional[str] = None,
|
|
226
231
|
path=pulumi.get(__ret__, 'path'),
|
227
232
|
version=pulumi.get(__ret__, 'version'),
|
228
233
|
with_lease_start_time=pulumi.get(__ret__, 'with_lease_start_time'))
|
229
|
-
|
230
|
-
|
231
|
-
@_utilities.lift_output_func(get_secret)
|
232
234
|
def get_secret_output(namespace: Optional[pulumi.Input[Optional[str]]] = None,
|
233
235
|
path: Optional[pulumi.Input[str]] = None,
|
234
236
|
version: Optional[pulumi.Input[Optional[int]]] = None,
|
@@ -283,4 +285,22 @@ def get_secret_output(namespace: Optional[pulumi.Input[Optional[str]]] = None,
|
|
283
285
|
Note that storing the `lease_start_time` in the TF state will cause a persistent drift
|
284
286
|
on every `pulumi preview` and will require a `pulumi up`.
|
285
287
|
"""
|
286
|
-
|
288
|
+
__args__ = dict()
|
289
|
+
__args__['namespace'] = namespace
|
290
|
+
__args__['path'] = path
|
291
|
+
__args__['version'] = version
|
292
|
+
__args__['withLeaseStartTime'] = with_lease_start_time
|
293
|
+
opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
|
294
|
+
__ret__ = pulumi.runtime.invoke_output('vault:generic/getSecret:getSecret', __args__, opts=opts, typ=GetSecretResult)
|
295
|
+
return __ret__.apply(lambda __response__: GetSecretResult(
|
296
|
+
data=pulumi.get(__response__, 'data'),
|
297
|
+
data_json=pulumi.get(__response__, 'data_json'),
|
298
|
+
id=pulumi.get(__response__, 'id'),
|
299
|
+
lease_duration=pulumi.get(__response__, 'lease_duration'),
|
300
|
+
lease_id=pulumi.get(__response__, 'lease_id'),
|
301
|
+
lease_renewable=pulumi.get(__response__, 'lease_renewable'),
|
302
|
+
lease_start_time=pulumi.get(__response__, 'lease_start_time'),
|
303
|
+
namespace=pulumi.get(__response__, 'namespace'),
|
304
|
+
path=pulumi.get(__response__, 'path'),
|
305
|
+
version=pulumi.get(__response__, 'version'),
|
306
|
+
with_lease_start_time=pulumi.get(__response__, 'with_lease_start_time')))
|