pulumi-vault 7.6.0a1764657486__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 +1399 -0
- pulumi_vault/_inputs.py +2701 -0
- pulumi_vault/_utilities.py +331 -0
- pulumi_vault/ad/__init__.py +12 -0
- pulumi_vault/ad/get_access_credentials.py +177 -0
- pulumi_vault/ad/secret_backend.py +1916 -0
- pulumi_vault/ad/secret_library.py +546 -0
- pulumi_vault/ad/secret_role.py +499 -0
- pulumi_vault/alicloud/__init__.py +9 -0
- pulumi_vault/alicloud/auth_backend_role.py +866 -0
- pulumi_vault/approle/__init__.py +12 -0
- pulumi_vault/approle/auth_backend_login.py +571 -0
- pulumi_vault/approle/auth_backend_role.py +1082 -0
- pulumi_vault/approle/auth_backend_role_secret_id.py +796 -0
- pulumi_vault/approle/get_auth_backend_role_id.py +169 -0
- pulumi_vault/audit.py +499 -0
- pulumi_vault/audit_request_header.py +277 -0
- pulumi_vault/auth_backend.py +565 -0
- pulumi_vault/aws/__init__.py +22 -0
- pulumi_vault/aws/auth_backend_cert.py +420 -0
- pulumi_vault/aws/auth_backend_client.py +1259 -0
- pulumi_vault/aws/auth_backend_config_identity.py +494 -0
- pulumi_vault/aws/auth_backend_identity_whitelist.py +380 -0
- pulumi_vault/aws/auth_backend_login.py +1046 -0
- pulumi_vault/aws/auth_backend_role.py +1961 -0
- pulumi_vault/aws/auth_backend_role_tag.py +638 -0
- pulumi_vault/aws/auth_backend_roletag_blacklist.py +366 -0
- pulumi_vault/aws/auth_backend_sts_role.py +414 -0
- pulumi_vault/aws/get_access_credentials.py +369 -0
- pulumi_vault/aws/get_static_access_credentials.py +137 -0
- pulumi_vault/aws/secret_backend.py +2018 -0
- pulumi_vault/aws/secret_backend_role.py +1188 -0
- pulumi_vault/aws/secret_backend_static_role.py +639 -0
- pulumi_vault/azure/__init__.py +15 -0
- pulumi_vault/azure/_inputs.py +108 -0
- pulumi_vault/azure/auth_backend_config.py +1096 -0
- pulumi_vault/azure/auth_backend_role.py +1176 -0
- pulumi_vault/azure/backend.py +1793 -0
- pulumi_vault/azure/backend_role.py +883 -0
- pulumi_vault/azure/get_access_credentials.py +400 -0
- pulumi_vault/azure/outputs.py +107 -0
- pulumi_vault/cert_auth_backend_role.py +1539 -0
- pulumi_vault/config/__init__.py +9 -0
- pulumi_vault/config/__init__.pyi +164 -0
- pulumi_vault/config/_inputs.py +73 -0
- pulumi_vault/config/outputs.py +1225 -0
- pulumi_vault/config/ui_custom_message.py +530 -0
- pulumi_vault/config/vars.py +230 -0
- pulumi_vault/consul/__init__.py +10 -0
- pulumi_vault/consul/secret_backend.py +1517 -0
- pulumi_vault/consul/secret_backend_role.py +847 -0
- pulumi_vault/database/__init__.py +14 -0
- pulumi_vault/database/_inputs.py +11907 -0
- pulumi_vault/database/outputs.py +8496 -0
- pulumi_vault/database/secret_backend_connection.py +1676 -0
- pulumi_vault/database/secret_backend_role.py +840 -0
- pulumi_vault/database/secret_backend_static_role.py +881 -0
- pulumi_vault/database/secrets_mount.py +2160 -0
- pulumi_vault/egp_policy.py +399 -0
- pulumi_vault/gcp/__init__.py +17 -0
- pulumi_vault/gcp/_inputs.py +441 -0
- pulumi_vault/gcp/auth_backend.py +1486 -0
- pulumi_vault/gcp/auth_backend_role.py +1235 -0
- pulumi_vault/gcp/get_auth_backend_role.py +514 -0
- pulumi_vault/gcp/outputs.py +302 -0
- pulumi_vault/gcp/secret_backend.py +1807 -0
- pulumi_vault/gcp/secret_impersonated_account.py +484 -0
- pulumi_vault/gcp/secret_roleset.py +554 -0
- pulumi_vault/gcp/secret_static_account.py +557 -0
- pulumi_vault/generic/__init__.py +11 -0
- pulumi_vault/generic/endpoint.py +786 -0
- pulumi_vault/generic/get_secret.py +306 -0
- pulumi_vault/generic/secret.py +486 -0
- pulumi_vault/get_auth_backend.py +226 -0
- pulumi_vault/get_auth_backends.py +170 -0
- pulumi_vault/get_namespace.py +226 -0
- pulumi_vault/get_namespaces.py +202 -0
- pulumi_vault/get_nomad_access_token.py +210 -0
- pulumi_vault/get_policy_document.py +160 -0
- pulumi_vault/get_raft_autopilot_state.py +267 -0
- pulumi_vault/github/__init__.py +13 -0
- pulumi_vault/github/_inputs.py +225 -0
- pulumi_vault/github/auth_backend.py +1194 -0
- pulumi_vault/github/outputs.py +174 -0
- pulumi_vault/github/team.py +380 -0
- pulumi_vault/github/user.py +380 -0
- pulumi_vault/identity/__init__.py +35 -0
- pulumi_vault/identity/entity.py +447 -0
- pulumi_vault/identity/entity_alias.py +398 -0
- pulumi_vault/identity/entity_policies.py +455 -0
- pulumi_vault/identity/get_entity.py +384 -0
- pulumi_vault/identity/get_group.py +467 -0
- pulumi_vault/identity/get_oidc_client_creds.py +175 -0
- pulumi_vault/identity/get_oidc_openid_config.py +334 -0
- pulumi_vault/identity/get_oidc_public_keys.py +179 -0
- pulumi_vault/identity/group.py +805 -0
- pulumi_vault/identity/group_alias.py +386 -0
- pulumi_vault/identity/group_member_entity_ids.py +444 -0
- pulumi_vault/identity/group_member_group_ids.py +467 -0
- pulumi_vault/identity/group_policies.py +471 -0
- pulumi_vault/identity/mfa_duo.py +674 -0
- pulumi_vault/identity/mfa_login_enforcement.py +566 -0
- pulumi_vault/identity/mfa_okta.py +626 -0
- pulumi_vault/identity/mfa_pingid.py +616 -0
- pulumi_vault/identity/mfa_totp.py +758 -0
- pulumi_vault/identity/oidc.py +268 -0
- pulumi_vault/identity/oidc_assignment.py +375 -0
- pulumi_vault/identity/oidc_client.py +667 -0
- pulumi_vault/identity/oidc_key.py +474 -0
- pulumi_vault/identity/oidc_key_allowed_client_id.py +298 -0
- pulumi_vault/identity/oidc_provider.py +550 -0
- pulumi_vault/identity/oidc_role.py +543 -0
- pulumi_vault/identity/oidc_scope.py +355 -0
- pulumi_vault/identity/outputs.py +137 -0
- pulumi_vault/jwt/__init__.py +12 -0
- pulumi_vault/jwt/_inputs.py +225 -0
- pulumi_vault/jwt/auth_backend.py +1347 -0
- pulumi_vault/jwt/auth_backend_role.py +1847 -0
- pulumi_vault/jwt/outputs.py +174 -0
- pulumi_vault/kmip/__init__.py +11 -0
- pulumi_vault/kmip/secret_backend.py +1591 -0
- pulumi_vault/kmip/secret_role.py +1194 -0
- pulumi_vault/kmip/secret_scope.py +372 -0
- pulumi_vault/kubernetes/__init__.py +15 -0
- pulumi_vault/kubernetes/auth_backend_config.py +654 -0
- pulumi_vault/kubernetes/auth_backend_role.py +1031 -0
- pulumi_vault/kubernetes/get_auth_backend_config.py +280 -0
- pulumi_vault/kubernetes/get_auth_backend_role.py +470 -0
- pulumi_vault/kubernetes/get_service_account_token.py +344 -0
- pulumi_vault/kubernetes/secret_backend.py +1341 -0
- pulumi_vault/kubernetes/secret_backend_role.py +1140 -0
- pulumi_vault/kv/__init__.py +18 -0
- pulumi_vault/kv/_inputs.py +124 -0
- pulumi_vault/kv/get_secret.py +240 -0
- pulumi_vault/kv/get_secret_subkeys_v2.py +275 -0
- pulumi_vault/kv/get_secret_v2.py +315 -0
- pulumi_vault/kv/get_secrets_list.py +186 -0
- pulumi_vault/kv/get_secrets_list_v2.py +243 -0
- pulumi_vault/kv/outputs.py +102 -0
- pulumi_vault/kv/secret.py +397 -0
- pulumi_vault/kv/secret_backend_v2.py +455 -0
- pulumi_vault/kv/secret_v2.py +970 -0
- pulumi_vault/ldap/__init__.py +19 -0
- pulumi_vault/ldap/_inputs.py +225 -0
- pulumi_vault/ldap/auth_backend.py +2520 -0
- pulumi_vault/ldap/auth_backend_group.py +386 -0
- pulumi_vault/ldap/auth_backend_user.py +439 -0
- pulumi_vault/ldap/get_dynamic_credentials.py +181 -0
- pulumi_vault/ldap/get_static_credentials.py +192 -0
- pulumi_vault/ldap/outputs.py +174 -0
- pulumi_vault/ldap/secret_backend.py +2207 -0
- pulumi_vault/ldap/secret_backend_dynamic_role.py +767 -0
- pulumi_vault/ldap/secret_backend_library_set.py +552 -0
- pulumi_vault/ldap/secret_backend_static_role.py +541 -0
- pulumi_vault/managed/__init__.py +11 -0
- pulumi_vault/managed/_inputs.py +944 -0
- pulumi_vault/managed/keys.py +398 -0
- pulumi_vault/managed/outputs.py +667 -0
- pulumi_vault/mfa_duo.py +589 -0
- pulumi_vault/mfa_okta.py +623 -0
- pulumi_vault/mfa_pingid.py +670 -0
- pulumi_vault/mfa_totp.py +620 -0
- pulumi_vault/mongodbatlas/__init__.py +10 -0
- pulumi_vault/mongodbatlas/secret_backend.py +388 -0
- pulumi_vault/mongodbatlas/secret_role.py +726 -0
- pulumi_vault/mount.py +1262 -0
- pulumi_vault/namespace.py +452 -0
- pulumi_vault/nomad_secret_backend.py +1559 -0
- pulumi_vault/nomad_secret_role.py +489 -0
- pulumi_vault/oci_auth_backend.py +676 -0
- pulumi_vault/oci_auth_backend_role.py +852 -0
- pulumi_vault/okta/__init__.py +13 -0
- pulumi_vault/okta/_inputs.py +320 -0
- pulumi_vault/okta/auth_backend.py +1231 -0
- pulumi_vault/okta/auth_backend_group.py +369 -0
- pulumi_vault/okta/auth_backend_user.py +416 -0
- pulumi_vault/okta/outputs.py +244 -0
- pulumi_vault/outputs.py +502 -0
- pulumi_vault/pkisecret/__init__.py +38 -0
- pulumi_vault/pkisecret/_inputs.py +270 -0
- pulumi_vault/pkisecret/backend_acme_eab.py +550 -0
- pulumi_vault/pkisecret/backend_config_acme.py +690 -0
- pulumi_vault/pkisecret/backend_config_auto_tidy.py +1370 -0
- pulumi_vault/pkisecret/backend_config_cluster.py +370 -0
- pulumi_vault/pkisecret/backend_config_cmpv2.py +693 -0
- pulumi_vault/pkisecret/backend_config_est.py +756 -0
- pulumi_vault/pkisecret/backend_config_scep.py +738 -0
- pulumi_vault/pkisecret/get_backend_cert_metadata.py +277 -0
- pulumi_vault/pkisecret/get_backend_config_cmpv2.py +226 -0
- pulumi_vault/pkisecret/get_backend_config_est.py +251 -0
- pulumi_vault/pkisecret/get_backend_config_scep.py +271 -0
- pulumi_vault/pkisecret/get_backend_issuer.py +395 -0
- pulumi_vault/pkisecret/get_backend_issuers.py +192 -0
- pulumi_vault/pkisecret/get_backend_key.py +211 -0
- pulumi_vault/pkisecret/get_backend_keys.py +192 -0
- pulumi_vault/pkisecret/outputs.py +270 -0
- pulumi_vault/pkisecret/secret_backend_cert.py +1315 -0
- pulumi_vault/pkisecret/secret_backend_config_ca.py +386 -0
- pulumi_vault/pkisecret/secret_backend_config_issuers.py +392 -0
- pulumi_vault/pkisecret/secret_backend_config_urls.py +462 -0
- pulumi_vault/pkisecret/secret_backend_crl_config.py +846 -0
- pulumi_vault/pkisecret/secret_backend_intermediate_cert_request.py +1629 -0
- pulumi_vault/pkisecret/secret_backend_intermediate_set_signed.py +444 -0
- pulumi_vault/pkisecret/secret_backend_issuer.py +1089 -0
- pulumi_vault/pkisecret/secret_backend_key.py +613 -0
- pulumi_vault/pkisecret/secret_backend_role.py +2694 -0
- pulumi_vault/pkisecret/secret_backend_root_cert.py +2134 -0
- pulumi_vault/pkisecret/secret_backend_root_sign_intermediate.py +2031 -0
- pulumi_vault/pkisecret/secret_backend_sign.py +1194 -0
- pulumi_vault/plugin.py +596 -0
- pulumi_vault/plugin_pinned_version.py +299 -0
- pulumi_vault/policy.py +279 -0
- pulumi_vault/provider.py +781 -0
- pulumi_vault/pulumi-plugin.json +5 -0
- pulumi_vault/py.typed +0 -0
- pulumi_vault/quota_lease_count.py +504 -0
- pulumi_vault/quota_rate_limit.py +751 -0
- pulumi_vault/rabbitmq/__init__.py +12 -0
- pulumi_vault/rabbitmq/_inputs.py +235 -0
- pulumi_vault/rabbitmq/outputs.py +144 -0
- pulumi_vault/rabbitmq/secret_backend.py +1437 -0
- pulumi_vault/rabbitmq/secret_backend_role.py +496 -0
- pulumi_vault/raft_autopilot.py +609 -0
- pulumi_vault/raft_snapshot_agent_config.py +1591 -0
- pulumi_vault/rgp_policy.py +349 -0
- pulumi_vault/saml/__init__.py +12 -0
- pulumi_vault/saml/_inputs.py +225 -0
- pulumi_vault/saml/auth_backend.py +811 -0
- pulumi_vault/saml/auth_backend_role.py +1068 -0
- pulumi_vault/saml/outputs.py +174 -0
- pulumi_vault/scep_auth_backend_role.py +908 -0
- pulumi_vault/secrets/__init__.py +18 -0
- pulumi_vault/secrets/_inputs.py +110 -0
- pulumi_vault/secrets/outputs.py +94 -0
- pulumi_vault/secrets/sync_association.py +450 -0
- pulumi_vault/secrets/sync_aws_destination.py +780 -0
- pulumi_vault/secrets/sync_azure_destination.py +736 -0
- pulumi_vault/secrets/sync_config.py +303 -0
- pulumi_vault/secrets/sync_gcp_destination.py +572 -0
- pulumi_vault/secrets/sync_gh_destination.py +688 -0
- pulumi_vault/secrets/sync_github_apps.py +376 -0
- pulumi_vault/secrets/sync_vercel_destination.py +603 -0
- pulumi_vault/ssh/__init__.py +13 -0
- pulumi_vault/ssh/_inputs.py +76 -0
- pulumi_vault/ssh/get_secret_backend_sign.py +294 -0
- pulumi_vault/ssh/outputs.py +51 -0
- pulumi_vault/ssh/secret_backend_ca.py +588 -0
- pulumi_vault/ssh/secret_backend_role.py +1493 -0
- pulumi_vault/terraformcloud/__init__.py +11 -0
- pulumi_vault/terraformcloud/secret_backend.py +1321 -0
- pulumi_vault/terraformcloud/secret_creds.py +445 -0
- pulumi_vault/terraformcloud/secret_role.py +563 -0
- pulumi_vault/token.py +1026 -0
- pulumi_vault/tokenauth/__init__.py +9 -0
- pulumi_vault/tokenauth/auth_backend_role.py +1135 -0
- pulumi_vault/transform/__init__.py +14 -0
- pulumi_vault/transform/alphabet.py +348 -0
- pulumi_vault/transform/get_decode.py +287 -0
- pulumi_vault/transform/get_encode.py +291 -0
- pulumi_vault/transform/role.py +350 -0
- pulumi_vault/transform/template.py +592 -0
- pulumi_vault/transform/transformation.py +608 -0
- pulumi_vault/transit/__init__.py +15 -0
- pulumi_vault/transit/get_cmac.py +256 -0
- pulumi_vault/transit/get_decrypt.py +181 -0
- pulumi_vault/transit/get_encrypt.py +174 -0
- pulumi_vault/transit/get_sign.py +328 -0
- pulumi_vault/transit/get_verify.py +373 -0
- pulumi_vault/transit/secret_backend_key.py +1202 -0
- pulumi_vault/transit/secret_cache_config.py +302 -0
- pulumi_vault-7.6.0a1764657486.dist-info/METADATA +92 -0
- pulumi_vault-7.6.0a1764657486.dist-info/RECORD +274 -0
- pulumi_vault-7.6.0a1764657486.dist-info/WHEEL +5 -0
- pulumi_vault-7.6.0a1764657486.dist-info/top_level.txt +1 -0
|
@@ -0,0 +1,654 @@
|
|
|
1
|
+
# coding=utf-8
|
|
2
|
+
# *** WARNING: this file was generated by pulumi-language-python. ***
|
|
3
|
+
# *** Do not edit by hand unless you're certain you know what you are doing! ***
|
|
4
|
+
|
|
5
|
+
import builtins as _builtins
|
|
6
|
+
import warnings
|
|
7
|
+
import sys
|
|
8
|
+
import pulumi
|
|
9
|
+
import pulumi.runtime
|
|
10
|
+
from typing import Any, Mapping, Optional, Sequence, Union, overload
|
|
11
|
+
if sys.version_info >= (3, 11):
|
|
12
|
+
from typing import NotRequired, TypedDict, TypeAlias
|
|
13
|
+
else:
|
|
14
|
+
from typing_extensions import NotRequired, TypedDict, TypeAlias
|
|
15
|
+
from .. import _utilities
|
|
16
|
+
|
|
17
|
+
__all__ = ['AuthBackendConfigArgs', 'AuthBackendConfig']
|
|
18
|
+
|
|
19
|
+
@pulumi.input_type
|
|
20
|
+
class AuthBackendConfigArgs:
|
|
21
|
+
def __init__(__self__, *,
|
|
22
|
+
kubernetes_host: pulumi.Input[_builtins.str],
|
|
23
|
+
backend: Optional[pulumi.Input[_builtins.str]] = None,
|
|
24
|
+
disable_iss_validation: Optional[pulumi.Input[_builtins.bool]] = None,
|
|
25
|
+
disable_local_ca_jwt: Optional[pulumi.Input[_builtins.bool]] = None,
|
|
26
|
+
issuer: Optional[pulumi.Input[_builtins.str]] = None,
|
|
27
|
+
kubernetes_ca_cert: Optional[pulumi.Input[_builtins.str]] = None,
|
|
28
|
+
namespace: Optional[pulumi.Input[_builtins.str]] = None,
|
|
29
|
+
pem_keys: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
|
|
30
|
+
token_reviewer_jwt: Optional[pulumi.Input[_builtins.str]] = None,
|
|
31
|
+
use_annotations_as_alias_metadata: Optional[pulumi.Input[_builtins.bool]] = None):
|
|
32
|
+
"""
|
|
33
|
+
The set of arguments for constructing a AuthBackendConfig resource.
|
|
34
|
+
:param pulumi.Input[_builtins.str] kubernetes_host: Host must be a host string, a host:port pair, or a URL to the base of the Kubernetes API server.
|
|
35
|
+
:param pulumi.Input[_builtins.str] backend: Unique name of the kubernetes backend to configure.
|
|
36
|
+
:param pulumi.Input[_builtins.bool] disable_iss_validation: Disable JWT issuer validation. Allows to skip ISS validation. Requires Vault `v1.5.4+` or Vault auth kubernetes plugin `v0.7.1+`
|
|
37
|
+
:param pulumi.Input[_builtins.bool] disable_local_ca_jwt: Disable defaulting to the local CA cert and service account JWT when running in a Kubernetes pod. Requires Vault `v1.5.4+` or Vault auth kubernetes plugin `v0.7.1+`
|
|
38
|
+
:param pulumi.Input[_builtins.str] issuer: JWT issuer. If no issuer is specified, `kubernetes.io/serviceaccount` will be used as the default issuer.
|
|
39
|
+
:param pulumi.Input[_builtins.str] kubernetes_ca_cert: PEM encoded CA cert for use by the TLS client used to talk with the Kubernetes API.
|
|
40
|
+
:param pulumi.Input[_builtins.str] namespace: The namespace to provision the resource in.
|
|
41
|
+
The value should not contain leading or trailing forward slashes.
|
|
42
|
+
The `namespace` is always relative to the provider's configured namespace.
|
|
43
|
+
*Available only for Vault Enterprise*.
|
|
44
|
+
:param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] pem_keys: List of PEM-formatted public keys or certificates used to verify the signatures of Kubernetes service account JWTs. If a certificate is given, its public key will be extracted. Not every installation of Kubernetes exposes these keys.
|
|
45
|
+
:param pulumi.Input[_builtins.str] token_reviewer_jwt: A service account JWT (or other token) used as a bearer token to access the TokenReview API to validate other JWTs during login. If not set the JWT used for login will be used to access the API.
|
|
46
|
+
:param pulumi.Input[_builtins.bool] use_annotations_as_alias_metadata: Use annotations from the client token's associated service account as alias metadata for the Vault entity. Requires Vault `v1.16+` or Vault auth kubernetes plugin `v0.18.0+`
|
|
47
|
+
"""
|
|
48
|
+
pulumi.set(__self__, "kubernetes_host", kubernetes_host)
|
|
49
|
+
if backend is not None:
|
|
50
|
+
pulumi.set(__self__, "backend", backend)
|
|
51
|
+
if disable_iss_validation is not None:
|
|
52
|
+
pulumi.set(__self__, "disable_iss_validation", disable_iss_validation)
|
|
53
|
+
if disable_local_ca_jwt is not None:
|
|
54
|
+
pulumi.set(__self__, "disable_local_ca_jwt", disable_local_ca_jwt)
|
|
55
|
+
if issuer is not None:
|
|
56
|
+
pulumi.set(__self__, "issuer", issuer)
|
|
57
|
+
if kubernetes_ca_cert is not None:
|
|
58
|
+
pulumi.set(__self__, "kubernetes_ca_cert", kubernetes_ca_cert)
|
|
59
|
+
if namespace is not None:
|
|
60
|
+
pulumi.set(__self__, "namespace", namespace)
|
|
61
|
+
if pem_keys is not None:
|
|
62
|
+
pulumi.set(__self__, "pem_keys", pem_keys)
|
|
63
|
+
if token_reviewer_jwt is not None:
|
|
64
|
+
pulumi.set(__self__, "token_reviewer_jwt", token_reviewer_jwt)
|
|
65
|
+
if use_annotations_as_alias_metadata is not None:
|
|
66
|
+
pulumi.set(__self__, "use_annotations_as_alias_metadata", use_annotations_as_alias_metadata)
|
|
67
|
+
|
|
68
|
+
@_builtins.property
|
|
69
|
+
@pulumi.getter(name="kubernetesHost")
|
|
70
|
+
def kubernetes_host(self) -> pulumi.Input[_builtins.str]:
|
|
71
|
+
"""
|
|
72
|
+
Host must be a host string, a host:port pair, or a URL to the base of the Kubernetes API server.
|
|
73
|
+
"""
|
|
74
|
+
return pulumi.get(self, "kubernetes_host")
|
|
75
|
+
|
|
76
|
+
@kubernetes_host.setter
|
|
77
|
+
def kubernetes_host(self, value: pulumi.Input[_builtins.str]):
|
|
78
|
+
pulumi.set(self, "kubernetes_host", value)
|
|
79
|
+
|
|
80
|
+
@_builtins.property
|
|
81
|
+
@pulumi.getter
|
|
82
|
+
def backend(self) -> Optional[pulumi.Input[_builtins.str]]:
|
|
83
|
+
"""
|
|
84
|
+
Unique name of the kubernetes backend to configure.
|
|
85
|
+
"""
|
|
86
|
+
return pulumi.get(self, "backend")
|
|
87
|
+
|
|
88
|
+
@backend.setter
|
|
89
|
+
def backend(self, value: Optional[pulumi.Input[_builtins.str]]):
|
|
90
|
+
pulumi.set(self, "backend", value)
|
|
91
|
+
|
|
92
|
+
@_builtins.property
|
|
93
|
+
@pulumi.getter(name="disableIssValidation")
|
|
94
|
+
def disable_iss_validation(self) -> Optional[pulumi.Input[_builtins.bool]]:
|
|
95
|
+
"""
|
|
96
|
+
Disable JWT issuer validation. Allows to skip ISS validation. Requires Vault `v1.5.4+` or Vault auth kubernetes plugin `v0.7.1+`
|
|
97
|
+
"""
|
|
98
|
+
return pulumi.get(self, "disable_iss_validation")
|
|
99
|
+
|
|
100
|
+
@disable_iss_validation.setter
|
|
101
|
+
def disable_iss_validation(self, value: Optional[pulumi.Input[_builtins.bool]]):
|
|
102
|
+
pulumi.set(self, "disable_iss_validation", value)
|
|
103
|
+
|
|
104
|
+
@_builtins.property
|
|
105
|
+
@pulumi.getter(name="disableLocalCaJwt")
|
|
106
|
+
def disable_local_ca_jwt(self) -> Optional[pulumi.Input[_builtins.bool]]:
|
|
107
|
+
"""
|
|
108
|
+
Disable defaulting to the local CA cert and service account JWT when running in a Kubernetes pod. Requires Vault `v1.5.4+` or Vault auth kubernetes plugin `v0.7.1+`
|
|
109
|
+
"""
|
|
110
|
+
return pulumi.get(self, "disable_local_ca_jwt")
|
|
111
|
+
|
|
112
|
+
@disable_local_ca_jwt.setter
|
|
113
|
+
def disable_local_ca_jwt(self, value: Optional[pulumi.Input[_builtins.bool]]):
|
|
114
|
+
pulumi.set(self, "disable_local_ca_jwt", value)
|
|
115
|
+
|
|
116
|
+
@_builtins.property
|
|
117
|
+
@pulumi.getter
|
|
118
|
+
def issuer(self) -> Optional[pulumi.Input[_builtins.str]]:
|
|
119
|
+
"""
|
|
120
|
+
JWT issuer. If no issuer is specified, `kubernetes.io/serviceaccount` will be used as the default issuer.
|
|
121
|
+
"""
|
|
122
|
+
return pulumi.get(self, "issuer")
|
|
123
|
+
|
|
124
|
+
@issuer.setter
|
|
125
|
+
def issuer(self, value: Optional[pulumi.Input[_builtins.str]]):
|
|
126
|
+
pulumi.set(self, "issuer", value)
|
|
127
|
+
|
|
128
|
+
@_builtins.property
|
|
129
|
+
@pulumi.getter(name="kubernetesCaCert")
|
|
130
|
+
def kubernetes_ca_cert(self) -> Optional[pulumi.Input[_builtins.str]]:
|
|
131
|
+
"""
|
|
132
|
+
PEM encoded CA cert for use by the TLS client used to talk with the Kubernetes API.
|
|
133
|
+
"""
|
|
134
|
+
return pulumi.get(self, "kubernetes_ca_cert")
|
|
135
|
+
|
|
136
|
+
@kubernetes_ca_cert.setter
|
|
137
|
+
def kubernetes_ca_cert(self, value: Optional[pulumi.Input[_builtins.str]]):
|
|
138
|
+
pulumi.set(self, "kubernetes_ca_cert", value)
|
|
139
|
+
|
|
140
|
+
@_builtins.property
|
|
141
|
+
@pulumi.getter
|
|
142
|
+
def namespace(self) -> Optional[pulumi.Input[_builtins.str]]:
|
|
143
|
+
"""
|
|
144
|
+
The namespace to provision the resource in.
|
|
145
|
+
The value should not contain leading or trailing forward slashes.
|
|
146
|
+
The `namespace` is always relative to the provider's configured namespace.
|
|
147
|
+
*Available only for Vault Enterprise*.
|
|
148
|
+
"""
|
|
149
|
+
return pulumi.get(self, "namespace")
|
|
150
|
+
|
|
151
|
+
@namespace.setter
|
|
152
|
+
def namespace(self, value: Optional[pulumi.Input[_builtins.str]]):
|
|
153
|
+
pulumi.set(self, "namespace", value)
|
|
154
|
+
|
|
155
|
+
@_builtins.property
|
|
156
|
+
@pulumi.getter(name="pemKeys")
|
|
157
|
+
def pem_keys(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]:
|
|
158
|
+
"""
|
|
159
|
+
List of PEM-formatted public keys or certificates used to verify the signatures of Kubernetes service account JWTs. If a certificate is given, its public key will be extracted. Not every installation of Kubernetes exposes these keys.
|
|
160
|
+
"""
|
|
161
|
+
return pulumi.get(self, "pem_keys")
|
|
162
|
+
|
|
163
|
+
@pem_keys.setter
|
|
164
|
+
def pem_keys(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]):
|
|
165
|
+
pulumi.set(self, "pem_keys", value)
|
|
166
|
+
|
|
167
|
+
@_builtins.property
|
|
168
|
+
@pulumi.getter(name="tokenReviewerJwt")
|
|
169
|
+
def token_reviewer_jwt(self) -> Optional[pulumi.Input[_builtins.str]]:
|
|
170
|
+
"""
|
|
171
|
+
A service account JWT (or other token) used as a bearer token to access the TokenReview API to validate other JWTs during login. If not set the JWT used for login will be used to access the API.
|
|
172
|
+
"""
|
|
173
|
+
return pulumi.get(self, "token_reviewer_jwt")
|
|
174
|
+
|
|
175
|
+
@token_reviewer_jwt.setter
|
|
176
|
+
def token_reviewer_jwt(self, value: Optional[pulumi.Input[_builtins.str]]):
|
|
177
|
+
pulumi.set(self, "token_reviewer_jwt", value)
|
|
178
|
+
|
|
179
|
+
@_builtins.property
|
|
180
|
+
@pulumi.getter(name="useAnnotationsAsAliasMetadata")
|
|
181
|
+
def use_annotations_as_alias_metadata(self) -> Optional[pulumi.Input[_builtins.bool]]:
|
|
182
|
+
"""
|
|
183
|
+
Use annotations from the client token's associated service account as alias metadata for the Vault entity. Requires Vault `v1.16+` or Vault auth kubernetes plugin `v0.18.0+`
|
|
184
|
+
"""
|
|
185
|
+
return pulumi.get(self, "use_annotations_as_alias_metadata")
|
|
186
|
+
|
|
187
|
+
@use_annotations_as_alias_metadata.setter
|
|
188
|
+
def use_annotations_as_alias_metadata(self, value: Optional[pulumi.Input[_builtins.bool]]):
|
|
189
|
+
pulumi.set(self, "use_annotations_as_alias_metadata", value)
|
|
190
|
+
|
|
191
|
+
|
|
192
|
+
@pulumi.input_type
|
|
193
|
+
class _AuthBackendConfigState:
|
|
194
|
+
def __init__(__self__, *,
|
|
195
|
+
backend: Optional[pulumi.Input[_builtins.str]] = None,
|
|
196
|
+
disable_iss_validation: Optional[pulumi.Input[_builtins.bool]] = None,
|
|
197
|
+
disable_local_ca_jwt: Optional[pulumi.Input[_builtins.bool]] = None,
|
|
198
|
+
issuer: Optional[pulumi.Input[_builtins.str]] = None,
|
|
199
|
+
kubernetes_ca_cert: Optional[pulumi.Input[_builtins.str]] = None,
|
|
200
|
+
kubernetes_host: Optional[pulumi.Input[_builtins.str]] = None,
|
|
201
|
+
namespace: Optional[pulumi.Input[_builtins.str]] = None,
|
|
202
|
+
pem_keys: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
|
|
203
|
+
token_reviewer_jwt: Optional[pulumi.Input[_builtins.str]] = None,
|
|
204
|
+
use_annotations_as_alias_metadata: Optional[pulumi.Input[_builtins.bool]] = None):
|
|
205
|
+
"""
|
|
206
|
+
Input properties used for looking up and filtering AuthBackendConfig resources.
|
|
207
|
+
:param pulumi.Input[_builtins.str] backend: Unique name of the kubernetes backend to configure.
|
|
208
|
+
:param pulumi.Input[_builtins.bool] disable_iss_validation: Disable JWT issuer validation. Allows to skip ISS validation. Requires Vault `v1.5.4+` or Vault auth kubernetes plugin `v0.7.1+`
|
|
209
|
+
:param pulumi.Input[_builtins.bool] disable_local_ca_jwt: Disable defaulting to the local CA cert and service account JWT when running in a Kubernetes pod. Requires Vault `v1.5.4+` or Vault auth kubernetes plugin `v0.7.1+`
|
|
210
|
+
:param pulumi.Input[_builtins.str] issuer: JWT issuer. If no issuer is specified, `kubernetes.io/serviceaccount` will be used as the default issuer.
|
|
211
|
+
:param pulumi.Input[_builtins.str] kubernetes_ca_cert: PEM encoded CA cert for use by the TLS client used to talk with the Kubernetes API.
|
|
212
|
+
:param pulumi.Input[_builtins.str] kubernetes_host: Host must be a host string, a host:port pair, or a URL to the base of the Kubernetes API server.
|
|
213
|
+
:param pulumi.Input[_builtins.str] namespace: The namespace to provision the resource in.
|
|
214
|
+
The value should not contain leading or trailing forward slashes.
|
|
215
|
+
The `namespace` is always relative to the provider's configured namespace.
|
|
216
|
+
*Available only for Vault Enterprise*.
|
|
217
|
+
:param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] pem_keys: List of PEM-formatted public keys or certificates used to verify the signatures of Kubernetes service account JWTs. If a certificate is given, its public key will be extracted. Not every installation of Kubernetes exposes these keys.
|
|
218
|
+
:param pulumi.Input[_builtins.str] token_reviewer_jwt: A service account JWT (or other token) used as a bearer token to access the TokenReview API to validate other JWTs during login. If not set the JWT used for login will be used to access the API.
|
|
219
|
+
:param pulumi.Input[_builtins.bool] use_annotations_as_alias_metadata: Use annotations from the client token's associated service account as alias metadata for the Vault entity. Requires Vault `v1.16+` or Vault auth kubernetes plugin `v0.18.0+`
|
|
220
|
+
"""
|
|
221
|
+
if backend is not None:
|
|
222
|
+
pulumi.set(__self__, "backend", backend)
|
|
223
|
+
if disable_iss_validation is not None:
|
|
224
|
+
pulumi.set(__self__, "disable_iss_validation", disable_iss_validation)
|
|
225
|
+
if disable_local_ca_jwt is not None:
|
|
226
|
+
pulumi.set(__self__, "disable_local_ca_jwt", disable_local_ca_jwt)
|
|
227
|
+
if issuer is not None:
|
|
228
|
+
pulumi.set(__self__, "issuer", issuer)
|
|
229
|
+
if kubernetes_ca_cert is not None:
|
|
230
|
+
pulumi.set(__self__, "kubernetes_ca_cert", kubernetes_ca_cert)
|
|
231
|
+
if kubernetes_host is not None:
|
|
232
|
+
pulumi.set(__self__, "kubernetes_host", kubernetes_host)
|
|
233
|
+
if namespace is not None:
|
|
234
|
+
pulumi.set(__self__, "namespace", namespace)
|
|
235
|
+
if pem_keys is not None:
|
|
236
|
+
pulumi.set(__self__, "pem_keys", pem_keys)
|
|
237
|
+
if token_reviewer_jwt is not None:
|
|
238
|
+
pulumi.set(__self__, "token_reviewer_jwt", token_reviewer_jwt)
|
|
239
|
+
if use_annotations_as_alias_metadata is not None:
|
|
240
|
+
pulumi.set(__self__, "use_annotations_as_alias_metadata", use_annotations_as_alias_metadata)
|
|
241
|
+
|
|
242
|
+
@_builtins.property
|
|
243
|
+
@pulumi.getter
|
|
244
|
+
def backend(self) -> Optional[pulumi.Input[_builtins.str]]:
|
|
245
|
+
"""
|
|
246
|
+
Unique name of the kubernetes backend to configure.
|
|
247
|
+
"""
|
|
248
|
+
return pulumi.get(self, "backend")
|
|
249
|
+
|
|
250
|
+
@backend.setter
|
|
251
|
+
def backend(self, value: Optional[pulumi.Input[_builtins.str]]):
|
|
252
|
+
pulumi.set(self, "backend", value)
|
|
253
|
+
|
|
254
|
+
@_builtins.property
|
|
255
|
+
@pulumi.getter(name="disableIssValidation")
|
|
256
|
+
def disable_iss_validation(self) -> Optional[pulumi.Input[_builtins.bool]]:
|
|
257
|
+
"""
|
|
258
|
+
Disable JWT issuer validation. Allows to skip ISS validation. Requires Vault `v1.5.4+` or Vault auth kubernetes plugin `v0.7.1+`
|
|
259
|
+
"""
|
|
260
|
+
return pulumi.get(self, "disable_iss_validation")
|
|
261
|
+
|
|
262
|
+
@disable_iss_validation.setter
|
|
263
|
+
def disable_iss_validation(self, value: Optional[pulumi.Input[_builtins.bool]]):
|
|
264
|
+
pulumi.set(self, "disable_iss_validation", value)
|
|
265
|
+
|
|
266
|
+
@_builtins.property
|
|
267
|
+
@pulumi.getter(name="disableLocalCaJwt")
|
|
268
|
+
def disable_local_ca_jwt(self) -> Optional[pulumi.Input[_builtins.bool]]:
|
|
269
|
+
"""
|
|
270
|
+
Disable defaulting to the local CA cert and service account JWT when running in a Kubernetes pod. Requires Vault `v1.5.4+` or Vault auth kubernetes plugin `v0.7.1+`
|
|
271
|
+
"""
|
|
272
|
+
return pulumi.get(self, "disable_local_ca_jwt")
|
|
273
|
+
|
|
274
|
+
@disable_local_ca_jwt.setter
|
|
275
|
+
def disable_local_ca_jwt(self, value: Optional[pulumi.Input[_builtins.bool]]):
|
|
276
|
+
pulumi.set(self, "disable_local_ca_jwt", value)
|
|
277
|
+
|
|
278
|
+
@_builtins.property
|
|
279
|
+
@pulumi.getter
|
|
280
|
+
def issuer(self) -> Optional[pulumi.Input[_builtins.str]]:
|
|
281
|
+
"""
|
|
282
|
+
JWT issuer. If no issuer is specified, `kubernetes.io/serviceaccount` will be used as the default issuer.
|
|
283
|
+
"""
|
|
284
|
+
return pulumi.get(self, "issuer")
|
|
285
|
+
|
|
286
|
+
@issuer.setter
|
|
287
|
+
def issuer(self, value: Optional[pulumi.Input[_builtins.str]]):
|
|
288
|
+
pulumi.set(self, "issuer", value)
|
|
289
|
+
|
|
290
|
+
@_builtins.property
|
|
291
|
+
@pulumi.getter(name="kubernetesCaCert")
|
|
292
|
+
def kubernetes_ca_cert(self) -> Optional[pulumi.Input[_builtins.str]]:
|
|
293
|
+
"""
|
|
294
|
+
PEM encoded CA cert for use by the TLS client used to talk with the Kubernetes API.
|
|
295
|
+
"""
|
|
296
|
+
return pulumi.get(self, "kubernetes_ca_cert")
|
|
297
|
+
|
|
298
|
+
@kubernetes_ca_cert.setter
|
|
299
|
+
def kubernetes_ca_cert(self, value: Optional[pulumi.Input[_builtins.str]]):
|
|
300
|
+
pulumi.set(self, "kubernetes_ca_cert", value)
|
|
301
|
+
|
|
302
|
+
@_builtins.property
|
|
303
|
+
@pulumi.getter(name="kubernetesHost")
|
|
304
|
+
def kubernetes_host(self) -> Optional[pulumi.Input[_builtins.str]]:
|
|
305
|
+
"""
|
|
306
|
+
Host must be a host string, a host:port pair, or a URL to the base of the Kubernetes API server.
|
|
307
|
+
"""
|
|
308
|
+
return pulumi.get(self, "kubernetes_host")
|
|
309
|
+
|
|
310
|
+
@kubernetes_host.setter
|
|
311
|
+
def kubernetes_host(self, value: Optional[pulumi.Input[_builtins.str]]):
|
|
312
|
+
pulumi.set(self, "kubernetes_host", value)
|
|
313
|
+
|
|
314
|
+
@_builtins.property
|
|
315
|
+
@pulumi.getter
|
|
316
|
+
def namespace(self) -> Optional[pulumi.Input[_builtins.str]]:
|
|
317
|
+
"""
|
|
318
|
+
The namespace to provision the resource in.
|
|
319
|
+
The value should not contain leading or trailing forward slashes.
|
|
320
|
+
The `namespace` is always relative to the provider's configured namespace.
|
|
321
|
+
*Available only for Vault Enterprise*.
|
|
322
|
+
"""
|
|
323
|
+
return pulumi.get(self, "namespace")
|
|
324
|
+
|
|
325
|
+
@namespace.setter
|
|
326
|
+
def namespace(self, value: Optional[pulumi.Input[_builtins.str]]):
|
|
327
|
+
pulumi.set(self, "namespace", value)
|
|
328
|
+
|
|
329
|
+
@_builtins.property
|
|
330
|
+
@pulumi.getter(name="pemKeys")
|
|
331
|
+
def pem_keys(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]:
|
|
332
|
+
"""
|
|
333
|
+
List of PEM-formatted public keys or certificates used to verify the signatures of Kubernetes service account JWTs. If a certificate is given, its public key will be extracted. Not every installation of Kubernetes exposes these keys.
|
|
334
|
+
"""
|
|
335
|
+
return pulumi.get(self, "pem_keys")
|
|
336
|
+
|
|
337
|
+
@pem_keys.setter
|
|
338
|
+
def pem_keys(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]):
|
|
339
|
+
pulumi.set(self, "pem_keys", value)
|
|
340
|
+
|
|
341
|
+
@_builtins.property
|
|
342
|
+
@pulumi.getter(name="tokenReviewerJwt")
|
|
343
|
+
def token_reviewer_jwt(self) -> Optional[pulumi.Input[_builtins.str]]:
|
|
344
|
+
"""
|
|
345
|
+
A service account JWT (or other token) used as a bearer token to access the TokenReview API to validate other JWTs during login. If not set the JWT used for login will be used to access the API.
|
|
346
|
+
"""
|
|
347
|
+
return pulumi.get(self, "token_reviewer_jwt")
|
|
348
|
+
|
|
349
|
+
@token_reviewer_jwt.setter
|
|
350
|
+
def token_reviewer_jwt(self, value: Optional[pulumi.Input[_builtins.str]]):
|
|
351
|
+
pulumi.set(self, "token_reviewer_jwt", value)
|
|
352
|
+
|
|
353
|
+
@_builtins.property
|
|
354
|
+
@pulumi.getter(name="useAnnotationsAsAliasMetadata")
|
|
355
|
+
def use_annotations_as_alias_metadata(self) -> Optional[pulumi.Input[_builtins.bool]]:
|
|
356
|
+
"""
|
|
357
|
+
Use annotations from the client token's associated service account as alias metadata for the Vault entity. Requires Vault `v1.16+` or Vault auth kubernetes plugin `v0.18.0+`
|
|
358
|
+
"""
|
|
359
|
+
return pulumi.get(self, "use_annotations_as_alias_metadata")
|
|
360
|
+
|
|
361
|
+
@use_annotations_as_alias_metadata.setter
|
|
362
|
+
def use_annotations_as_alias_metadata(self, value: Optional[pulumi.Input[_builtins.bool]]):
|
|
363
|
+
pulumi.set(self, "use_annotations_as_alias_metadata", value)
|
|
364
|
+
|
|
365
|
+
|
|
366
|
+
@pulumi.type_token("vault:kubernetes/authBackendConfig:AuthBackendConfig")
|
|
367
|
+
class AuthBackendConfig(pulumi.CustomResource):
|
|
368
|
+
@overload
|
|
369
|
+
def __init__(__self__,
|
|
370
|
+
resource_name: str,
|
|
371
|
+
opts: Optional[pulumi.ResourceOptions] = None,
|
|
372
|
+
backend: Optional[pulumi.Input[_builtins.str]] = None,
|
|
373
|
+
disable_iss_validation: Optional[pulumi.Input[_builtins.bool]] = None,
|
|
374
|
+
disable_local_ca_jwt: Optional[pulumi.Input[_builtins.bool]] = None,
|
|
375
|
+
issuer: Optional[pulumi.Input[_builtins.str]] = None,
|
|
376
|
+
kubernetes_ca_cert: Optional[pulumi.Input[_builtins.str]] = None,
|
|
377
|
+
kubernetes_host: Optional[pulumi.Input[_builtins.str]] = None,
|
|
378
|
+
namespace: Optional[pulumi.Input[_builtins.str]] = None,
|
|
379
|
+
pem_keys: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
|
|
380
|
+
token_reviewer_jwt: Optional[pulumi.Input[_builtins.str]] = None,
|
|
381
|
+
use_annotations_as_alias_metadata: Optional[pulumi.Input[_builtins.bool]] = None,
|
|
382
|
+
__props__=None):
|
|
383
|
+
"""
|
|
384
|
+
Manages an Kubernetes auth backend config in a Vault server. See the [Vault
|
|
385
|
+
documentation](https://www.vaultproject.io/docs/auth/kubernetes.html) for more
|
|
386
|
+
information.
|
|
387
|
+
|
|
388
|
+
## Example Usage
|
|
389
|
+
|
|
390
|
+
```python
|
|
391
|
+
import pulumi
|
|
392
|
+
import pulumi_vault as vault
|
|
393
|
+
|
|
394
|
+
kubernetes = vault.AuthBackend("kubernetes", type="kubernetes")
|
|
395
|
+
example = vault.kubernetes.AuthBackendConfig("example",
|
|
396
|
+
backend=kubernetes.path,
|
|
397
|
+
kubernetes_host="http://example.com:443",
|
|
398
|
+
kubernetes_ca_cert=\"\"\"-----BEGIN CERTIFICATE-----
|
|
399
|
+
example
|
|
400
|
+
-----END CERTIFICATE-----\"\"\",
|
|
401
|
+
token_reviewer_jwt="ZXhhbXBsZQo=",
|
|
402
|
+
issuer="api",
|
|
403
|
+
disable_iss_validation=True)
|
|
404
|
+
```
|
|
405
|
+
|
|
406
|
+
## Import
|
|
407
|
+
|
|
408
|
+
Kubernetes authentication backend can be imported using the `path`, e.g.
|
|
409
|
+
|
|
410
|
+
```sh
|
|
411
|
+
$ pulumi import vault:kubernetes/authBackendConfig:AuthBackendConfig config auth/kubernetes/config
|
|
412
|
+
```
|
|
413
|
+
|
|
414
|
+
:param str resource_name: The name of the resource.
|
|
415
|
+
:param pulumi.ResourceOptions opts: Options for the resource.
|
|
416
|
+
:param pulumi.Input[_builtins.str] backend: Unique name of the kubernetes backend to configure.
|
|
417
|
+
:param pulumi.Input[_builtins.bool] disable_iss_validation: Disable JWT issuer validation. Allows to skip ISS validation. Requires Vault `v1.5.4+` or Vault auth kubernetes plugin `v0.7.1+`
|
|
418
|
+
:param pulumi.Input[_builtins.bool] disable_local_ca_jwt: Disable defaulting to the local CA cert and service account JWT when running in a Kubernetes pod. Requires Vault `v1.5.4+` or Vault auth kubernetes plugin `v0.7.1+`
|
|
419
|
+
:param pulumi.Input[_builtins.str] issuer: JWT issuer. If no issuer is specified, `kubernetes.io/serviceaccount` will be used as the default issuer.
|
|
420
|
+
:param pulumi.Input[_builtins.str] kubernetes_ca_cert: PEM encoded CA cert for use by the TLS client used to talk with the Kubernetes API.
|
|
421
|
+
:param pulumi.Input[_builtins.str] kubernetes_host: Host must be a host string, a host:port pair, or a URL to the base of the Kubernetes API server.
|
|
422
|
+
:param pulumi.Input[_builtins.str] namespace: The namespace to provision the resource in.
|
|
423
|
+
The value should not contain leading or trailing forward slashes.
|
|
424
|
+
The `namespace` is always relative to the provider's configured namespace.
|
|
425
|
+
*Available only for Vault Enterprise*.
|
|
426
|
+
:param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] pem_keys: List of PEM-formatted public keys or certificates used to verify the signatures of Kubernetes service account JWTs. If a certificate is given, its public key will be extracted. Not every installation of Kubernetes exposes these keys.
|
|
427
|
+
:param pulumi.Input[_builtins.str] token_reviewer_jwt: A service account JWT (or other token) used as a bearer token to access the TokenReview API to validate other JWTs during login. If not set the JWT used for login will be used to access the API.
|
|
428
|
+
:param pulumi.Input[_builtins.bool] use_annotations_as_alias_metadata: Use annotations from the client token's associated service account as alias metadata for the Vault entity. Requires Vault `v1.16+` or Vault auth kubernetes plugin `v0.18.0+`
|
|
429
|
+
"""
|
|
430
|
+
...
|
|
431
|
+
@overload
|
|
432
|
+
def __init__(__self__,
|
|
433
|
+
resource_name: str,
|
|
434
|
+
args: AuthBackendConfigArgs,
|
|
435
|
+
opts: Optional[pulumi.ResourceOptions] = None):
|
|
436
|
+
"""
|
|
437
|
+
Manages an Kubernetes auth backend config in a Vault server. See the [Vault
|
|
438
|
+
documentation](https://www.vaultproject.io/docs/auth/kubernetes.html) for more
|
|
439
|
+
information.
|
|
440
|
+
|
|
441
|
+
## Example Usage
|
|
442
|
+
|
|
443
|
+
```python
|
|
444
|
+
import pulumi
|
|
445
|
+
import pulumi_vault as vault
|
|
446
|
+
|
|
447
|
+
kubernetes = vault.AuthBackend("kubernetes", type="kubernetes")
|
|
448
|
+
example = vault.kubernetes.AuthBackendConfig("example",
|
|
449
|
+
backend=kubernetes.path,
|
|
450
|
+
kubernetes_host="http://example.com:443",
|
|
451
|
+
kubernetes_ca_cert=\"\"\"-----BEGIN CERTIFICATE-----
|
|
452
|
+
example
|
|
453
|
+
-----END CERTIFICATE-----\"\"\",
|
|
454
|
+
token_reviewer_jwt="ZXhhbXBsZQo=",
|
|
455
|
+
issuer="api",
|
|
456
|
+
disable_iss_validation=True)
|
|
457
|
+
```
|
|
458
|
+
|
|
459
|
+
## Import
|
|
460
|
+
|
|
461
|
+
Kubernetes authentication backend can be imported using the `path`, e.g.
|
|
462
|
+
|
|
463
|
+
```sh
|
|
464
|
+
$ pulumi import vault:kubernetes/authBackendConfig:AuthBackendConfig config auth/kubernetes/config
|
|
465
|
+
```
|
|
466
|
+
|
|
467
|
+
:param str resource_name: The name of the resource.
|
|
468
|
+
:param AuthBackendConfigArgs args: The arguments to use to populate this resource's properties.
|
|
469
|
+
:param pulumi.ResourceOptions opts: Options for the resource.
|
|
470
|
+
"""
|
|
471
|
+
...
|
|
472
|
+
def __init__(__self__, resource_name: str, *args, **kwargs):
|
|
473
|
+
resource_args, opts = _utilities.get_resource_args_opts(AuthBackendConfigArgs, pulumi.ResourceOptions, *args, **kwargs)
|
|
474
|
+
if resource_args is not None:
|
|
475
|
+
__self__._internal_init(resource_name, opts, **resource_args.__dict__)
|
|
476
|
+
else:
|
|
477
|
+
__self__._internal_init(resource_name, *args, **kwargs)
|
|
478
|
+
|
|
479
|
+
def _internal_init(__self__,
|
|
480
|
+
resource_name: str,
|
|
481
|
+
opts: Optional[pulumi.ResourceOptions] = None,
|
|
482
|
+
backend: Optional[pulumi.Input[_builtins.str]] = None,
|
|
483
|
+
disable_iss_validation: Optional[pulumi.Input[_builtins.bool]] = None,
|
|
484
|
+
disable_local_ca_jwt: Optional[pulumi.Input[_builtins.bool]] = None,
|
|
485
|
+
issuer: Optional[pulumi.Input[_builtins.str]] = None,
|
|
486
|
+
kubernetes_ca_cert: Optional[pulumi.Input[_builtins.str]] = None,
|
|
487
|
+
kubernetes_host: Optional[pulumi.Input[_builtins.str]] = None,
|
|
488
|
+
namespace: Optional[pulumi.Input[_builtins.str]] = None,
|
|
489
|
+
pem_keys: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
|
|
490
|
+
token_reviewer_jwt: Optional[pulumi.Input[_builtins.str]] = None,
|
|
491
|
+
use_annotations_as_alias_metadata: Optional[pulumi.Input[_builtins.bool]] = None,
|
|
492
|
+
__props__=None):
|
|
493
|
+
opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
|
|
494
|
+
if not isinstance(opts, pulumi.ResourceOptions):
|
|
495
|
+
raise TypeError('Expected resource options to be a ResourceOptions instance')
|
|
496
|
+
if opts.id is None:
|
|
497
|
+
if __props__ is not None:
|
|
498
|
+
raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
|
|
499
|
+
__props__ = AuthBackendConfigArgs.__new__(AuthBackendConfigArgs)
|
|
500
|
+
|
|
501
|
+
__props__.__dict__["backend"] = backend
|
|
502
|
+
__props__.__dict__["disable_iss_validation"] = disable_iss_validation
|
|
503
|
+
__props__.__dict__["disable_local_ca_jwt"] = disable_local_ca_jwt
|
|
504
|
+
__props__.__dict__["issuer"] = issuer
|
|
505
|
+
__props__.__dict__["kubernetes_ca_cert"] = kubernetes_ca_cert
|
|
506
|
+
if kubernetes_host is None and not opts.urn:
|
|
507
|
+
raise TypeError("Missing required property 'kubernetes_host'")
|
|
508
|
+
__props__.__dict__["kubernetes_host"] = kubernetes_host
|
|
509
|
+
__props__.__dict__["namespace"] = namespace
|
|
510
|
+
__props__.__dict__["pem_keys"] = pem_keys
|
|
511
|
+
__props__.__dict__["token_reviewer_jwt"] = None if token_reviewer_jwt is None else pulumi.Output.secret(token_reviewer_jwt)
|
|
512
|
+
__props__.__dict__["use_annotations_as_alias_metadata"] = use_annotations_as_alias_metadata
|
|
513
|
+
secret_opts = pulumi.ResourceOptions(additional_secret_outputs=["tokenReviewerJwt"])
|
|
514
|
+
opts = pulumi.ResourceOptions.merge(opts, secret_opts)
|
|
515
|
+
super(AuthBackendConfig, __self__).__init__(
|
|
516
|
+
'vault:kubernetes/authBackendConfig:AuthBackendConfig',
|
|
517
|
+
resource_name,
|
|
518
|
+
__props__,
|
|
519
|
+
opts)
|
|
520
|
+
|
|
521
|
+
@staticmethod
|
|
522
|
+
def get(resource_name: str,
|
|
523
|
+
id: pulumi.Input[str],
|
|
524
|
+
opts: Optional[pulumi.ResourceOptions] = None,
|
|
525
|
+
backend: Optional[pulumi.Input[_builtins.str]] = None,
|
|
526
|
+
disable_iss_validation: Optional[pulumi.Input[_builtins.bool]] = None,
|
|
527
|
+
disable_local_ca_jwt: Optional[pulumi.Input[_builtins.bool]] = None,
|
|
528
|
+
issuer: Optional[pulumi.Input[_builtins.str]] = None,
|
|
529
|
+
kubernetes_ca_cert: Optional[pulumi.Input[_builtins.str]] = None,
|
|
530
|
+
kubernetes_host: Optional[pulumi.Input[_builtins.str]] = None,
|
|
531
|
+
namespace: Optional[pulumi.Input[_builtins.str]] = None,
|
|
532
|
+
pem_keys: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
|
|
533
|
+
token_reviewer_jwt: Optional[pulumi.Input[_builtins.str]] = None,
|
|
534
|
+
use_annotations_as_alias_metadata: Optional[pulumi.Input[_builtins.bool]] = None) -> 'AuthBackendConfig':
|
|
535
|
+
"""
|
|
536
|
+
Get an existing AuthBackendConfig resource's state with the given name, id, and optional extra
|
|
537
|
+
properties used to qualify the lookup.
|
|
538
|
+
|
|
539
|
+
:param str resource_name: The unique name of the resulting resource.
|
|
540
|
+
:param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
|
|
541
|
+
:param pulumi.ResourceOptions opts: Options for the resource.
|
|
542
|
+
:param pulumi.Input[_builtins.str] backend: Unique name of the kubernetes backend to configure.
|
|
543
|
+
:param pulumi.Input[_builtins.bool] disable_iss_validation: Disable JWT issuer validation. Allows to skip ISS validation. Requires Vault `v1.5.4+` or Vault auth kubernetes plugin `v0.7.1+`
|
|
544
|
+
:param pulumi.Input[_builtins.bool] disable_local_ca_jwt: Disable defaulting to the local CA cert and service account JWT when running in a Kubernetes pod. Requires Vault `v1.5.4+` or Vault auth kubernetes plugin `v0.7.1+`
|
|
545
|
+
:param pulumi.Input[_builtins.str] issuer: JWT issuer. If no issuer is specified, `kubernetes.io/serviceaccount` will be used as the default issuer.
|
|
546
|
+
:param pulumi.Input[_builtins.str] kubernetes_ca_cert: PEM encoded CA cert for use by the TLS client used to talk with the Kubernetes API.
|
|
547
|
+
:param pulumi.Input[_builtins.str] kubernetes_host: Host must be a host string, a host:port pair, or a URL to the base of the Kubernetes API server.
|
|
548
|
+
:param pulumi.Input[_builtins.str] namespace: The namespace to provision the resource in.
|
|
549
|
+
The value should not contain leading or trailing forward slashes.
|
|
550
|
+
The `namespace` is always relative to the provider's configured namespace.
|
|
551
|
+
*Available only for Vault Enterprise*.
|
|
552
|
+
:param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] pem_keys: List of PEM-formatted public keys or certificates used to verify the signatures of Kubernetes service account JWTs. If a certificate is given, its public key will be extracted. Not every installation of Kubernetes exposes these keys.
|
|
553
|
+
:param pulumi.Input[_builtins.str] token_reviewer_jwt: A service account JWT (or other token) used as a bearer token to access the TokenReview API to validate other JWTs during login. If not set the JWT used for login will be used to access the API.
|
|
554
|
+
:param pulumi.Input[_builtins.bool] use_annotations_as_alias_metadata: Use annotations from the client token's associated service account as alias metadata for the Vault entity. Requires Vault `v1.16+` or Vault auth kubernetes plugin `v0.18.0+`
|
|
555
|
+
"""
|
|
556
|
+
opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
|
|
557
|
+
|
|
558
|
+
__props__ = _AuthBackendConfigState.__new__(_AuthBackendConfigState)
|
|
559
|
+
|
|
560
|
+
__props__.__dict__["backend"] = backend
|
|
561
|
+
__props__.__dict__["disable_iss_validation"] = disable_iss_validation
|
|
562
|
+
__props__.__dict__["disable_local_ca_jwt"] = disable_local_ca_jwt
|
|
563
|
+
__props__.__dict__["issuer"] = issuer
|
|
564
|
+
__props__.__dict__["kubernetes_ca_cert"] = kubernetes_ca_cert
|
|
565
|
+
__props__.__dict__["kubernetes_host"] = kubernetes_host
|
|
566
|
+
__props__.__dict__["namespace"] = namespace
|
|
567
|
+
__props__.__dict__["pem_keys"] = pem_keys
|
|
568
|
+
__props__.__dict__["token_reviewer_jwt"] = token_reviewer_jwt
|
|
569
|
+
__props__.__dict__["use_annotations_as_alias_metadata"] = use_annotations_as_alias_metadata
|
|
570
|
+
return AuthBackendConfig(resource_name, opts=opts, __props__=__props__)
|
|
571
|
+
|
|
572
|
+
@_builtins.property
|
|
573
|
+
@pulumi.getter
|
|
574
|
+
def backend(self) -> pulumi.Output[Optional[_builtins.str]]:
|
|
575
|
+
"""
|
|
576
|
+
Unique name of the kubernetes backend to configure.
|
|
577
|
+
"""
|
|
578
|
+
return pulumi.get(self, "backend")
|
|
579
|
+
|
|
580
|
+
@_builtins.property
|
|
581
|
+
@pulumi.getter(name="disableIssValidation")
|
|
582
|
+
def disable_iss_validation(self) -> pulumi.Output[_builtins.bool]:
|
|
583
|
+
"""
|
|
584
|
+
Disable JWT issuer validation. Allows to skip ISS validation. Requires Vault `v1.5.4+` or Vault auth kubernetes plugin `v0.7.1+`
|
|
585
|
+
"""
|
|
586
|
+
return pulumi.get(self, "disable_iss_validation")
|
|
587
|
+
|
|
588
|
+
@_builtins.property
|
|
589
|
+
@pulumi.getter(name="disableLocalCaJwt")
|
|
590
|
+
def disable_local_ca_jwt(self) -> pulumi.Output[_builtins.bool]:
|
|
591
|
+
"""
|
|
592
|
+
Disable defaulting to the local CA cert and service account JWT when running in a Kubernetes pod. Requires Vault `v1.5.4+` or Vault auth kubernetes plugin `v0.7.1+`
|
|
593
|
+
"""
|
|
594
|
+
return pulumi.get(self, "disable_local_ca_jwt")
|
|
595
|
+
|
|
596
|
+
@_builtins.property
|
|
597
|
+
@pulumi.getter
|
|
598
|
+
def issuer(self) -> pulumi.Output[Optional[_builtins.str]]:
|
|
599
|
+
"""
|
|
600
|
+
JWT issuer. If no issuer is specified, `kubernetes.io/serviceaccount` will be used as the default issuer.
|
|
601
|
+
"""
|
|
602
|
+
return pulumi.get(self, "issuer")
|
|
603
|
+
|
|
604
|
+
@_builtins.property
|
|
605
|
+
@pulumi.getter(name="kubernetesCaCert")
|
|
606
|
+
def kubernetes_ca_cert(self) -> pulumi.Output[_builtins.str]:
|
|
607
|
+
"""
|
|
608
|
+
PEM encoded CA cert for use by the TLS client used to talk with the Kubernetes API.
|
|
609
|
+
"""
|
|
610
|
+
return pulumi.get(self, "kubernetes_ca_cert")
|
|
611
|
+
|
|
612
|
+
@_builtins.property
|
|
613
|
+
@pulumi.getter(name="kubernetesHost")
|
|
614
|
+
def kubernetes_host(self) -> pulumi.Output[_builtins.str]:
|
|
615
|
+
"""
|
|
616
|
+
Host must be a host string, a host:port pair, or a URL to the base of the Kubernetes API server.
|
|
617
|
+
"""
|
|
618
|
+
return pulumi.get(self, "kubernetes_host")
|
|
619
|
+
|
|
620
|
+
@_builtins.property
|
|
621
|
+
@pulumi.getter
|
|
622
|
+
def namespace(self) -> pulumi.Output[Optional[_builtins.str]]:
|
|
623
|
+
"""
|
|
624
|
+
The namespace to provision the resource in.
|
|
625
|
+
The value should not contain leading or trailing forward slashes.
|
|
626
|
+
The `namespace` is always relative to the provider's configured namespace.
|
|
627
|
+
*Available only for Vault Enterprise*.
|
|
628
|
+
"""
|
|
629
|
+
return pulumi.get(self, "namespace")
|
|
630
|
+
|
|
631
|
+
@_builtins.property
|
|
632
|
+
@pulumi.getter(name="pemKeys")
|
|
633
|
+
def pem_keys(self) -> pulumi.Output[Optional[Sequence[_builtins.str]]]:
|
|
634
|
+
"""
|
|
635
|
+
List of PEM-formatted public keys or certificates used to verify the signatures of Kubernetes service account JWTs. If a certificate is given, its public key will be extracted. Not every installation of Kubernetes exposes these keys.
|
|
636
|
+
"""
|
|
637
|
+
return pulumi.get(self, "pem_keys")
|
|
638
|
+
|
|
639
|
+
@_builtins.property
|
|
640
|
+
@pulumi.getter(name="tokenReviewerJwt")
|
|
641
|
+
def token_reviewer_jwt(self) -> pulumi.Output[Optional[_builtins.str]]:
|
|
642
|
+
"""
|
|
643
|
+
A service account JWT (or other token) used as a bearer token to access the TokenReview API to validate other JWTs during login. If not set the JWT used for login will be used to access the API.
|
|
644
|
+
"""
|
|
645
|
+
return pulumi.get(self, "token_reviewer_jwt")
|
|
646
|
+
|
|
647
|
+
@_builtins.property
|
|
648
|
+
@pulumi.getter(name="useAnnotationsAsAliasMetadata")
|
|
649
|
+
def use_annotations_as_alias_metadata(self) -> pulumi.Output[_builtins.bool]:
|
|
650
|
+
"""
|
|
651
|
+
Use annotations from the client token's associated service account as alias metadata for the Vault entity. Requires Vault `v1.16+` or Vault auth kubernetes plugin `v0.18.0+`
|
|
652
|
+
"""
|
|
653
|
+
return pulumi.get(self, "use_annotations_as_alias_metadata")
|
|
654
|
+
|