diff --git a/provider/cmd/pulumi-resource-vault/bridge-metadata.json b/provider/cmd/pulumi-resource-vault/bridge-metadata.json
new file mode 100644
index 000000000..187622b3e
--- /dev/null
+++ b/provider/cmd/pulumi-resource-vault/bridge-metadata.json
@@ -0,0 +1,4325 @@
+{
+ "auto-aliasing": {
+ "resources": {
+ "vault_ad_secret_backend": {
+ "current": "vault:ad/secretBackend:SecretBackend",
+ "majorVersion": 5
+ },
+ "vault_ad_secret_library": {
+ "current": "vault:ad/secretLibrary:SecretLibrary",
+ "majorVersion": 5,
+ "fields": {
+ "service_account_names": {
+ "maxItemsOne": false
+ }
+ }
+ },
+ "vault_ad_secret_role": {
+ "current": "vault:ad/secretRole:SecretRole",
+ "majorVersion": 5
+ },
+ "vault_alicloud_auth_backend_role": {
+ "current": "vault:alicloud/authBackendRole:AuthBackendRole",
+ "majorVersion": 5,
+ "fields": {
+ "token_bound_cidrs": {
+ "maxItemsOne": false
+ },
+ "token_policies": {
+ "maxItemsOne": false
+ }
+ }
+ },
+ "vault_approle_auth_backend_login": {
+ "current": "vault:appRole/authBackendLogin:AuthBackendLogin",
+ "majorVersion": 5,
+ "fields": {
+ "policies": {
+ "maxItemsOne": false
+ }
+ }
+ },
+ "vault_approle_auth_backend_role": {
+ "current": "vault:appRole/authBackendRole:AuthBackendRole",
+ "majorVersion": 5,
+ "fields": {
+ "secret_id_bound_cidrs": {
+ "maxItemsOne": false
+ },
+ "token_bound_cidrs": {
+ "maxItemsOne": false
+ },
+ "token_policies": {
+ "maxItemsOne": false
+ }
+ }
+ },
+ "vault_approle_auth_backend_role_secret_id": {
+ "current": "vault:appRole/authBackendRoleSecretId:AuthBackendRoleSecretId",
+ "majorVersion": 5,
+ "fields": {
+ "cidr_list": {
+ "maxItemsOne": false
+ }
+ }
+ },
+ "vault_audit": {
+ "current": "vault:index/audit:Audit",
+ "majorVersion": 5
+ },
+ "vault_audit_request_header": {
+ "current": "vault:index/auditRequestHeader:AuditRequestHeader",
+ "majorVersion": 5
+ },
+ "vault_auth_backend": {
+ "current": "vault:index/authBackend:AuthBackend",
+ "majorVersion": 5,
+ "fields": {
+ "tune": {
+ "maxItemsOne": true,
+ "elem": {
+ "fields": {
+ "allowed_response_headers": {
+ "maxItemsOne": false
+ },
+ "audit_non_hmac_request_keys": {
+ "maxItemsOne": false
+ },
+ "audit_non_hmac_response_keys": {
+ "maxItemsOne": false
+ },
+ "passthrough_request_headers": {
+ "maxItemsOne": false
+ }
+ }
+ }
+ }
+ }
+ },
+ "vault_aws_auth_backend_cert": {
+ "current": "vault:aws/authBackendCert:AuthBackendCert",
+ "majorVersion": 5
+ },
+ "vault_aws_auth_backend_client": {
+ "current": "vault:aws/authBackendClient:AuthBackendClient",
+ "majorVersion": 5
+ },
+ "vault_aws_auth_backend_config_identity": {
+ "current": "vault:aws/authBackendConfigIdentity:AuthBackendConfigIdentity",
+ "majorVersion": 5,
+ "fields": {
+ "ec2_metadata": {
+ "maxItemsOne": false
+ },
+ "iam_metadata": {
+ "maxItemsOne": false
+ }
+ }
+ },
+ "vault_aws_auth_backend_identity_whitelist": {
+ "current": "vault:aws/authBackendIdentityWhitelist:AuthBackendIdentityWhitelist",
+ "majorVersion": 5
+ },
+ "vault_aws_auth_backend_login": {
+ "current": "vault:aws/authBackendLogin:AuthBackendLogin",
+ "majorVersion": 5,
+ "fields": {
+ "policies": {
+ "maxItemsOne": false
+ }
+ }
+ },
+ "vault_aws_auth_backend_role": {
+ "current": "vault:aws/authBackendRole:AuthBackendRole",
+ "majorVersion": 5,
+ "fields": {
+ "bound_account_ids": {
+ "maxItemsOne": false
+ },
+ "bound_ami_ids": {
+ "maxItemsOne": false
+ },
+ "bound_ec2_instance_ids": {
+ "maxItemsOne": false
+ },
+ "bound_iam_instance_profile_arns": {
+ "maxItemsOne": false
+ },
+ "bound_iam_principal_arns": {
+ "maxItemsOne": false
+ },
+ "bound_iam_role_arns": {
+ "maxItemsOne": false
+ },
+ "bound_regions": {
+ "maxItemsOne": false
+ },
+ "bound_subnet_ids": {
+ "maxItemsOne": false
+ },
+ "bound_vpc_ids": {
+ "maxItemsOne": false
+ },
+ "token_bound_cidrs": {
+ "maxItemsOne": false
+ },
+ "token_policies": {
+ "maxItemsOne": false
+ }
+ }
+ },
+ "vault_aws_auth_backend_role_tag": {
+ "current": "vault:aws/authBackendRoleTag:AuthBackendRoleTag",
+ "majorVersion": 5,
+ "fields": {
+ "policies": {
+ "maxItemsOne": false
+ }
+ }
+ },
+ "vault_aws_auth_backend_roletag_blacklist": {
+ "current": "vault:aws/authBackendRoletagBlacklist:AuthBackendRoletagBlacklist",
+ "majorVersion": 5
+ },
+ "vault_aws_auth_backend_sts_role": {
+ "current": "vault:aws/authBackendStsRole:AuthBackendStsRole",
+ "majorVersion": 5
+ },
+ "vault_aws_secret_backend": {
+ "current": "vault:aws/secretBackend:SecretBackend",
+ "majorVersion": 5
+ },
+ "vault_aws_secret_backend_role": {
+ "current": "vault:aws/secretBackendRole:SecretBackendRole",
+ "majorVersion": 5,
+ "fields": {
+ "iam_groups": {
+ "maxItemsOne": false
+ },
+ "policy_arns": {
+ "maxItemsOne": false
+ },
+ "role_arns": {
+ "maxItemsOne": false
+ }
+ }
+ },
+ "vault_aws_secret_backend_static_role": {
+ "current": "vault:aws/secretBackendStaticRole:SecretBackendStaticRole",
+ "majorVersion": 5
+ },
+ "vault_azure_auth_backend_config": {
+ "current": "vault:azure/authBackendConfig:AuthBackendConfig",
+ "majorVersion": 5
+ },
+ "vault_azure_auth_backend_role": {
+ "current": "vault:azure/authBackendRole:AuthBackendRole",
+ "majorVersion": 5,
+ "fields": {
+ "bound_group_ids": {
+ "maxItemsOne": false
+ },
+ "bound_locations": {
+ "maxItemsOne": false
+ },
+ "bound_resource_groups": {
+ "maxItemsOne": false
+ },
+ "bound_scale_sets": {
+ "maxItemsOne": false
+ },
+ "bound_service_principal_ids": {
+ "maxItemsOne": false
+ },
+ "bound_subscription_ids": {
+ "maxItemsOne": false
+ },
+ "token_bound_cidrs": {
+ "maxItemsOne": false
+ },
+ "token_policies": {
+ "maxItemsOne": false
+ }
+ }
+ },
+ "vault_azure_secret_backend": {
+ "current": "vault:azure/backend:Backend",
+ "majorVersion": 5
+ },
+ "vault_azure_secret_backend_role": {
+ "current": "vault:azure/backendRole:BackendRole",
+ "majorVersion": 5,
+ "fields": {
+ "azure_groups": {
+ "maxItemsOne": false
+ },
+ "azure_roles": {
+ "maxItemsOne": false
+ }
+ }
+ },
+ "vault_cert_auth_backend_role": {
+ "current": "vault:index/certAuthBackendRole:CertAuthBackendRole",
+ "majorVersion": 5,
+ "fields": {
+ "allowed_common_names": {
+ "maxItemsOne": false
+ },
+ "allowed_dns_sans": {
+ "maxItemsOne": false
+ },
+ "allowed_email_sans": {
+ "maxItemsOne": false
+ },
+ "allowed_names": {
+ "maxItemsOne": false
+ },
+ "allowed_organization_units": {
+ "maxItemsOne": false
+ },
+ "allowed_organizational_units": {
+ "maxItemsOne": false
+ },
+ "allowed_uri_sans": {
+ "maxItemsOne": false
+ },
+ "ocsp_servers_override": {
+ "maxItemsOne": false
+ },
+ "required_extensions": {
+ "maxItemsOne": false
+ },
+ "token_bound_cidrs": {
+ "maxItemsOne": false
+ },
+ "token_policies": {
+ "maxItemsOne": false
+ }
+ }
+ },
+ "vault_consul_secret_backend": {
+ "current": "vault:consul/secretBackend:SecretBackend",
+ "majorVersion": 5
+ },
+ "vault_consul_secret_backend_role": {
+ "current": "vault:consul/secretBackendRole:SecretBackendRole",
+ "majorVersion": 5,
+ "fields": {
+ "consul_policies": {
+ "maxItemsOne": false
+ },
+ "consul_roles": {
+ "maxItemsOne": false
+ },
+ "node_identities": {
+ "maxItemsOne": false
+ },
+ "policies": {
+ "maxItemsOne": false
+ },
+ "service_identities": {
+ "maxItemsOne": false
+ }
+ }
+ },
+ "vault_database_secret_backend_connection": {
+ "current": "vault:database/secretBackendConnection:SecretBackendConnection",
+ "majorVersion": 5,
+ "fields": {
+ "allowed_roles": {
+ "maxItemsOne": false
+ },
+ "cassandra": {
+ "maxItemsOne": true,
+ "elem": {
+ "fields": {
+ "hosts": {
+ "maxItemsOne": false
+ }
+ }
+ }
+ },
+ "couchbase": {
+ "maxItemsOne": true,
+ "elem": {
+ "fields": {
+ "hosts": {
+ "maxItemsOne": false
+ }
+ }
+ }
+ },
+ "elasticsearch": {
+ "maxItemsOne": true
+ },
+ "hana": {
+ "maxItemsOne": true
+ },
+ "influxdb": {
+ "maxItemsOne": true
+ },
+ "mongodb": {
+ "maxItemsOne": true
+ },
+ "mongodbatlas": {
+ "maxItemsOne": true
+ },
+ "mssql": {
+ "maxItemsOne": true
+ },
+ "mysql": {
+ "maxItemsOne": true
+ },
+ "mysql_aurora": {
+ "maxItemsOne": true
+ },
+ "mysql_legacy": {
+ "maxItemsOne": true
+ },
+ "mysql_rds": {
+ "maxItemsOne": true
+ },
+ "oracle": {
+ "maxItemsOne": true
+ },
+ "postgresql": {
+ "maxItemsOne": true
+ },
+ "redis": {
+ "maxItemsOne": true
+ },
+ "redis_elasticache": {
+ "maxItemsOne": true
+ },
+ "redshift": {
+ "maxItemsOne": true
+ },
+ "root_rotation_statements": {
+ "maxItemsOne": false
+ },
+ "snowflake": {
+ "maxItemsOne": true
+ }
+ }
+ },
+ "vault_database_secret_backend_role": {
+ "current": "vault:database/secretBackendRole:SecretBackendRole",
+ "majorVersion": 5,
+ "fields": {
+ "creation_statements": {
+ "maxItemsOne": false
+ },
+ "renew_statements": {
+ "maxItemsOne": false
+ },
+ "revocation_statements": {
+ "maxItemsOne": false
+ },
+ "rollback_statements": {
+ "maxItemsOne": false
+ }
+ }
+ },
+ "vault_database_secret_backend_static_role": {
+ "current": "vault:database/secretBackendStaticRole:SecretBackendStaticRole",
+ "majorVersion": 5,
+ "fields": {
+ "rotation_statements": {
+ "maxItemsOne": false
+ }
+ }
+ },
+ "vault_database_secrets_mount": {
+ "current": "vault:database/secretsMount:SecretsMount",
+ "majorVersion": 5,
+ "fields": {
+ "allowed_managed_keys": {
+ "maxItemsOne": false
+ },
+ "audit_non_hmac_request_keys": {
+ "maxItemsOne": false
+ },
+ "audit_non_hmac_response_keys": {
+ "maxItemsOne": false
+ },
+ "cassandra": {
+ "maxItemsOne": false,
+ "elem": {
+ "fields": {
+ "allowed_roles": {
+ "maxItemsOne": false
+ },
+ "hosts": {
+ "maxItemsOne": false
+ },
+ "root_rotation_statements": {
+ "maxItemsOne": false
+ }
+ }
+ }
+ },
+ "couchbase": {
+ "maxItemsOne": false,
+ "elem": {
+ "fields": {
+ "allowed_roles": {
+ "maxItemsOne": false
+ },
+ "hosts": {
+ "maxItemsOne": false
+ },
+ "root_rotation_statements": {
+ "maxItemsOne": false
+ }
+ }
+ }
+ },
+ "elasticsearch": {
+ "maxItemsOne": false,
+ "elem": {
+ "fields": {
+ "allowed_roles": {
+ "maxItemsOne": false
+ },
+ "root_rotation_statements": {
+ "maxItemsOne": false
+ }
+ }
+ }
+ },
+ "hana": {
+ "maxItemsOne": false,
+ "elem": {
+ "fields": {
+ "allowed_roles": {
+ "maxItemsOne": false
+ },
+ "root_rotation_statements": {
+ "maxItemsOne": false
+ }
+ }
+ }
+ },
+ "influxdb": {
+ "maxItemsOne": false,
+ "elem": {
+ "fields": {
+ "allowed_roles": {
+ "maxItemsOne": false
+ },
+ "root_rotation_statements": {
+ "maxItemsOne": false
+ }
+ }
+ }
+ },
+ "mongodb": {
+ "maxItemsOne": false,
+ "elem": {
+ "fields": {
+ "allowed_roles": {
+ "maxItemsOne": false
+ },
+ "root_rotation_statements": {
+ "maxItemsOne": false
+ }
+ }
+ }
+ },
+ "mongodbatlas": {
+ "maxItemsOne": false,
+ "elem": {
+ "fields": {
+ "allowed_roles": {
+ "maxItemsOne": false
+ },
+ "root_rotation_statements": {
+ "maxItemsOne": false
+ }
+ }
+ }
+ },
+ "mssql": {
+ "maxItemsOne": false,
+ "elem": {
+ "fields": {
+ "allowed_roles": {
+ "maxItemsOne": false
+ },
+ "root_rotation_statements": {
+ "maxItemsOne": false
+ }
+ }
+ }
+ },
+ "mysql": {
+ "maxItemsOne": false,
+ "elem": {
+ "fields": {
+ "allowed_roles": {
+ "maxItemsOne": false
+ },
+ "root_rotation_statements": {
+ "maxItemsOne": false
+ }
+ }
+ }
+ },
+ "mysql_aurora": {
+ "maxItemsOne": false,
+ "elem": {
+ "fields": {
+ "allowed_roles": {
+ "maxItemsOne": false
+ },
+ "root_rotation_statements": {
+ "maxItemsOne": false
+ }
+ }
+ }
+ },
+ "mysql_legacy": {
+ "maxItemsOne": false,
+ "elem": {
+ "fields": {
+ "allowed_roles": {
+ "maxItemsOne": false
+ },
+ "root_rotation_statements": {
+ "maxItemsOne": false
+ }
+ }
+ }
+ },
+ "mysql_rds": {
+ "maxItemsOne": false,
+ "elem": {
+ "fields": {
+ "allowed_roles": {
+ "maxItemsOne": false
+ },
+ "root_rotation_statements": {
+ "maxItemsOne": false
+ }
+ }
+ }
+ },
+ "oracle": {
+ "maxItemsOne": false,
+ "elem": {
+ "fields": {
+ "allowed_roles": {
+ "maxItemsOne": false
+ },
+ "root_rotation_statements": {
+ "maxItemsOne": false
+ }
+ }
+ }
+ },
+ "postgresql": {
+ "maxItemsOne": false,
+ "elem": {
+ "fields": {
+ "allowed_roles": {
+ "maxItemsOne": false
+ },
+ "root_rotation_statements": {
+ "maxItemsOne": false
+ }
+ }
+ }
+ },
+ "redis": {
+ "maxItemsOne": false,
+ "elem": {
+ "fields": {
+ "allowed_roles": {
+ "maxItemsOne": false
+ },
+ "root_rotation_statements": {
+ "maxItemsOne": false
+ }
+ }
+ }
+ },
+ "redis_elasticache": {
+ "maxItemsOne": false,
+ "elem": {
+ "fields": {
+ "allowed_roles": {
+ "maxItemsOne": false
+ },
+ "root_rotation_statements": {
+ "maxItemsOne": false
+ }
+ }
+ }
+ },
+ "redshift": {
+ "maxItemsOne": false,
+ "elem": {
+ "fields": {
+ "allowed_roles": {
+ "maxItemsOne": false
+ },
+ "root_rotation_statements": {
+ "maxItemsOne": false
+ }
+ }
+ }
+ },
+ "snowflake": {
+ "maxItemsOne": false,
+ "elem": {
+ "fields": {
+ "allowed_roles": {
+ "maxItemsOne": false
+ },
+ "root_rotation_statements": {
+ "maxItemsOne": false
+ }
+ }
+ }
+ }
+ }
+ },
+ "vault_egp_policy": {
+ "current": "vault:index/egpPolicy:EgpPolicy",
+ "majorVersion": 5,
+ "fields": {
+ "paths": {
+ "maxItemsOne": false
+ }
+ }
+ },
+ "vault_gcp_auth_backend": {
+ "current": "vault:gcp/authBackend:AuthBackend",
+ "majorVersion": 5,
+ "fields": {
+ "custom_endpoint": {
+ "maxItemsOne": true
+ }
+ }
+ },
+ "vault_gcp_auth_backend_role": {
+ "current": "vault:gcp/authBackendRole:AuthBackendRole",
+ "majorVersion": 5,
+ "fields": {
+ "bound_instance_groups": {
+ "maxItemsOne": false
+ },
+ "bound_labels": {
+ "maxItemsOne": false
+ },
+ "bound_projects": {
+ "maxItemsOne": false
+ },
+ "bound_regions": {
+ "maxItemsOne": false
+ },
+ "bound_service_accounts": {
+ "maxItemsOne": false
+ },
+ "bound_zones": {
+ "maxItemsOne": false
+ },
+ "token_bound_cidrs": {
+ "maxItemsOne": false
+ },
+ "token_policies": {
+ "maxItemsOne": false
+ }
+ }
+ },
+ "vault_gcp_secret_backend": {
+ "current": "vault:gcp/secretBackend:SecretBackend",
+ "majorVersion": 5
+ },
+ "vault_gcp_secret_impersonated_account": {
+ "current": "vault:gcp/secretImpersonatedAccount:SecretImpersonatedAccount",
+ "majorVersion": 5,
+ "fields": {
+ "token_scopes": {
+ "maxItemsOne": false
+ }
+ }
+ },
+ "vault_gcp_secret_roleset": {
+ "current": "vault:gcp/secretRoleset:SecretRoleset",
+ "majorVersion": 5,
+ "fields": {
+ "binding": {
+ "maxItemsOne": false,
+ "elem": {
+ "fields": {
+ "roles": {
+ "maxItemsOne": false
+ }
+ }
+ }
+ },
+ "token_scopes": {
+ "maxItemsOne": false
+ }
+ }
+ },
+ "vault_gcp_secret_static_account": {
+ "current": "vault:gcp/secretStaticAccount:SecretStaticAccount",
+ "majorVersion": 5,
+ "fields": {
+ "binding": {
+ "maxItemsOne": false,
+ "elem": {
+ "fields": {
+ "roles": {
+ "maxItemsOne": false
+ }
+ }
+ }
+ },
+ "token_scopes": {
+ "maxItemsOne": false
+ }
+ }
+ },
+ "vault_generic_endpoint": {
+ "current": "vault:generic/endpoint:Endpoint",
+ "majorVersion": 5,
+ "fields": {
+ "write_fields": {
+ "maxItemsOne": false
+ }
+ }
+ },
+ "vault_generic_secret": {
+ "current": "vault:generic/secret:Secret",
+ "majorVersion": 5
+ },
+ "vault_github_auth_backend": {
+ "current": "vault:github/authBackend:AuthBackend",
+ "majorVersion": 5,
+ "fields": {
+ "token_bound_cidrs": {
+ "maxItemsOne": false
+ },
+ "token_policies": {
+ "maxItemsOne": false
+ },
+ "tune": {
+ "maxItemsOne": true,
+ "elem": {
+ "fields": {
+ "allowed_response_headers": {
+ "maxItemsOne": false
+ },
+ "audit_non_hmac_request_keys": {
+ "maxItemsOne": false
+ },
+ "audit_non_hmac_response_keys": {
+ "maxItemsOne": false
+ },
+ "passthrough_request_headers": {
+ "maxItemsOne": false
+ }
+ }
+ }
+ }
+ }
+ },
+ "vault_github_team": {
+ "current": "vault:github/team:Team",
+ "majorVersion": 5,
+ "fields": {
+ "policies": {
+ "maxItemsOne": false
+ }
+ }
+ },
+ "vault_github_user": {
+ "current": "vault:github/user:User",
+ "majorVersion": 5,
+ "fields": {
+ "policies": {
+ "maxItemsOne": false
+ }
+ }
+ },
+ "vault_identity_entity": {
+ "current": "vault:identity/entity:Entity",
+ "majorVersion": 5,
+ "fields": {
+ "policies": {
+ "maxItemsOne": false
+ }
+ }
+ },
+ "vault_identity_entity_alias": {
+ "current": "vault:identity/entityAlias:EntityAlias",
+ "majorVersion": 5
+ },
+ "vault_identity_entity_policies": {
+ "current": "vault:identity/entityPolicies:EntityPolicies",
+ "majorVersion": 5,
+ "fields": {
+ "policies": {
+ "maxItemsOne": false
+ }
+ }
+ },
+ "vault_identity_group": {
+ "current": "vault:identity/group:Group",
+ "majorVersion": 5,
+ "fields": {
+ "member_entity_ids": {
+ "maxItemsOne": false
+ },
+ "member_group_ids": {
+ "maxItemsOne": false
+ },
+ "policies": {
+ "maxItemsOne": false
+ }
+ }
+ },
+ "vault_identity_group_alias": {
+ "current": "vault:identity/groupAlias:GroupAlias",
+ "majorVersion": 5
+ },
+ "vault_identity_group_member_entity_ids": {
+ "current": "vault:identity/groupMemberEntityIds:GroupMemberEntityIds",
+ "majorVersion": 5,
+ "fields": {
+ "member_entity_ids": {
+ "maxItemsOne": false
+ }
+ }
+ },
+ "vault_identity_group_member_group_ids": {
+ "current": "vault:identity/groupMemberGroupIds:GroupMemberGroupIds",
+ "majorVersion": 5,
+ "fields": {
+ "member_group_ids": {
+ "maxItemsOne": false
+ }
+ }
+ },
+ "vault_identity_group_policies": {
+ "current": "vault:identity/groupPolicies:GroupPolicies",
+ "majorVersion": 5,
+ "fields": {
+ "policies": {
+ "maxItemsOne": false
+ }
+ }
+ },
+ "vault_identity_mfa_duo": {
+ "current": "vault:identity/mfaDuo:MfaDuo",
+ "majorVersion": 5
+ },
+ "vault_identity_mfa_login_enforcement": {
+ "current": "vault:identity/mfaLoginEnforcement:MfaLoginEnforcement",
+ "majorVersion": 5,
+ "fields": {
+ "auth_method_accessors": {
+ "maxItemsOne": false
+ },
+ "auth_method_types": {
+ "maxItemsOne": false
+ },
+ "identity_entity_ids": {
+ "maxItemsOne": false
+ },
+ "identity_group_ids": {
+ "maxItemsOne": false
+ },
+ "mfa_method_ids": {
+ "maxItemsOne": false
+ }
+ }
+ },
+ "vault_identity_mfa_okta": {
+ "current": "vault:identity/mfaOkta:MfaOkta",
+ "majorVersion": 5
+ },
+ "vault_identity_mfa_pingid": {
+ "current": "vault:identity/mfaPingid:MfaPingid",
+ "majorVersion": 5
+ },
+ "vault_identity_mfa_totp": {
+ "current": "vault:identity/mfaTotp:MfaTotp",
+ "majorVersion": 5
+ },
+ "vault_identity_oidc": {
+ "current": "vault:identity/oidc:Oidc",
+ "majorVersion": 5
+ },
+ "vault_identity_oidc_assignment": {
+ "current": "vault:identity/oidcAssignment:OidcAssignment",
+ "majorVersion": 5,
+ "fields": {
+ "entity_ids": {
+ "maxItemsOne": false
+ },
+ "group_ids": {
+ "maxItemsOne": false
+ }
+ }
+ },
+ "vault_identity_oidc_client": {
+ "current": "vault:identity/oidcClient:OidcClient",
+ "majorVersion": 5,
+ "fields": {
+ "assignments": {
+ "maxItemsOne": false
+ },
+ "redirect_uris": {
+ "maxItemsOne": false
+ }
+ }
+ },
+ "vault_identity_oidc_key": {
+ "current": "vault:identity/oidcKey:OidcKey",
+ "majorVersion": 5,
+ "fields": {
+ "allowed_client_ids": {
+ "maxItemsOne": false
+ }
+ }
+ },
+ "vault_identity_oidc_key_allowed_client_id": {
+ "current": "vault:identity/oidcKeyAllowedClientID:OidcKeyAllowedClientID",
+ "majorVersion": 5
+ },
+ "vault_identity_oidc_provider": {
+ "current": "vault:identity/oidcProvider:OidcProvider",
+ "majorVersion": 5,
+ "fields": {
+ "allowed_client_ids": {
+ "maxItemsOne": false
+ },
+ "scopes_supported": {
+ "maxItemsOne": false
+ }
+ }
+ },
+ "vault_identity_oidc_role": {
+ "current": "vault:identity/oidcRole:OidcRole",
+ "majorVersion": 5
+ },
+ "vault_identity_oidc_scope": {
+ "current": "vault:identity/oidcScope:OidcScope",
+ "majorVersion": 5
+ },
+ "vault_jwt_auth_backend": {
+ "current": "vault:jwt/authBackend:AuthBackend",
+ "majorVersion": 5,
+ "fields": {
+ "jwt_supported_algs": {
+ "maxItemsOne": false
+ },
+ "jwt_validation_pubkeys": {
+ "maxItemsOne": false
+ },
+ "oidc_response_types": {
+ "maxItemsOne": false
+ },
+ "tune": {
+ "maxItemsOne": true,
+ "elem": {
+ "fields": {
+ "allowed_response_headers": {
+ "maxItemsOne": false
+ },
+ "audit_non_hmac_request_keys": {
+ "maxItemsOne": false
+ },
+ "audit_non_hmac_response_keys": {
+ "maxItemsOne": false
+ },
+ "passthrough_request_headers": {
+ "maxItemsOne": false
+ }
+ }
+ }
+ }
+ }
+ },
+ "vault_jwt_auth_backend_role": {
+ "current": "vault:jwt/authBackendRole:AuthBackendRole",
+ "majorVersion": 5,
+ "fields": {
+ "allowed_redirect_uris": {
+ "maxItemsOne": false
+ },
+ "bound_audiences": {
+ "maxItemsOne": false
+ },
+ "oidc_scopes": {
+ "maxItemsOne": false
+ },
+ "token_bound_cidrs": {
+ "maxItemsOne": false
+ },
+ "token_policies": {
+ "maxItemsOne": false
+ }
+ }
+ },
+ "vault_kmip_secret_backend": {
+ "current": "vault:kmip/secretBackend:SecretBackend",
+ "majorVersion": 5,
+ "fields": {
+ "listen_addrs": {
+ "maxItemsOne": false
+ },
+ "server_hostnames": {
+ "maxItemsOne": false
+ },
+ "server_ips": {
+ "maxItemsOne": false
+ }
+ }
+ },
+ "vault_kmip_secret_role": {
+ "current": "vault:kmip/secretRole:SecretRole",
+ "majorVersion": 5
+ },
+ "vault_kmip_secret_scope": {
+ "current": "vault:kmip/secretScope:SecretScope",
+ "majorVersion": 5
+ },
+ "vault_kubernetes_auth_backend_config": {
+ "current": "vault:kubernetes/authBackendConfig:AuthBackendConfig",
+ "majorVersion": 5,
+ "fields": {
+ "pem_keys": {
+ "maxItemsOne": false
+ }
+ }
+ },
+ "vault_kubernetes_auth_backend_role": {
+ "current": "vault:kubernetes/authBackendRole:AuthBackendRole",
+ "majorVersion": 5,
+ "fields": {
+ "bound_service_account_names": {
+ "maxItemsOne": false
+ },
+ "bound_service_account_namespaces": {
+ "maxItemsOne": false
+ },
+ "token_bound_cidrs": {
+ "maxItemsOne": false
+ },
+ "token_policies": {
+ "maxItemsOne": false
+ }
+ }
+ },
+ "vault_kubernetes_secret_backend": {
+ "current": "vault:kubernetes/secretBackend:SecretBackend",
+ "majorVersion": 5,
+ "fields": {
+ "allowed_managed_keys": {
+ "maxItemsOne": false
+ },
+ "audit_non_hmac_request_keys": {
+ "maxItemsOne": false
+ },
+ "audit_non_hmac_response_keys": {
+ "maxItemsOne": false
+ }
+ }
+ },
+ "vault_kubernetes_secret_backend_role": {
+ "current": "vault:kubernetes/secretBackendRole:SecretBackendRole",
+ "majorVersion": 5,
+ "fields": {
+ "allowed_kubernetes_namespaces": {
+ "maxItemsOne": false
+ }
+ }
+ },
+ "vault_kv_secret": {
+ "current": "vault:kv/secret:Secret",
+ "majorVersion": 5
+ },
+ "vault_kv_secret_backend_v2": {
+ "current": "vault:kv/secretBackendV2:SecretBackendV2",
+ "majorVersion": 5
+ },
+ "vault_kv_secret_v2": {
+ "current": "vault:kv/secretV2:SecretV2",
+ "majorVersion": 5,
+ "fields": {
+ "custom_metadata": {
+ "maxItemsOne": true
+ }
+ }
+ },
+ "vault_ldap_auth_backend": {
+ "current": "vault:ldap/authBackend:AuthBackend",
+ "majorVersion": 5,
+ "fields": {
+ "token_bound_cidrs": {
+ "maxItemsOne": false
+ },
+ "token_policies": {
+ "maxItemsOne": false
+ }
+ }
+ },
+ "vault_ldap_auth_backend_group": {
+ "current": "vault:ldap/authBackendGroup:AuthBackendGroup",
+ "majorVersion": 5,
+ "fields": {
+ "policies": {
+ "maxItemsOne": false
+ }
+ }
+ },
+ "vault_ldap_auth_backend_user": {
+ "current": "vault:ldap/authBackendUser:AuthBackendUser",
+ "majorVersion": 5,
+ "fields": {
+ "groups": {
+ "maxItemsOne": false
+ },
+ "policies": {
+ "maxItemsOne": false
+ }
+ }
+ },
+ "vault_ldap_secret_backend": {
+ "current": "vault:ldap/secretBackend:SecretBackend",
+ "majorVersion": 5,
+ "fields": {
+ "allowed_managed_keys": {
+ "maxItemsOne": false
+ },
+ "audit_non_hmac_request_keys": {
+ "maxItemsOne": false
+ },
+ "audit_non_hmac_response_keys": {
+ "maxItemsOne": false
+ }
+ }
+ },
+ "vault_ldap_secret_backend_dynamic_role": {
+ "current": "vault:ldap/secretBackendDynamicRole:SecretBackendDynamicRole",
+ "majorVersion": 5
+ },
+ "vault_ldap_secret_backend_library_set": {
+ "current": "vault:ldap/secretBackendLibrarySet:SecretBackendLibrarySet",
+ "majorVersion": 5,
+ "fields": {
+ "service_account_names": {
+ "maxItemsOne": false
+ }
+ }
+ },
+ "vault_ldap_secret_backend_static_role": {
+ "current": "vault:ldap/secretBackendStaticRole:SecretBackendStaticRole",
+ "majorVersion": 5
+ },
+ "vault_managed_keys": {
+ "current": "vault:managed/keys:Keys",
+ "majorVersion": 5,
+ "fields": {
+ "aws": {
+ "maxItemsOne": false
+ },
+ "azure": {
+ "maxItemsOne": false
+ },
+ "pkcs": {
+ "maxItemsOne": false
+ }
+ }
+ },
+ "vault_mfa_duo": {
+ "current": "vault:index/mfaDuo:MfaDuo",
+ "majorVersion": 5
+ },
+ "vault_mfa_okta": {
+ "current": "vault:index/mfaOkta:MfaOkta",
+ "majorVersion": 5
+ },
+ "vault_mfa_pingid": {
+ "current": "vault:index/mfaPingid:MfaPingid",
+ "majorVersion": 5
+ },
+ "vault_mfa_totp": {
+ "current": "vault:index/mfaTotp:MfaTotp",
+ "majorVersion": 5
+ },
+ "vault_mongodbatlas_secret_backend": {
+ "current": "vault:mongodbatlas/secretBackend:SecretBackend",
+ "majorVersion": 5
+ },
+ "vault_mongodbatlas_secret_role": {
+ "current": "vault:mongodbatlas/secretRole:SecretRole",
+ "majorVersion": 5,
+ "fields": {
+ "cidr_blocks": {
+ "maxItemsOne": false
+ },
+ "ip_addresses": {
+ "maxItemsOne": false
+ },
+ "project_roles": {
+ "maxItemsOne": false
+ },
+ "roles": {
+ "maxItemsOne": false
+ }
+ }
+ },
+ "vault_mount": {
+ "current": "vault:index/mount:Mount",
+ "majorVersion": 5,
+ "fields": {
+ "allowed_managed_keys": {
+ "maxItemsOne": false
+ },
+ "audit_non_hmac_request_keys": {
+ "maxItemsOne": false
+ },
+ "audit_non_hmac_response_keys": {
+ "maxItemsOne": false
+ }
+ }
+ },
+ "vault_namespace": {
+ "current": "vault:index/namespace:Namespace",
+ "majorVersion": 5
+ },
+ "vault_nomad_secret_backend": {
+ "current": "vault:index/nomadSecretBackend:NomadSecretBackend",
+ "majorVersion": 5
+ },
+ "vault_nomad_secret_role": {
+ "current": "vault:index/nomadSecretRole:NomadSecretRole",
+ "majorVersion": 5,
+ "fields": {
+ "policies": {
+ "maxItemsOne": false
+ }
+ }
+ },
+ "vault_okta_auth_backend": {
+ "current": "vault:okta/authBackend:AuthBackend",
+ "majorVersion": 5,
+ "fields": {
+ "group": {
+ "maxItemsOne": false,
+ "elem": {
+ "fields": {
+ "policies": {
+ "maxItemsOne": false
+ }
+ }
+ }
+ },
+ "user": {
+ "maxItemsOne": false,
+ "elem": {
+ "fields": {
+ "groups": {
+ "maxItemsOne": false
+ },
+ "policies": {
+ "maxItemsOne": false
+ }
+ }
+ }
+ }
+ }
+ },
+ "vault_okta_auth_backend_group": {
+ "current": "vault:okta/authBackendGroup:AuthBackendGroup",
+ "majorVersion": 5,
+ "fields": {
+ "policies": {
+ "maxItemsOne": false
+ }
+ }
+ },
+ "vault_okta_auth_backend_user": {
+ "current": "vault:okta/authBackendUser:AuthBackendUser",
+ "majorVersion": 5,
+ "fields": {
+ "groups": {
+ "maxItemsOne": false
+ },
+ "policies": {
+ "maxItemsOne": false
+ }
+ }
+ },
+ "vault_password_policy": {
+ "current": "vault:index/passwordPolicy:PasswordPolicy",
+ "majorVersion": 5
+ },
+ "vault_pki_secret_backend_cert": {
+ "current": "vault:pkiSecret/secretBackendCert:SecretBackendCert",
+ "majorVersion": 5,
+ "fields": {
+ "alt_names": {
+ "maxItemsOne": false
+ },
+ "ip_sans": {
+ "maxItemsOne": false
+ },
+ "other_sans": {
+ "maxItemsOne": false
+ },
+ "uri_sans": {
+ "maxItemsOne": false
+ },
+ "user_ids": {
+ "maxItemsOne": false
+ }
+ }
+ },
+ "vault_pki_secret_backend_config_ca": {
+ "current": "vault:pkiSecret/secretBackendConfigCa:SecretBackendConfigCa",
+ "majorVersion": 5
+ },
+ "vault_pki_secret_backend_config_issuers": {
+ "current": "vault:pkiSecret/secretBackendConfigIssuers:SecretBackendConfigIssuers",
+ "majorVersion": 5
+ },
+ "vault_pki_secret_backend_config_urls": {
+ "current": "vault:pkiSecret/secretBackendConfigUrls:SecretBackendConfigUrls",
+ "majorVersion": 5,
+ "fields": {
+ "crl_distribution_points": {
+ "maxItemsOne": false
+ },
+ "issuing_certificates": {
+ "maxItemsOne": false
+ },
+ "ocsp_servers": {
+ "maxItemsOne": false
+ }
+ }
+ },
+ "vault_pki_secret_backend_crl_config": {
+ "current": "vault:pkiSecret/secretBackendCrlConfig:SecretBackendCrlConfig",
+ "majorVersion": 5
+ },
+ "vault_pki_secret_backend_intermediate_cert_request": {
+ "current": "vault:pkiSecret/secretBackendIntermediateCertRequest:SecretBackendIntermediateCertRequest",
+ "majorVersion": 5,
+ "fields": {
+ "alt_names": {
+ "maxItemsOne": false
+ },
+ "ip_sans": {
+ "maxItemsOne": false
+ },
+ "other_sans": {
+ "maxItemsOne": false
+ },
+ "uri_sans": {
+ "maxItemsOne": false
+ }
+ }
+ },
+ "vault_pki_secret_backend_intermediate_set_signed": {
+ "current": "vault:pkiSecret/secretBackendIntermediateSetSigned:SecretBackendIntermediateSetSigned",
+ "majorVersion": 5,
+ "fields": {
+ "imported_issuers": {
+ "maxItemsOne": false
+ },
+ "imported_keys": {
+ "maxItemsOne": false
+ }
+ }
+ },
+ "vault_pki_secret_backend_issuer": {
+ "current": "vault:pkiSecret/secretBackendIssuer:SecretBackendIssuer",
+ "majorVersion": 5,
+ "fields": {
+ "crl_distribution_points": {
+ "maxItemsOne": false
+ },
+ "issuing_certificates": {
+ "maxItemsOne": false
+ },
+ "manual_chain": {
+ "maxItemsOne": false
+ },
+ "ocsp_servers": {
+ "maxItemsOne": false
+ }
+ }
+ },
+ "vault_pki_secret_backend_key": {
+ "current": "vault:pkiSecret/secretBackendKey:SecretBackendKey",
+ "majorVersion": 5
+ },
+ "vault_pki_secret_backend_role": {
+ "current": "vault:pkiSecret/secretBackendRole:SecretBackendRole",
+ "majorVersion": 5,
+ "fields": {
+ "allowed_domains": {
+ "maxItemsOne": false
+ },
+ "allowed_other_sans": {
+ "maxItemsOne": false
+ },
+ "allowed_serial_numbers": {
+ "maxItemsOne": false
+ },
+ "allowed_uri_sans": {
+ "maxItemsOne": false
+ },
+ "allowed_user_ids": {
+ "maxItemsOne": false
+ },
+ "country": {
+ "maxItemsOne": false
+ },
+ "ext_key_usage": {
+ "maxItemsOne": false
+ },
+ "key_usage": {
+ "maxItemsOne": false
+ },
+ "locality": {
+ "maxItemsOne": false
+ },
+ "organization": {
+ "maxItemsOne": false
+ },
+ "ou": {
+ "maxItemsOne": false
+ },
+ "policy_identifier": {
+ "maxItemsOne": false
+ },
+ "policy_identifiers": {
+ "maxItemsOne": false
+ },
+ "postal_code": {
+ "maxItemsOne": false
+ },
+ "province": {
+ "maxItemsOne": false
+ },
+ "street_address": {
+ "maxItemsOne": false
+ }
+ }
+ },
+ "vault_pki_secret_backend_root_cert": {
+ "current": "vault:pkiSecret/secretBackendRootCert:SecretBackendRootCert",
+ "majorVersion": 5,
+ "fields": {
+ "alt_names": {
+ "maxItemsOne": false
+ },
+ "ip_sans": {
+ "maxItemsOne": false
+ },
+ "other_sans": {
+ "maxItemsOne": false
+ },
+ "permitted_dns_domains": {
+ "maxItemsOne": false
+ },
+ "uri_sans": {
+ "maxItemsOne": false
+ }
+ }
+ },
+ "vault_pki_secret_backend_root_sign_intermediate": {
+ "current": "vault:pkiSecret/secretBackendRootSignIntermediate:SecretBackendRootSignIntermediate",
+ "majorVersion": 5,
+ "fields": {
+ "alt_names": {
+ "maxItemsOne": false
+ },
+ "ca_chain": {
+ "maxItemsOne": false
+ },
+ "ip_sans": {
+ "maxItemsOne": false
+ },
+ "other_sans": {
+ "maxItemsOne": false
+ },
+ "permitted_dns_domains": {
+ "maxItemsOne": false
+ },
+ "uri_sans": {
+ "maxItemsOne": false
+ }
+ }
+ },
+ "vault_pki_secret_backend_sign": {
+ "current": "vault:pkiSecret/secretBackendSign:SecretBackendSign",
+ "majorVersion": 5,
+ "fields": {
+ "alt_names": {
+ "maxItemsOne": false
+ },
+ "ca_chain": {
+ "maxItemsOne": false
+ },
+ "ip_sans": {
+ "maxItemsOne": false
+ },
+ "other_sans": {
+ "maxItemsOne": false
+ },
+ "uri_sans": {
+ "maxItemsOne": false
+ }
+ }
+ },
+ "vault_policy": {
+ "current": "vault:index/policy:Policy",
+ "majorVersion": 5
+ },
+ "vault_quota_lease_count": {
+ "current": "vault:index/quotaLeaseCount:QuotaLeaseCount",
+ "majorVersion": 5
+ },
+ "vault_quota_rate_limit": {
+ "current": "vault:index/quotaRateLimit:QuotaRateLimit",
+ "majorVersion": 5
+ },
+ "vault_rabbitmq_secret_backend": {
+ "current": "vault:rabbitMq/secretBackend:SecretBackend",
+ "majorVersion": 5
+ },
+ "vault_rabbitmq_secret_backend_role": {
+ "current": "vault:rabbitMq/secretBackendRole:SecretBackendRole",
+ "majorVersion": 5,
+ "fields": {
+ "vhost": {
+ "maxItemsOne": false
+ },
+ "vhost_topic": {
+ "maxItemsOne": false,
+ "elem": {
+ "fields": {
+ "vhost": {
+ "maxItemsOne": false
+ }
+ }
+ }
+ }
+ }
+ },
+ "vault_raft_autopilot": {
+ "current": "vault:index/raftAutopilot:RaftAutopilot",
+ "majorVersion": 5
+ },
+ "vault_raft_snapshot_agent_config": {
+ "current": "vault:index/raftSnapshotAgentConfig:RaftSnapshotAgentConfig",
+ "majorVersion": 5
+ },
+ "vault_rgp_policy": {
+ "current": "vault:index/rgpPolicy:RgpPolicy",
+ "majorVersion": 5
+ },
+ "vault_saml_auth_backend": {
+ "current": "vault:saml/authBackend:AuthBackend",
+ "majorVersion": 5,
+ "fields": {
+ "acs_urls": {
+ "maxItemsOne": false
+ }
+ }
+ },
+ "vault_saml_auth_backend_role": {
+ "current": "vault:saml/authBackendRole:AuthBackendRole",
+ "majorVersion": 5,
+ "fields": {
+ "bound_subjects": {
+ "maxItemsOne": false
+ },
+ "token_bound_cidrs": {
+ "maxItemsOne": false
+ },
+ "token_policies": {
+ "maxItemsOne": false
+ }
+ }
+ },
+ "vault_ssh_secret_backend_ca": {
+ "current": "vault:ssh/secretBackendCa:SecretBackendCa",
+ "majorVersion": 5
+ },
+ "vault_ssh_secret_backend_role": {
+ "current": "vault:ssh/secretBackendRole:SecretBackendRole",
+ "majorVersion": 5,
+ "fields": {
+ "allowed_user_key_config": {
+ "maxItemsOne": false,
+ "elem": {
+ "fields": {
+ "lengths": {
+ "maxItemsOne": false
+ }
+ }
+ }
+ }
+ }
+ },
+ "vault_terraform_cloud_secret_backend": {
+ "current": "vault:terraformcloud/secretBackend:SecretBackend",
+ "majorVersion": 5
+ },
+ "vault_terraform_cloud_secret_creds": {
+ "current": "vault:terraformcloud/secretCreds:SecretCreds",
+ "majorVersion": 5
+ },
+ "vault_terraform_cloud_secret_role": {
+ "current": "vault:terraformcloud/secretRole:SecretRole",
+ "majorVersion": 5
+ },
+ "vault_token": {
+ "current": "vault:index/token:Token",
+ "majorVersion": 5,
+ "fields": {
+ "policies": {
+ "maxItemsOne": false
+ }
+ }
+ },
+ "vault_token_auth_backend_role": {
+ "current": "vault:tokenauth/authBackendRole:AuthBackendRole",
+ "majorVersion": 5,
+ "fields": {
+ "allowed_entity_aliases": {
+ "maxItemsOne": false
+ },
+ "allowed_policies": {
+ "maxItemsOne": false
+ },
+ "allowed_policies_glob": {
+ "maxItemsOne": false
+ },
+ "disallowed_policies": {
+ "maxItemsOne": false
+ },
+ "disallowed_policies_glob": {
+ "maxItemsOne": false
+ },
+ "token_bound_cidrs": {
+ "maxItemsOne": false
+ },
+ "token_policies": {
+ "maxItemsOne": false
+ }
+ }
+ },
+ "vault_transform_alphabet": {
+ "current": "vault:transform/alphabet:Alphabet",
+ "majorVersion": 5
+ },
+ "vault_transform_role": {
+ "current": "vault:transform/role:Role",
+ "majorVersion": 5,
+ "fields": {
+ "transformations": {
+ "maxItemsOne": false
+ }
+ }
+ },
+ "vault_transform_template": {
+ "current": "vault:transform/template:Template",
+ "majorVersion": 5
+ },
+ "vault_transform_transformation": {
+ "current": "vault:transform/transformation:Transformation",
+ "majorVersion": 5,
+ "fields": {
+ "allowed_roles": {
+ "maxItemsOne": false
+ },
+ "templates": {
+ "maxItemsOne": false
+ }
+ }
+ },
+ "vault_transit_secret_backend_key": {
+ "current": "vault:transit/secretBackendKey:SecretBackendKey",
+ "majorVersion": 5,
+ "fields": {
+ "keys": {
+ "maxItemsOne": false
+ }
+ }
+ },
+ "vault_transit_secret_cache_config": {
+ "current": "vault:transit/secretCacheConfig:SecretCacheConfig",
+ "majorVersion": 5
+ }
+ },
+ "datasources": {
+ "vault_ad_access_credentials": {
+ "current": "vault:ad/getAccessCredentials:getAccessCredentials",
+ "majorVersion": 5
+ },
+ "vault_approle_auth_backend_role_id": {
+ "current": "vault:appRole/getAuthBackendRoleId:getAuthBackendRoleId",
+ "majorVersion": 5
+ },
+ "vault_auth_backend": {
+ "current": "vault:index/getAuthBackend:getAuthBackend",
+ "majorVersion": 5
+ },
+ "vault_auth_backends": {
+ "current": "vault:index/getAuthBackends:getAuthBackends",
+ "majorVersion": 5,
+ "fields": {
+ "accessors": {
+ "maxItemsOne": false
+ },
+ "paths": {
+ "maxItemsOne": false
+ }
+ }
+ },
+ "vault_aws_access_credentials": {
+ "current": "vault:aws/getAccessCredentials:getAccessCredentials",
+ "majorVersion": 5
+ },
+ "vault_aws_static_access_credentials": {
+ "current": "vault:aws/getStaticAccessCredentials:getStaticAccessCredentials",
+ "majorVersion": 5
+ },
+ "vault_azure_access_credentials": {
+ "current": "vault:azure/getAccessCredentials:getAccessCredentials",
+ "majorVersion": 5
+ },
+ "vault_gcp_auth_backend_role": {
+ "current": "vault:gcp/getAuthBackendRole:getAuthBackendRole",
+ "majorVersion": 5,
+ "fields": {
+ "bound_instance_groups": {
+ "maxItemsOne": false
+ },
+ "bound_labels": {
+ "maxItemsOne": false
+ },
+ "bound_projects": {
+ "maxItemsOne": false
+ },
+ "bound_regions": {
+ "maxItemsOne": false
+ },
+ "bound_service_accounts": {
+ "maxItemsOne": false
+ },
+ "bound_zones": {
+ "maxItemsOne": false
+ },
+ "token_bound_cidrs": {
+ "maxItemsOne": false
+ },
+ "token_policies": {
+ "maxItemsOne": false
+ }
+ }
+ },
+ "vault_generic_secret": {
+ "current": "vault:generic/getSecret:getSecret",
+ "majorVersion": 5
+ },
+ "vault_identity_entity": {
+ "current": "vault:identity/getEntity:getEntity",
+ "majorVersion": 5,
+ "fields": {
+ "aliases": {
+ "maxItemsOne": false,
+ "elem": {
+ "fields": {
+ "merged_from_canonical_ids": {
+ "maxItemsOne": false
+ }
+ }
+ }
+ },
+ "direct_group_ids": {
+ "maxItemsOne": false
+ },
+ "group_ids": {
+ "maxItemsOne": false
+ },
+ "inherited_group_ids": {
+ "maxItemsOne": false
+ },
+ "merged_entity_ids": {
+ "maxItemsOne": false
+ },
+ "policies": {
+ "maxItemsOne": false
+ }
+ }
+ },
+ "vault_identity_group": {
+ "current": "vault:identity/getGroup:getGroup",
+ "majorVersion": 5,
+ "fields": {
+ "alias_merged_from_canonical_ids": {
+ "maxItemsOne": false
+ },
+ "member_entity_ids": {
+ "maxItemsOne": false
+ },
+ "member_group_ids": {
+ "maxItemsOne": false
+ },
+ "parent_group_ids": {
+ "maxItemsOne": false
+ },
+ "policies": {
+ "maxItemsOne": false
+ }
+ }
+ },
+ "vault_identity_oidc_client_creds": {
+ "current": "vault:identity/getOidcClientCreds:getOidcClientCreds",
+ "majorVersion": 5
+ },
+ "vault_identity_oidc_openid_config": {
+ "current": "vault:identity/getOidcOpenidConfig:getOidcOpenidConfig",
+ "majorVersion": 5,
+ "fields": {
+ "grant_types_supported": {
+ "maxItemsOne": false
+ },
+ "id_token_signing_alg_values_supported": {
+ "maxItemsOne": false
+ },
+ "response_types_supported": {
+ "maxItemsOne": false
+ },
+ "scopes_supported": {
+ "maxItemsOne": false
+ },
+ "subject_types_supported": {
+ "maxItemsOne": false
+ },
+ "token_endpoint_auth_methods_supported": {
+ "maxItemsOne": false
+ }
+ }
+ },
+ "vault_identity_oidc_public_keys": {
+ "current": "vault:identity/getOidcPublicKeys:getOidcPublicKeys",
+ "majorVersion": 5,
+ "fields": {
+ "keys": {
+ "maxItemsOne": false
+ }
+ }
+ },
+ "vault_kubernetes_auth_backend_config": {
+ "current": "vault:kubernetes/getAuthBackendConfig:getAuthBackendConfig",
+ "majorVersion": 5,
+ "fields": {
+ "pem_keys": {
+ "maxItemsOne": false
+ }
+ }
+ },
+ "vault_kubernetes_auth_backend_role": {
+ "current": "vault:kubernetes/getAuthBackendRole:getAuthBackendRole",
+ "majorVersion": 5,
+ "fields": {
+ "bound_service_account_names": {
+ "maxItemsOne": false
+ },
+ "bound_service_account_namespaces": {
+ "maxItemsOne": false
+ },
+ "token_bound_cidrs": {
+ "maxItemsOne": false
+ },
+ "token_policies": {
+ "maxItemsOne": false
+ }
+ }
+ },
+ "vault_kubernetes_service_account_token": {
+ "current": "vault:kubernetes/getServiceAccountToken:getServiceAccountToken",
+ "majorVersion": 5
+ },
+ "vault_kv_secret": {
+ "current": "vault:kv/getSecret:getSecret",
+ "majorVersion": 5
+ },
+ "vault_kv_secret_subkeys_v2": {
+ "current": "vault:kv/getSecretSubkeysV2:getSecretSubkeysV2",
+ "majorVersion": 5
+ },
+ "vault_kv_secret_v2": {
+ "current": "vault:kv/getSecretV2:getSecretV2",
+ "majorVersion": 5
+ },
+ "vault_kv_secrets_list": {
+ "current": "vault:kv/getSecretsList:getSecretsList",
+ "majorVersion": 5,
+ "fields": {
+ "names": {
+ "maxItemsOne": false
+ }
+ }
+ },
+ "vault_kv_secrets_list_v2": {
+ "current": "vault:kv/getSecretsListV2:getSecretsListV2",
+ "majorVersion": 5,
+ "fields": {
+ "names": {
+ "maxItemsOne": false
+ }
+ }
+ },
+ "vault_ldap_dynamic_credentials": {
+ "current": "vault:ldap/getDynamicCredentials:getDynamicCredentials",
+ "majorVersion": 5,
+ "fields": {
+ "distinguished_names": {
+ "maxItemsOne": false
+ }
+ }
+ },
+ "vault_ldap_static_credentials": {
+ "current": "vault:ldap/getStaticCredentials:getStaticCredentials",
+ "majorVersion": 5
+ },
+ "vault_nomad_access_token": {
+ "current": "vault:index/getNomadAccessToken:getNomadAccessToken",
+ "majorVersion": 5
+ },
+ "vault_pki_secret_backend_issuer": {
+ "current": "vault:pkiSecret/getBackendIssuer:getBackendIssuer",
+ "majorVersion": 5,
+ "fields": {
+ "ca_chain": {
+ "maxItemsOne": false
+ },
+ "manual_chain": {
+ "maxItemsOne": false
+ }
+ }
+ },
+ "vault_pki_secret_backend_issuers": {
+ "current": "vault:pkiSecret/getBackendIssuers:getBackendIssuers",
+ "majorVersion": 5,
+ "fields": {
+ "keys": {
+ "maxItemsOne": false
+ }
+ }
+ },
+ "vault_pki_secret_backend_key": {
+ "current": "vault:pkiSecret/getBackendKey:getBackendKey",
+ "majorVersion": 5
+ },
+ "vault_pki_secret_backend_keys": {
+ "current": "vault:pkiSecret/getBackendKeys:getBackendKeys",
+ "majorVersion": 5,
+ "fields": {
+ "keys": {
+ "maxItemsOne": false
+ }
+ }
+ },
+ "vault_policy_document": {
+ "current": "vault:index/getPolicyDocument:getPolicyDocument",
+ "majorVersion": 5,
+ "fields": {
+ "rule": {
+ "maxItemsOne": false,
+ "elem": {
+ "fields": {
+ "allowed_parameter": {
+ "maxItemsOne": false,
+ "elem": {
+ "fields": {
+ "value": {
+ "maxItemsOne": false
+ }
+ }
+ }
+ },
+ "capabilities": {
+ "maxItemsOne": false
+ },
+ "denied_parameter": {
+ "maxItemsOne": false,
+ "elem": {
+ "fields": {
+ "value": {
+ "maxItemsOne": false
+ }
+ }
+ }
+ },
+ "required_parameters": {
+ "maxItemsOne": false
+ }
+ }
+ }
+ }
+ }
+ },
+ "vault_raft_autopilot_state": {
+ "current": "vault:index/getRaftAutopilotState:getRaftAutopilotState",
+ "majorVersion": 5,
+ "fields": {
+ "voters": {
+ "maxItemsOne": false
+ }
+ }
+ },
+ "vault_transform_decode": {
+ "current": "vault:transform/getDecode:getDecode",
+ "majorVersion": 5,
+ "fields": {
+ "batch_input": {
+ "maxItemsOne": false
+ },
+ "batch_results": {
+ "maxItemsOne": false
+ }
+ }
+ },
+ "vault_transform_encode": {
+ "current": "vault:transform/getEncode:getEncode",
+ "majorVersion": 5,
+ "fields": {
+ "batch_input": {
+ "maxItemsOne": false
+ },
+ "batch_results": {
+ "maxItemsOne": false
+ }
+ }
+ },
+ "vault_transit_decrypt": {
+ "current": "vault:transit/getDecrypt:getDecrypt",
+ "majorVersion": 5
+ },
+ "vault_transit_encrypt": {
+ "current": "vault:transit/getEncrypt:getEncrypt",
+ "majorVersion": 5
+ }
+ }
+ },
+ "renames": {
+ "resources": {
+ "vault:ad/secretBackend:SecretBackend": "vault_ad_secret_backend",
+ "vault:ad/secretLibrary:SecretLibrary": "vault_ad_secret_library",
+ "vault:ad/secretRole:SecretRole": "vault_ad_secret_role",
+ "vault:alicloud/authBackendRole:AuthBackendRole": "vault_alicloud_auth_backend_role",
+ "vault:appRole/authBackendLogin:AuthBackendLogin": "vault_approle_auth_backend_login",
+ "vault:appRole/authBackendRole:AuthBackendRole": "vault_approle_auth_backend_role",
+ "vault:appRole/authBackendRoleSecretId:AuthBackendRoleSecretId": "vault_approle_auth_backend_role_secret_id",
+ "vault:aws/authBackendCert:AuthBackendCert": "vault_aws_auth_backend_cert",
+ "vault:aws/authBackendClient:AuthBackendClient": "vault_aws_auth_backend_client",
+ "vault:aws/authBackendConfigIdentity:AuthBackendConfigIdentity": "vault_aws_auth_backend_config_identity",
+ "vault:aws/authBackendIdentityWhitelist:AuthBackendIdentityWhitelist": "vault_aws_auth_backend_identity_whitelist",
+ "vault:aws/authBackendLogin:AuthBackendLogin": "vault_aws_auth_backend_login",
+ "vault:aws/authBackendRole:AuthBackendRole": "vault_aws_auth_backend_role",
+ "vault:aws/authBackendRoleTag:AuthBackendRoleTag": "vault_aws_auth_backend_role_tag",
+ "vault:aws/authBackendRoletagBlacklist:AuthBackendRoletagBlacklist": "vault_aws_auth_backend_roletag_blacklist",
+ "vault:aws/authBackendStsRole:AuthBackendStsRole": "vault_aws_auth_backend_sts_role",
+ "vault:aws/secretBackend:SecretBackend": "vault_aws_secret_backend",
+ "vault:aws/secretBackendRole:SecretBackendRole": "vault_aws_secret_backend_role",
+ "vault:aws/secretBackendStaticRole:SecretBackendStaticRole": "vault_aws_secret_backend_static_role",
+ "vault:azure/authBackendConfig:AuthBackendConfig": "vault_azure_auth_backend_config",
+ "vault:azure/authBackendRole:AuthBackendRole": "vault_azure_auth_backend_role",
+ "vault:azure/backend:Backend": "vault_azure_secret_backend",
+ "vault:azure/backendRole:BackendRole": "vault_azure_secret_backend_role",
+ "vault:consul/secretBackend:SecretBackend": "vault_consul_secret_backend",
+ "vault:consul/secretBackendRole:SecretBackendRole": "vault_consul_secret_backend_role",
+ "vault:database/secretBackendConnection:SecretBackendConnection": "vault_database_secret_backend_connection",
+ "vault:database/secretBackendRole:SecretBackendRole": "vault_database_secret_backend_role",
+ "vault:database/secretBackendStaticRole:SecretBackendStaticRole": "vault_database_secret_backend_static_role",
+ "vault:database/secretsMount:SecretsMount": "vault_database_secrets_mount",
+ "vault:gcp/authBackend:AuthBackend": "vault_gcp_auth_backend",
+ "vault:gcp/authBackendRole:AuthBackendRole": "vault_gcp_auth_backend_role",
+ "vault:gcp/secretBackend:SecretBackend": "vault_gcp_secret_backend",
+ "vault:gcp/secretImpersonatedAccount:SecretImpersonatedAccount": "vault_gcp_secret_impersonated_account",
+ "vault:gcp/secretRoleset:SecretRoleset": "vault_gcp_secret_roleset",
+ "vault:gcp/secretStaticAccount:SecretStaticAccount": "vault_gcp_secret_static_account",
+ "vault:generic/endpoint:Endpoint": "vault_generic_endpoint",
+ "vault:generic/secret:Secret": "vault_generic_secret",
+ "vault:github/authBackend:AuthBackend": "vault_github_auth_backend",
+ "vault:github/team:Team": "vault_github_team",
+ "vault:github/user:User": "vault_github_user",
+ "vault:identity/entity:Entity": "vault_identity_entity",
+ "vault:identity/entityAlias:EntityAlias": "vault_identity_entity_alias",
+ "vault:identity/entityPolicies:EntityPolicies": "vault_identity_entity_policies",
+ "vault:identity/group:Group": "vault_identity_group",
+ "vault:identity/groupAlias:GroupAlias": "vault_identity_group_alias",
+ "vault:identity/groupMemberEntityIds:GroupMemberEntityIds": "vault_identity_group_member_entity_ids",
+ "vault:identity/groupMemberGroupIds:GroupMemberGroupIds": "vault_identity_group_member_group_ids",
+ "vault:identity/groupPolicies:GroupPolicies": "vault_identity_group_policies",
+ "vault:identity/mfaDuo:MfaDuo": "vault_identity_mfa_duo",
+ "vault:identity/mfaLoginEnforcement:MfaLoginEnforcement": "vault_identity_mfa_login_enforcement",
+ "vault:identity/mfaOkta:MfaOkta": "vault_identity_mfa_okta",
+ "vault:identity/mfaPingid:MfaPingid": "vault_identity_mfa_pingid",
+ "vault:identity/mfaTotp:MfaTotp": "vault_identity_mfa_totp",
+ "vault:identity/oidc:Oidc": "vault_identity_oidc",
+ "vault:identity/oidcAssignment:OidcAssignment": "vault_identity_oidc_assignment",
+ "vault:identity/oidcClient:OidcClient": "vault_identity_oidc_client",
+ "vault:identity/oidcKey:OidcKey": "vault_identity_oidc_key",
+ "vault:identity/oidcKeyAllowedClientID:OidcKeyAllowedClientID": "vault_identity_oidc_key_allowed_client_id",
+ "vault:identity/oidcProvider:OidcProvider": "vault_identity_oidc_provider",
+ "vault:identity/oidcRole:OidcRole": "vault_identity_oidc_role",
+ "vault:identity/oidcScope:OidcScope": "vault_identity_oidc_scope",
+ "vault:index/audit:Audit": "vault_audit",
+ "vault:index/auditRequestHeader:AuditRequestHeader": "vault_audit_request_header",
+ "vault:index/authBackend:AuthBackend": "vault_auth_backend",
+ "vault:index/certAuthBackendRole:CertAuthBackendRole": "vault_cert_auth_backend_role",
+ "vault:index/egpPolicy:EgpPolicy": "vault_egp_policy",
+ "vault:index/mfaDuo:MfaDuo": "vault_mfa_duo",
+ "vault:index/mfaOkta:MfaOkta": "vault_mfa_okta",
+ "vault:index/mfaPingid:MfaPingid": "vault_mfa_pingid",
+ "vault:index/mfaTotp:MfaTotp": "vault_mfa_totp",
+ "vault:index/mount:Mount": "vault_mount",
+ "vault:index/namespace:Namespace": "vault_namespace",
+ "vault:index/nomadSecretBackend:NomadSecretBackend": "vault_nomad_secret_backend",
+ "vault:index/nomadSecretRole:NomadSecretRole": "vault_nomad_secret_role",
+ "vault:index/passwordPolicy:PasswordPolicy": "vault_password_policy",
+ "vault:index/policy:Policy": "vault_policy",
+ "vault:index/quotaLeaseCount:QuotaLeaseCount": "vault_quota_lease_count",
+ "vault:index/quotaRateLimit:QuotaRateLimit": "vault_quota_rate_limit",
+ "vault:index/raftAutopilot:RaftAutopilot": "vault_raft_autopilot",
+ "vault:index/raftSnapshotAgentConfig:RaftSnapshotAgentConfig": "vault_raft_snapshot_agent_config",
+ "vault:index/rgpPolicy:RgpPolicy": "vault_rgp_policy",
+ "vault:index/token:Token": "vault_token",
+ "vault:jwt/authBackend:AuthBackend": "vault_jwt_auth_backend",
+ "vault:jwt/authBackendRole:AuthBackendRole": "vault_jwt_auth_backend_role",
+ "vault:kmip/secretBackend:SecretBackend": "vault_kmip_secret_backend",
+ "vault:kmip/secretRole:SecretRole": "vault_kmip_secret_role",
+ "vault:kmip/secretScope:SecretScope": "vault_kmip_secret_scope",
+ "vault:kubernetes/authBackendConfig:AuthBackendConfig": "vault_kubernetes_auth_backend_config",
+ "vault:kubernetes/authBackendRole:AuthBackendRole": "vault_kubernetes_auth_backend_role",
+ "vault:kubernetes/secretBackend:SecretBackend": "vault_kubernetes_secret_backend",
+ "vault:kubernetes/secretBackendRole:SecretBackendRole": "vault_kubernetes_secret_backend_role",
+ "vault:kv/secret:Secret": "vault_kv_secret",
+ "vault:kv/secretBackendV2:SecretBackendV2": "vault_kv_secret_backend_v2",
+ "vault:kv/secretV2:SecretV2": "vault_kv_secret_v2",
+ "vault:ldap/authBackend:AuthBackend": "vault_ldap_auth_backend",
+ "vault:ldap/authBackendGroup:AuthBackendGroup": "vault_ldap_auth_backend_group",
+ "vault:ldap/authBackendUser:AuthBackendUser": "vault_ldap_auth_backend_user",
+ "vault:ldap/secretBackend:SecretBackend": "vault_ldap_secret_backend",
+ "vault:ldap/secretBackendDynamicRole:SecretBackendDynamicRole": "vault_ldap_secret_backend_dynamic_role",
+ "vault:ldap/secretBackendLibrarySet:SecretBackendLibrarySet": "vault_ldap_secret_backend_library_set",
+ "vault:ldap/secretBackendStaticRole:SecretBackendStaticRole": "vault_ldap_secret_backend_static_role",
+ "vault:managed/keys:Keys": "vault_managed_keys",
+ "vault:mongodbatlas/secretBackend:SecretBackend": "vault_mongodbatlas_secret_backend",
+ "vault:mongodbatlas/secretRole:SecretRole": "vault_mongodbatlas_secret_role",
+ "vault:okta/authBackend:AuthBackend": "vault_okta_auth_backend",
+ "vault:okta/authBackendGroup:AuthBackendGroup": "vault_okta_auth_backend_group",
+ "vault:okta/authBackendUser:AuthBackendUser": "vault_okta_auth_backend_user",
+ "vault:pkiSecret/secretBackendCert:SecretBackendCert": "vault_pki_secret_backend_cert",
+ "vault:pkiSecret/secretBackendConfigCa:SecretBackendConfigCa": "vault_pki_secret_backend_config_ca",
+ "vault:pkiSecret/secretBackendConfigIssuers:SecretBackendConfigIssuers": "vault_pki_secret_backend_config_issuers",
+ "vault:pkiSecret/secretBackendConfigUrls:SecretBackendConfigUrls": "vault_pki_secret_backend_config_urls",
+ "vault:pkiSecret/secretBackendCrlConfig:SecretBackendCrlConfig": "vault_pki_secret_backend_crl_config",
+ "vault:pkiSecret/secretBackendIntermediateCertRequest:SecretBackendIntermediateCertRequest": "vault_pki_secret_backend_intermediate_cert_request",
+ "vault:pkiSecret/secretBackendIntermediateSetSigned:SecretBackendIntermediateSetSigned": "vault_pki_secret_backend_intermediate_set_signed",
+ "vault:pkiSecret/secretBackendIssuer:SecretBackendIssuer": "vault_pki_secret_backend_issuer",
+ "vault:pkiSecret/secretBackendKey:SecretBackendKey": "vault_pki_secret_backend_key",
+ "vault:pkiSecret/secretBackendRole:SecretBackendRole": "vault_pki_secret_backend_role",
+ "vault:pkiSecret/secretBackendRootCert:SecretBackendRootCert": "vault_pki_secret_backend_root_cert",
+ "vault:pkiSecret/secretBackendRootSignIntermediate:SecretBackendRootSignIntermediate": "vault_pki_secret_backend_root_sign_intermediate",
+ "vault:pkiSecret/secretBackendSign:SecretBackendSign": "vault_pki_secret_backend_sign",
+ "vault:rabbitMq/secretBackend:SecretBackend": "vault_rabbitmq_secret_backend",
+ "vault:rabbitMq/secretBackendRole:SecretBackendRole": "vault_rabbitmq_secret_backend_role",
+ "vault:saml/authBackend:AuthBackend": "vault_saml_auth_backend",
+ "vault:saml/authBackendRole:AuthBackendRole": "vault_saml_auth_backend_role",
+ "vault:ssh/secretBackendCa:SecretBackendCa": "vault_ssh_secret_backend_ca",
+ "vault:ssh/secretBackendRole:SecretBackendRole": "vault_ssh_secret_backend_role",
+ "vault:terraformcloud/secretBackend:SecretBackend": "vault_terraform_cloud_secret_backend",
+ "vault:terraformcloud/secretCreds:SecretCreds": "vault_terraform_cloud_secret_creds",
+ "vault:terraformcloud/secretRole:SecretRole": "vault_terraform_cloud_secret_role",
+ "vault:tokenauth/authBackendRole:AuthBackendRole": "vault_token_auth_backend_role",
+ "vault:transform/alphabet:Alphabet": "vault_transform_alphabet",
+ "vault:transform/role:Role": "vault_transform_role",
+ "vault:transform/template:Template": "vault_transform_template",
+ "vault:transform/transformation:Transformation": "vault_transform_transformation",
+ "vault:transit/secretBackendKey:SecretBackendKey": "vault_transit_secret_backend_key",
+ "vault:transit/secretCacheConfig:SecretCacheConfig": "vault_transit_secret_cache_config"
+ },
+ "functions": {
+ "vault:ad/getAccessCredentials:getAccessCredentials": "vault_ad_access_credentials",
+ "vault:appRole/getAuthBackendRoleId:getAuthBackendRoleId": "vault_approle_auth_backend_role_id",
+ "vault:aws/getAccessCredentials:getAccessCredentials": "vault_aws_access_credentials",
+ "vault:aws/getStaticAccessCredentials:getStaticAccessCredentials": "vault_aws_static_access_credentials",
+ "vault:azure/getAccessCredentials:getAccessCredentials": "vault_azure_access_credentials",
+ "vault:gcp/getAuthBackendRole:getAuthBackendRole": "vault_gcp_auth_backend_role",
+ "vault:generic/getSecret:getSecret": "vault_generic_secret",
+ "vault:identity/getEntity:getEntity": "vault_identity_entity",
+ "vault:identity/getGroup:getGroup": "vault_identity_group",
+ "vault:identity/getOidcClientCreds:getOidcClientCreds": "vault_identity_oidc_client_creds",
+ "vault:identity/getOidcOpenidConfig:getOidcOpenidConfig": "vault_identity_oidc_openid_config",
+ "vault:identity/getOidcPublicKeys:getOidcPublicKeys": "vault_identity_oidc_public_keys",
+ "vault:index/getAuthBackend:getAuthBackend": "vault_auth_backend",
+ "vault:index/getAuthBackends:getAuthBackends": "vault_auth_backends",
+ "vault:index/getNomadAccessToken:getNomadAccessToken": "vault_nomad_access_token",
+ "vault:index/getPolicyDocument:getPolicyDocument": "vault_policy_document",
+ "vault:index/getRaftAutopilotState:getRaftAutopilotState": "vault_raft_autopilot_state",
+ "vault:kubernetes/getAuthBackendConfig:getAuthBackendConfig": "vault_kubernetes_auth_backend_config",
+ "vault:kubernetes/getAuthBackendRole:getAuthBackendRole": "vault_kubernetes_auth_backend_role",
+ "vault:kubernetes/getServiceAccountToken:getServiceAccountToken": "vault_kubernetes_service_account_token",
+ "vault:kv/getSecret:getSecret": "vault_kv_secret",
+ "vault:kv/getSecretSubkeysV2:getSecretSubkeysV2": "vault_kv_secret_subkeys_v2",
+ "vault:kv/getSecretV2:getSecretV2": "vault_kv_secret_v2",
+ "vault:kv/getSecretsList:getSecretsList": "vault_kv_secrets_list",
+ "vault:kv/getSecretsListV2:getSecretsListV2": "vault_kv_secrets_list_v2",
+ "vault:ldap/getDynamicCredentials:getDynamicCredentials": "vault_ldap_dynamic_credentials",
+ "vault:ldap/getStaticCredentials:getStaticCredentials": "vault_ldap_static_credentials",
+ "vault:pkiSecret/getBackendIssuer:getBackendIssuer": "vault_pki_secret_backend_issuer",
+ "vault:pkiSecret/getBackendIssuers:getBackendIssuers": "vault_pki_secret_backend_issuers",
+ "vault:pkiSecret/getBackendKey:getBackendKey": "vault_pki_secret_backend_key",
+ "vault:pkiSecret/getBackendKeys:getBackendKeys": "vault_pki_secret_backend_keys",
+ "vault:transform/getDecode:getDecode": "vault_transform_decode",
+ "vault:transform/getEncode:getEncode": "vault_transform_encode",
+ "vault:transit/getDecrypt:getDecrypt": "vault_transit_decrypt",
+ "vault:transit/getEncrypt:getEncrypt": "vault_transit_encrypt"
+ },
+ "renamedProperties": {
+ "vault:ad/getAccessCredentials:getAccessCredentials": {
+ "currentPassword": "current_password",
+ "lastPassword": "last_password"
+ },
+ "vault:ad/secretBackend:SecretBackend": {
+ "anonymousGroupSearch": "anonymous_group_search",
+ "caseSensitiveNames": "case_sensitive_names",
+ "clientTlsCert": "client_tls_cert",
+ "clientTlsKey": "client_tls_key",
+ "defaultLeaseTtlSeconds": "default_lease_ttl_seconds",
+ "denyNullBind": "deny_null_bind",
+ "disableRemount": "disable_remount",
+ "insecureTls": "insecure_tls",
+ "lastRotationTolerance": "last_rotation_tolerance",
+ "maxLeaseTtlSeconds": "max_lease_ttl_seconds",
+ "maxTtl": "max_ttl",
+ "passwordPolicy": "password_policy",
+ "requestTimeout": "request_timeout",
+ "tlsMaxVersion": "tls_max_version",
+ "tlsMinVersion": "tls_min_version",
+ "usePre111GroupCnBehavior": "use_pre111_group_cn_behavior",
+ "useTokenGroups": "use_token_groups"
+ },
+ "vault:ad/secretLibrary:SecretLibrary": {
+ "disableCheckInEnforcement": "disable_check_in_enforcement",
+ "maxTtl": "max_ttl",
+ "serviceAccountNames": "service_account_names"
+ },
+ "vault:ad/secretRole:SecretRole": {
+ "lastVaultRotation": "last_vault_rotation",
+ "passwordLastSet": "password_last_set",
+ "serviceAccountName": "service_account_name"
+ },
+ "vault:alicloud/authBackendRole:AuthBackendRole": {
+ "tokenBoundCidrs": "token_bound_cidrs",
+ "tokenExplicitMaxTtl": "token_explicit_max_ttl",
+ "tokenMaxTtl": "token_max_ttl",
+ "tokenNoDefaultPolicy": "token_no_default_policy",
+ "tokenNumUses": "token_num_uses",
+ "tokenPeriod": "token_period",
+ "tokenPolicies": "token_policies",
+ "tokenTtl": "token_ttl",
+ "tokenType": "token_type"
+ },
+ "vault:appRole/authBackendLogin:AuthBackendLogin": {
+ "clientToken": "client_token",
+ "leaseDuration": "lease_duration",
+ "leaseStarted": "lease_started",
+ "roleId": "role_id",
+ "secretId": "secret_id"
+ },
+ "vault:appRole/authBackendRole:AuthBackendRole": {
+ "bindSecretId": "bind_secret_id",
+ "roleId": "role_id",
+ "roleName": "role_name",
+ "secretIdBoundCidrs": "secret_id_bound_cidrs",
+ "secretIdNumUses": "secret_id_num_uses",
+ "secretIdTtl": "secret_id_ttl",
+ "tokenBoundCidrs": "token_bound_cidrs",
+ "tokenExplicitMaxTtl": "token_explicit_max_ttl",
+ "tokenMaxTtl": "token_max_ttl",
+ "tokenNoDefaultPolicy": "token_no_default_policy",
+ "tokenNumUses": "token_num_uses",
+ "tokenPeriod": "token_period",
+ "tokenPolicies": "token_policies",
+ "tokenTtl": "token_ttl",
+ "tokenType": "token_type"
+ },
+ "vault:appRole/authBackendRoleSecretId:AuthBackendRoleSecretId": {
+ "cidrLists": "cidr_list",
+ "roleName": "role_name",
+ "secretId": "secret_id",
+ "withWrappedAccessor": "with_wrapped_accessor",
+ "wrappingAccessor": "wrapping_accessor",
+ "wrappingToken": "wrapping_token",
+ "wrappingTtl": "wrapping_ttl"
+ },
+ "vault:appRole/getAuthBackendRoleId:getAuthBackendRoleId": {
+ "roleId": "role_id",
+ "roleName": "role_name"
+ },
+ "vault:aws/authBackendCert:AuthBackendCert": {
+ "awsPublicCert": "aws_public_cert",
+ "certName": "cert_name"
+ },
+ "vault:aws/authBackendClient:AuthBackendClient": {
+ "accessKey": "access_key",
+ "ec2Endpoint": "ec2_endpoint",
+ "iamEndpoint": "iam_endpoint",
+ "iamServerIdHeaderValue": "iam_server_id_header_value",
+ "secretKey": "secret_key",
+ "stsEndpoint": "sts_endpoint",
+ "stsRegion": "sts_region",
+ "useStsRegionFromClient": "use_sts_region_from_client"
+ },
+ "vault:aws/authBackendConfigIdentity:AuthBackendConfigIdentity": {
+ "ec2Alias": "ec2_alias",
+ "ec2Metadatas": "ec2_metadata",
+ "iamAlias": "iam_alias",
+ "iamMetadatas": "iam_metadata"
+ },
+ "vault:aws/authBackendIdentityWhitelist:AuthBackendIdentityWhitelist": {
+ "disablePeriodicTidy": "disable_periodic_tidy",
+ "safetyBuffer": "safety_buffer"
+ },
+ "vault:aws/authBackendLogin:AuthBackendLogin": {
+ "authType": "auth_type",
+ "clientToken": "client_token",
+ "iamHttpRequestMethod": "iam_http_request_method",
+ "iamRequestBody": "iam_request_body",
+ "iamRequestHeaders": "iam_request_headers",
+ "iamRequestUrl": "iam_request_url",
+ "leaseDuration": "lease_duration",
+ "leaseStartTime": "lease_start_time"
+ },
+ "vault:aws/authBackendRole:AuthBackendRole": {
+ "allowInstanceMigration": "allow_instance_migration",
+ "authType": "auth_type",
+ "boundAccountIds": "bound_account_ids",
+ "boundAmiIds": "bound_ami_ids",
+ "boundEc2InstanceIds": "bound_ec2_instance_ids",
+ "boundIamInstanceProfileArns": "bound_iam_instance_profile_arns",
+ "boundIamPrincipalArns": "bound_iam_principal_arns",
+ "boundIamRoleArns": "bound_iam_role_arns",
+ "boundRegions": "bound_regions",
+ "boundSubnetIds": "bound_subnet_ids",
+ "boundVpcIds": "bound_vpc_ids",
+ "disallowReauthentication": "disallow_reauthentication",
+ "inferredAwsRegion": "inferred_aws_region",
+ "inferredEntityType": "inferred_entity_type",
+ "resolveAwsUniqueIds": "resolve_aws_unique_ids",
+ "roleId": "role_id",
+ "roleTag": "role_tag",
+ "tokenBoundCidrs": "token_bound_cidrs",
+ "tokenExplicitMaxTtl": "token_explicit_max_ttl",
+ "tokenMaxTtl": "token_max_ttl",
+ "tokenNoDefaultPolicy": "token_no_default_policy",
+ "tokenNumUses": "token_num_uses",
+ "tokenPeriod": "token_period",
+ "tokenPolicies": "token_policies",
+ "tokenTtl": "token_ttl",
+ "tokenType": "token_type"
+ },
+ "vault:aws/authBackendRoleTag:AuthBackendRoleTag": {
+ "allowInstanceMigration": "allow_instance_migration",
+ "disallowReauthentication": "disallow_reauthentication",
+ "instanceId": "instance_id",
+ "maxTtl": "max_ttl",
+ "tagKey": "tag_key",
+ "tagValue": "tag_value"
+ },
+ "vault:aws/authBackendRoletagBlacklist:AuthBackendRoletagBlacklist": {
+ "disablePeriodicTidy": "disable_periodic_tidy",
+ "safetyBuffer": "safety_buffer"
+ },
+ "vault:aws/authBackendStsRole:AuthBackendStsRole": {
+ "accountId": "account_id",
+ "stsRole": "sts_role"
+ },
+ "vault:aws/getAccessCredentials:getAccessCredentials": {
+ "accessKey": "access_key",
+ "leaseDuration": "lease_duration",
+ "leaseId": "lease_id",
+ "leaseRenewable": "lease_renewable",
+ "leaseStartTime": "lease_start_time",
+ "roleArn": "role_arn",
+ "secretKey": "secret_key",
+ "securityToken": "security_token"
+ },
+ "vault:aws/getStaticAccessCredentials:getStaticAccessCredentials": {
+ "accessKey": "access_key",
+ "secretKey": "secret_key"
+ },
+ "vault:aws/secretBackend:SecretBackend": {
+ "accessKey": "access_key",
+ "defaultLeaseTtlSeconds": "default_lease_ttl_seconds",
+ "disableRemount": "disable_remount",
+ "iamEndpoint": "iam_endpoint",
+ "maxLeaseTtlSeconds": "max_lease_ttl_seconds",
+ "secretKey": "secret_key",
+ "stsEndpoint": "sts_endpoint",
+ "usernameTemplate": "username_template"
+ },
+ "vault:aws/secretBackendRole:SecretBackendRole": {
+ "credentialType": "credential_type",
+ "defaultStsTtl": "default_sts_ttl",
+ "iamGroups": "iam_groups",
+ "maxStsTtl": "max_sts_ttl",
+ "permissionsBoundaryArn": "permissions_boundary_arn",
+ "policyArns": "policy_arns",
+ "policyDocument": "policy_document",
+ "roleArns": "role_arns",
+ "userPath": "user_path"
+ },
+ "vault:aws/secretBackendStaticRole:SecretBackendStaticRole": {
+ "rotationPeriod": "rotation_period"
+ },
+ "vault:azure/BackendRoleAzureGroup:BackendRoleAzureGroup": {
+ "groupName": "group_name",
+ "objectId": "object_id"
+ },
+ "vault:azure/BackendRoleAzureRole:BackendRoleAzureRole": {
+ "roleId": "role_id",
+ "roleName": "role_name"
+ },
+ "vault:azure/authBackendConfig:AuthBackendConfig": {
+ "clientId": "client_id",
+ "clientSecret": "client_secret",
+ "tenantId": "tenant_id"
+ },
+ "vault:azure/authBackendRole:AuthBackendRole": {
+ "boundGroupIds": "bound_group_ids",
+ "boundLocations": "bound_locations",
+ "boundResourceGroups": "bound_resource_groups",
+ "boundScaleSets": "bound_scale_sets",
+ "boundServicePrincipalIds": "bound_service_principal_ids",
+ "boundSubscriptionIds": "bound_subscription_ids",
+ "tokenBoundCidrs": "token_bound_cidrs",
+ "tokenExplicitMaxTtl": "token_explicit_max_ttl",
+ "tokenMaxTtl": "token_max_ttl",
+ "tokenNoDefaultPolicy": "token_no_default_policy",
+ "tokenNumUses": "token_num_uses",
+ "tokenPeriod": "token_period",
+ "tokenPolicies": "token_policies",
+ "tokenTtl": "token_ttl",
+ "tokenType": "token_type"
+ },
+ "vault:azure/backend:Backend": {
+ "clientId": "client_id",
+ "clientSecret": "client_secret",
+ "disableRemount": "disable_remount",
+ "subscriptionId": "subscription_id",
+ "tenantId": "tenant_id",
+ "useMicrosoftGraphApi": "use_microsoft_graph_api"
+ },
+ "vault:azure/backendRole:BackendRole": {
+ "applicationObjectId": "application_object_id",
+ "azureGroups": "azure_groups",
+ "azureRoles": "azure_roles",
+ "maxTtl": "max_ttl",
+ "permanentlyDelete": "permanently_delete"
+ },
+ "vault:azure/getAccessCredentials:getAccessCredentials": {
+ "clientId": "client_id",
+ "clientSecret": "client_secret",
+ "leaseDuration": "lease_duration",
+ "leaseId": "lease_id",
+ "leaseRenewable": "lease_renewable",
+ "leaseStartTime": "lease_start_time",
+ "maxCredValidationSeconds": "max_cred_validation_seconds",
+ "numSecondsBetweenTests": "num_seconds_between_tests",
+ "numSequentialSuccesses": "num_sequential_successes",
+ "subscriptionId": "subscription_id",
+ "tenantId": "tenant_id",
+ "validateCreds": "validate_creds"
+ },
+ "vault:config/authLogin:authLogin": {
+ "useRootNamespace": "use_root_namespace"
+ },
+ "vault:config/authLoginAws:authLoginAws": {
+ "awsAccessKeyId": "aws_access_key_id",
+ "awsIamEndpoint": "aws_iam_endpoint",
+ "awsProfile": "aws_profile",
+ "awsRegion": "aws_region",
+ "awsRoleArn": "aws_role_arn",
+ "awsRoleSessionName": "aws_role_session_name",
+ "awsSecretAccessKey": "aws_secret_access_key",
+ "awsSessionToken": "aws_session_token",
+ "awsSharedCredentialsFile": "aws_shared_credentials_file",
+ "awsStsEndpoint": "aws_sts_endpoint",
+ "awsWebIdentityTokenFile": "aws_web_identity_token_file",
+ "headerValue": "header_value",
+ "useRootNamespace": "use_root_namespace"
+ },
+ "vault:config/authLoginAzure:authLoginAzure": {
+ "clientId": "client_id",
+ "resourceGroupName": "resource_group_name",
+ "subscriptionId": "subscription_id",
+ "tenantId": "tenant_id",
+ "useRootNamespace": "use_root_namespace",
+ "vmName": "vm_name",
+ "vmssName": "vmss_name"
+ },
+ "vault:config/authLoginCert:authLoginCert": {
+ "certFile": "cert_file",
+ "keyFile": "key_file",
+ "useRootNamespace": "use_root_namespace"
+ },
+ "vault:config/authLoginGcp:authLoginGcp": {
+ "serviceAccount": "service_account",
+ "useRootNamespace": "use_root_namespace"
+ },
+ "vault:config/authLoginJwt:authLoginJwt": {
+ "useRootNamespace": "use_root_namespace"
+ },
+ "vault:config/authLoginKerberos:authLoginKerberos": {
+ "disableFastNegotiation": "disable_fast_negotiation",
+ "keytabPath": "keytab_path",
+ "krb5confPath": "krb5conf_path",
+ "removeInstanceName": "remove_instance_name",
+ "useRootNamespace": "use_root_namespace"
+ },
+ "vault:config/authLoginOci:authLoginOci": {
+ "authType": "auth_type",
+ "useRootNamespace": "use_root_namespace"
+ },
+ "vault:config/authLoginOidc:authLoginOidc": {
+ "callbackAddress": "callback_address",
+ "callbackListenerAddress": "callback_listener_address",
+ "useRootNamespace": "use_root_namespace"
+ },
+ "vault:config/authLoginRadius:authLoginRadius": {
+ "useRootNamespace": "use_root_namespace"
+ },
+ "vault:config/authLoginTokenFile:authLoginTokenFile": {
+ "useRootNamespace": "use_root_namespace"
+ },
+ "vault:config/authLoginUserpass:authLoginUserpass": {
+ "passwordFile": "password_file",
+ "useRootNamespace": "use_root_namespace"
+ },
+ "vault:config/clientAuth:clientAuth": {
+ "certFile": "cert_file",
+ "keyFile": "key_file"
+ },
+ "vault:consul/secretBackend:SecretBackend": {
+ "caCert": "ca_cert",
+ "clientCert": "client_cert",
+ "clientKey": "client_key",
+ "defaultLeaseTtlSeconds": "default_lease_ttl_seconds",
+ "disableRemount": "disable_remount",
+ "maxLeaseTtlSeconds": "max_lease_ttl_seconds"
+ },
+ "vault:consul/secretBackendRole:SecretBackendRole": {
+ "consulNamespace": "consul_namespace",
+ "consulPolicies": "consul_policies",
+ "consulRoles": "consul_roles",
+ "maxTtl": "max_ttl",
+ "nodeIdentities": "node_identities",
+ "serviceIdentities": "service_identities",
+ "tokenType": "token_type"
+ },
+ "vault:database/SecretBackendConnectionCassandra:SecretBackendConnectionCassandra": {
+ "connectTimeout": "connect_timeout",
+ "insecureTls": "insecure_tls",
+ "pemBundle": "pem_bundle",
+ "pemJson": "pem_json",
+ "protocolVersion": "protocol_version"
+ },
+ "vault:database/SecretBackendConnectionCouchbase:SecretBackendConnectionCouchbase": {
+ "base64Pem": "base64_pem",
+ "bucketName": "bucket_name",
+ "insecureTls": "insecure_tls",
+ "usernameTemplate": "username_template"
+ },
+ "vault:database/SecretBackendConnectionElasticsearch:SecretBackendConnectionElasticsearch": {
+ "caCert": "ca_cert",
+ "caPath": "ca_path",
+ "clientCert": "client_cert",
+ "clientKey": "client_key",
+ "tlsServerName": "tls_server_name",
+ "usernameTemplate": "username_template"
+ },
+ "vault:database/SecretBackendConnectionHana:SecretBackendConnectionHana": {
+ "connectionUrl": "connection_url",
+ "disableEscaping": "disable_escaping",
+ "maxConnectionLifetime": "max_connection_lifetime",
+ "maxIdleConnections": "max_idle_connections",
+ "maxOpenConnections": "max_open_connections"
+ },
+ "vault:database/SecretBackendConnectionInfluxdb:SecretBackendConnectionInfluxdb": {
+ "connectTimeout": "connect_timeout",
+ "insecureTls": "insecure_tls",
+ "pemBundle": "pem_bundle",
+ "pemJson": "pem_json",
+ "usernameTemplate": "username_template"
+ },
+ "vault:database/SecretBackendConnectionMongodb:SecretBackendConnectionMongodb": {
+ "connectionUrl": "connection_url",
+ "maxConnectionLifetime": "max_connection_lifetime",
+ "maxIdleConnections": "max_idle_connections",
+ "maxOpenConnections": "max_open_connections",
+ "usernameTemplate": "username_template"
+ },
+ "vault:database/SecretBackendConnectionMongodbatlas:SecretBackendConnectionMongodbatlas": {
+ "privateKey": "private_key",
+ "projectId": "project_id",
+ "publicKey": "public_key"
+ },
+ "vault:database/SecretBackendConnectionMssql:SecretBackendConnectionMssql": {
+ "connectionUrl": "connection_url",
+ "containedDb": "contained_db",
+ "disableEscaping": "disable_escaping",
+ "maxConnectionLifetime": "max_connection_lifetime",
+ "maxIdleConnections": "max_idle_connections",
+ "maxOpenConnections": "max_open_connections",
+ "usernameTemplate": "username_template"
+ },
+ "vault:database/SecretBackendConnectionMysql:SecretBackendConnectionMysql": {
+ "authType": "auth_type",
+ "connectionUrl": "connection_url",
+ "maxConnectionLifetime": "max_connection_lifetime",
+ "maxIdleConnections": "max_idle_connections",
+ "maxOpenConnections": "max_open_connections",
+ "serviceAccountJson": "service_account_json",
+ "tlsCa": "tls_ca",
+ "tlsCertificateKey": "tls_certificate_key",
+ "usernameTemplate": "username_template"
+ },
+ "vault:database/SecretBackendConnectionMysqlAurora:SecretBackendConnectionMysqlAurora": {
+ "connectionUrl": "connection_url",
+ "maxConnectionLifetime": "max_connection_lifetime",
+ "maxIdleConnections": "max_idle_connections",
+ "maxOpenConnections": "max_open_connections",
+ "usernameTemplate": "username_template"
+ },
+ "vault:database/SecretBackendConnectionMysqlLegacy:SecretBackendConnectionMysqlLegacy": {
+ "connectionUrl": "connection_url",
+ "maxConnectionLifetime": "max_connection_lifetime",
+ "maxIdleConnections": "max_idle_connections",
+ "maxOpenConnections": "max_open_connections",
+ "usernameTemplate": "username_template"
+ },
+ "vault:database/SecretBackendConnectionMysqlRds:SecretBackendConnectionMysqlRds": {
+ "connectionUrl": "connection_url",
+ "maxConnectionLifetime": "max_connection_lifetime",
+ "maxIdleConnections": "max_idle_connections",
+ "maxOpenConnections": "max_open_connections",
+ "usernameTemplate": "username_template"
+ },
+ "vault:database/SecretBackendConnectionOracle:SecretBackendConnectionOracle": {
+ "connectionUrl": "connection_url",
+ "maxConnectionLifetime": "max_connection_lifetime",
+ "maxIdleConnections": "max_idle_connections",
+ "maxOpenConnections": "max_open_connections",
+ "usernameTemplate": "username_template"
+ },
+ "vault:database/SecretBackendConnectionPostgresql:SecretBackendConnectionPostgresql": {
+ "authType": "auth_type",
+ "connectionUrl": "connection_url",
+ "disableEscaping": "disable_escaping",
+ "maxConnectionLifetime": "max_connection_lifetime",
+ "maxIdleConnections": "max_idle_connections",
+ "maxOpenConnections": "max_open_connections",
+ "serviceAccountJson": "service_account_json",
+ "usernameTemplate": "username_template"
+ },
+ "vault:database/SecretBackendConnectionRedis:SecretBackendConnectionRedis": {
+ "caCert": "ca_cert",
+ "insecureTls": "insecure_tls"
+ },
+ "vault:database/SecretBackendConnectionRedshift:SecretBackendConnectionRedshift": {
+ "connectionUrl": "connection_url",
+ "disableEscaping": "disable_escaping",
+ "maxConnectionLifetime": "max_connection_lifetime",
+ "maxIdleConnections": "max_idle_connections",
+ "maxOpenConnections": "max_open_connections",
+ "usernameTemplate": "username_template"
+ },
+ "vault:database/SecretBackendConnectionSnowflake:SecretBackendConnectionSnowflake": {
+ "connectionUrl": "connection_url",
+ "maxConnectionLifetime": "max_connection_lifetime",
+ "maxIdleConnections": "max_idle_connections",
+ "maxOpenConnections": "max_open_connections",
+ "usernameTemplate": "username_template"
+ },
+ "vault:database/SecretsMountCassandra:SecretsMountCassandra": {
+ "allowedRoles": "allowed_roles",
+ "connectTimeout": "connect_timeout",
+ "insecureTls": "insecure_tls",
+ "pemBundle": "pem_bundle",
+ "pemJson": "pem_json",
+ "pluginName": "plugin_name",
+ "protocolVersion": "protocol_version",
+ "rootRotationStatements": "root_rotation_statements",
+ "verifyConnection": "verify_connection"
+ },
+ "vault:database/SecretsMountCouchbase:SecretsMountCouchbase": {
+ "allowedRoles": "allowed_roles",
+ "base64Pem": "base64_pem",
+ "bucketName": "bucket_name",
+ "insecureTls": "insecure_tls",
+ "pluginName": "plugin_name",
+ "rootRotationStatements": "root_rotation_statements",
+ "usernameTemplate": "username_template",
+ "verifyConnection": "verify_connection"
+ },
+ "vault:database/SecretsMountElasticsearch:SecretsMountElasticsearch": {
+ "allowedRoles": "allowed_roles",
+ "caCert": "ca_cert",
+ "caPath": "ca_path",
+ "clientCert": "client_cert",
+ "clientKey": "client_key",
+ "pluginName": "plugin_name",
+ "rootRotationStatements": "root_rotation_statements",
+ "tlsServerName": "tls_server_name",
+ "usernameTemplate": "username_template",
+ "verifyConnection": "verify_connection"
+ },
+ "vault:database/SecretsMountHana:SecretsMountHana": {
+ "allowedRoles": "allowed_roles",
+ "connectionUrl": "connection_url",
+ "disableEscaping": "disable_escaping",
+ "maxConnectionLifetime": "max_connection_lifetime",
+ "maxIdleConnections": "max_idle_connections",
+ "maxOpenConnections": "max_open_connections",
+ "pluginName": "plugin_name",
+ "rootRotationStatements": "root_rotation_statements",
+ "verifyConnection": "verify_connection"
+ },
+ "vault:database/SecretsMountInfluxdb:SecretsMountInfluxdb": {
+ "allowedRoles": "allowed_roles",
+ "connectTimeout": "connect_timeout",
+ "insecureTls": "insecure_tls",
+ "pemBundle": "pem_bundle",
+ "pemJson": "pem_json",
+ "pluginName": "plugin_name",
+ "rootRotationStatements": "root_rotation_statements",
+ "usernameTemplate": "username_template",
+ "verifyConnection": "verify_connection"
+ },
+ "vault:database/SecretsMountMongodb:SecretsMountMongodb": {
+ "allowedRoles": "allowed_roles",
+ "connectionUrl": "connection_url",
+ "maxConnectionLifetime": "max_connection_lifetime",
+ "maxIdleConnections": "max_idle_connections",
+ "maxOpenConnections": "max_open_connections",
+ "pluginName": "plugin_name",
+ "rootRotationStatements": "root_rotation_statements",
+ "usernameTemplate": "username_template",
+ "verifyConnection": "verify_connection"
+ },
+ "vault:database/SecretsMountMongodbatla:SecretsMountMongodbatla": {
+ "allowedRoles": "allowed_roles",
+ "pluginName": "plugin_name",
+ "privateKey": "private_key",
+ "projectId": "project_id",
+ "publicKey": "public_key",
+ "rootRotationStatements": "root_rotation_statements",
+ "verifyConnection": "verify_connection"
+ },
+ "vault:database/SecretsMountMssql:SecretsMountMssql": {
+ "allowedRoles": "allowed_roles",
+ "connectionUrl": "connection_url",
+ "containedDb": "contained_db",
+ "disableEscaping": "disable_escaping",
+ "maxConnectionLifetime": "max_connection_lifetime",
+ "maxIdleConnections": "max_idle_connections",
+ "maxOpenConnections": "max_open_connections",
+ "pluginName": "plugin_name",
+ "rootRotationStatements": "root_rotation_statements",
+ "usernameTemplate": "username_template",
+ "verifyConnection": "verify_connection"
+ },
+ "vault:database/SecretsMountMysql:SecretsMountMysql": {
+ "allowedRoles": "allowed_roles",
+ "authType": "auth_type",
+ "connectionUrl": "connection_url",
+ "maxConnectionLifetime": "max_connection_lifetime",
+ "maxIdleConnections": "max_idle_connections",
+ "maxOpenConnections": "max_open_connections",
+ "pluginName": "plugin_name",
+ "rootRotationStatements": "root_rotation_statements",
+ "serviceAccountJson": "service_account_json",
+ "tlsCa": "tls_ca",
+ "tlsCertificateKey": "tls_certificate_key",
+ "usernameTemplate": "username_template",
+ "verifyConnection": "verify_connection"
+ },
+ "vault:database/SecretsMountMysqlAurora:SecretsMountMysqlAurora": {
+ "allowedRoles": "allowed_roles",
+ "connectionUrl": "connection_url",
+ "maxConnectionLifetime": "max_connection_lifetime",
+ "maxIdleConnections": "max_idle_connections",
+ "maxOpenConnections": "max_open_connections",
+ "pluginName": "plugin_name",
+ "rootRotationStatements": "root_rotation_statements",
+ "usernameTemplate": "username_template",
+ "verifyConnection": "verify_connection"
+ },
+ "vault:database/SecretsMountMysqlLegacy:SecretsMountMysqlLegacy": {
+ "allowedRoles": "allowed_roles",
+ "connectionUrl": "connection_url",
+ "maxConnectionLifetime": "max_connection_lifetime",
+ "maxIdleConnections": "max_idle_connections",
+ "maxOpenConnections": "max_open_connections",
+ "pluginName": "plugin_name",
+ "rootRotationStatements": "root_rotation_statements",
+ "usernameTemplate": "username_template",
+ "verifyConnection": "verify_connection"
+ },
+ "vault:database/SecretsMountMysqlRd:SecretsMountMysqlRd": {
+ "allowedRoles": "allowed_roles",
+ "connectionUrl": "connection_url",
+ "maxConnectionLifetime": "max_connection_lifetime",
+ "maxIdleConnections": "max_idle_connections",
+ "maxOpenConnections": "max_open_connections",
+ "pluginName": "plugin_name",
+ "rootRotationStatements": "root_rotation_statements",
+ "usernameTemplate": "username_template",
+ "verifyConnection": "verify_connection"
+ },
+ "vault:database/SecretsMountOracle:SecretsMountOracle": {
+ "allowedRoles": "allowed_roles",
+ "connectionUrl": "connection_url",
+ "maxConnectionLifetime": "max_connection_lifetime",
+ "maxIdleConnections": "max_idle_connections",
+ "maxOpenConnections": "max_open_connections",
+ "pluginName": "plugin_name",
+ "rootRotationStatements": "root_rotation_statements",
+ "usernameTemplate": "username_template",
+ "verifyConnection": "verify_connection"
+ },
+ "vault:database/SecretsMountPostgresql:SecretsMountPostgresql": {
+ "allowedRoles": "allowed_roles",
+ "authType": "auth_type",
+ "connectionUrl": "connection_url",
+ "disableEscaping": "disable_escaping",
+ "maxConnectionLifetime": "max_connection_lifetime",
+ "maxIdleConnections": "max_idle_connections",
+ "maxOpenConnections": "max_open_connections",
+ "pluginName": "plugin_name",
+ "rootRotationStatements": "root_rotation_statements",
+ "serviceAccountJson": "service_account_json",
+ "usernameTemplate": "username_template",
+ "verifyConnection": "verify_connection"
+ },
+ "vault:database/SecretsMountRedi:SecretsMountRedi": {
+ "allowedRoles": "allowed_roles",
+ "caCert": "ca_cert",
+ "insecureTls": "insecure_tls",
+ "pluginName": "plugin_name",
+ "rootRotationStatements": "root_rotation_statements",
+ "verifyConnection": "verify_connection"
+ },
+ "vault:database/SecretsMountRedisElasticach:SecretsMountRedisElasticach": {
+ "allowedRoles": "allowed_roles",
+ "pluginName": "plugin_name",
+ "rootRotationStatements": "root_rotation_statements",
+ "verifyConnection": "verify_connection"
+ },
+ "vault:database/SecretsMountRedshift:SecretsMountRedshift": {
+ "allowedRoles": "allowed_roles",
+ "connectionUrl": "connection_url",
+ "disableEscaping": "disable_escaping",
+ "maxConnectionLifetime": "max_connection_lifetime",
+ "maxIdleConnections": "max_idle_connections",
+ "maxOpenConnections": "max_open_connections",
+ "pluginName": "plugin_name",
+ "rootRotationStatements": "root_rotation_statements",
+ "usernameTemplate": "username_template",
+ "verifyConnection": "verify_connection"
+ },
+ "vault:database/SecretsMountSnowflake:SecretsMountSnowflake": {
+ "allowedRoles": "allowed_roles",
+ "connectionUrl": "connection_url",
+ "maxConnectionLifetime": "max_connection_lifetime",
+ "maxIdleConnections": "max_idle_connections",
+ "maxOpenConnections": "max_open_connections",
+ "pluginName": "plugin_name",
+ "rootRotationStatements": "root_rotation_statements",
+ "usernameTemplate": "username_template",
+ "verifyConnection": "verify_connection"
+ },
+ "vault:database/secretBackendConnection:SecretBackendConnection": {
+ "allowedRoles": "allowed_roles",
+ "mysqlAurora": "mysql_aurora",
+ "mysqlLegacy": "mysql_legacy",
+ "mysqlRds": "mysql_rds",
+ "pluginName": "plugin_name",
+ "redisElasticache": "redis_elasticache",
+ "rootRotationStatements": "root_rotation_statements",
+ "verifyConnection": "verify_connection"
+ },
+ "vault:database/secretBackendRole:SecretBackendRole": {
+ "creationStatements": "creation_statements",
+ "credentialConfig": "credential_config",
+ "credentialType": "credential_type",
+ "dbName": "db_name",
+ "defaultTtl": "default_ttl",
+ "maxTtl": "max_ttl",
+ "renewStatements": "renew_statements",
+ "revocationStatements": "revocation_statements",
+ "rollbackStatements": "rollback_statements"
+ },
+ "vault:database/secretBackendStaticRole:SecretBackendStaticRole": {
+ "dbName": "db_name",
+ "rotationPeriod": "rotation_period",
+ "rotationSchedule": "rotation_schedule",
+ "rotationStatements": "rotation_statements",
+ "rotationWindow": "rotation_window"
+ },
+ "vault:database/secretsMount:SecretsMount": {
+ "allowedManagedKeys": "allowed_managed_keys",
+ "auditNonHmacRequestKeys": "audit_non_hmac_request_keys",
+ "auditNonHmacResponseKeys": "audit_non_hmac_response_keys",
+ "cassandras": "cassandra",
+ "couchbases": "couchbase",
+ "defaultLeaseTtlSeconds": "default_lease_ttl_seconds",
+ "elasticsearches": "elasticsearch",
+ "engineCount": "engine_count",
+ "externalEntropyAccess": "external_entropy_access",
+ "hanas": "hana",
+ "influxdbs": "influxdb",
+ "maxLeaseTtlSeconds": "max_lease_ttl_seconds",
+ "mongodbs": "mongodb",
+ "mssqls": "mssql",
+ "mysqlAuroras": "mysql_aurora",
+ "mysqlLegacies": "mysql_legacy",
+ "mysqlRds": "mysql_rds",
+ "mysqls": "mysql",
+ "oracles": "oracle",
+ "postgresqls": "postgresql",
+ "redisElasticaches": "redis_elasticache",
+ "redshifts": "redshift",
+ "sealWrap": "seal_wrap",
+ "snowflakes": "snowflake"
+ },
+ "vault:gcp/authBackend:AuthBackend": {
+ "clientEmail": "client_email",
+ "clientId": "client_id",
+ "customEndpoint": "custom_endpoint",
+ "disableRemount": "disable_remount",
+ "privateKeyId": "private_key_id",
+ "projectId": "project_id"
+ },
+ "vault:gcp/authBackendRole:AuthBackendRole": {
+ "addGroupAliases": "add_group_aliases",
+ "allowGceInference": "allow_gce_inference",
+ "boundInstanceGroups": "bound_instance_groups",
+ "boundLabels": "bound_labels",
+ "boundProjects": "bound_projects",
+ "boundRegions": "bound_regions",
+ "boundServiceAccounts": "bound_service_accounts",
+ "boundZones": "bound_zones",
+ "maxJwtExp": "max_jwt_exp",
+ "tokenBoundCidrs": "token_bound_cidrs",
+ "tokenExplicitMaxTtl": "token_explicit_max_ttl",
+ "tokenMaxTtl": "token_max_ttl",
+ "tokenNoDefaultPolicy": "token_no_default_policy",
+ "tokenNumUses": "token_num_uses",
+ "tokenPeriod": "token_period",
+ "tokenPolicies": "token_policies",
+ "tokenTtl": "token_ttl",
+ "tokenType": "token_type"
+ },
+ "vault:gcp/getAuthBackendRole:getAuthBackendRole": {
+ "boundInstanceGroups": "bound_instance_groups",
+ "boundLabels": "bound_labels",
+ "boundProjects": "bound_projects",
+ "boundRegions": "bound_regions",
+ "boundServiceAccounts": "bound_service_accounts",
+ "boundZones": "bound_zones",
+ "roleId": "role_id",
+ "roleName": "role_name",
+ "tokenBoundCidrs": "token_bound_cidrs",
+ "tokenExplicitMaxTtl": "token_explicit_max_ttl",
+ "tokenMaxTtl": "token_max_ttl",
+ "tokenNoDefaultPolicy": "token_no_default_policy",
+ "tokenNumUses": "token_num_uses",
+ "tokenPeriod": "token_period",
+ "tokenPolicies": "token_policies",
+ "tokenTtl": "token_ttl",
+ "tokenType": "token_type"
+ },
+ "vault:gcp/secretBackend:SecretBackend": {
+ "defaultLeaseTtlSeconds": "default_lease_ttl_seconds",
+ "disableRemount": "disable_remount",
+ "maxLeaseTtlSeconds": "max_lease_ttl_seconds"
+ },
+ "vault:gcp/secretImpersonatedAccount:SecretImpersonatedAccount": {
+ "impersonatedAccount": "impersonated_account",
+ "serviceAccountEmail": "service_account_email",
+ "serviceAccountProject": "service_account_project",
+ "tokenScopes": "token_scopes"
+ },
+ "vault:gcp/secretRoleset:SecretRoleset": {
+ "bindings": "binding",
+ "secretType": "secret_type",
+ "serviceAccountEmail": "service_account_email",
+ "tokenScopes": "token_scopes"
+ },
+ "vault:gcp/secretStaticAccount:SecretStaticAccount": {
+ "bindings": "binding",
+ "secretType": "secret_type",
+ "serviceAccountEmail": "service_account_email",
+ "serviceAccountProject": "service_account_project",
+ "staticAccount": "static_account",
+ "tokenScopes": "token_scopes"
+ },
+ "vault:generic/endpoint:Endpoint": {
+ "dataJson": "data_json",
+ "disableDelete": "disable_delete",
+ "disableRead": "disable_read",
+ "ignoreAbsentFields": "ignore_absent_fields",
+ "writeData": "write_data",
+ "writeDataJson": "write_data_json",
+ "writeFields": "write_fields"
+ },
+ "vault:generic/getSecret:getSecret": {
+ "dataJson": "data_json",
+ "leaseDuration": "lease_duration",
+ "leaseId": "lease_id",
+ "leaseRenewable": "lease_renewable",
+ "leaseStartTime": "lease_start_time",
+ "withLeaseStartTime": "with_lease_start_time"
+ },
+ "vault:generic/secret:Secret": {
+ "dataJson": "data_json",
+ "deleteAllVersions": "delete_all_versions",
+ "disableRead": "disable_read"
+ },
+ "vault:github/AuthBackendTune:AuthBackendTune": {
+ "allowedResponseHeaders": "allowed_response_headers",
+ "auditNonHmacRequestKeys": "audit_non_hmac_request_keys",
+ "auditNonHmacResponseKeys": "audit_non_hmac_response_keys",
+ "defaultLeaseTtl": "default_lease_ttl",
+ "listingVisibility": "listing_visibility",
+ "maxLeaseTtl": "max_lease_ttl",
+ "passthroughRequestHeaders": "passthrough_request_headers",
+ "tokenType": "token_type"
+ },
+ "vault:github/authBackend:AuthBackend": {
+ "baseUrl": "base_url",
+ "disableRemount": "disable_remount",
+ "organizationId": "organization_id",
+ "tokenBoundCidrs": "token_bound_cidrs",
+ "tokenExplicitMaxTtl": "token_explicit_max_ttl",
+ "tokenMaxTtl": "token_max_ttl",
+ "tokenNoDefaultPolicy": "token_no_default_policy",
+ "tokenNumUses": "token_num_uses",
+ "tokenPeriod": "token_period",
+ "tokenPolicies": "token_policies",
+ "tokenTtl": "token_ttl",
+ "tokenType": "token_type"
+ },
+ "vault:identity/entity:Entity": {
+ "externalPolicies": "external_policies"
+ },
+ "vault:identity/entityAlias:EntityAlias": {
+ "canonicalId": "canonical_id",
+ "customMetadata": "custom_metadata",
+ "mountAccessor": "mount_accessor"
+ },
+ "vault:identity/entityPolicies:EntityPolicies": {
+ "entityId": "entity_id",
+ "entityName": "entity_name"
+ },
+ "vault:identity/getEntity:getEntity": {
+ "aliasId": "alias_id",
+ "aliasMountAccessor": "alias_mount_accessor",
+ "aliasName": "alias_name",
+ "creationTime": "creation_time",
+ "dataJson": "data_json",
+ "directGroupIds": "direct_group_ids",
+ "entityId": "entity_id",
+ "entityName": "entity_name",
+ "groupIds": "group_ids",
+ "inheritedGroupIds": "inherited_group_ids",
+ "lastUpdateTime": "last_update_time",
+ "mergedEntityIds": "merged_entity_ids",
+ "namespaceId": "namespace_id"
+ },
+ "vault:identity/getEntityAlias:getEntityAlias": {
+ "canonicalId": "canonical_id",
+ "creationTime": "creation_time",
+ "lastUpdateTime": "last_update_time",
+ "mergedFromCanonicalIds": "merged_from_canonical_ids",
+ "mountAccessor": "mount_accessor",
+ "mountPath": "mount_path",
+ "mountType": "mount_type"
+ },
+ "vault:identity/getGroup:getGroup": {
+ "aliasCanonicalId": "alias_canonical_id",
+ "aliasCreationTime": "alias_creation_time",
+ "aliasId": "alias_id",
+ "aliasLastUpdateTime": "alias_last_update_time",
+ "aliasMergedFromCanonicalIds": "alias_merged_from_canonical_ids",
+ "aliasMetadata": "alias_metadata",
+ "aliasMountAccessor": "alias_mount_accessor",
+ "aliasMountPath": "alias_mount_path",
+ "aliasMountType": "alias_mount_type",
+ "aliasName": "alias_name",
+ "creationTime": "creation_time",
+ "dataJson": "data_json",
+ "groupId": "group_id",
+ "groupName": "group_name",
+ "lastUpdateTime": "last_update_time",
+ "memberEntityIds": "member_entity_ids",
+ "memberGroupIds": "member_group_ids",
+ "modifyIndex": "modify_index",
+ "namespaceId": "namespace_id",
+ "parentGroupIds": "parent_group_ids"
+ },
+ "vault:identity/getOidcClientCreds:getOidcClientCreds": {
+ "clientId": "client_id",
+ "clientSecret": "client_secret"
+ },
+ "vault:identity/getOidcOpenidConfig:getOidcOpenidConfig": {
+ "authorizationEndpoint": "authorization_endpoint",
+ "grantTypesSupporteds": "grant_types_supported",
+ "idTokenSigningAlgValuesSupporteds": "id_token_signing_alg_values_supported",
+ "jwksUri": "jwks_uri",
+ "requestUriParameterSupported": "request_uri_parameter_supported",
+ "responseTypesSupporteds": "response_types_supported",
+ "scopesSupporteds": "scopes_supported",
+ "subjectTypesSupporteds": "subject_types_supported",
+ "tokenEndpoint": "token_endpoint",
+ "tokenEndpointAuthMethodsSupporteds": "token_endpoint_auth_methods_supported",
+ "userinfoEndpoint": "userinfo_endpoint"
+ },
+ "vault:identity/group:Group": {
+ "externalMemberEntityIds": "external_member_entity_ids",
+ "externalMemberGroupIds": "external_member_group_ids",
+ "externalPolicies": "external_policies",
+ "memberEntityIds": "member_entity_ids",
+ "memberGroupIds": "member_group_ids"
+ },
+ "vault:identity/groupAlias:GroupAlias": {
+ "canonicalId": "canonical_id",
+ "mountAccessor": "mount_accessor"
+ },
+ "vault:identity/groupMemberEntityIds:GroupMemberEntityIds": {
+ "groupId": "group_id",
+ "groupName": "group_name",
+ "memberEntityIds": "member_entity_ids"
+ },
+ "vault:identity/groupMemberGroupIds:GroupMemberGroupIds": {
+ "groupId": "group_id",
+ "memberGroupIds": "member_group_ids"
+ },
+ "vault:identity/groupPolicies:GroupPolicies": {
+ "groupId": "group_id",
+ "groupName": "group_name"
+ },
+ "vault:identity/mfaDuo:MfaDuo": {
+ "apiHostname": "api_hostname",
+ "integrationKey": "integration_key",
+ "methodId": "method_id",
+ "mountAccessor": "mount_accessor",
+ "namespaceId": "namespace_id",
+ "namespacePath": "namespace_path",
+ "pushInfo": "push_info",
+ "secretKey": "secret_key",
+ "usePasscode": "use_passcode",
+ "usernameFormat": "username_format"
+ },
+ "vault:identity/mfaLoginEnforcement:MfaLoginEnforcement": {
+ "authMethodAccessors": "auth_method_accessors",
+ "authMethodTypes": "auth_method_types",
+ "identityEntityIds": "identity_entity_ids",
+ "identityGroupIds": "identity_group_ids",
+ "mfaMethodIds": "mfa_method_ids",
+ "namespaceId": "namespace_id",
+ "namespacePath": "namespace_path"
+ },
+ "vault:identity/mfaOkta:MfaOkta": {
+ "apiToken": "api_token",
+ "baseUrl": "base_url",
+ "methodId": "method_id",
+ "mountAccessor": "mount_accessor",
+ "namespaceId": "namespace_id",
+ "namespacePath": "namespace_path",
+ "orgName": "org_name",
+ "primaryEmail": "primary_email",
+ "usernameFormat": "username_format"
+ },
+ "vault:identity/mfaPingid:MfaPingid": {
+ "adminUrl": "admin_url",
+ "authenticatorUrl": "authenticator_url",
+ "idpUrl": "idp_url",
+ "methodId": "method_id",
+ "mountAccessor": "mount_accessor",
+ "namespaceId": "namespace_id",
+ "namespacePath": "namespace_path",
+ "orgAlias": "org_alias",
+ "settingsFileBase64": "settings_file_base64",
+ "useSignature": "use_signature",
+ "usernameFormat": "username_format"
+ },
+ "vault:identity/mfaTotp:MfaTotp": {
+ "keySize": "key_size",
+ "maxValidationAttempts": "max_validation_attempts",
+ "methodId": "method_id",
+ "mountAccessor": "mount_accessor",
+ "namespaceId": "namespace_id",
+ "namespacePath": "namespace_path",
+ "qrSize": "qr_size"
+ },
+ "vault:identity/oidcAssignment:OidcAssignment": {
+ "entityIds": "entity_ids",
+ "groupIds": "group_ids"
+ },
+ "vault:identity/oidcClient:OidcClient": {
+ "accessTokenTtl": "access_token_ttl",
+ "clientId": "client_id",
+ "clientSecret": "client_secret",
+ "clientType": "client_type",
+ "idTokenTtl": "id_token_ttl",
+ "redirectUris": "redirect_uris"
+ },
+ "vault:identity/oidcKey:OidcKey": {
+ "allowedClientIds": "allowed_client_ids",
+ "rotationPeriod": "rotation_period",
+ "verificationTtl": "verification_ttl"
+ },
+ "vault:identity/oidcKeyAllowedClientID:OidcKeyAllowedClientID": {
+ "allowedClientId": "allowed_client_id",
+ "keyName": "key_name"
+ },
+ "vault:identity/oidcProvider:OidcProvider": {
+ "allowedClientIds": "allowed_client_ids",
+ "httpsEnabled": "https_enabled",
+ "issuerHost": "issuer_host",
+ "scopesSupporteds": "scopes_supported"
+ },
+ "vault:identity/oidcRole:OidcRole": {
+ "clientId": "client_id"
+ },
+ "vault:index/AuthBackendTune:AuthBackendTune": {
+ "allowedResponseHeaders": "allowed_response_headers",
+ "auditNonHmacRequestKeys": "audit_non_hmac_request_keys",
+ "auditNonHmacResponseKeys": "audit_non_hmac_response_keys",
+ "defaultLeaseTtl": "default_lease_ttl",
+ "listingVisibility": "listing_visibility",
+ "maxLeaseTtl": "max_lease_ttl",
+ "passthroughRequestHeaders": "passthrough_request_headers",
+ "tokenType": "token_type"
+ },
+ "vault:index/ProviderAuthLogin:ProviderAuthLogin": {
+ "useRootNamespace": "use_root_namespace"
+ },
+ "vault:index/ProviderAuthLoginAws:ProviderAuthLoginAws": {
+ "awsAccessKeyId": "aws_access_key_id",
+ "awsIamEndpoint": "aws_iam_endpoint",
+ "awsProfile": "aws_profile",
+ "awsRegion": "aws_region",
+ "awsRoleArn": "aws_role_arn",
+ "awsRoleSessionName": "aws_role_session_name",
+ "awsSecretAccessKey": "aws_secret_access_key",
+ "awsSessionToken": "aws_session_token",
+ "awsSharedCredentialsFile": "aws_shared_credentials_file",
+ "awsStsEndpoint": "aws_sts_endpoint",
+ "awsWebIdentityTokenFile": "aws_web_identity_token_file",
+ "headerValue": "header_value",
+ "useRootNamespace": "use_root_namespace"
+ },
+ "vault:index/ProviderAuthLoginAzure:ProviderAuthLoginAzure": {
+ "clientId": "client_id",
+ "resourceGroupName": "resource_group_name",
+ "subscriptionId": "subscription_id",
+ "tenantId": "tenant_id",
+ "useRootNamespace": "use_root_namespace",
+ "vmName": "vm_name",
+ "vmssName": "vmss_name"
+ },
+ "vault:index/ProviderAuthLoginCert:ProviderAuthLoginCert": {
+ "certFile": "cert_file",
+ "keyFile": "key_file",
+ "useRootNamespace": "use_root_namespace"
+ },
+ "vault:index/ProviderAuthLoginGcp:ProviderAuthLoginGcp": {
+ "serviceAccount": "service_account",
+ "useRootNamespace": "use_root_namespace"
+ },
+ "vault:index/ProviderAuthLoginJwt:ProviderAuthLoginJwt": {
+ "useRootNamespace": "use_root_namespace"
+ },
+ "vault:index/ProviderAuthLoginKerberos:ProviderAuthLoginKerberos": {
+ "disableFastNegotiation": "disable_fast_negotiation",
+ "keytabPath": "keytab_path",
+ "krb5confPath": "krb5conf_path",
+ "removeInstanceName": "remove_instance_name",
+ "useRootNamespace": "use_root_namespace"
+ },
+ "vault:index/ProviderAuthLoginOci:ProviderAuthLoginOci": {
+ "authType": "auth_type",
+ "useRootNamespace": "use_root_namespace"
+ },
+ "vault:index/ProviderAuthLoginOidc:ProviderAuthLoginOidc": {
+ "callbackAddress": "callback_address",
+ "callbackListenerAddress": "callback_listener_address",
+ "useRootNamespace": "use_root_namespace"
+ },
+ "vault:index/ProviderAuthLoginRadius:ProviderAuthLoginRadius": {
+ "useRootNamespace": "use_root_namespace"
+ },
+ "vault:index/ProviderAuthLoginTokenFile:ProviderAuthLoginTokenFile": {
+ "useRootNamespace": "use_root_namespace"
+ },
+ "vault:index/ProviderAuthLoginUserpass:ProviderAuthLoginUserpass": {
+ "passwordFile": "password_file",
+ "useRootNamespace": "use_root_namespace"
+ },
+ "vault:index/ProviderClientAuth:ProviderClientAuth": {
+ "certFile": "cert_file",
+ "keyFile": "key_file"
+ },
+ "vault:index/authBackend:AuthBackend": {
+ "disableRemount": "disable_remount"
+ },
+ "vault:index/certAuthBackendRole:CertAuthBackendRole": {
+ "allowedCommonNames": "allowed_common_names",
+ "allowedDnsSans": "allowed_dns_sans",
+ "allowedEmailSans": "allowed_email_sans",
+ "allowedNames": "allowed_names",
+ "allowedOrganizationUnits": "allowed_organization_units",
+ "allowedOrganizationalUnits": "allowed_organizational_units",
+ "allowedUriSans": "allowed_uri_sans",
+ "displayName": "display_name",
+ "ocspCaCertificates": "ocsp_ca_certificates",
+ "ocspEnabled": "ocsp_enabled",
+ "ocspFailOpen": "ocsp_fail_open",
+ "ocspQueryAllServers": "ocsp_query_all_servers",
+ "ocspServersOverrides": "ocsp_servers_override",
+ "requiredExtensions": "required_extensions",
+ "tokenBoundCidrs": "token_bound_cidrs",
+ "tokenExplicitMaxTtl": "token_explicit_max_ttl",
+ "tokenMaxTtl": "token_max_ttl",
+ "tokenNoDefaultPolicy": "token_no_default_policy",
+ "tokenNumUses": "token_num_uses",
+ "tokenPeriod": "token_period",
+ "tokenPolicies": "token_policies",
+ "tokenTtl": "token_ttl",
+ "tokenType": "token_type"
+ },
+ "vault:index/egpPolicy:EgpPolicy": {
+ "enforcementLevel": "enforcement_level"
+ },
+ "vault:index/getAuthBackend:getAuthBackend": {
+ "defaultLeaseTtlSeconds": "default_lease_ttl_seconds",
+ "listingVisibility": "listing_visibility",
+ "maxLeaseTtlSeconds": "max_lease_ttl_seconds"
+ },
+ "vault:index/getNomadAccessToken:getNomadAccessToken": {
+ "accessorId": "accessor_id",
+ "secretId": "secret_id"
+ },
+ "vault:index/getPolicyDocument:getPolicyDocument": {
+ "rules": "rule"
+ },
+ "vault:index/getPolicyDocumentRule:getPolicyDocumentRule": {
+ "allowedParameters": "allowed_parameter",
+ "deniedParameters": "denied_parameter",
+ "maxWrappingTtl": "max_wrapping_ttl",
+ "minWrappingTtl": "min_wrapping_ttl",
+ "requiredParameters": "required_parameters"
+ },
+ "vault:index/getPolicyDocumentRuleAllowedParameter:getPolicyDocumentRuleAllowedParameter": {
+ "values": "value"
+ },
+ "vault:index/getPolicyDocumentRuleDeniedParameter:getPolicyDocumentRuleDeniedParameter": {
+ "values": "value"
+ },
+ "vault:index/getRaftAutopilotState:getRaftAutopilotState": {
+ "failureTolerance": "failure_tolerance",
+ "optimisticFailureTolerance": "optimistic_failure_tolerance",
+ "redundancyZones": "redundancy_zones",
+ "redundancyZonesJson": "redundancy_zones_json",
+ "serversJson": "servers_json",
+ "upgradeInfo": "upgrade_info",
+ "upgradeInfoJson": "upgrade_info_json"
+ },
+ "vault:index/mfaDuo:MfaDuo": {
+ "apiHostname": "api_hostname",
+ "integrationKey": "integration_key",
+ "mountAccessor": "mount_accessor",
+ "pushInfo": "push_info",
+ "secretKey": "secret_key",
+ "usernameFormat": "username_format"
+ },
+ "vault:index/mfaOkta:MfaOkta": {
+ "apiToken": "api_token",
+ "baseUrl": "base_url",
+ "mountAccessor": "mount_accessor",
+ "orgName": "org_name",
+ "primaryEmail": "primary_email",
+ "usernameFormat": "username_format"
+ },
+ "vault:index/mfaPingid:MfaPingid": {
+ "adminUrl": "admin_url",
+ "authenticatorUrl": "authenticator_url",
+ "idpUrl": "idp_url",
+ "mountAccessor": "mount_accessor",
+ "namespaceId": "namespace_id",
+ "orgAlias": "org_alias",
+ "settingsFileBase64": "settings_file_base64",
+ "useSignature": "use_signature",
+ "usernameFormat": "username_format"
+ },
+ "vault:index/mfaTotp:MfaTotp": {
+ "keySize": "key_size",
+ "qrSize": "qr_size"
+ },
+ "vault:index/mount:Mount": {
+ "allowedManagedKeys": "allowed_managed_keys",
+ "auditNonHmacRequestKeys": "audit_non_hmac_request_keys",
+ "auditNonHmacResponseKeys": "audit_non_hmac_response_keys",
+ "defaultLeaseTtlSeconds": "default_lease_ttl_seconds",
+ "externalEntropyAccess": "external_entropy_access",
+ "maxLeaseTtlSeconds": "max_lease_ttl_seconds",
+ "sealWrap": "seal_wrap"
+ },
+ "vault:index/namespace:Namespace": {
+ "customMetadata": "custom_metadata",
+ "namespaceId": "namespace_id",
+ "pathFq": "path_fq"
+ },
+ "vault:index/nomadSecretBackend:NomadSecretBackend": {
+ "caCert": "ca_cert",
+ "clientCert": "client_cert",
+ "clientKey": "client_key",
+ "defaultLeaseTtlSeconds": "default_lease_ttl_seconds",
+ "disableRemount": "disable_remount",
+ "maxLeaseTtlSeconds": "max_lease_ttl_seconds",
+ "maxTokenNameLength": "max_token_name_length",
+ "maxTtl": "max_ttl"
+ },
+ "vault:index/quotaLeaseCount:QuotaLeaseCount": {
+ "maxLeases": "max_leases"
+ },
+ "vault:index/quotaRateLimit:QuotaRateLimit": {
+ "blockInterval": "block_interval"
+ },
+ "vault:index/raftAutopilot:RaftAutopilot": {
+ "cleanupDeadServers": "cleanup_dead_servers",
+ "deadServerLastContactThreshold": "dead_server_last_contact_threshold",
+ "disableUpgradeMigration": "disable_upgrade_migration",
+ "lastContactThreshold": "last_contact_threshold",
+ "maxTrailingLogs": "max_trailing_logs",
+ "minQuorum": "min_quorum",
+ "serverStabilizationTime": "server_stabilization_time"
+ },
+ "vault:index/raftSnapshotAgentConfig:RaftSnapshotAgentConfig": {
+ "awsAccessKeyId": "aws_access_key_id",
+ "awsS3Bucket": "aws_s3_bucket",
+ "awsS3DisableTls": "aws_s3_disable_tls",
+ "awsS3EnableKms": "aws_s3_enable_kms",
+ "awsS3Endpoint": "aws_s3_endpoint",
+ "awsS3ForcePathStyle": "aws_s3_force_path_style",
+ "awsS3KmsKey": "aws_s3_kms_key",
+ "awsS3Region": "aws_s3_region",
+ "awsS3ServerSideEncryption": "aws_s3_server_side_encryption",
+ "awsSecretAccessKey": "aws_secret_access_key",
+ "awsSessionToken": "aws_session_token",
+ "azureAccountKey": "azure_account_key",
+ "azureAccountName": "azure_account_name",
+ "azureBlobEnvironment": "azure_blob_environment",
+ "azureContainerName": "azure_container_name",
+ "azureEndpoint": "azure_endpoint",
+ "filePrefix": "file_prefix",
+ "googleDisableTls": "google_disable_tls",
+ "googleEndpoint": "google_endpoint",
+ "googleGcsBucket": "google_gcs_bucket",
+ "googleServiceAccountKey": "google_service_account_key",
+ "intervalSeconds": "interval_seconds",
+ "localMaxSpace": "local_max_space",
+ "pathPrefix": "path_prefix",
+ "storageType": "storage_type"
+ },
+ "vault:index/rgpPolicy:RgpPolicy": {
+ "enforcementLevel": "enforcement_level"
+ },
+ "vault:index/token:Token": {
+ "clientToken": "client_token",
+ "displayName": "display_name",
+ "explicitMaxTtl": "explicit_max_ttl",
+ "leaseDuration": "lease_duration",
+ "leaseStarted": "lease_started",
+ "noDefaultPolicy": "no_default_policy",
+ "noParent": "no_parent",
+ "numUses": "num_uses",
+ "renewIncrement": "renew_increment",
+ "renewMinLease": "renew_min_lease",
+ "roleName": "role_name",
+ "wrappedToken": "wrapped_token",
+ "wrappingAccessor": "wrapping_accessor",
+ "wrappingTtl": "wrapping_ttl"
+ },
+ "vault:index:Provider": {
+ "addAddressToEnv": "add_address_to_env",
+ "authLogin": "auth_login",
+ "authLoginAws": "auth_login_aws",
+ "authLoginAzure": "auth_login_azure",
+ "authLoginCert": "auth_login_cert",
+ "authLoginGcp": "auth_login_gcp",
+ "authLoginJwt": "auth_login_jwt",
+ "authLoginKerberos": "auth_login_kerberos",
+ "authLoginOci": "auth_login_oci",
+ "authLoginOidc": "auth_login_oidc",
+ "authLoginRadius": "auth_login_radius",
+ "authLoginTokenFile": "auth_login_token_file",
+ "authLoginUserpass": "auth_login_userpass",
+ "caCertDir": "ca_cert_dir",
+ "caCertFile": "ca_cert_file",
+ "clientAuth": "client_auth",
+ "maxLeaseTtlSeconds": "max_lease_ttl_seconds",
+ "maxRetries": "max_retries",
+ "maxRetriesCcc": "max_retries_ccc",
+ "setNamespaceFromToken": "set_namespace_from_token",
+ "skipChildToken": "skip_child_token",
+ "skipGetVaultVersion": "skip_get_vault_version",
+ "skipTlsVerify": "skip_tls_verify",
+ "tlsServerName": "tls_server_name",
+ "tokenName": "token_name",
+ "vaultVersionOverride": "vault_version_override"
+ },
+ "vault:jwt/AuthBackendTune:AuthBackendTune": {
+ "allowedResponseHeaders": "allowed_response_headers",
+ "auditNonHmacRequestKeys": "audit_non_hmac_request_keys",
+ "auditNonHmacResponseKeys": "audit_non_hmac_response_keys",
+ "defaultLeaseTtl": "default_lease_ttl",
+ "listingVisibility": "listing_visibility",
+ "maxLeaseTtl": "max_lease_ttl",
+ "passthroughRequestHeaders": "passthrough_request_headers",
+ "tokenType": "token_type"
+ },
+ "vault:jwt/authBackend:AuthBackend": {
+ "boundIssuer": "bound_issuer",
+ "defaultRole": "default_role",
+ "disableRemount": "disable_remount",
+ "jwksCaPem": "jwks_ca_pem",
+ "jwksUrl": "jwks_url",
+ "jwtSupportedAlgs": "jwt_supported_algs",
+ "jwtValidationPubkeys": "jwt_validation_pubkeys",
+ "namespaceInState": "namespace_in_state",
+ "oidcClientId": "oidc_client_id",
+ "oidcClientSecret": "oidc_client_secret",
+ "oidcDiscoveryCaPem": "oidc_discovery_ca_pem",
+ "oidcDiscoveryUrl": "oidc_discovery_url",
+ "oidcResponseMode": "oidc_response_mode",
+ "oidcResponseTypes": "oidc_response_types",
+ "providerConfig": "provider_config"
+ },
+ "vault:jwt/authBackendRole:AuthBackendRole": {
+ "allowedRedirectUris": "allowed_redirect_uris",
+ "boundAudiences": "bound_audiences",
+ "boundClaims": "bound_claims",
+ "boundClaimsType": "bound_claims_type",
+ "boundSubject": "bound_subject",
+ "claimMappings": "claim_mappings",
+ "clockSkewLeeway": "clock_skew_leeway",
+ "disableBoundClaimsParsing": "disable_bound_claims_parsing",
+ "expirationLeeway": "expiration_leeway",
+ "groupsClaim": "groups_claim",
+ "maxAge": "max_age",
+ "notBeforeLeeway": "not_before_leeway",
+ "oidcScopes": "oidc_scopes",
+ "roleName": "role_name",
+ "roleType": "role_type",
+ "tokenBoundCidrs": "token_bound_cidrs",
+ "tokenExplicitMaxTtl": "token_explicit_max_ttl",
+ "tokenMaxTtl": "token_max_ttl",
+ "tokenNoDefaultPolicy": "token_no_default_policy",
+ "tokenNumUses": "token_num_uses",
+ "tokenPeriod": "token_period",
+ "tokenPolicies": "token_policies",
+ "tokenTtl": "token_ttl",
+ "tokenType": "token_type",
+ "userClaim": "user_claim",
+ "userClaimJsonPointer": "user_claim_json_pointer",
+ "verboseOidcLogging": "verbose_oidc_logging"
+ },
+ "vault:kmip/secretBackend:SecretBackend": {
+ "defaultTlsClientKeyBits": "default_tls_client_key_bits",
+ "defaultTlsClientKeyType": "default_tls_client_key_type",
+ "defaultTlsClientTtl": "default_tls_client_ttl",
+ "disableRemount": "disable_remount",
+ "listenAddrs": "listen_addrs",
+ "serverHostnames": "server_hostnames",
+ "serverIps": "server_ips",
+ "tlsCaKeyBits": "tls_ca_key_bits",
+ "tlsCaKeyType": "tls_ca_key_type",
+ "tlsMinVersion": "tls_min_version"
+ },
+ "vault:kmip/secretRole:SecretRole": {
+ "operationActivate": "operation_activate",
+ "operationAddAttribute": "operation_add_attribute",
+ "operationAll": "operation_all",
+ "operationCreate": "operation_create",
+ "operationDestroy": "operation_destroy",
+ "operationDiscoverVersions": "operation_discover_versions",
+ "operationGet": "operation_get",
+ "operationGetAttributeList": "operation_get_attribute_list",
+ "operationGetAttributes": "operation_get_attributes",
+ "operationLocate": "operation_locate",
+ "operationNone": "operation_none",
+ "operationRegister": "operation_register",
+ "operationRekey": "operation_rekey",
+ "operationRevoke": "operation_revoke",
+ "tlsClientKeyBits": "tls_client_key_bits",
+ "tlsClientKeyType": "tls_client_key_type",
+ "tlsClientTtl": "tls_client_ttl"
+ },
+ "vault:kubernetes/authBackendConfig:AuthBackendConfig": {
+ "disableIssValidation": "disable_iss_validation",
+ "disableLocalCaJwt": "disable_local_ca_jwt",
+ "kubernetesCaCert": "kubernetes_ca_cert",
+ "kubernetesHost": "kubernetes_host",
+ "pemKeys": "pem_keys",
+ "tokenReviewerJwt": "token_reviewer_jwt"
+ },
+ "vault:kubernetes/authBackendRole:AuthBackendRole": {
+ "aliasNameSource": "alias_name_source",
+ "boundServiceAccountNames": "bound_service_account_names",
+ "boundServiceAccountNamespaces": "bound_service_account_namespaces",
+ "roleName": "role_name",
+ "tokenBoundCidrs": "token_bound_cidrs",
+ "tokenExplicitMaxTtl": "token_explicit_max_ttl",
+ "tokenMaxTtl": "token_max_ttl",
+ "tokenNoDefaultPolicy": "token_no_default_policy",
+ "tokenNumUses": "token_num_uses",
+ "tokenPeriod": "token_period",
+ "tokenPolicies": "token_policies",
+ "tokenTtl": "token_ttl",
+ "tokenType": "token_type"
+ },
+ "vault:kubernetes/getAuthBackendConfig:getAuthBackendConfig": {
+ "disableIssValidation": "disable_iss_validation",
+ "disableLocalCaJwt": "disable_local_ca_jwt",
+ "kubernetesCaCert": "kubernetes_ca_cert",
+ "kubernetesHost": "kubernetes_host",
+ "pemKeys": "pem_keys"
+ },
+ "vault:kubernetes/getAuthBackendRole:getAuthBackendRole": {
+ "aliasNameSource": "alias_name_source",
+ "boundServiceAccountNames": "bound_service_account_names",
+ "boundServiceAccountNamespaces": "bound_service_account_namespaces",
+ "roleName": "role_name",
+ "tokenBoundCidrs": "token_bound_cidrs",
+ "tokenExplicitMaxTtl": "token_explicit_max_ttl",
+ "tokenMaxTtl": "token_max_ttl",
+ "tokenNoDefaultPolicy": "token_no_default_policy",
+ "tokenNumUses": "token_num_uses",
+ "tokenPeriod": "token_period",
+ "tokenPolicies": "token_policies",
+ "tokenTtl": "token_ttl",
+ "tokenType": "token_type"
+ },
+ "vault:kubernetes/getServiceAccountToken:getServiceAccountToken": {
+ "clusterRoleBinding": "cluster_role_binding",
+ "kubernetesNamespace": "kubernetes_namespace",
+ "leaseDuration": "lease_duration",
+ "leaseId": "lease_id",
+ "leaseRenewable": "lease_renewable",
+ "serviceAccountName": "service_account_name",
+ "serviceAccountNamespace": "service_account_namespace",
+ "serviceAccountToken": "service_account_token"
+ },
+ "vault:kubernetes/secretBackend:SecretBackend": {
+ "allowedManagedKeys": "allowed_managed_keys",
+ "auditNonHmacRequestKeys": "audit_non_hmac_request_keys",
+ "auditNonHmacResponseKeys": "audit_non_hmac_response_keys",
+ "defaultLeaseTtlSeconds": "default_lease_ttl_seconds",
+ "disableLocalCaJwt": "disable_local_ca_jwt",
+ "externalEntropyAccess": "external_entropy_access",
+ "kubernetesCaCert": "kubernetes_ca_cert",
+ "kubernetesHost": "kubernetes_host",
+ "maxLeaseTtlSeconds": "max_lease_ttl_seconds",
+ "sealWrap": "seal_wrap",
+ "serviceAccountJwt": "service_account_jwt"
+ },
+ "vault:kubernetes/secretBackendRole:SecretBackendRole": {
+ "allowedKubernetesNamespaces": "allowed_kubernetes_namespaces",
+ "extraAnnotations": "extra_annotations",
+ "extraLabels": "extra_labels",
+ "generatedRoleRules": "generated_role_rules",
+ "kubernetesRoleName": "kubernetes_role_name",
+ "kubernetesRoleType": "kubernetes_role_type",
+ "nameTemplate": "name_template",
+ "serviceAccountName": "service_account_name",
+ "tokenDefaultTtl": "token_default_ttl",
+ "tokenMaxTtl": "token_max_ttl"
+ },
+ "vault:kv/SecretV2CustomMetadata:SecretV2CustomMetadata": {
+ "casRequired": "cas_required",
+ "deleteVersionAfter": "delete_version_after",
+ "maxVersions": "max_versions"
+ },
+ "vault:kv/getSecret:getSecret": {
+ "dataJson": "data_json",
+ "leaseDuration": "lease_duration",
+ "leaseId": "lease_id",
+ "leaseRenewable": "lease_renewable"
+ },
+ "vault:kv/getSecretSubkeysV2:getSecretSubkeysV2": {
+ "dataJson": "data_json"
+ },
+ "vault:kv/getSecretV2:getSecretV2": {
+ "createdTime": "created_time",
+ "customMetadata": "custom_metadata",
+ "dataJson": "data_json",
+ "deletionTime": "deletion_time"
+ },
+ "vault:kv/secret:Secret": {
+ "dataJson": "data_json"
+ },
+ "vault:kv/secretBackendV2:SecretBackendV2": {
+ "casRequired": "cas_required",
+ "deleteVersionAfter": "delete_version_after",
+ "maxVersions": "max_versions"
+ },
+ "vault:kv/secretV2:SecretV2": {
+ "customMetadata": "custom_metadata",
+ "dataJson": "data_json",
+ "deleteAllVersions": "delete_all_versions",
+ "disableRead": "disable_read"
+ },
+ "vault:ldap/authBackend:AuthBackend": {
+ "caseSensitiveNames": "case_sensitive_names",
+ "clientTlsCert": "client_tls_cert",
+ "clientTlsKey": "client_tls_key",
+ "denyNullBind": "deny_null_bind",
+ "disableRemount": "disable_remount",
+ "insecureTls": "insecure_tls",
+ "maxPageSize": "max_page_size",
+ "tlsMaxVersion": "tls_max_version",
+ "tlsMinVersion": "tls_min_version",
+ "tokenBoundCidrs": "token_bound_cidrs",
+ "tokenExplicitMaxTtl": "token_explicit_max_ttl",
+ "tokenMaxTtl": "token_max_ttl",
+ "tokenNoDefaultPolicy": "token_no_default_policy",
+ "tokenNumUses": "token_num_uses",
+ "tokenPeriod": "token_period",
+ "tokenPolicies": "token_policies",
+ "tokenTtl": "token_ttl",
+ "tokenType": "token_type",
+ "useTokenGroups": "use_token_groups",
+ "usernameAsAlias": "username_as_alias"
+ },
+ "vault:ldap/getDynamicCredentials:getDynamicCredentials": {
+ "distinguishedNames": "distinguished_names",
+ "leaseDuration": "lease_duration",
+ "leaseId": "lease_id",
+ "leaseRenewable": "lease_renewable",
+ "roleName": "role_name"
+ },
+ "vault:ldap/getStaticCredentials:getStaticCredentials": {
+ "lastPassword": "last_password",
+ "lastVaultRotation": "last_vault_rotation",
+ "roleName": "role_name",
+ "rotationPeriod": "rotation_period"
+ },
+ "vault:ldap/secretBackend:SecretBackend": {
+ "allowedManagedKeys": "allowed_managed_keys",
+ "auditNonHmacRequestKeys": "audit_non_hmac_request_keys",
+ "auditNonHmacResponseKeys": "audit_non_hmac_response_keys",
+ "clientTlsCert": "client_tls_cert",
+ "clientTlsKey": "client_tls_key",
+ "connectionTimeout": "connection_timeout",
+ "defaultLeaseTtlSeconds": "default_lease_ttl_seconds",
+ "disableRemount": "disable_remount",
+ "externalEntropyAccess": "external_entropy_access",
+ "insecureTls": "insecure_tls",
+ "maxLeaseTtlSeconds": "max_lease_ttl_seconds",
+ "passwordPolicy": "password_policy",
+ "requestTimeout": "request_timeout",
+ "sealWrap": "seal_wrap"
+ },
+ "vault:ldap/secretBackendDynamicRole:SecretBackendDynamicRole": {
+ "creationLdif": "creation_ldif",
+ "defaultTtl": "default_ttl",
+ "deletionLdif": "deletion_ldif",
+ "maxTtl": "max_ttl",
+ "roleName": "role_name",
+ "rollbackLdif": "rollback_ldif",
+ "usernameTemplate": "username_template"
+ },
+ "vault:ldap/secretBackendLibrarySet:SecretBackendLibrarySet": {
+ "disableCheckInEnforcement": "disable_check_in_enforcement",
+ "maxTtl": "max_ttl",
+ "serviceAccountNames": "service_account_names"
+ },
+ "vault:ldap/secretBackendStaticRole:SecretBackendStaticRole": {
+ "roleName": "role_name",
+ "rotationPeriod": "rotation_period"
+ },
+ "vault:managed/KeysAw:KeysAw": {
+ "accessKey": "access_key",
+ "allowGenerateKey": "allow_generate_key",
+ "allowReplaceKey": "allow_replace_key",
+ "allowStoreKey": "allow_store_key",
+ "anyMount": "any_mount",
+ "keyBits": "key_bits",
+ "keyType": "key_type",
+ "kmsKey": "kms_key",
+ "secretKey": "secret_key"
+ },
+ "vault:managed/KeysAzure:KeysAzure": {
+ "allowGenerateKey": "allow_generate_key",
+ "allowReplaceKey": "allow_replace_key",
+ "allowStoreKey": "allow_store_key",
+ "anyMount": "any_mount",
+ "clientId": "client_id",
+ "clientSecret": "client_secret",
+ "keyBits": "key_bits",
+ "keyName": "key_name",
+ "keyType": "key_type",
+ "tenantId": "tenant_id",
+ "vaultName": "vault_name"
+ },
+ "vault:managed/KeysPkc:KeysPkc": {
+ "allowGenerateKey": "allow_generate_key",
+ "allowReplaceKey": "allow_replace_key",
+ "allowStoreKey": "allow_store_key",
+ "anyMount": "any_mount",
+ "forceRwSession": "force_rw_session",
+ "keyBits": "key_bits",
+ "keyId": "key_id",
+ "keyLabel": "key_label",
+ "tokenLabel": "token_label"
+ },
+ "vault:managed/keys:Keys": {
+ "azures": "azure"
+ },
+ "vault:mongodbatlas/secretBackend:SecretBackend": {
+ "privateKey": "private_key",
+ "publicKey": "public_key"
+ },
+ "vault:mongodbatlas/secretRole:SecretRole": {
+ "cidrBlocks": "cidr_blocks",
+ "ipAddresses": "ip_addresses",
+ "maxTtl": "max_ttl",
+ "organizationId": "organization_id",
+ "projectId": "project_id",
+ "projectRoles": "project_roles"
+ },
+ "vault:okta/AuthBackendGroup:AuthBackendGroup": {
+ "groupName": "group_name"
+ },
+ "vault:okta/authBackend:AuthBackend": {
+ "baseUrl": "base_url",
+ "bypassOktaMfa": "bypass_okta_mfa",
+ "disableRemount": "disable_remount",
+ "groups": "group",
+ "maxTtl": "max_ttl",
+ "users": "user"
+ },
+ "vault:okta/authBackendGroup:AuthBackendGroup": {
+ "groupName": "group_name"
+ },
+ "vault:pkiSecret/getBackendIssuer:getBackendIssuer": {
+ "caChains": "ca_chain",
+ "issuerId": "issuer_id",
+ "issuerName": "issuer_name",
+ "issuerRef": "issuer_ref",
+ "keyId": "key_id",
+ "leafNotAfterBehavior": "leaf_not_after_behavior",
+ "manualChains": "manual_chain"
+ },
+ "vault:pkiSecret/getBackendIssuers:getBackendIssuers": {
+ "keyInfo": "key_info",
+ "keyInfoJson": "key_info_json"
+ },
+ "vault:pkiSecret/getBackendKey:getBackendKey": {
+ "keyId": "key_id",
+ "keyName": "key_name",
+ "keyRef": "key_ref",
+ "keyType": "key_type"
+ },
+ "vault:pkiSecret/getBackendKeys:getBackendKeys": {
+ "keyInfo": "key_info",
+ "keyInfoJson": "key_info_json"
+ },
+ "vault:pkiSecret/secretBackendCert:SecretBackendCert": {
+ "altNames": "alt_names",
+ "autoRenew": "auto_renew",
+ "caChain": "ca_chain",
+ "commonName": "common_name",
+ "excludeCnFromSans": "exclude_cn_from_sans",
+ "ipSans": "ip_sans",
+ "issuerRef": "issuer_ref",
+ "issuingCa": "issuing_ca",
+ "minSecondsRemaining": "min_seconds_remaining",
+ "otherSans": "other_sans",
+ "privateKey": "private_key",
+ "privateKeyFormat": "private_key_format",
+ "privateKeyType": "private_key_type",
+ "renewPending": "renew_pending",
+ "serialNumber": "serial_number",
+ "uriSans": "uri_sans",
+ "userIds": "user_ids"
+ },
+ "vault:pkiSecret/secretBackendConfigCa:SecretBackendConfigCa": {
+ "pemBundle": "pem_bundle"
+ },
+ "vault:pkiSecret/secretBackendConfigIssuers:SecretBackendConfigIssuers": {
+ "defaultFollowsLatestIssuer": "default_follows_latest_issuer"
+ },
+ "vault:pkiSecret/secretBackendConfigUrls:SecretBackendConfigUrls": {
+ "crlDistributionPoints": "crl_distribution_points",
+ "issuingCertificates": "issuing_certificates",
+ "ocspServers": "ocsp_servers"
+ },
+ "vault:pkiSecret/secretBackendCrlConfig:SecretBackendCrlConfig": {
+ "autoRebuild": "auto_rebuild",
+ "autoRebuildGracePeriod": "auto_rebuild_grace_period",
+ "crossClusterRevocation": "cross_cluster_revocation",
+ "deltaRebuildInterval": "delta_rebuild_interval",
+ "enableDelta": "enable_delta",
+ "ocspDisable": "ocsp_disable",
+ "ocspExpiry": "ocsp_expiry",
+ "unifiedCrl": "unified_crl",
+ "unifiedCrlOnExistingPaths": "unified_crl_on_existing_paths"
+ },
+ "vault:pkiSecret/secretBackendIntermediateCertRequest:SecretBackendIntermediateCertRequest": {
+ "addBasicConstraints": "add_basic_constraints",
+ "altNames": "alt_names",
+ "commonName": "common_name",
+ "excludeCnFromSans": "exclude_cn_from_sans",
+ "ipSans": "ip_sans",
+ "keyBits": "key_bits",
+ "keyId": "key_id",
+ "keyName": "key_name",
+ "keyRef": "key_ref",
+ "keyType": "key_type",
+ "managedKeyId": "managed_key_id",
+ "managedKeyName": "managed_key_name",
+ "otherSans": "other_sans",
+ "postalCode": "postal_code",
+ "privateKey": "private_key",
+ "privateKeyFormat": "private_key_format",
+ "privateKeyType": "private_key_type",
+ "streetAddress": "street_address",
+ "uriSans": "uri_sans"
+ },
+ "vault:pkiSecret/secretBackendIntermediateSetSigned:SecretBackendIntermediateSetSigned": {
+ "importedIssuers": "imported_issuers",
+ "importedKeys": "imported_keys"
+ },
+ "vault:pkiSecret/secretBackendIssuer:SecretBackendIssuer": {
+ "crlDistributionPoints": "crl_distribution_points",
+ "enableAiaUrlTemplating": "enable_aia_url_templating",
+ "issuerId": "issuer_id",
+ "issuerName": "issuer_name",
+ "issuerRef": "issuer_ref",
+ "issuingCertificates": "issuing_certificates",
+ "leafNotAfterBehavior": "leaf_not_after_behavior",
+ "manualChains": "manual_chain",
+ "ocspServers": "ocsp_servers",
+ "revocationSignatureAlgorithm": "revocation_signature_algorithm"
+ },
+ "vault:pkiSecret/secretBackendKey:SecretBackendKey": {
+ "keyBits": "key_bits",
+ "keyId": "key_id",
+ "keyName": "key_name",
+ "keyType": "key_type",
+ "managedKeyId": "managed_key_id",
+ "managedKeyName": "managed_key_name"
+ },
+ "vault:pkiSecret/secretBackendRole:SecretBackendRole": {
+ "allowAnyName": "allow_any_name",
+ "allowBareDomains": "allow_bare_domains",
+ "allowGlobDomains": "allow_glob_domains",
+ "allowIpSans": "allow_ip_sans",
+ "allowLocalhost": "allow_localhost",
+ "allowSubdomains": "allow_subdomains",
+ "allowWildcardCertificates": "allow_wildcard_certificates",
+ "allowedDomains": "allowed_domains",
+ "allowedDomainsTemplate": "allowed_domains_template",
+ "allowedOtherSans": "allowed_other_sans",
+ "allowedSerialNumbers": "allowed_serial_numbers",
+ "allowedUriSans": "allowed_uri_sans",
+ "allowedUriSansTemplate": "allowed_uri_sans_template",
+ "allowedUserIds": "allowed_user_ids",
+ "basicConstraintsValidForNonCa": "basic_constraints_valid_for_non_ca",
+ "clientFlag": "client_flag",
+ "codeSigningFlag": "code_signing_flag",
+ "countries": "country",
+ "emailProtectionFlag": "email_protection_flag",
+ "enforceHostnames": "enforce_hostnames",
+ "extKeyUsages": "ext_key_usage",
+ "generateLease": "generate_lease",
+ "issuerRef": "issuer_ref",
+ "keyBits": "key_bits",
+ "keyType": "key_type",
+ "keyUsages": "key_usage",
+ "localities": "locality",
+ "maxTtl": "max_ttl",
+ "noStore": "no_store",
+ "notBeforeDuration": "not_before_duration",
+ "organizationUnit": "ou",
+ "organizations": "organization",
+ "policyIdentifier": "policy_identifier",
+ "policyIdentifiers": "policy_identifiers",
+ "postalCodes": "postal_code",
+ "provinces": "province",
+ "requireCn": "require_cn",
+ "serverFlag": "server_flag",
+ "streetAddresses": "street_address",
+ "useCsrCommonName": "use_csr_common_name",
+ "useCsrSans": "use_csr_sans"
+ },
+ "vault:pkiSecret/secretBackendRootCert:SecretBackendRootCert": {
+ "altNames": "alt_names",
+ "commonName": "common_name",
+ "excludeCnFromSans": "exclude_cn_from_sans",
+ "ipSans": "ip_sans",
+ "issuerId": "issuer_id",
+ "issuerName": "issuer_name",
+ "issuingCa": "issuing_ca",
+ "keyBits": "key_bits",
+ "keyId": "key_id",
+ "keyName": "key_name",
+ "keyRef": "key_ref",
+ "keyType": "key_type",
+ "managedKeyId": "managed_key_id",
+ "managedKeyName": "managed_key_name",
+ "maxPathLength": "max_path_length",
+ "otherSans": "other_sans",
+ "permittedDnsDomains": "permitted_dns_domains",
+ "postalCode": "postal_code",
+ "privateKeyFormat": "private_key_format",
+ "serialNumber": "serial_number",
+ "streetAddress": "street_address",
+ "uriSans": "uri_sans"
+ },
+ "vault:pkiSecret/secretBackendRootSignIntermediate:SecretBackendRootSignIntermediate": {
+ "altNames": "alt_names",
+ "caChains": "ca_chain",
+ "certificateBundle": "certificate_bundle",
+ "commonName": "common_name",
+ "excludeCnFromSans": "exclude_cn_from_sans",
+ "ipSans": "ip_sans",
+ "issuerRef": "issuer_ref",
+ "issuingCa": "issuing_ca",
+ "maxPathLength": "max_path_length",
+ "otherSans": "other_sans",
+ "permittedDnsDomains": "permitted_dns_domains",
+ "postalCode": "postal_code",
+ "serialNumber": "serial_number",
+ "streetAddress": "street_address",
+ "uriSans": "uri_sans",
+ "useCsrValues": "use_csr_values"
+ },
+ "vault:pkiSecret/secretBackendSign:SecretBackendSign": {
+ "altNames": "alt_names",
+ "autoRenew": "auto_renew",
+ "caChains": "ca_chain",
+ "commonName": "common_name",
+ "excludeCnFromSans": "exclude_cn_from_sans",
+ "ipSans": "ip_sans",
+ "issuerRef": "issuer_ref",
+ "issuingCa": "issuing_ca",
+ "minSecondsRemaining": "min_seconds_remaining",
+ "otherSans": "other_sans",
+ "renewPending": "renew_pending",
+ "serialNumber": "serial_number",
+ "uriSans": "uri_sans"
+ },
+ "vault:rabbitMq/SecretBackendRoleVhostTopic:SecretBackendRoleVhostTopic": {
+ "vhosts": "vhost"
+ },
+ "vault:rabbitMq/secretBackend:SecretBackend": {
+ "connectionUri": "connection_uri",
+ "defaultLeaseTtlSeconds": "default_lease_ttl_seconds",
+ "disableRemount": "disable_remount",
+ "maxLeaseTtlSeconds": "max_lease_ttl_seconds",
+ "passwordPolicy": "password_policy",
+ "usernameTemplate": "username_template",
+ "verifyConnection": "verify_connection"
+ },
+ "vault:rabbitMq/secretBackendRole:SecretBackendRole": {
+ "vhostTopics": "vhost_topic",
+ "vhosts": "vhost"
+ },
+ "vault:saml/authBackend:AuthBackend": {
+ "acsUrls": "acs_urls",
+ "defaultRole": "default_role",
+ "disableRemount": "disable_remount",
+ "entityId": "entity_id",
+ "idpCert": "idp_cert",
+ "idpEntityId": "idp_entity_id",
+ "idpMetadataUrl": "idp_metadata_url",
+ "idpSsoUrl": "idp_sso_url",
+ "verboseLogging": "verbose_logging"
+ },
+ "vault:saml/authBackendRole:AuthBackendRole": {
+ "boundAttributes": "bound_attributes",
+ "boundAttributesType": "bound_attributes_type",
+ "boundSubjects": "bound_subjects",
+ "boundSubjectsType": "bound_subjects_type",
+ "groupsAttribute": "groups_attribute",
+ "tokenBoundCidrs": "token_bound_cidrs",
+ "tokenExplicitMaxTtl": "token_explicit_max_ttl",
+ "tokenMaxTtl": "token_max_ttl",
+ "tokenNoDefaultPolicy": "token_no_default_policy",
+ "tokenNumUses": "token_num_uses",
+ "tokenPeriod": "token_period",
+ "tokenPolicies": "token_policies",
+ "tokenTtl": "token_ttl",
+ "tokenType": "token_type"
+ },
+ "vault:ssh/secretBackendCa:SecretBackendCa": {
+ "generateSigningKey": "generate_signing_key",
+ "privateKey": "private_key",
+ "publicKey": "public_key"
+ },
+ "vault:ssh/secretBackendRole:SecretBackendRole": {
+ "algorithmSigner": "algorithm_signer",
+ "allowBareDomains": "allow_bare_domains",
+ "allowHostCertificates": "allow_host_certificates",
+ "allowSubdomains": "allow_subdomains",
+ "allowUserCertificates": "allow_user_certificates",
+ "allowUserKeyIds": "allow_user_key_ids",
+ "allowedCriticalOptions": "allowed_critical_options",
+ "allowedDomains": "allowed_domains",
+ "allowedDomainsTemplate": "allowed_domains_template",
+ "allowedExtensions": "allowed_extensions",
+ "allowedUserKeyConfigs": "allowed_user_key_config",
+ "allowedUserKeyLengths": "allowed_user_key_lengths",
+ "allowedUsers": "allowed_users",
+ "allowedUsersTemplate": "allowed_users_template",
+ "cidrList": "cidr_list",
+ "defaultCriticalOptions": "default_critical_options",
+ "defaultExtensions": "default_extensions",
+ "defaultUser": "default_user",
+ "defaultUserTemplate": "default_user_template",
+ "keyIdFormat": "key_id_format",
+ "keyType": "key_type",
+ "maxTtl": "max_ttl",
+ "notBeforeDuration": "not_before_duration"
+ },
+ "vault:terraformcloud/secretBackend:SecretBackend": {
+ "basePath": "base_path",
+ "defaultLeaseTtlSeconds": "default_lease_ttl_seconds",
+ "disableRemount": "disable_remount",
+ "maxLeaseTtlSeconds": "max_lease_ttl_seconds"
+ },
+ "vault:terraformcloud/secretCreds:SecretCreds": {
+ "leaseId": "lease_id",
+ "teamId": "team_id",
+ "tokenId": "token_id"
+ },
+ "vault:terraformcloud/secretRole:SecretRole": {
+ "maxTtl": "max_ttl",
+ "teamId": "team_id",
+ "userId": "user_id"
+ },
+ "vault:tokenauth/authBackendRole:AuthBackendRole": {
+ "allowedEntityAliases": "allowed_entity_aliases",
+ "allowedPolicies": "allowed_policies",
+ "allowedPoliciesGlobs": "allowed_policies_glob",
+ "disallowedPolicies": "disallowed_policies",
+ "disallowedPoliciesGlobs": "disallowed_policies_glob",
+ "pathSuffix": "path_suffix",
+ "roleName": "role_name",
+ "tokenBoundCidrs": "token_bound_cidrs",
+ "tokenExplicitMaxTtl": "token_explicit_max_ttl",
+ "tokenMaxTtl": "token_max_ttl",
+ "tokenNoDefaultPolicy": "token_no_default_policy",
+ "tokenNumUses": "token_num_uses",
+ "tokenPeriod": "token_period",
+ "tokenPolicies": "token_policies",
+ "tokenTtl": "token_ttl",
+ "tokenType": "token_type"
+ },
+ "vault:transform/getDecode:getDecode": {
+ "batchInputs": "batch_input",
+ "batchResults": "batch_results",
+ "decodedValue": "decoded_value",
+ "roleName": "role_name"
+ },
+ "vault:transform/getEncode:getEncode": {
+ "batchInputs": "batch_input",
+ "batchResults": "batch_results",
+ "encodedValue": "encoded_value",
+ "roleName": "role_name"
+ },
+ "vault:transform/template:Template": {
+ "decodeFormats": "decode_formats",
+ "encodeFormat": "encode_format"
+ },
+ "vault:transform/transformation:Transformation": {
+ "allowedRoles": "allowed_roles",
+ "deletionAllowed": "deletion_allowed",
+ "maskingCharacter": "masking_character",
+ "tweakSource": "tweak_source"
+ },
+ "vault:transit/getEncrypt:getEncrypt": {
+ "keyVersion": "key_version"
+ },
+ "vault:transit/secretBackendKey:SecretBackendKey": {
+ "allowPlaintextBackup": "allow_plaintext_backup",
+ "autoRotateInterval": "auto_rotate_interval",
+ "autoRotatePeriod": "auto_rotate_period",
+ "convergentEncryption": "convergent_encryption",
+ "deletionAllowed": "deletion_allowed",
+ "keySize": "key_size",
+ "latestVersion": "latest_version",
+ "minAvailableVersion": "min_available_version",
+ "minDecryptionVersion": "min_decryption_version",
+ "minEncryptionVersion": "min_encryption_version",
+ "supportsDecryption": "supports_decryption",
+ "supportsDerivation": "supports_derivation",
+ "supportsEncryption": "supports_encryption",
+ "supportsSigning": "supports_signing"
+ }
+ },
+ "renamedConfigProperties": {
+ "addAddressToEnv": "add_address_to_env",
+ "authLogin": "auth_login",
+ "authLoginAws": "auth_login_aws",
+ "authLoginAzure": "auth_login_azure",
+ "authLoginCert": "auth_login_cert",
+ "authLoginGcp": "auth_login_gcp",
+ "authLoginJwt": "auth_login_jwt",
+ "authLoginKerberos": "auth_login_kerberos",
+ "authLoginOci": "auth_login_oci",
+ "authLoginOidc": "auth_login_oidc",
+ "authLoginRadius": "auth_login_radius",
+ "authLoginTokenFile": "auth_login_token_file",
+ "authLoginUserpass": "auth_login_userpass",
+ "caCertDir": "ca_cert_dir",
+ "caCertFile": "ca_cert_file",
+ "clientAuth": "client_auth",
+ "maxLeaseTtlSeconds": "max_lease_ttl_seconds",
+ "maxRetries": "max_retries",
+ "maxRetriesCcc": "max_retries_ccc",
+ "setNamespaceFromToken": "set_namespace_from_token",
+ "skipChildToken": "skip_child_token",
+ "skipGetVaultVersion": "skip_get_vault_version",
+ "skipTlsVerify": "skip_tls_verify",
+ "tlsServerName": "tls_server_name",
+ "tokenName": "token_name",
+ "vaultVersionOverride": "vault_version_override"
+ }
+ }
+}
\ No newline at end of file
diff --git a/provider/cmd/pulumi-resource-vault/schema.json b/provider/cmd/pulumi-resource-vault/schema.json
index 753724274..ca147bf70 100644
--- a/provider/cmd/pulumi-resource-vault/schema.json
+++ b/provider/cmd/pulumi-resource-vault/schema.json
@@ -15,7 +15,9 @@
},
"language": {
"csharp": {
- "compatibility": "tfbridge20",
+ "packageReferences": {
+ "Pulumi": "3.*"
+ },
"namespaces": {
"ad": "AD",
"alicloud": "AliCloud",
@@ -39,6 +41,7 @@
"okta": "Okta",
"pkiSecret": "PkiSecret",
"rabbitMq": "RabbitMQ",
+ "saml": "Saml",
"ssh": "Ssh",
"terraformcloud": "TerraformCloud",
"tokenauth": "TokenAuth",
@@ -46,17 +49,16 @@
"transit": "Transit",
"vault": "Vault"
},
- "packageReferences": {
- "Pulumi": "3.*"
- }
+ "compatibility": "tfbridge20"
},
"go": {
- "generateExtraInputTypes": true,
+ "importBasePath": "github.com/pulumi/pulumi-vault/sdk/v5/go/vault",
"generateResourceContainerTypes": true,
- "importBasePath": "github.com/pulumi/pulumi-vault/sdk/v5/go/vault"
+ "generateExtraInputTypes": true
},
"nodejs": {
- "compatibility": "tfbridge20",
+ "packageDescription": "A Pulumi package for creating and managing HashiCorp Vault cloud resources.",
+ "readme": "\u003e This provider is a derived work of the [Terraform Provider](https://github.com/hashicorp/terraform-provider-vault)\n\u003e distributed under [MPL 2.0](https://www.mozilla.org/en-US/MPL/2.0/). If you encounter a bug or missing feature,\n\u003e first check the [`pulumi-vault` repo](https://github.com/pulumi/pulumi-vault/issues); however, if that doesn't turn up anything,\n\u003e please consult the source [`terraform-provider-vault` repo](https://github.com/hashicorp/terraform-provider-vault/issues).",
"dependencies": {
"@pulumi/pulumi": "^3.0.0"
},
@@ -64,18 +66,16 @@
"@types/mime": "^2.0.0",
"@types/node": "^10.0.0"
},
- "disableUnionOutputTypes": true,
- "packageDescription": "A Pulumi package for creating and managing HashiCorp Vault cloud resources.",
- "packageName": "",
- "readme": "\u003e This provider is a derived work of the [Terraform Provider](https://github.com/hashicorp/terraform-provider-vault)\n\u003e distributed under [MPL 2.0](https://www.mozilla.org/en-US/MPL/2.0/). If you encounter a bug or missing feature,\n\u003e first check the [`pulumi-vault` repo](https://github.com/pulumi/pulumi-vault/issues); however, if that doesn't turn up anything,\n\u003e please consult the source [`terraform-provider-vault` repo](https://github.com/hashicorp/terraform-provider-vault/issues).",
- "typescriptVersion": ""
+ "compatibility": "tfbridge20",
+ "disableUnionOutputTypes": true
},
"python": {
- "compatibility": "tfbridge20",
- "readme": "\u003e This provider is a derived work of the [Terraform Provider](https://github.com/hashicorp/terraform-provider-vault)\n\u003e distributed under [MPL 2.0](https://www.mozilla.org/en-US/MPL/2.0/). If you encounter a bug or missing feature,\n\u003e first check the [`pulumi-vault` repo](https://github.com/pulumi/pulumi-vault/issues); however, if that doesn't turn up anything,\n\u003e please consult the source [`terraform-provider-vault` repo](https://github.com/hashicorp/terraform-provider-vault/issues).",
"requires": {
"pulumi": "\u003e=3.0.0,\u003c4.0.0"
- }
+ },
+ "readme": "\u003e This provider is a derived work of the [Terraform Provider](https://github.com/hashicorp/terraform-provider-vault)\n\u003e distributed under [MPL 2.0](https://www.mozilla.org/en-US/MPL/2.0/). If you encounter a bug or missing feature,\n\u003e first check the [`pulumi-vault` repo](https://github.com/pulumi/pulumi-vault/issues); however, if that doesn't turn up anything,\n\u003e please consult the source [`terraform-provider-vault` repo](https://github.com/hashicorp/terraform-provider-vault/issues).",
+ "compatibility": "tfbridge20",
+ "pyproject": {}
}
},
"config": {
@@ -154,7 +154,8 @@
"items": {
"$ref": "#/types/vault:config/headers:headers"
},
- "description": "The headers to send with each Vault request.\n"
+ "description": "The headers to send with each Vault request.\n",
+ "secret": true
},
"maxLeaseTtlSeconds": {
"type": "integer",
@@ -184,6 +185,10 @@
"type": "string",
"description": "The namespace to use. Available only for Vault Enterprise.\n"
},
+ "setNamespaceFromToken": {
+ "type": "boolean",
+ "description": "In the case where the Vault token is for a specific namespace and the provider namespace is not configured, use the\ntoken namespace as the root namespace for all resources.\n"
+ },
"skipChildToken": {
"type": "boolean",
"description": "Set this to true to prevent the creation of ephemeral child token used by this provider.\n"
@@ -227,20 +232,10 @@
"vault:azure/BackendRoleAzureGroup:BackendRoleAzureGroup": {
"properties": {
"groupName": {
- "type": "string",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "type": "string"
},
"objectId": {
- "type": "string",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "type": "string"
}
},
"type": "object",
@@ -259,28 +254,13 @@
"vault:azure/BackendRoleAzureRole:BackendRoleAzureRole": {
"properties": {
"roleId": {
- "type": "string",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "type": "string"
},
"roleName": {
- "type": "string",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "type": "string"
},
"scope": {
- "type": "string",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "type": "string"
}
},
"type": "object",
@@ -309,10 +289,14 @@
"type": "object",
"additionalProperties": {
"type": "string"
- }
+ },
+ "secret": true
},
"path": {
"type": "string"
+ },
+ "useRootNamespace": {
+ "type": "boolean"
}
},
"type": "object",
@@ -371,6 +355,9 @@
},
"role": {
"type": "string"
+ },
+ "useRootNamespace": {
+ "type": "boolean"
}
},
"type": "object",
@@ -412,6 +399,9 @@
"tenantId": {
"type": "string"
},
+ "useRootNamespace": {
+ "type": "boolean"
+ },
"vmName": {
"type": "string"
},
@@ -447,6 +437,9 @@
},
"namespace": {
"type": "string"
+ },
+ "useRootNamespace": {
+ "type": "boolean"
}
},
"type": "object",
@@ -479,6 +472,9 @@
},
"serviceAccount": {
"type": "string"
+ },
+ "useRootNamespace": {
+ "type": "boolean"
}
},
"type": "object",
@@ -504,6 +500,9 @@
},
"role": {
"type": "string"
+ },
+ "useRootNamespace": {
+ "type": "boolean"
}
},
"type": "object",
@@ -546,6 +545,9 @@
"token": {
"type": "string"
},
+ "useRootNamespace": {
+ "type": "boolean"
+ },
"username": {
"type": "string"
}
@@ -565,6 +567,9 @@
},
"role": {
"type": "string"
+ },
+ "useRootNamespace": {
+ "type": "boolean"
}
},
"type": "object",
@@ -594,6 +599,9 @@
},
"role": {
"type": "string"
+ },
+ "useRootNamespace": {
+ "type": "boolean"
}
},
"type": "object",
@@ -617,6 +625,9 @@
"password": {
"type": "string"
},
+ "useRootNamespace": {
+ "type": "boolean"
+ },
"username": {
"type": "string"
}
@@ -639,6 +650,9 @@
},
"namespace": {
"type": "string"
+ },
+ "useRootNamespace": {
+ "type": "boolean"
}
},
"type": "object",
@@ -665,6 +679,9 @@
"passwordFile": {
"type": "string"
},
+ "useRootNamespace": {
+ "type": "boolean"
+ },
"username": {
"type": "string"
}
@@ -723,99 +740,49 @@
"properties": {
"connectTimeout": {
"type": "integer",
- "description": "The number of seconds to use as a connection\ntimeout.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The number of seconds to use as a connection\ntimeout.\n"
},
"hosts": {
"type": "array",
"items": {
"type": "string"
},
- "description": "A set of Couchbase URIs to connect to. Must use `couchbases://` scheme if `tls` is `true`.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The hosts to connect to.\n"
},
"insecureTls": {
"type": "boolean",
- "description": "Whether to skip verification of the server\ncertificate when using TLS.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "Whether to skip verification of the server\ncertificate when using TLS.\n"
},
"password": {
"type": "string",
- "description": "The root credential password used in the connection URL.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- },
+ "description": "The password to authenticate with.\n",
"secret": true
},
"pemBundle": {
"type": "string",
"description": "Concatenated PEM blocks configuring the certificate\nchain.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- },
"secret": true
},
"pemJson": {
"type": "string",
"description": "A JSON structure configuring the certificate chain.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- },
"secret": true
},
"port": {
"type": "integer",
- "description": "The default port to connect to if no port is specified as\npart of the host.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The default port to connect to if no port is specified as\npart of the host.\n"
},
"protocolVersion": {
"type": "integer",
- "description": "The CQL protocol version to use.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The CQL protocol version to use.\n"
},
"tls": {
"type": "boolean",
- "description": "Whether to use TLS when connecting to Redis.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "Whether to use TLS when connecting to Cassandra.\n"
},
"username": {
"type": "string",
- "description": "The root credential username used in the connection URL.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The username to authenticate with.\n"
}
},
"type": "object"
@@ -825,79 +792,39 @@
"base64Pem": {
"type": "string",
"description": "Required if `tls` is `true`. Specifies the certificate authority of the Couchbase server, as a PEM certificate that has been base64 encoded.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- },
"secret": true
},
"bucketName": {
"type": "string",
- "description": "Required for Couchbase versions prior to 6.5.0. This is only used to verify vault's connection to the server.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "Required for Couchbase versions prior to 6.5.0. This is only used to verify vault's connection to the server.\n"
},
"hosts": {
"type": "array",
"items": {
"type": "string"
},
- "description": "A set of Couchbase URIs to connect to. Must use `couchbases://` scheme if `tls` is `true`.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The hosts to connect to.\n"
},
"insecureTls": {
"type": "boolean",
- "description": "Whether to skip verification of the server\ncertificate when using TLS.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "Whether to skip verification of the server\ncertificate when using TLS.\n"
},
"password": {
"type": "string",
- "description": "The root credential password used in the connection URL.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- },
+ "description": "The password to authenticate with.\n",
"secret": true
},
"tls": {
"type": "boolean",
- "description": "Whether to use TLS when connecting to Redis.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "Whether to use TLS when connecting to Cassandra.\n"
},
"username": {
"type": "string",
- "description": "The root credential username used in the connection URL.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The username to authenticate with.\n"
},
"usernameTemplate": {
"type": "string",
- "description": "- [Template](https://www.vaultproject.io/docs/concepts/username-templating) describing how dynamic usernames are generated.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "Template describing how dynamic usernames are generated.\n"
}
},
"type": "object",
@@ -911,94 +838,44 @@
"properties": {
"caCert": {
"type": "string",
- "description": "The path to a PEM-encoded CA cert file to use to verify the Elasticsearch server's identity.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The path to a PEM-encoded CA cert file to use to verify the Elasticsearch server's identity.\n"
},
"caPath": {
"type": "string",
- "description": "The path to a directory of PEM-encoded CA cert files to use to verify the Elasticsearch server's identity.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The path to a directory of PEM-encoded CA cert files to use to verify the Elasticsearch server's identity.\n"
},
"clientCert": {
"type": "string",
- "description": "The path to the certificate for the Elasticsearch client to present for communication.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The path to the certificate for the Elasticsearch client to present for communication.\n"
},
"clientKey": {
"type": "string",
- "description": "The path to the key for the Elasticsearch client to use for communication.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The path to the key for the Elasticsearch client to use for communication.\n"
},
"insecure": {
"type": "boolean",
- "description": "Whether to disable certificate verification.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "Whether to disable certificate verification.\n"
},
"password": {
"type": "string",
- "description": "The root credential password used in the connection URL.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- },
+ "description": "The password to authenticate with.\n",
"secret": true
},
"tlsServerName": {
"type": "string",
- "description": "This, if set, is used to set the SNI host when connecting via TLS.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "This, if set, is used to set the SNI host when connecting via TLS.\n"
},
"url": {
"type": "string",
- "description": "The URL for Elasticsearch's API. https requires certificate\nby trusted CA if used.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The URL for Elasticsearch's API. https requires certificate\nby trusted CA if used.\n"
},
"username": {
"type": "string",
- "description": "The root credential username used in the connection URL.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The username to authenticate with.\n"
},
"usernameTemplate": {
"type": "string",
- "description": "- [Template](https://www.vaultproject.io/docs/concepts/username-templating) describing how dynamic usernames are generated.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "Template describing how dynamic usernames are generated.\n"
}
},
"type": "object",
@@ -1012,67 +889,32 @@
"properties": {
"connectionUrl": {
"type": "string",
- "description": "Specifies the Redshift DSN. See\nthe [Vault\ndocs](https://www.vaultproject.io/api-docs/secret/databases/redshift#sample-payload)\nfor an example.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "A URL containing connection information. See\nthe [Vault\ndocs](https://www.vaultproject.io/api-docs/secret/databases/mongodb.html#sample-payload)\nfor an example.\n"
},
"disableEscaping": {
"type": "boolean",
- "description": "Disable special character escaping in username and password.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "Disable special character escaping in username and password.\n"
},
"maxConnectionLifetime": {
"type": "integer",
- "description": "The maximum amount of time a connection may be reused.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The maximum number of seconds to keep\na connection alive for.\n"
},
"maxIdleConnections": {
"type": "integer",
- "description": "The maximum number of idle connections to\nthe database.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The maximum number of idle connections to\nmaintain.\n"
},
"maxOpenConnections": {
"type": "integer",
- "description": "The maximum number of open connections to\nthe database.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The maximum number of open connections to\nuse.\n"
},
"password": {
"type": "string",
- "description": "The root credential password used in the connection URL.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- },
+ "description": "The password to authenticate with.\n",
"secret": true
},
"username": {
"type": "string",
- "description": "The root credential username used in the connection URL.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The username to authenticate with.\n"
}
},
"type": "object"
@@ -1081,96 +923,46 @@
"properties": {
"connectTimeout": {
"type": "integer",
- "description": "The number of seconds to use as a connection\ntimeout.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The number of seconds to use as a connection\ntimeout.\n"
},
"host": {
"type": "string",
- "description": "The host to connect to.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The host to connect to.\n"
},
"insecureTls": {
"type": "boolean",
- "description": "Whether to skip verification of the server\ncertificate when using TLS.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "Whether to skip verification of the server\ncertificate when using TLS.\n"
},
"password": {
"type": "string",
- "description": "The root credential password used in the connection URL.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- },
+ "description": "The password to authenticate with.\n",
"secret": true
},
"pemBundle": {
"type": "string",
"description": "Concatenated PEM blocks configuring the certificate\nchain.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- },
"secret": true
},
"pemJson": {
"type": "string",
"description": "A JSON structure configuring the certificate chain.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- },
"secret": true
},
"port": {
"type": "integer",
- "description": "The default port to connect to if no port is specified as\npart of the host.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The default port to connect to if no port is specified as\npart of the host.\n"
},
"tls": {
"type": "boolean",
- "description": "Whether to use TLS when connecting to Redis.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "Whether to use TLS when connecting to Cassandra.\n"
},
"username": {
"type": "string",
- "description": "The root credential username used in the connection URL.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The username to authenticate with.\n"
},
"usernameTemplate": {
"type": "string",
- "description": "- [Template](https://www.vaultproject.io/docs/concepts/username-templating) describing how dynamic usernames are generated.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "Template describing how dynamic usernames are generated.\n"
}
},
"type": "object",
@@ -1184,67 +976,32 @@
"properties": {
"connectionUrl": {
"type": "string",
- "description": "Specifies the Redshift DSN. See\nthe [Vault\ndocs](https://www.vaultproject.io/api-docs/secret/databases/redshift#sample-payload)\nfor an example.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "A URL containing connection information. See\nthe [Vault\ndocs](https://www.vaultproject.io/api-docs/secret/databases/mongodb.html#sample-payload)\nfor an example.\n"
},
"maxConnectionLifetime": {
"type": "integer",
- "description": "The maximum amount of time a connection may be reused.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The maximum number of seconds to keep\na connection alive for.\n"
},
"maxIdleConnections": {
"type": "integer",
- "description": "The maximum number of idle connections to\nthe database.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The maximum number of idle connections to\nmaintain.\n"
},
"maxOpenConnections": {
"type": "integer",
- "description": "The maximum number of open connections to\nthe database.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The maximum number of open connections to\nuse.\n"
},
"password": {
"type": "string",
- "description": "The root credential password used in the connection URL.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- },
+ "description": "The password to authenticate with.\n",
"secret": true
},
"username": {
"type": "string",
- "description": "The root credential username used in the connection URL.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The username to authenticate with.\n"
},
"usernameTemplate": {
"type": "string",
- "description": "- [Template](https://www.vaultproject.io/docs/concepts/username-templating) describing how dynamic usernames are generated.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "Template describing how dynamic usernames are generated.\n"
}
},
"type": "object"
@@ -1254,30 +1011,15 @@
"privateKey": {
"type": "string",
"description": "The Private Programmatic API Key used to connect with MongoDB Atlas API.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- },
"secret": true
},
"projectId": {
"type": "string",
- "description": "The Project ID the Database User should be created within.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The Project ID the Database User should be created within.\n"
},
"publicKey": {
"type": "string",
- "description": "The Public Programmatic API Key used to authenticate with the MongoDB Atlas API.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The Public Programmatic API Key used to authenticate with the MongoDB Atlas API.\n"
}
},
"type": "object",
@@ -1291,85 +1033,40 @@
"properties": {
"connectionUrl": {
"type": "string",
- "description": "Specifies the Redshift DSN. See\nthe [Vault\ndocs](https://www.vaultproject.io/api-docs/secret/databases/redshift#sample-payload)\nfor an example.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "A URL containing connection information. See\nthe [Vault\ndocs](https://www.vaultproject.io/api-docs/secret/databases/mongodb.html#sample-payload)\nfor an example.\n"
},
"containedDb": {
"type": "boolean",
- "description": "For Vault v1.9+. Set to true when the target is a\nContained Database, e.g. AzureSQL.\nSee the [Vault\ndocs](https://www.vaultproject.io/api/secret/databases/mssql#contained_db)\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "For Vault v1.9+. Set to true when the target is a\nContained Database, e.g. AzureSQL.\nSee the [Vault\ndocs](https://www.vaultproject.io/api/secret/databases/mssql#contained_db)\n"
},
"disableEscaping": {
"type": "boolean",
- "description": "Disable special character escaping in username and password.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "Disable special character escaping in username and password.\n"
},
"maxConnectionLifetime": {
"type": "integer",
- "description": "The maximum amount of time a connection may be reused.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The maximum number of seconds to keep\na connection alive for.\n"
},
"maxIdleConnections": {
"type": "integer",
- "description": "The maximum number of idle connections to\nthe database.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The maximum number of idle connections to\nmaintain.\n"
},
"maxOpenConnections": {
"type": "integer",
- "description": "The maximum number of open connections to\nthe database.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The maximum number of open connections to\nuse.\n"
},
"password": {
"type": "string",
- "description": "The root credential password used in the connection URL.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- },
+ "description": "The password to authenticate with.\n",
"secret": true
},
"username": {
"type": "string",
- "description": "The root credential username used in the connection URL.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The username to authenticate with.\n"
},
"usernameTemplate": {
"type": "string",
- "description": "- [Template](https://www.vaultproject.io/docs/concepts/username-templating) describing how dynamic usernames are generated.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "Template describing how dynamic usernames are generated.\n"
}
},
"type": "object"
@@ -1378,105 +1075,50 @@
"properties": {
"authType": {
"type": "string",
- "description": "Enable IAM authentication to a Google Cloud instance when set to `gcp_iam`\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "Enable IAM authentication to a Google Cloud instance when set to `gcp_iam`\n"
},
"connectionUrl": {
"type": "string",
- "description": "Specifies the Redshift DSN. See\nthe [Vault\ndocs](https://www.vaultproject.io/api-docs/secret/databases/redshift#sample-payload)\nfor an example.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "A URL containing connection information. See\nthe [Vault\ndocs](https://www.vaultproject.io/api-docs/secret/databases/mongodb.html#sample-payload)\nfor an example.\n"
},
"maxConnectionLifetime": {
"type": "integer",
- "description": "The maximum amount of time a connection may be reused.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The maximum number of seconds to keep\na connection alive for.\n"
},
"maxIdleConnections": {
"type": "integer",
- "description": "The maximum number of idle connections to\nthe database.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The maximum number of idle connections to\nmaintain.\n"
},
"maxOpenConnections": {
"type": "integer",
- "description": "The maximum number of open connections to\nthe database.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The maximum number of open connections to\nuse.\n"
},
"password": {
"type": "string",
- "description": "The root credential password used in the connection URL.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- },
+ "description": "The password to authenticate with.\n",
"secret": true
},
"serviceAccountJson": {
"type": "string",
"description": "JSON encoding of an IAM access key. Requires `auth_type` to be `gcp_iam`.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- },
"secret": true
},
"tlsCa": {
"type": "string",
- "description": "x509 CA file for validating the certificate presented by the MySQL server. Must be PEM encoded.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "x509 CA file for validating the certificate presented by the MySQL server. Must be PEM encoded.\n"
},
"tlsCertificateKey": {
"type": "string",
"description": "x509 certificate for connecting to the database. This must be a PEM encoded version of the private key and the certificate combined.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- },
"secret": true
},
"username": {
"type": "string",
- "description": "The root credential username used in the connection URL.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The username to authenticate with.\n"
},
"usernameTemplate": {
"type": "string",
- "description": "- [Template](https://www.vaultproject.io/docs/concepts/username-templating) describing how dynamic usernames are generated.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "Template describing how dynamic usernames are generated.\n"
}
},
"type": "object"
@@ -1485,67 +1127,32 @@
"properties": {
"connectionUrl": {
"type": "string",
- "description": "Specifies the Redshift DSN. See\nthe [Vault\ndocs](https://www.vaultproject.io/api-docs/secret/databases/redshift#sample-payload)\nfor an example.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "A URL containing connection information. See\nthe [Vault\ndocs](https://www.vaultproject.io/api-docs/secret/databases/mongodb.html#sample-payload)\nfor an example.\n"
},
"maxConnectionLifetime": {
"type": "integer",
- "description": "The maximum amount of time a connection may be reused.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The maximum number of seconds to keep\na connection alive for.\n"
},
"maxIdleConnections": {
"type": "integer",
- "description": "The maximum number of idle connections to\nthe database.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The maximum number of idle connections to\nmaintain.\n"
},
"maxOpenConnections": {
"type": "integer",
- "description": "The maximum number of open connections to\nthe database.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The maximum number of open connections to\nuse.\n"
},
"password": {
"type": "string",
- "description": "The root credential password used in the connection URL.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- },
+ "description": "The password to authenticate with.\n",
"secret": true
},
"username": {
"type": "string",
- "description": "The root credential username used in the connection URL.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The username to authenticate with.\n"
},
"usernameTemplate": {
"type": "string",
- "description": "- [Template](https://www.vaultproject.io/docs/concepts/username-templating) describing how dynamic usernames are generated.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "Template describing how dynamic usernames are generated.\n"
}
},
"type": "object"
@@ -1554,67 +1161,32 @@
"properties": {
"connectionUrl": {
"type": "string",
- "description": "Specifies the Redshift DSN. See\nthe [Vault\ndocs](https://www.vaultproject.io/api-docs/secret/databases/redshift#sample-payload)\nfor an example.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "A URL containing connection information. See\nthe [Vault\ndocs](https://www.vaultproject.io/api-docs/secret/databases/mongodb.html#sample-payload)\nfor an example.\n"
},
"maxConnectionLifetime": {
"type": "integer",
- "description": "The maximum amount of time a connection may be reused.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The maximum number of seconds to keep\na connection alive for.\n"
},
"maxIdleConnections": {
"type": "integer",
- "description": "The maximum number of idle connections to\nthe database.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The maximum number of idle connections to\nmaintain.\n"
},
"maxOpenConnections": {
"type": "integer",
- "description": "The maximum number of open connections to\nthe database.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The maximum number of open connections to\nuse.\n"
},
"password": {
"type": "string",
- "description": "The root credential password used in the connection URL.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- },
+ "description": "The password to authenticate with.\n",
"secret": true
},
"username": {
"type": "string",
- "description": "The root credential username used in the connection URL.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The username to authenticate with.\n"
},
"usernameTemplate": {
"type": "string",
- "description": "- [Template](https://www.vaultproject.io/docs/concepts/username-templating) describing how dynamic usernames are generated.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "Template describing how dynamic usernames are generated.\n"
}
},
"type": "object"
@@ -1623,67 +1195,32 @@
"properties": {
"connectionUrl": {
"type": "string",
- "description": "Specifies the Redshift DSN. See\nthe [Vault\ndocs](https://www.vaultproject.io/api-docs/secret/databases/redshift#sample-payload)\nfor an example.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "A URL containing connection information. See\nthe [Vault\ndocs](https://www.vaultproject.io/api-docs/secret/databases/mongodb.html#sample-payload)\nfor an example.\n"
},
"maxConnectionLifetime": {
"type": "integer",
- "description": "The maximum amount of time a connection may be reused.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The maximum number of seconds to keep\na connection alive for.\n"
},
"maxIdleConnections": {
"type": "integer",
- "description": "The maximum number of idle connections to\nthe database.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The maximum number of idle connections to\nmaintain.\n"
},
"maxOpenConnections": {
"type": "integer",
- "description": "The maximum number of open connections to\nthe database.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The maximum number of open connections to\nuse.\n"
},
"password": {
"type": "string",
- "description": "The root credential password used in the connection URL.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- },
+ "description": "The password to authenticate with.\n",
"secret": true
},
"username": {
"type": "string",
- "description": "The root credential username used in the connection URL.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The username to authenticate with.\n"
},
"usernameTemplate": {
"type": "string",
- "description": "- [Template](https://www.vaultproject.io/docs/concepts/username-templating) describing how dynamic usernames are generated.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "Template describing how dynamic usernames are generated.\n"
}
},
"type": "object"
@@ -1692,67 +1229,32 @@
"properties": {
"connectionUrl": {
"type": "string",
- "description": "Specifies the Redshift DSN. See\nthe [Vault\ndocs](https://www.vaultproject.io/api-docs/secret/databases/redshift#sample-payload)\nfor an example.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "A URL containing connection information. See\nthe [Vault\ndocs](https://www.vaultproject.io/api-docs/secret/databases/mongodb.html#sample-payload)\nfor an example.\n"
},
"maxConnectionLifetime": {
"type": "integer",
- "description": "The maximum amount of time a connection may be reused.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The maximum number of seconds to keep\na connection alive for.\n"
},
"maxIdleConnections": {
"type": "integer",
- "description": "The maximum number of idle connections to\nthe database.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The maximum number of idle connections to\nmaintain.\n"
},
"maxOpenConnections": {
"type": "integer",
- "description": "The maximum number of open connections to\nthe database.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The maximum number of open connections to\nuse.\n"
},
"password": {
"type": "string",
- "description": "The root credential password used in the connection URL.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- },
+ "description": "The password to authenticate with.\n",
"secret": true
},
"username": {
"type": "string",
- "description": "The root credential username used in the connection URL.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The username to authenticate with.\n"
},
"usernameTemplate": {
"type": "string",
- "description": "- [Template](https://www.vaultproject.io/docs/concepts/username-templating) describing how dynamic usernames are generated.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "Template describing how dynamic usernames are generated.\n"
}
},
"type": "object"
@@ -1761,95 +1263,45 @@
"properties": {
"authType": {
"type": "string",
- "description": "Enable IAM authentication to a Google Cloud instance when set to `gcp_iam`\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "Enable IAM authentication to a Google Cloud instance when set to `gcp_iam`\n"
},
"connectionUrl": {
"type": "string",
- "description": "Specifies the Redshift DSN. See\nthe [Vault\ndocs](https://www.vaultproject.io/api-docs/secret/databases/redshift#sample-payload)\nfor an example.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "A URL containing connection information. See\nthe [Vault\ndocs](https://www.vaultproject.io/api-docs/secret/databases/mongodb.html#sample-payload)\nfor an example.\n"
},
"disableEscaping": {
"type": "boolean",
- "description": "Disable special character escaping in username and password.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "Disable special character escaping in username and password.\n"
},
"maxConnectionLifetime": {
"type": "integer",
- "description": "The maximum amount of time a connection may be reused.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The maximum number of seconds to keep\na connection alive for.\n"
},
"maxIdleConnections": {
"type": "integer",
- "description": "The maximum number of idle connections to\nthe database.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The maximum number of idle connections to\nmaintain.\n"
},
"maxOpenConnections": {
"type": "integer",
- "description": "The maximum number of open connections to\nthe database.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The maximum number of open connections to\nuse.\n"
},
"password": {
"type": "string",
- "description": "The root credential password used in the connection URL.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- },
+ "description": "The password to authenticate with.\n",
"secret": true
},
"serviceAccountJson": {
"type": "string",
"description": "JSON encoding of an IAM access key. Requires `auth_type` to be `gcp_iam`.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- },
"secret": true
},
"username": {
"type": "string",
- "description": "The root credential username used in the connection URL.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The username to authenticate with.\n"
},
"usernameTemplate": {
"type": "string",
- "description": "- [Template](https://www.vaultproject.io/docs/concepts/username-templating) describing how dynamic usernames are generated.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "Template describing how dynamic usernames are generated.\n"
}
},
"type": "object"
@@ -1858,67 +1310,32 @@
"properties": {
"caCert": {
"type": "string",
- "description": "The path to a PEM-encoded CA cert file to use to verify the Elasticsearch server's identity.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The path to a PEM-encoded CA cert file to use to verify the Elasticsearch server's identity.\n"
},
"host": {
"type": "string",
- "description": "The host to connect to.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The host to connect to.\n"
},
"insecureTls": {
"type": "boolean",
- "description": "Whether to skip verification of the server\ncertificate when using TLS.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "Whether to skip verification of the server\ncertificate when using TLS.\n"
},
"password": {
"type": "string",
- "description": "The root credential password used in the connection URL.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- },
+ "description": "The password to authenticate with.\n",
"secret": true
},
"port": {
"type": "integer",
- "description": "The default port to connect to if no port is specified as\npart of the host.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The default port to connect to if no port is specified as\npart of the host.\n"
},
"tls": {
"type": "boolean",
- "description": "Whether to use TLS when connecting to Redis.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "Whether to use TLS when connecting to Cassandra.\n"
},
"username": {
"type": "string",
- "description": "The root credential username used in the connection URL.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The username to authenticate with.\n"
}
},
"type": "object",
@@ -1932,40 +1349,20 @@
"properties": {
"password": {
"type": "string",
- "description": "The root credential password used in the connection URL.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- },
+ "description": "The password to authenticate with.\n",
"secret": true
},
"region": {
"type": "string",
- "description": "The region where the ElastiCache cluster is hosted. If omitted Vault tries to infer from the environment instead.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The region where the ElastiCache cluster is hosted. If omitted Vault tries to infer from the environment instead.\n"
},
"url": {
"type": "string",
- "description": "The URL for Elasticsearch's API. https requires certificate\nby trusted CA if used.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The URL for Elasticsearch's API. https requires certificate\nby trusted CA if used.\n"
},
"username": {
"type": "string",
- "description": "The root credential username used in the connection URL.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- },
+ "description": "The username to authenticate with.\n",
"secret": true
}
},
@@ -1978,76 +1375,36 @@
"properties": {
"connectionUrl": {
"type": "string",
- "description": "Specifies the Redshift DSN. See\nthe [Vault\ndocs](https://www.vaultproject.io/api-docs/secret/databases/redshift#sample-payload)\nfor an example.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "A URL containing connection information. See\nthe [Vault\ndocs](https://www.vaultproject.io/api-docs/secret/databases/mongodb.html#sample-payload)\nfor an example.\n"
},
"disableEscaping": {
"type": "boolean",
- "description": "Disable special character escaping in username and password.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "Disable special character escaping in username and password.\n"
},
"maxConnectionLifetime": {
"type": "integer",
- "description": "The maximum amount of time a connection may be reused.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The maximum number of seconds to keep\na connection alive for.\n"
},
"maxIdleConnections": {
"type": "integer",
- "description": "The maximum number of idle connections to\nthe database.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The maximum number of idle connections to\nmaintain.\n"
},
"maxOpenConnections": {
"type": "integer",
- "description": "The maximum number of open connections to\nthe database.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The maximum number of open connections to\nuse.\n"
},
"password": {
"type": "string",
- "description": "The root credential password used in the connection URL.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- },
+ "description": "The password to authenticate with.\n",
"secret": true
},
"username": {
"type": "string",
- "description": "The root credential username used in the connection URL.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The username to authenticate with.\n"
},
"usernameTemplate": {
"type": "string",
- "description": "- [Template](https://www.vaultproject.io/docs/concepts/username-templating) describing how dynamic usernames are generated.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "Template describing how dynamic usernames are generated.\n"
}
},
"type": "object"
@@ -2056,67 +1413,32 @@
"properties": {
"connectionUrl": {
"type": "string",
- "description": "Specifies the Redshift DSN. See\nthe [Vault\ndocs](https://www.vaultproject.io/api-docs/secret/databases/redshift#sample-payload)\nfor an example.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "A URL containing connection information. See\nthe [Vault\ndocs](https://www.vaultproject.io/api-docs/secret/databases/mongodb.html#sample-payload)\nfor an example.\n"
},
"maxConnectionLifetime": {
"type": "integer",
- "description": "The maximum amount of time a connection may be reused.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The maximum number of seconds to keep\na connection alive for.\n"
},
"maxIdleConnections": {
"type": "integer",
- "description": "The maximum number of idle connections to\nthe database.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The maximum number of idle connections to\nmaintain.\n"
},
"maxOpenConnections": {
"type": "integer",
- "description": "The maximum number of open connections to\nthe database.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The maximum number of open connections to\nuse.\n"
},
"password": {
"type": "string",
- "description": "The root credential password used in the connection URL.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- },
+ "description": "The password to authenticate with.\n",
"secret": true
},
"username": {
"type": "string",
- "description": "The root credential username used in the connection URL.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The username to authenticate with.\n"
},
"usernameTemplate": {
"type": "string",
- "description": "- [Template](https://www.vaultproject.io/docs/concepts/username-templating) describing how dynamic usernames are generated.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "Template describing how dynamic usernames are generated.\n"
}
},
"type": "object"
@@ -2128,158 +1450,78 @@
"items": {
"type": "string"
},
- "description": "A list of roles that are allowed to use this\nconnection.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "A list of roles that are allowed to use this\nconnection.\n"
},
"connectTimeout": {
"type": "integer",
- "description": "The number of seconds to use as a connection\ntimeout.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The number of seconds to use as a connection\ntimeout.\n"
},
"data": {
"type": "object",
"additionalProperties": {
"$ref": "pulumi.json#/Any"
},
- "description": "A map of sensitive data to pass to the endpoint. Useful for templated connection strings.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "A map of sensitive data to pass to the endpoint. Useful for templated connection strings.\n\nSupported list of database secrets engines that can be configured:\n"
},
"hosts": {
"type": "array",
"items": {
"type": "string"
},
- "description": "A set of Couchbase URIs to connect to. Must use `couchbases://` scheme if `tls` is `true`.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The hosts to connect to.\n"
},
"insecureTls": {
"type": "boolean",
- "description": "Whether to skip verification of the server\ncertificate when using TLS.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "Whether to skip verification of the server\ncertificate when using TLS.\n"
},
"name": {
- "type": "string",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "type": "string"
},
"password": {
"type": "string",
- "description": "The password to be used in the connection.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- },
+ "description": "The root credential password used in the connection URL.\n",
"secret": true
},
"pemBundle": {
"type": "string",
"description": "Concatenated PEM blocks configuring the certificate\nchain.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- },
"secret": true
},
"pemJson": {
"type": "string",
"description": "A JSON structure configuring the certificate chain.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- },
"secret": true
},
"pluginName": {
"type": "string",
- "description": "Specifies the name of the plugin to use.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "Specifies the name of the plugin to use.\n"
},
"port": {
"type": "integer",
- "description": "The default port to connect to if no port is specified as\npart of the host.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The default port to connect to if no port is specified as\npart of the host.\n"
},
"protocolVersion": {
"type": "integer",
- "description": "The CQL protocol version to use.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The CQL protocol version to use.\n"
},
"rootRotationStatements": {
"type": "array",
"items": {
"type": "string"
},
- "description": "A list of database statements to be executed to rotate the root user's credentials.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "A list of database statements to be executed to rotate the root user's credentials.\n"
},
"tls": {
"type": "boolean",
- "description": "Whether to use TLS when connecting to Redis.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "Whether to use TLS when connecting to Cassandra.\n"
},
"username": {
"type": "string",
- "description": "The username to be used in the connection (the account admin level).\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The root credential username used in the connection URL.\n"
},
"verifyConnection": {
"type": "boolean",
- "description": "Whether the connection should be verified on\ninitial configuration or not.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "Whether the connection should be verified on\ninitial configuration or not.\n"
}
},
"type": "object",
@@ -2302,139 +1544,69 @@
"items": {
"type": "string"
},
- "description": "A list of roles that are allowed to use this\nconnection.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "A list of roles that are allowed to use this\nconnection.\n"
},
"base64Pem": {
"type": "string",
"description": "Required if `tls` is `true`. Specifies the certificate authority of the Couchbase server, as a PEM certificate that has been base64 encoded.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- },
"secret": true
},
"bucketName": {
"type": "string",
- "description": "Required for Couchbase versions prior to 6.5.0. This is only used to verify vault's connection to the server.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "Required for Couchbase versions prior to 6.5.0. This is only used to verify vault's connection to the server.\n"
},
"data": {
"type": "object",
"additionalProperties": {
"$ref": "pulumi.json#/Any"
},
- "description": "A map of sensitive data to pass to the endpoint. Useful for templated connection strings.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "A map of sensitive data to pass to the endpoint. Useful for templated connection strings.\n\nSupported list of database secrets engines that can be configured:\n"
},
"hosts": {
"type": "array",
"items": {
"type": "string"
},
- "description": "A set of Couchbase URIs to connect to. Must use `couchbases://` scheme if `tls` is `true`.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The hosts to connect to.\n"
},
"insecureTls": {
"type": "boolean",
- "description": "Whether to skip verification of the server\ncertificate when using TLS.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "Whether to skip verification of the server\ncertificate when using TLS.\n"
},
"name": {
- "type": "string",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "type": "string"
},
"password": {
"type": "string",
- "description": "The password to be used in the connection.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- },
+ "description": "The root credential password used in the connection URL.\n",
"secret": true
},
"pluginName": {
"type": "string",
- "description": "Specifies the name of the plugin to use.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "Specifies the name of the plugin to use.\n"
},
"rootRotationStatements": {
"type": "array",
"items": {
"type": "string"
},
- "description": "A list of database statements to be executed to rotate the root user's credentials.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "A list of database statements to be executed to rotate the root user's credentials.\n"
},
"tls": {
"type": "boolean",
- "description": "Whether to use TLS when connecting to Redis.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "Whether to use TLS when connecting to Cassandra.\n"
},
"username": {
"type": "string",
- "description": "The username to be used in the connection (the account admin level).\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The root credential username used in the connection URL.\n"
},
"usernameTemplate": {
"type": "string",
- "description": "- [Template](https://www.vaultproject.io/docs/concepts/username-templating) describing how dynamic usernames are generated.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "[Template](https://www.vaultproject.io/docs/concepts/username-templating) describing how dynamic usernames are generated.\n"
},
"verifyConnection": {
"type": "boolean",
- "description": "Whether the connection should be verified on\ninitial configuration or not.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "Whether the connection should be verified on\ninitial configuration or not.\n"
}
},
"type": "object",
@@ -2463,153 +1635,73 @@
"items": {
"type": "string"
},
- "description": "A list of roles that are allowed to use this\nconnection.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "A list of roles that are allowed to use this\nconnection.\n"
},
"caCert": {
"type": "string",
- "description": "The contents of a PEM-encoded CA cert file to use to verify the Redis server's identity.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The path to a PEM-encoded CA cert file to use to verify the Elasticsearch server's identity.\n"
},
"caPath": {
"type": "string",
- "description": "The path to a directory of PEM-encoded CA cert files to use to verify the Elasticsearch server's identity.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The path to a directory of PEM-encoded CA cert files to use to verify the Elasticsearch server's identity.\n"
},
"clientCert": {
"type": "string",
- "description": "The path to the certificate for the Elasticsearch client to present for communication.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The path to the certificate for the Elasticsearch client to present for communication.\n"
},
"clientKey": {
"type": "string",
- "description": "The path to the key for the Elasticsearch client to use for communication.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The path to the key for the Elasticsearch client to use for communication.\n"
},
"data": {
"type": "object",
"additionalProperties": {
"$ref": "pulumi.json#/Any"
},
- "description": "A map of sensitive data to pass to the endpoint. Useful for templated connection strings.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "A map of sensitive data to pass to the endpoint. Useful for templated connection strings.\n\nSupported list of database secrets engines that can be configured:\n"
},
"insecure": {
"type": "boolean",
- "description": "Whether to disable certificate verification.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "Whether to disable certificate verification.\n"
},
"name": {
- "type": "string",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "type": "string"
},
"password": {
"type": "string",
- "description": "The password to be used in the connection.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- },
+ "description": "The root credential password used in the connection URL.\n",
"secret": true
},
"pluginName": {
"type": "string",
- "description": "Specifies the name of the plugin to use.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "Specifies the name of the plugin to use.\n"
},
"rootRotationStatements": {
"type": "array",
"items": {
"type": "string"
},
- "description": "A list of database statements to be executed to rotate the root user's credentials.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "A list of database statements to be executed to rotate the root user's credentials.\n"
},
"tlsServerName": {
"type": "string",
- "description": "This, if set, is used to set the SNI host when connecting via TLS.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "This, if set, is used to set the SNI host when connecting via TLS.\n"
},
"url": {
"type": "string",
- "description": "The configuration endpoint for the ElastiCache cluster to connect to.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The URL for Elasticsearch's API. https requires certificate\nby trusted CA if used.\n"
},
"username": {
"type": "string",
- "description": "The username to be used in the connection (the account admin level).\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The root credential username used in the connection URL.\n"
},
"usernameTemplate": {
"type": "string",
- "description": "- [Template](https://www.vaultproject.io/docs/concepts/username-templating) describing how dynamic usernames are generated.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "[Template](https://www.vaultproject.io/docs/concepts/username-templating) describing how dynamic usernames are generated.\n"
},
"verifyConnection": {
"type": "boolean",
- "description": "Whether the connection should be verified on\ninitial configuration or not.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "Whether the connection should be verified on\ninitial configuration or not.\n"
}
},
"type": "object",
@@ -2638,126 +1730,61 @@
"items": {
"type": "string"
},
- "description": "A list of roles that are allowed to use this\nconnection.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "A list of roles that are allowed to use this\nconnection.\n"
},
"connectionUrl": {
"type": "string",
- "description": "A URL containing connection information. \nSee [Vault docs](https://www.vaultproject.io/api-docs/secret/databases/snowflake#sample-payload)\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "Specifies the Redshift DSN. \nSee [Vault docs](https://www.vaultproject.io/api-docs/secret/databases/redshift#sample-payload)\n"
},
"data": {
"type": "object",
"additionalProperties": {
"$ref": "pulumi.json#/Any"
},
- "description": "A map of sensitive data to pass to the endpoint. Useful for templated connection strings.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "A map of sensitive data to pass to the endpoint. Useful for templated connection strings.\n\nSupported list of database secrets engines that can be configured:\n"
},
"disableEscaping": {
"type": "boolean",
- "description": "Disable special character escaping in username and password.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "Disable special character escaping in username and password.\n"
},
"maxConnectionLifetime": {
"type": "integer",
- "description": "The maximum number of seconds to keep\na connection alive for.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The maximum amount of time a connection may be reused.\n"
},
"maxIdleConnections": {
"type": "integer",
- "description": "The maximum number of idle connections to\nmaintain.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The maximum number of idle connections to\nthe database.\n"
},
"maxOpenConnections": {
"type": "integer",
- "description": "The maximum number of open connections to\nuse.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The maximum number of open connections to\nthe database.\n"
},
"name": {
- "type": "string",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "type": "string"
},
"password": {
"type": "string",
- "description": "The password to be used in the connection.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- },
+ "description": "The root credential password used in the connection URL.\n",
"secret": true
},
"pluginName": {
"type": "string",
- "description": "Specifies the name of the plugin to use.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "Specifies the name of the plugin to use.\n"
},
"rootRotationStatements": {
"type": "array",
"items": {
"type": "string"
},
- "description": "A list of database statements to be executed to rotate the root user's credentials.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "A list of database statements to be executed to rotate the root user's credentials.\n"
},
"username": {
"type": "string",
- "description": "The username to be used in the connection (the account admin level).\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The root credential username used in the connection URL.\n"
},
"verifyConnection": {
"type": "boolean",
- "description": "Whether the connection should be verified on\ninitial configuration or not.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "Whether the connection should be verified on\ninitial configuration or not.\n"
}
},
"type": "object",
@@ -2780,155 +1807,75 @@
"items": {
"type": "string"
},
- "description": "A list of roles that are allowed to use this\nconnection.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "A list of roles that are allowed to use this\nconnection.\n"
},
"connectTimeout": {
"type": "integer",
- "description": "The number of seconds to use as a connection\ntimeout.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The number of seconds to use as a connection\ntimeout.\n"
},
"data": {
"type": "object",
"additionalProperties": {
"$ref": "pulumi.json#/Any"
},
- "description": "A map of sensitive data to pass to the endpoint. Useful for templated connection strings.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "A map of sensitive data to pass to the endpoint. Useful for templated connection strings.\n\nSupported list of database secrets engines that can be configured:\n"
},
"host": {
"type": "string",
- "description": "The host to connect to.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The host to connect to.\n"
},
"insecureTls": {
"type": "boolean",
- "description": "Whether to skip verification of the server\ncertificate when using TLS.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "Whether to skip verification of the server\ncertificate when using TLS.\n"
},
"name": {
- "type": "string",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "type": "string"
},
"password": {
"type": "string",
- "description": "The password to be used in the connection.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- },
+ "description": "The root credential password used in the connection URL.\n",
"secret": true
},
"pemBundle": {
"type": "string",
"description": "Concatenated PEM blocks configuring the certificate\nchain.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- },
"secret": true
},
"pemJson": {
"type": "string",
"description": "A JSON structure configuring the certificate chain.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- },
"secret": true
},
"pluginName": {
"type": "string",
- "description": "Specifies the name of the plugin to use.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "Specifies the name of the plugin to use.\n"
},
"port": {
"type": "integer",
- "description": "The default port to connect to if no port is specified as\npart of the host.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The default port to connect to if no port is specified as\npart of the host.\n"
},
"rootRotationStatements": {
"type": "array",
"items": {
"type": "string"
},
- "description": "A list of database statements to be executed to rotate the root user's credentials.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "A list of database statements to be executed to rotate the root user's credentials.\n"
},
"tls": {
"type": "boolean",
- "description": "Whether to use TLS when connecting to Redis.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "Whether to use TLS when connecting to Cassandra.\n"
},
"username": {
"type": "string",
- "description": "The username to be used in the connection (the account admin level).\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The root credential username used in the connection URL.\n"
},
"usernameTemplate": {
"type": "string",
- "description": "- [Template](https://www.vaultproject.io/docs/concepts/username-templating) describing how dynamic usernames are generated.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "[Template](https://www.vaultproject.io/docs/concepts/username-templating) describing how dynamic usernames are generated.\n"
},
"verifyConnection": {
"type": "boolean",
- "description": "Whether the connection should be verified on\ninitial configuration or not.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "Whether the connection should be verified on\ninitial configuration or not.\n"
}
},
"type": "object",
@@ -2957,126 +1904,61 @@
"items": {
"type": "string"
},
- "description": "A list of roles that are allowed to use this\nconnection.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "A list of roles that are allowed to use this\nconnection.\n"
},
"connectionUrl": {
"type": "string",
- "description": "A URL containing connection information. \nSee [Vault docs](https://www.vaultproject.io/api-docs/secret/databases/snowflake#sample-payload)\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "Specifies the Redshift DSN. \nSee [Vault docs](https://www.vaultproject.io/api-docs/secret/databases/redshift#sample-payload)\n"
},
"data": {
"type": "object",
"additionalProperties": {
"$ref": "pulumi.json#/Any"
},
- "description": "A map of sensitive data to pass to the endpoint. Useful for templated connection strings.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "A map of sensitive data to pass to the endpoint. Useful for templated connection strings.\n\nSupported list of database secrets engines that can be configured:\n"
},
"maxConnectionLifetime": {
"type": "integer",
- "description": "The maximum number of seconds to keep\na connection alive for.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The maximum amount of time a connection may be reused.\n"
},
"maxIdleConnections": {
"type": "integer",
- "description": "The maximum number of idle connections to\nmaintain.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The maximum number of idle connections to\nthe database.\n"
},
"maxOpenConnections": {
"type": "integer",
- "description": "The maximum number of open connections to\nuse.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The maximum number of open connections to\nthe database.\n"
},
"name": {
- "type": "string",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "type": "string"
},
"password": {
"type": "string",
- "description": "The password to be used in the connection.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- },
+ "description": "The root credential password used in the connection URL.\n",
"secret": true
},
"pluginName": {
"type": "string",
- "description": "Specifies the name of the plugin to use.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "Specifies the name of the plugin to use.\n"
},
"rootRotationStatements": {
"type": "array",
"items": {
"type": "string"
},
- "description": "A list of database statements to be executed to rotate the root user's credentials.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "A list of database statements to be executed to rotate the root user's credentials.\n"
},
"username": {
"type": "string",
- "description": "The username to be used in the connection (the account admin level).\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The root credential username used in the connection URL.\n"
},
"usernameTemplate": {
"type": "string",
- "description": "- [Template](https://www.vaultproject.io/docs/concepts/username-templating) describing how dynamic usernames are generated.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "[Template](https://www.vaultproject.io/docs/concepts/username-templating) describing how dynamic usernames are generated.\n"
},
"verifyConnection": {
"type": "boolean",
- "description": "Whether the connection should be verified on\ninitial configuration or not.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "Whether the connection should be verified on\ninitial configuration or not.\n"
}
},
"type": "object",
@@ -3099,90 +1981,45 @@
"items": {
"type": "string"
},
- "description": "A list of roles that are allowed to use this\nconnection.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "A list of roles that are allowed to use this\nconnection.\n"
},
"data": {
"type": "object",
"additionalProperties": {
"$ref": "pulumi.json#/Any"
},
- "description": "A map of sensitive data to pass to the endpoint. Useful for templated connection strings.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "A map of sensitive data to pass to the endpoint. Useful for templated connection strings.\n\nSupported list of database secrets engines that can be configured:\n"
},
"name": {
- "type": "string",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "type": "string"
},
"pluginName": {
"type": "string",
- "description": "Specifies the name of the plugin to use.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "Specifies the name of the plugin to use.\n"
},
"privateKey": {
"type": "string",
"description": "The Private Programmatic API Key used to connect with MongoDB Atlas API.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- },
"secret": true
},
"projectId": {
"type": "string",
- "description": "The Project ID the Database User should be created within.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The Project ID the Database User should be created within.\n"
},
"publicKey": {
"type": "string",
- "description": "The Public Programmatic API Key used to authenticate with the MongoDB Atlas API.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The Public Programmatic API Key used to authenticate with the MongoDB Atlas API.\n"
},
"rootRotationStatements": {
"type": "array",
"items": {
"type": "string"
},
- "description": "A list of database statements to be executed to rotate the root user's credentials.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "A list of database statements to be executed to rotate the root user's credentials.\n"
},
"verifyConnection": {
"type": "boolean",
- "description": "Whether the connection should be verified on\ninitial configuration or not.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "Whether the connection should be verified on\ninitial configuration or not.\n"
}
},
"type": "object",
@@ -3211,144 +2048,69 @@
"items": {
"type": "string"
},
- "description": "A list of roles that are allowed to use this\nconnection.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "A list of roles that are allowed to use this\nconnection.\n"
},
"connectionUrl": {
"type": "string",
- "description": "A URL containing connection information. \nSee [Vault docs](https://www.vaultproject.io/api-docs/secret/databases/snowflake#sample-payload)\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "Specifies the Redshift DSN. \nSee [Vault docs](https://www.vaultproject.io/api-docs/secret/databases/redshift#sample-payload)\n"
},
"containedDb": {
"type": "boolean",
- "description": "For Vault v1.9+. Set to true when the target is a\nContained Database, e.g. AzureSQL.\nSee [Vault docs](https://www.vaultproject.io/api/secret/databases/mssql#contained_db)\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "For Vault v1.9+. Set to true when the target is a\nContained Database, e.g. AzureSQL.\nSee [Vault docs](https://www.vaultproject.io/api/secret/databases/mssql#contained_db)\n"
},
"data": {
"type": "object",
"additionalProperties": {
"$ref": "pulumi.json#/Any"
},
- "description": "A map of sensitive data to pass to the endpoint. Useful for templated connection strings.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "A map of sensitive data to pass to the endpoint. Useful for templated connection strings.\n\nSupported list of database secrets engines that can be configured:\n"
},
"disableEscaping": {
"type": "boolean",
- "description": "Disable special character escaping in username and password.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "Disable special character escaping in username and password.\n"
},
"maxConnectionLifetime": {
"type": "integer",
- "description": "The maximum number of seconds to keep\na connection alive for.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The maximum amount of time a connection may be reused.\n"
},
"maxIdleConnections": {
"type": "integer",
- "description": "The maximum number of idle connections to\nmaintain.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The maximum number of idle connections to\nthe database.\n"
},
"maxOpenConnections": {
"type": "integer",
- "description": "The maximum number of open connections to\nuse.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The maximum number of open connections to\nthe database.\n"
},
"name": {
- "type": "string",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "type": "string"
},
"password": {
"type": "string",
- "description": "The password to be used in the connection.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- },
+ "description": "The root credential password used in the connection URL.\n",
"secret": true
},
"pluginName": {
"type": "string",
- "description": "Specifies the name of the plugin to use.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "Specifies the name of the plugin to use.\n"
},
"rootRotationStatements": {
"type": "array",
"items": {
"type": "string"
},
- "description": "A list of database statements to be executed to rotate the root user's credentials.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "A list of database statements to be executed to rotate the root user's credentials.\n"
},
"username": {
"type": "string",
- "description": "The username to be used in the connection (the account admin level).\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The root credential username used in the connection URL.\n"
},
"usernameTemplate": {
"type": "string",
- "description": "- [Template](https://www.vaultproject.io/docs/concepts/username-templating) describing how dynamic usernames are generated.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "[Template](https://www.vaultproject.io/docs/concepts/username-templating) describing how dynamic usernames are generated.\n"
},
"verifyConnection": {
"type": "boolean",
- "description": "Whether the connection should be verified on\ninitial configuration or not.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "Whether the connection should be verified on\ninitial configuration or not.\n"
}
},
"type": "object",
@@ -3371,162 +2133,77 @@
"items": {
"type": "string"
},
- "description": "A list of roles that are allowed to use this\nconnection.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "A list of roles that are allowed to use this\nconnection.\n"
},
"authType": {
- "type": "string",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "type": "string"
},
"connectionUrl": {
"type": "string",
- "description": "A URL containing connection information. \nSee [Vault docs](https://www.vaultproject.io/api-docs/secret/databases/snowflake#sample-payload)\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "Specifies the Redshift DSN. \nSee [Vault docs](https://www.vaultproject.io/api-docs/secret/databases/redshift#sample-payload)\n"
},
"data": {
"type": "object",
"additionalProperties": {
"$ref": "pulumi.json#/Any"
},
- "description": "A map of sensitive data to pass to the endpoint. Useful for templated connection strings.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "A map of sensitive data to pass to the endpoint. Useful for templated connection strings.\n\nSupported list of database secrets engines that can be configured:\n"
},
"maxConnectionLifetime": {
"type": "integer",
- "description": "The maximum number of seconds to keep\na connection alive for.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The maximum amount of time a connection may be reused.\n"
},
"maxIdleConnections": {
"type": "integer",
- "description": "The maximum number of idle connections to\nmaintain.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The maximum number of idle connections to\nthe database.\n"
},
"maxOpenConnections": {
"type": "integer",
- "description": "The maximum number of open connections to\nuse.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The maximum number of open connections to\nthe database.\n"
},
"name": {
- "type": "string",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "type": "string"
},
"password": {
"type": "string",
- "description": "The password to be used in the connection.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- },
+ "description": "The root credential password used in the connection URL.\n",
"secret": true
},
"pluginName": {
"type": "string",
- "description": "Specifies the name of the plugin to use.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "Specifies the name of the plugin to use.\n"
},
"rootRotationStatements": {
"type": "array",
"items": {
"type": "string"
},
- "description": "A list of database statements to be executed to rotate the root user's credentials.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "A list of database statements to be executed to rotate the root user's credentials.\n"
},
"serviceAccountJson": {
"type": "string",
- "language": {
- "python": {
- "mapCase": false
- }
- },
"secret": true
},
"tlsCa": {
"type": "string",
- "description": "x509 CA file for validating the certificate presented by the MySQL server. Must be PEM encoded.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "x509 CA file for validating the certificate presented by the MySQL server. Must be PEM encoded.\n"
},
"tlsCertificateKey": {
"type": "string",
"description": "x509 certificate for connecting to the database. This must be a PEM encoded version of the private key and the certificate combined.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- },
"secret": true
},
"username": {
"type": "string",
- "description": "The username to be used in the connection (the account admin level).\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The root credential username used in the connection URL.\n"
},
"usernameTemplate": {
"type": "string",
- "description": "- [Template](https://www.vaultproject.io/docs/concepts/username-templating) describing how dynamic usernames are generated.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "[Template](https://www.vaultproject.io/docs/concepts/username-templating) describing how dynamic usernames are generated.\n"
},
"verifyConnection": {
"type": "boolean",
- "description": "Whether the connection should be verified on\ninitial configuration or not.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "Whether the connection should be verified on\ninitial configuration or not.\n"
}
},
"type": "object",
@@ -3549,126 +2226,61 @@
"items": {
"type": "string"
},
- "description": "A list of roles that are allowed to use this\nconnection.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "A list of roles that are allowed to use this\nconnection.\n"
},
"connectionUrl": {
"type": "string",
- "description": "A URL containing connection information. \nSee [Vault docs](https://www.vaultproject.io/api-docs/secret/databases/snowflake#sample-payload)\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "Specifies the Redshift DSN. \nSee [Vault docs](https://www.vaultproject.io/api-docs/secret/databases/redshift#sample-payload)\n"
},
"data": {
"type": "object",
"additionalProperties": {
"$ref": "pulumi.json#/Any"
},
- "description": "A map of sensitive data to pass to the endpoint. Useful for templated connection strings.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "A map of sensitive data to pass to the endpoint. Useful for templated connection strings.\n\nSupported list of database secrets engines that can be configured:\n"
},
"maxConnectionLifetime": {
"type": "integer",
- "description": "The maximum number of seconds to keep\na connection alive for.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The maximum amount of time a connection may be reused.\n"
},
"maxIdleConnections": {
"type": "integer",
- "description": "The maximum number of idle connections to\nmaintain.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The maximum number of idle connections to\nthe database.\n"
},
"maxOpenConnections": {
"type": "integer",
- "description": "The maximum number of open connections to\nuse.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The maximum number of open connections to\nthe database.\n"
},
"name": {
- "type": "string",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "type": "string"
},
"password": {
"type": "string",
- "description": "The password to be used in the connection.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- },
+ "description": "The root credential password used in the connection URL.\n",
"secret": true
},
"pluginName": {
"type": "string",
- "description": "Specifies the name of the plugin to use.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "Specifies the name of the plugin to use.\n"
},
"rootRotationStatements": {
"type": "array",
"items": {
"type": "string"
},
- "description": "A list of database statements to be executed to rotate the root user's credentials.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "A list of database statements to be executed to rotate the root user's credentials.\n"
},
"username": {
"type": "string",
- "description": "The username to be used in the connection (the account admin level).\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The root credential username used in the connection URL.\n"
},
"usernameTemplate": {
"type": "string",
- "description": "- [Template](https://www.vaultproject.io/docs/concepts/username-templating) describing how dynamic usernames are generated.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "[Template](https://www.vaultproject.io/docs/concepts/username-templating) describing how dynamic usernames are generated.\n"
},
"verifyConnection": {
"type": "boolean",
- "description": "Whether the connection should be verified on\ninitial configuration or not.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "Whether the connection should be verified on\ninitial configuration or not.\n"
}
},
"type": "object",
@@ -3691,126 +2303,61 @@
"items": {
"type": "string"
},
- "description": "A list of roles that are allowed to use this\nconnection.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "A list of roles that are allowed to use this\nconnection.\n"
},
"connectionUrl": {
"type": "string",
- "description": "A URL containing connection information. \nSee [Vault docs](https://www.vaultproject.io/api-docs/secret/databases/snowflake#sample-payload)\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "Specifies the Redshift DSN. \nSee [Vault docs](https://www.vaultproject.io/api-docs/secret/databases/redshift#sample-payload)\n"
},
"data": {
"type": "object",
"additionalProperties": {
"$ref": "pulumi.json#/Any"
},
- "description": "A map of sensitive data to pass to the endpoint. Useful for templated connection strings.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "A map of sensitive data to pass to the endpoint. Useful for templated connection strings.\n\nSupported list of database secrets engines that can be configured:\n"
},
"maxConnectionLifetime": {
"type": "integer",
- "description": "The maximum number of seconds to keep\na connection alive for.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The maximum amount of time a connection may be reused.\n"
},
"maxIdleConnections": {
"type": "integer",
- "description": "The maximum number of idle connections to\nmaintain.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The maximum number of idle connections to\nthe database.\n"
},
"maxOpenConnections": {
"type": "integer",
- "description": "The maximum number of open connections to\nuse.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The maximum number of open connections to\nthe database.\n"
},
"name": {
- "type": "string",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "type": "string"
},
"password": {
"type": "string",
- "description": "The password to be used in the connection.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- },
+ "description": "The root credential password used in the connection URL.\n",
"secret": true
},
"pluginName": {
"type": "string",
- "description": "Specifies the name of the plugin to use.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "Specifies the name of the plugin to use.\n"
},
"rootRotationStatements": {
"type": "array",
"items": {
"type": "string"
},
- "description": "A list of database statements to be executed to rotate the root user's credentials.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "A list of database statements to be executed to rotate the root user's credentials.\n"
},
"username": {
"type": "string",
- "description": "The username to be used in the connection (the account admin level).\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The root credential username used in the connection URL.\n"
},
"usernameTemplate": {
"type": "string",
- "description": "- [Template](https://www.vaultproject.io/docs/concepts/username-templating) describing how dynamic usernames are generated.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "[Template](https://www.vaultproject.io/docs/concepts/username-templating) describing how dynamic usernames are generated.\n"
},
"verifyConnection": {
"type": "boolean",
- "description": "Whether the connection should be verified on\ninitial configuration or not.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "Whether the connection should be verified on\ninitial configuration or not.\n"
}
},
"type": "object",
@@ -3833,126 +2380,61 @@
"items": {
"type": "string"
},
- "description": "A list of roles that are allowed to use this\nconnection.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "A list of roles that are allowed to use this\nconnection.\n"
},
"connectionUrl": {
"type": "string",
- "description": "A URL containing connection information. \nSee [Vault docs](https://www.vaultproject.io/api-docs/secret/databases/snowflake#sample-payload)\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "Specifies the Redshift DSN. \nSee [Vault docs](https://www.vaultproject.io/api-docs/secret/databases/redshift#sample-payload)\n"
},
"data": {
"type": "object",
"additionalProperties": {
"$ref": "pulumi.json#/Any"
},
- "description": "A map of sensitive data to pass to the endpoint. Useful for templated connection strings.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "A map of sensitive data to pass to the endpoint. Useful for templated connection strings.\n\nSupported list of database secrets engines that can be configured:\n"
},
"maxConnectionLifetime": {
"type": "integer",
- "description": "The maximum number of seconds to keep\na connection alive for.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The maximum amount of time a connection may be reused.\n"
},
"maxIdleConnections": {
"type": "integer",
- "description": "The maximum number of idle connections to\nmaintain.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The maximum number of idle connections to\nthe database.\n"
},
"maxOpenConnections": {
"type": "integer",
- "description": "The maximum number of open connections to\nuse.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The maximum number of open connections to\nthe database.\n"
},
"name": {
- "type": "string",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "type": "string"
},
"password": {
"type": "string",
- "description": "The password to be used in the connection.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- },
+ "description": "The root credential password used in the connection URL.\n",
"secret": true
},
"pluginName": {
"type": "string",
- "description": "Specifies the name of the plugin to use.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "Specifies the name of the plugin to use.\n"
},
"rootRotationStatements": {
"type": "array",
"items": {
"type": "string"
},
- "description": "A list of database statements to be executed to rotate the root user's credentials.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "A list of database statements to be executed to rotate the root user's credentials.\n"
},
"username": {
"type": "string",
- "description": "The username to be used in the connection (the account admin level).\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The root credential username used in the connection URL.\n"
},
"usernameTemplate": {
"type": "string",
- "description": "- [Template](https://www.vaultproject.io/docs/concepts/username-templating) describing how dynamic usernames are generated.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "[Template](https://www.vaultproject.io/docs/concepts/username-templating) describing how dynamic usernames are generated.\n"
},
"verifyConnection": {
"type": "boolean",
- "description": "Whether the connection should be verified on\ninitial configuration or not.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "Whether the connection should be verified on\ninitial configuration or not.\n"
}
},
"type": "object",
@@ -3975,126 +2457,61 @@
"items": {
"type": "string"
},
- "description": "A list of roles that are allowed to use this\nconnection.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "A list of roles that are allowed to use this\nconnection.\n"
},
"connectionUrl": {
"type": "string",
- "description": "A URL containing connection information. \nSee [Vault docs](https://www.vaultproject.io/api-docs/secret/databases/snowflake#sample-payload)\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "Specifies the Redshift DSN. \nSee [Vault docs](https://www.vaultproject.io/api-docs/secret/databases/redshift#sample-payload)\n"
},
"data": {
"type": "object",
"additionalProperties": {
"$ref": "pulumi.json#/Any"
},
- "description": "A map of sensitive data to pass to the endpoint. Useful for templated connection strings.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "A map of sensitive data to pass to the endpoint. Useful for templated connection strings.\n\nSupported list of database secrets engines that can be configured:\n"
},
"maxConnectionLifetime": {
"type": "integer",
- "description": "The maximum number of seconds to keep\na connection alive for.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The maximum amount of time a connection may be reused.\n"
},
"maxIdleConnections": {
"type": "integer",
- "description": "The maximum number of idle connections to\nmaintain.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The maximum number of idle connections to\nthe database.\n"
},
"maxOpenConnections": {
"type": "integer",
- "description": "The maximum number of open connections to\nuse.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The maximum number of open connections to\nthe database.\n"
},
"name": {
- "type": "string",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "type": "string"
},
"password": {
"type": "string",
- "description": "The password to be used in the connection.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- },
+ "description": "The root credential password used in the connection URL.\n",
"secret": true
},
"pluginName": {
"type": "string",
- "description": "Specifies the name of the plugin to use.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "Specifies the name of the plugin to use.\n"
},
"rootRotationStatements": {
"type": "array",
"items": {
"type": "string"
},
- "description": "A list of database statements to be executed to rotate the root user's credentials.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "A list of database statements to be executed to rotate the root user's credentials.\n"
},
"username": {
"type": "string",
- "description": "The username to be used in the connection (the account admin level).\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The root credential username used in the connection URL.\n"
},
"usernameTemplate": {
"type": "string",
- "description": "- [Template](https://www.vaultproject.io/docs/concepts/username-templating) describing how dynamic usernames are generated.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "[Template](https://www.vaultproject.io/docs/concepts/username-templating) describing how dynamic usernames are generated.\n"
},
"verifyConnection": {
"type": "boolean",
- "description": "Whether the connection should be verified on\ninitial configuration or not.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "Whether the connection should be verified on\ninitial configuration or not.\n"
}
},
"type": "object",
@@ -4117,152 +2534,72 @@
"items": {
"type": "string"
},
- "description": "A list of roles that are allowed to use this\nconnection.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "A list of roles that are allowed to use this\nconnection.\n"
},
"authType": {
- "type": "string",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "type": "string"
},
"connectionUrl": {
"type": "string",
- "description": "A URL containing connection information. \nSee [Vault docs](https://www.vaultproject.io/api-docs/secret/databases/snowflake#sample-payload)\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "Specifies the Redshift DSN. \nSee [Vault docs](https://www.vaultproject.io/api-docs/secret/databases/redshift#sample-payload)\n"
},
"data": {
"type": "object",
"additionalProperties": {
"$ref": "pulumi.json#/Any"
},
- "description": "A map of sensitive data to pass to the endpoint. Useful for templated connection strings.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "A map of sensitive data to pass to the endpoint. Useful for templated connection strings.\n\nSupported list of database secrets engines that can be configured:\n"
},
"disableEscaping": {
"type": "boolean",
- "description": "Disable special character escaping in username and password.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "Disable special character escaping in username and password.\n"
},
"maxConnectionLifetime": {
"type": "integer",
- "description": "The maximum number of seconds to keep\na connection alive for.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The maximum amount of time a connection may be reused.\n"
},
"maxIdleConnections": {
"type": "integer",
- "description": "The maximum number of idle connections to\nmaintain.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The maximum number of idle connections to\nthe database.\n"
},
"maxOpenConnections": {
"type": "integer",
- "description": "The maximum number of open connections to\nuse.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The maximum number of open connections to\nthe database.\n"
},
"name": {
- "type": "string",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "type": "string"
},
"password": {
"type": "string",
- "description": "The password to be used in the connection.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- },
+ "description": "The root credential password used in the connection URL.\n",
"secret": true
},
"pluginName": {
"type": "string",
- "description": "Specifies the name of the plugin to use.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "Specifies the name of the plugin to use.\n"
},
"rootRotationStatements": {
"type": "array",
"items": {
"type": "string"
},
- "description": "A list of database statements to be executed to rotate the root user's credentials.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "A list of database statements to be executed to rotate the root user's credentials.\n"
},
"serviceAccountJson": {
"type": "string",
- "language": {
- "python": {
- "mapCase": false
- }
- },
"secret": true
},
"username": {
"type": "string",
- "description": "The username to be used in the connection (the account admin level).\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The root credential username used in the connection URL.\n"
},
"usernameTemplate": {
"type": "string",
- "description": "- [Template](https://www.vaultproject.io/docs/concepts/username-templating) describing how dynamic usernames are generated.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "[Template](https://www.vaultproject.io/docs/concepts/username-templating) describing how dynamic usernames are generated.\n"
},
"verifyConnection": {
"type": "boolean",
- "description": "Whether the connection should be verified on\ninitial configuration or not.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "Whether the connection should be verified on\ninitial configuration or not.\n"
}
},
"type": "object",
@@ -4285,126 +2622,61 @@
"items": {
"type": "string"
},
- "description": "A list of roles that are allowed to use this\nconnection.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "A list of roles that are allowed to use this\nconnection.\n"
},
"caCert": {
"type": "string",
- "description": "The contents of a PEM-encoded CA cert file to use to verify the Redis server's identity.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The path to a PEM-encoded CA cert file to use to verify the Elasticsearch server's identity.\n"
},
"data": {
"type": "object",
"additionalProperties": {
"$ref": "pulumi.json#/Any"
},
- "description": "A map of sensitive data to pass to the endpoint. Useful for templated connection strings.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "A map of sensitive data to pass to the endpoint. Useful for templated connection strings.\n\nSupported list of database secrets engines that can be configured:\n"
},
"host": {
"type": "string",
- "description": "The host to connect to.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The host to connect to.\n"
},
"insecureTls": {
"type": "boolean",
- "description": "Whether to skip verification of the server\ncertificate when using TLS.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "Whether to skip verification of the server\ncertificate when using TLS.\n"
},
"name": {
- "type": "string",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "type": "string"
},
"password": {
"type": "string",
- "description": "The password to be used in the connection.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- },
+ "description": "The root credential password used in the connection URL.\n",
"secret": true
},
"pluginName": {
"type": "string",
- "description": "Specifies the name of the plugin to use.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "Specifies the name of the plugin to use.\n"
},
"port": {
"type": "integer",
- "description": "The default port to connect to if no port is specified as\npart of the host.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The default port to connect to if no port is specified as\npart of the host.\n"
},
"rootRotationStatements": {
"type": "array",
"items": {
"type": "string"
},
- "description": "A list of database statements to be executed to rotate the root user's credentials.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "A list of database statements to be executed to rotate the root user's credentials.\n"
},
"tls": {
"type": "boolean",
- "description": "Whether to use TLS when connecting to Redis.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "Whether to use TLS when connecting to Cassandra.\n"
},
"username": {
"type": "string",
- "description": "The username to be used in the connection (the account admin level).\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The root credential username used in the connection URL.\n"
},
"verifyConnection": {
"type": "boolean",
- "description": "Whether the connection should be verified on\ninitial configuration or not.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "Whether the connection should be verified on\ninitial configuration or not.\n"
}
},
"type": "object",
@@ -4433,100 +2705,50 @@
"items": {
"type": "string"
},
- "description": "A list of roles that are allowed to use this\nconnection.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "A list of roles that are allowed to use this\nconnection.\n"
},
"data": {
"type": "object",
"additionalProperties": {
"$ref": "pulumi.json#/Any"
},
- "description": "A map of sensitive data to pass to the endpoint. Useful for templated connection strings.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "A map of sensitive data to pass to the endpoint. Useful for templated connection strings.\n\nSupported list of database secrets engines that can be configured:\n"
},
"name": {
- "type": "string",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "type": "string"
},
"password": {
"type": "string",
- "description": "The password to be used in the connection.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- },
+ "description": "The root credential password used in the connection URL.\n",
"secret": true
},
"pluginName": {
"type": "string",
- "description": "Specifies the name of the plugin to use.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "Specifies the name of the plugin to use.\n"
},
"region": {
"type": "string",
- "description": "The AWS region where the ElastiCache cluster is hosted.\nIf omitted the plugin tries to infer the region from the environment.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The AWS region where the ElastiCache cluster is hosted.\nIf omitted the plugin tries to infer the region from the environment.\n"
},
"rootRotationStatements": {
"type": "array",
"items": {
"type": "string"
},
- "description": "A list of database statements to be executed to rotate the root user's credentials.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "A list of database statements to be executed to rotate the root user's credentials.\n"
},
"url": {
"type": "string",
- "description": "The configuration endpoint for the ElastiCache cluster to connect to.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The URL for Elasticsearch's API. https requires certificate\nby trusted CA if used.\n"
},
"username": {
"type": "string",
- "description": "The username to be used in the connection (the account admin level).\n",
- "language": {
- "python": {
- "mapCase": false
- }
- },
+ "description": "The root credential username used in the connection URL.\n",
"secret": true
},
"verifyConnection": {
"type": "boolean",
- "description": "Whether the connection should be verified on\ninitial configuration or not.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "Whether the connection should be verified on\ninitial configuration or not.\n"
}
},
"type": "object",
@@ -4551,135 +2773,65 @@
"items": {
"type": "string"
},
- "description": "A list of roles that are allowed to use this\nconnection.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "A list of roles that are allowed to use this\nconnection.\n"
},
"connectionUrl": {
"type": "string",
- "description": "A URL containing connection information. \nSee [Vault docs](https://www.vaultproject.io/api-docs/secret/databases/snowflake#sample-payload)\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "Specifies the Redshift DSN. \nSee [Vault docs](https://www.vaultproject.io/api-docs/secret/databases/redshift#sample-payload)\n"
},
"data": {
"type": "object",
"additionalProperties": {
"$ref": "pulumi.json#/Any"
},
- "description": "A map of sensitive data to pass to the endpoint. Useful for templated connection strings.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "A map of sensitive data to pass to the endpoint. Useful for templated connection strings.\n\nSupported list of database secrets engines that can be configured:\n"
},
"disableEscaping": {
"type": "boolean",
- "description": "Disable special character escaping in username and password.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "Disable special character escaping in username and password.\n"
},
"maxConnectionLifetime": {
"type": "integer",
- "description": "The maximum number of seconds to keep\na connection alive for.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The maximum amount of time a connection may be reused.\n"
},
"maxIdleConnections": {
"type": "integer",
- "description": "The maximum number of idle connections to\nmaintain.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The maximum number of idle connections to\nthe database.\n"
},
"maxOpenConnections": {
"type": "integer",
- "description": "The maximum number of open connections to\nuse.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The maximum number of open connections to\nthe database.\n"
},
"name": {
- "type": "string",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "type": "string"
},
"password": {
"type": "string",
- "description": "The password to be used in the connection.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- },
+ "description": "The root credential password used in the connection URL.\n",
"secret": true
},
"pluginName": {
"type": "string",
- "description": "Specifies the name of the plugin to use.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "Specifies the name of the plugin to use.\n"
},
"rootRotationStatements": {
"type": "array",
"items": {
"type": "string"
},
- "description": "A list of database statements to be executed to rotate the root user's credentials.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "A list of database statements to be executed to rotate the root user's credentials.\n"
},
"username": {
"type": "string",
- "description": "The username to be used in the connection (the account admin level).\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The root credential username used in the connection URL.\n"
},
"usernameTemplate": {
"type": "string",
- "description": "- [Template](https://www.vaultproject.io/docs/concepts/username-templating) describing how dynamic usernames are generated.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "[Template](https://www.vaultproject.io/docs/concepts/username-templating) describing how dynamic usernames are generated.\n"
},
"verifyConnection": {
"type": "boolean",
- "description": "Whether the connection should be verified on\ninitial configuration or not.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "Whether the connection should be verified on\ninitial configuration or not.\n"
}
},
"type": "object",
@@ -4702,126 +2854,61 @@
"items": {
"type": "string"
},
- "description": "A list of roles that are allowed to use this\nconnection.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "A list of roles that are allowed to use this\nconnection.\n"
},
"connectionUrl": {
"type": "string",
- "description": "A URL containing connection information. \nSee [Vault docs](https://www.vaultproject.io/api-docs/secret/databases/snowflake#sample-payload)\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "Specifies the Redshift DSN. \nSee [Vault docs](https://www.vaultproject.io/api-docs/secret/databases/redshift#sample-payload)\n"
},
"data": {
"type": "object",
"additionalProperties": {
"$ref": "pulumi.json#/Any"
},
- "description": "A map of sensitive data to pass to the endpoint. Useful for templated connection strings.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "A map of sensitive data to pass to the endpoint. Useful for templated connection strings.\n\nSupported list of database secrets engines that can be configured:\n"
},
"maxConnectionLifetime": {
"type": "integer",
- "description": "The maximum number of seconds to keep\na connection alive for.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The maximum amount of time a connection may be reused.\n"
},
"maxIdleConnections": {
"type": "integer",
- "description": "The maximum number of idle connections to\nmaintain.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The maximum number of idle connections to\nthe database.\n"
},
"maxOpenConnections": {
"type": "integer",
- "description": "The maximum number of open connections to\nuse.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The maximum number of open connections to\nthe database.\n"
},
"name": {
- "type": "string",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "type": "string"
},
"password": {
"type": "string",
- "description": "The password to be used in the connection.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- },
+ "description": "The root credential password used in the connection URL.\n",
"secret": true
},
"pluginName": {
"type": "string",
- "description": "Specifies the name of the plugin to use.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "Specifies the name of the plugin to use.\n"
},
"rootRotationStatements": {
"type": "array",
"items": {
"type": "string"
},
- "description": "A list of database statements to be executed to rotate the root user's credentials.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "A list of database statements to be executed to rotate the root user's credentials.\n"
},
"username": {
"type": "string",
- "description": "The username to be used in the connection (the account admin level).\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The root credential username used in the connection URL.\n"
},
"usernameTemplate": {
"type": "string",
- "description": "- [Template](https://www.vaultproject.io/docs/concepts/username-templating) describing how dynamic usernames are generated.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "[Template](https://www.vaultproject.io/docs/concepts/username-templating) describing how dynamic usernames are generated.\n"
},
"verifyConnection": {
"type": "boolean",
- "description": "Whether the connection should be verified on\ninitial configuration or not.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "Whether the connection should be verified on\ninitial configuration or not.\n"
}
},
"type": "object",
@@ -4841,39 +2928,19 @@
"properties": {
"api": {
"type": "string",
- "description": "Replaces the service endpoint used in API requests to `https://www.googleapis.com`.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "Replaces the service endpoint used in API requests to `https://www.googleapis.com`.\n"
},
"compute": {
"type": "string",
- "description": "Replaces the service endpoint used in API requests to `https://compute.googleapis.com`.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "Replaces the service endpoint used in API requests to `https://compute.googleapis.com`.\n\nThe endpoint value provided for a given key has the form of `scheme://host:port`.\nThe `scheme://` and `:port` portions of the endpoint value are optional.\n\nFor more details on the usage of each argument consult the [Vault GCP API documentation](https://www.vaultproject.io/api-docs/auth/gcp#configure).\n"
},
"crm": {
"type": "string",
- "description": "Replaces the service endpoint used in API requests to `https://cloudresourcemanager.googleapis.com`.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "Replaces the service endpoint used in API requests to `https://cloudresourcemanager.googleapis.com`.\n"
},
"iam": {
"type": "string",
- "description": "Replaces the service endpoint used in API requests to `https://iam.googleapis.com`.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "Replaces the service endpoint used in API requests to `https://iam.googleapis.com`.\n"
}
},
"type": "object"
@@ -4882,24 +2949,14 @@
"properties": {
"resource": {
"type": "string",
- "description": "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).\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "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).\n"
},
"roles": {
"type": "array",
"items": {
"type": "string"
},
- "description": "List of [GCP IAM roles](https://cloud.google.com/iam/docs/understanding-roles) for the resource.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "List of [GCP IAM roles](https://cloud.google.com/iam/docs/understanding-roles) for the resource.\n"
}
},
"type": "object",
@@ -4912,24 +2969,14 @@
"properties": {
"resource": {
"type": "string",
- "description": "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).\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "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).\n"
},
"roles": {
"type": "array",
"items": {
"type": "string"
},
- "description": "List of [GCP IAM roles](https://cloud.google.com/iam/docs/understanding-roles) for the resource.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "List of [GCP IAM roles](https://cloud.google.com/iam/docs/understanding-roles) for the resource.\n"
}
},
"type": "object",
@@ -4945,84 +2992,44 @@
"items": {
"type": "string"
},
- "description": "List of headers to whitelist and allowing\na plugin to include them in the response.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "List of headers to whitelist and allowing\na plugin to include them in the response.\n"
},
"auditNonHmacRequestKeys": {
"type": "array",
"items": {
"type": "string"
},
- "description": "Specifies the list of keys that will\nnot be HMAC'd by audit devices in the request data object.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "Specifies the list of keys that will\nnot be HMAC'd by audit devices in the request data object.\n"
},
"auditNonHmacResponseKeys": {
"type": "array",
"items": {
"type": "string"
},
- "description": "Specifies the list of keys that will\nnot be HMAC'd by audit devices in the response data object.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "Specifies the list of keys that will\nnot be HMAC'd by audit devices in the response data object.\n"
},
"defaultLeaseTtl": {
"type": "string",
- "description": "Specifies the default time-to-live.\nIf set, this overrides the global default.\nMust be a valid [duration string](https://golang.org/pkg/time/#ParseDuration)\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "Specifies the default time-to-live.\nIf set, this overrides the global default.\nMust be a valid [duration string](https://golang.org/pkg/time/#ParseDuration)\n"
},
"listingVisibility": {
"type": "string",
- "description": "Specifies whether to show this mount in\nthe UI-specific listing endpoint. Valid values are \"unauth\" or \"hidden\".\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "Specifies whether to show this mount in\nthe UI-specific listing endpoint. Valid values are \"unauth\" or \"hidden\".\n"
},
"maxLeaseTtl": {
"type": "string",
- "description": "Specifies the maximum time-to-live.\nIf set, this overrides the global default.\nMust be a valid [duration string](https://golang.org/pkg/time/#ParseDuration)\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "Specifies the maximum time-to-live.\nIf set, this overrides the global default.\nMust be a valid [duration string](https://golang.org/pkg/time/#ParseDuration)\n"
},
"passthroughRequestHeaders": {
"type": "array",
"items": {
"type": "string"
},
- "description": "List of headers to whitelist and\npass from the request to the backend.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "List of headers to whitelist and\npass from the request to the backend.\n"
},
"tokenType": {
"type": "string",
- "description": "Specifies the type of tokens that should be returned by\nthe mount. Valid values are \"default-service\", \"default-batch\", \"service\", \"batch\".\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "Specifies the type of tokens that should be returned by\nthe mount. Valid values are \"default-service\", \"default-batch\", \"service\", \"batch\".\n"
}
},
"type": "object"
@@ -5031,99 +3038,49 @@
"properties": {
"canonicalId": {
"type": "string",
- "description": "Canonical ID of the Alias\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "Canonical ID of the Alias\n"
},
"creationTime": {
"type": "string",
- "description": "Creation time of the Alias\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "Creation time of the Alias\n"
},
"id": {
"type": "string",
- "description": "ID of the alias\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "ID of the alias\n"
},
"lastUpdateTime": {
"type": "string",
- "description": "Last update time of the alias\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "Last update time of the alias\n"
},
"mergedFromCanonicalIds": {
"type": "array",
"items": {
"type": "string"
},
- "description": "List of canonical IDs merged with this alias\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "List of canonical IDs merged with this alias\n"
},
"metadata": {
"type": "object",
"additionalProperties": {
"$ref": "pulumi.json#/Any"
},
- "description": "Arbitrary metadata\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "Arbitrary metadata\n"
},
"mountAccessor": {
"type": "string",
- "description": "Authentication mount acccessor which this alias belongs to\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "Authentication mount acccessor which this alias belongs to\n"
},
"mountPath": {
"type": "string",
- "description": "Authentication mount path which this alias belongs to\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "Authentication mount path which this alias belongs to\n"
},
"mountType": {
"type": "string",
- "description": "Authentication mount type which this alias belongs to\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "Authentication mount type which this alias belongs to\n"
},
"name": {
"type": "string",
- "description": "Name of the alias\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "Name of the alias\n"
}
},
"type": "object",
@@ -5152,84 +3109,44 @@
"items": {
"type": "string"
},
- "description": "List of headers to whitelist and allowing\na plugin to include them in the response.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "List of headers to whitelist and allowing\na plugin to include them in the response.\n"
},
"auditNonHmacRequestKeys": {
"type": "array",
"items": {
"type": "string"
},
- "description": "Specifies the list of keys that will\nnot be HMAC'd by audit devices in the request data object.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "Specifies the list of keys that will\nnot be HMAC'd by audit devices in the request data object.\n"
},
"auditNonHmacResponseKeys": {
"type": "array",
"items": {
"type": "string"
},
- "description": "Specifies the list of keys that will\nnot be HMAC'd by audit devices in the response data object.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "Specifies the list of keys that will\nnot be HMAC'd by audit devices in the response data object.\n"
},
"defaultLeaseTtl": {
"type": "string",
- "description": "Specifies the default time-to-live.\nIf set, this overrides the global default.\nMust be a valid [duration string](https://golang.org/pkg/time/#ParseDuration)\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "Specifies the default time-to-live.\nIf set, this overrides the global default.\nMust be a valid [duration string](https://golang.org/pkg/time/#ParseDuration)\n"
},
"listingVisibility": {
"type": "string",
- "description": "Specifies whether to show this mount in\nthe UI-specific listing endpoint. Valid values are \"unauth\" or \"hidden\".\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "Specifies whether to show this mount in\nthe UI-specific listing endpoint. Valid values are \"unauth\" or \"hidden\".\n"
},
"maxLeaseTtl": {
"type": "string",
- "description": "Specifies the maximum time-to-live.\nIf set, this overrides the global default.\nMust be a valid [duration string](https://golang.org/pkg/time/#ParseDuration)\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "Specifies the maximum time-to-live.\nIf set, this overrides the global default.\nMust be a valid [duration string](https://golang.org/pkg/time/#ParseDuration)\n"
},
"passthroughRequestHeaders": {
"type": "array",
"items": {
"type": "string"
},
- "description": "List of headers to whitelist and\npass from the request to the backend.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "List of headers to whitelist and\npass from the request to the backend.\n"
},
"tokenType": {
"type": "string",
- "description": "Specifies the type of tokens that should be returned by\nthe mount. Valid values are \"default-service\", \"default-batch\", \"service\", \"batch\".\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "Specifies the type of tokens that should be returned by\nthe mount. Valid values are \"default-service\", \"default-batch\", \"service\", \"batch\".\n"
}
},
"type": "object"
@@ -5237,39 +3154,23 @@
"vault:index/ProviderAuthLogin:ProviderAuthLogin": {
"properties": {
"method": {
- "type": "string",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "type": "string"
},
"namespace": {
- "type": "string",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "type": "string"
},
"parameters": {
"type": "object",
"additionalProperties": {
"type": "string"
},
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "secret": true
},
"path": {
- "type": "string",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "type": "string"
+ },
+ "useRootNamespace": {
+ "type": "boolean"
}
},
"type": "object",
@@ -5285,124 +3186,52 @@
"vault:index/ProviderAuthLoginAws:ProviderAuthLoginAws": {
"properties": {
"awsAccessKeyId": {
- "type": "string",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "type": "string"
},
"awsIamEndpoint": {
- "type": "string",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "type": "string"
},
"awsProfile": {
- "type": "string",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "type": "string"
},
"awsRegion": {
- "type": "string",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "type": "string"
},
"awsRoleArn": {
- "type": "string",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "type": "string"
},
"awsRoleSessionName": {
- "type": "string",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "type": "string"
},
"awsSecretAccessKey": {
- "type": "string",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "type": "string"
},
"awsSessionToken": {
- "type": "string",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "type": "string"
},
"awsSharedCredentialsFile": {
- "type": "string",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "type": "string"
},
"awsStsEndpoint": {
- "type": "string",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "type": "string"
},
"awsWebIdentityTokenFile": {
- "type": "string",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "type": "string"
},
"headerValue": {
- "type": "string",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "type": "string"
},
"mount": {
- "type": "string",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "type": "string"
},
"namespace": {
- "type": "string",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "type": "string"
},
"role": {
- "type": "string",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "type": "string"
+ },
+ "useRootNamespace": {
+ "type": "boolean"
}
},
"type": "object",
@@ -5418,92 +3247,40 @@
"vault:index/ProviderAuthLoginAzure:ProviderAuthLoginAzure": {
"properties": {
"clientId": {
- "type": "string",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "type": "string"
},
"jwt": {
- "type": "string",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "type": "string"
},
"mount": {
- "type": "string",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "type": "string"
},
"namespace": {
- "type": "string",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "type": "string"
},
"resourceGroupName": {
- "type": "string",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "type": "string"
},
"role": {
- "type": "string",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "type": "string"
},
"scope": {
- "type": "string",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "type": "string"
},
"subscriptionId": {
- "type": "string",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "type": "string"
},
"tenantId": {
- "type": "string",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "type": "string"
+ },
+ "useRootNamespace": {
+ "type": "boolean"
},
"vmName": {
- "type": "string",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "type": "string"
},
"vmssName": {
- "type": "string",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "type": "string"
}
},
"type": "object",
@@ -5521,44 +3298,22 @@
"vault:index/ProviderAuthLoginCert:ProviderAuthLoginCert": {
"properties": {
"certFile": {
- "type": "string",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "type": "string"
},
"keyFile": {
- "type": "string",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "type": "string"
},
"mount": {
- "type": "string",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "type": "string"
},
"name": {
- "type": "string",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "type": "string"
},
"namespace": {
- "type": "string",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "type": "string"
+ },
+ "useRootNamespace": {
+ "type": "boolean"
}
},
"type": "object",
@@ -5575,52 +3330,25 @@
"vault:index/ProviderAuthLoginGcp:ProviderAuthLoginGcp": {
"properties": {
"credentials": {
- "type": "string",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "type": "string"
},
"jwt": {
- "type": "string",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "type": "string"
},
"mount": {
- "type": "string",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "type": "string"
},
"namespace": {
- "type": "string",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "type": "string"
},
"role": {
- "type": "string",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "type": "string"
},
"serviceAccount": {
- "type": "string",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "type": "string"
+ },
+ "useRootNamespace": {
+ "type": "boolean"
}
},
"type": "object",
@@ -5636,36 +3364,19 @@
"vault:index/ProviderAuthLoginJwt:ProviderAuthLoginJwt": {
"properties": {
"jwt": {
- "type": "string",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "type": "string"
},
"mount": {
- "type": "string",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "type": "string"
},
"namespace": {
- "type": "string",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "type": "string"
},
"role": {
- "type": "string",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "type": "string"
+ },
+ "useRootNamespace": {
+ "type": "boolean"
}
},
"type": "object",
@@ -5682,84 +3393,37 @@
"vault:index/ProviderAuthLoginKerberos:ProviderAuthLoginKerberos": {
"properties": {
"disableFastNegotiation": {
- "type": "boolean",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "type": "boolean"
},
"keytabPath": {
- "type": "string",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "type": "string"
},
"krb5confPath": {
- "type": "string",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "type": "string"
},
"mount": {
- "type": "string",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "type": "string"
},
"namespace": {
- "type": "string",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "type": "string"
},
"realm": {
- "type": "string",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "type": "string"
},
"removeInstanceName": {
- "type": "boolean",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "type": "boolean"
},
"service": {
- "type": "string",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "type": "string"
},
"token": {
- "type": "string",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "type": "string"
+ },
+ "useRootNamespace": {
+ "type": "boolean"
},
"username": {
- "type": "string",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "type": "string"
}
},
"type": "object"
@@ -5767,36 +3431,19 @@
"vault:index/ProviderAuthLoginOci:ProviderAuthLoginOci": {
"properties": {
"authType": {
- "type": "string",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "type": "string"
},
"mount": {
- "type": "string",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "type": "string"
},
"namespace": {
- "type": "string",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "type": "string"
},
"role": {
- "type": "string",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "type": "string"
+ },
+ "useRootNamespace": {
+ "type": "boolean"
}
},
"type": "object",
@@ -5813,44 +3460,22 @@
"vault:index/ProviderAuthLoginOidc:ProviderAuthLoginOidc": {
"properties": {
"callbackAddress": {
- "type": "string",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "type": "string"
},
"callbackListenerAddress": {
- "type": "string",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "type": "string"
},
"mount": {
- "type": "string",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "type": "string"
},
"namespace": {
- "type": "string",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "type": "string"
},
"role": {
- "type": "string",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "type": "string"
+ },
+ "useRootNamespace": {
+ "type": "boolean"
}
},
"type": "object",
@@ -5866,36 +3491,19 @@
"vault:index/ProviderAuthLoginRadius:ProviderAuthLoginRadius": {
"properties": {
"mount": {
- "type": "string",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "type": "string"
},
"namespace": {
- "type": "string",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "type": "string"
},
"password": {
- "type": "string",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "type": "string"
+ },
+ "useRootNamespace": {
+ "type": "boolean"
},
"username": {
- "type": "string",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "type": "string"
}
},
"type": "object",
@@ -5912,20 +3520,13 @@
"vault:index/ProviderAuthLoginTokenFile:ProviderAuthLoginTokenFile": {
"properties": {
"filename": {
- "type": "string",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "type": "string"
},
"namespace": {
- "type": "string",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "type": "string"
+ },
+ "useRootNamespace": {
+ "type": "boolean"
}
},
"type": "object",
@@ -5941,44 +3542,22 @@
"vault:index/ProviderAuthLoginUserpass:ProviderAuthLoginUserpass": {
"properties": {
"mount": {
- "type": "string",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "type": "string"
},
"namespace": {
- "type": "string",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "type": "string"
},
"password": {
- "type": "string",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "type": "string"
},
"passwordFile": {
- "type": "string",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "type": "string"
+ },
+ "useRootNamespace": {
+ "type": "boolean"
},
"username": {
- "type": "string",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "type": "string"
}
},
"type": "object",
@@ -5994,20 +3573,10 @@
"vault:index/ProviderClientAuth:ProviderClientAuth": {
"properties": {
"certFile": {
- "type": "string",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "type": "string"
},
"keyFile": {
- "type": "string",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "type": "string"
}
},
"type": "object",
@@ -6024,20 +3593,10 @@
"vault:index/ProviderHeader:ProviderHeader": {
"properties": {
"name": {
- "type": "string",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "type": "string"
},
"value": {
- "type": "string",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "type": "string"
}
},
"type": "object",
@@ -6058,84 +3617,44 @@
"items": {
"$ref": "#/types/vault:index/getPolicyDocumentRuleAllowedParameter:getPolicyDocumentRuleAllowedParameter"
},
- "description": "Whitelists a list of keys and values that are permitted on the given path. See Parameters below.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "Whitelists a list of keys and values that are permitted on the given path. See Parameters below.\n"
},
"capabilities": {
"type": "array",
"items": {
"type": "string"
},
- "description": "A list of capabilities that this rule apply to `path`. For example, [\"read\", \"write\"].\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "A list of capabilities that this rule apply to `path`. For example, [\"read\", \"write\"].\n"
},
"deniedParameters": {
"type": "array",
"items": {
"$ref": "#/types/vault:index/getPolicyDocumentRuleDeniedParameter:getPolicyDocumentRuleDeniedParameter"
},
- "description": "Blacklists a list of parameter and values. Any values specified here take precedence over `allowed_parameter`. See Parameters below.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "Blacklists a list of parameter and values. Any values specified here take precedence over `allowed_parameter`. See Parameters below.\n"
},
"description": {
"type": "string",
- "description": "Description of the rule. Will be added as a comment to rendered rule.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "Description of the rule. Will be added as a comment to rendered rule.\n"
},
"maxWrappingTtl": {
"type": "string",
- "description": "The maximum allowed TTL that clients can specify for a wrapped response.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The maximum allowed TTL that clients can specify for a wrapped response.\n"
},
"minWrappingTtl": {
"type": "string",
- "description": "The minimum allowed TTL that clients can specify for a wrapped response.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The minimum allowed TTL that clients can specify for a wrapped response.\n"
},
"path": {
"type": "string",
- "description": "A path in Vault that this rule applies to.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "A path in Vault that this rule applies to.\n"
},
"requiredParameters": {
"type": "array",
"items": {
"type": "string"
},
- "description": "A list of parameters that must be specified.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "A list of parameters that must be specified.\n"
}
},
"type": "object",
@@ -6148,24 +3667,14 @@
"properties": {
"key": {
"type": "string",
- "description": "name of permitted or denied parameter.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "name of permitted or denied parameter.\n"
},
"values": {
"type": "array",
"items": {
"type": "string"
},
- "description": "list of values what are permitted or denied by policy rule.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "list of values what are permitted or denied by policy rule.\n"
}
},
"type": "object",
@@ -6178,24 +3687,14 @@
"properties": {
"key": {
"type": "string",
- "description": "name of permitted or denied parameter.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "name of permitted or denied parameter.\n"
},
"values": {
"type": "array",
"items": {
"type": "string"
},
- "description": "list of values what are permitted or denied by policy rule.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "list of values what are permitted or denied by policy rule.\n"
}
},
"type": "object",
@@ -6211,84 +3710,44 @@
"items": {
"type": "string"
},
- "description": "List of headers to whitelist and allowing\na plugin to include them in the response.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "List of headers to whitelist and allowing\na plugin to include them in the response.\n"
},
"auditNonHmacRequestKeys": {
"type": "array",
"items": {
"type": "string"
},
- "description": "Specifies the list of keys that will\nnot be HMAC'd by audit devices in the request data object.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "Specifies the list of keys that will\nnot be HMAC'd by audit devices in the request data object.\n"
},
"auditNonHmacResponseKeys": {
"type": "array",
"items": {
"type": "string"
},
- "description": "Specifies the list of keys that will\nnot be HMAC'd by audit devices in the response data object.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "Specifies the list of keys that will\nnot be HMAC'd by audit devices in the response data object.\n"
},
"defaultLeaseTtl": {
"type": "string",
- "description": "Specifies the default time-to-live.\nIf set, this overrides the global default.\nMust be a valid [duration string](https://golang.org/pkg/time/#ParseDuration)\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "Specifies the default time-to-live.\nIf set, this overrides the global default.\nMust be a valid [duration string](https://golang.org/pkg/time/#ParseDuration)\n"
},
"listingVisibility": {
"type": "string",
- "description": "Specifies whether to show this mount in\nthe UI-specific listing endpoint. Valid values are \"unauth\" or \"hidden\".\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "Specifies whether to show this mount in\nthe UI-specific listing endpoint. Valid values are \"unauth\" or \"hidden\".\n"
},
"maxLeaseTtl": {
"type": "string",
- "description": "Specifies the maximum time-to-live.\nIf set, this overrides the global default.\nMust be a valid [duration string](https://golang.org/pkg/time/#ParseDuration)\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "Specifies the maximum time-to-live.\nIf set, this overrides the global default.\nMust be a valid [duration string](https://golang.org/pkg/time/#ParseDuration)\n"
},
"passthroughRequestHeaders": {
"type": "array",
"items": {
"type": "string"
},
- "description": "List of headers to whitelist and\npass from the request to the backend.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "List of headers to whitelist and\npass from the request to the backend.\n"
},
"tokenType": {
"type": "string",
- "description": "Specifies the type of tokens that should be returned by\nthe mount. Valid values are \"default-service\", \"default-batch\", \"service\", \"batch\".\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "Specifies the type of tokens that should be returned by\nthe mount. Valid values are \"default-service\", \"default-batch\", \"service\", \"batch\".\n"
}
},
"type": "object"
@@ -6296,40 +3755,20 @@
"vault:kv/SecretV2CustomMetadata:SecretV2CustomMetadata": {
"properties": {
"casRequired": {
- "type": "boolean",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "type": "boolean"
},
"data": {
"type": "object",
"additionalProperties": {
"$ref": "pulumi.json#/Any"
},
- "description": "A mapping whose keys are the top-level data keys returned from\nVault and whose values are the corresponding values. This map can only\nrepresent string data, so any non-string values returned from Vault are\nserialized as JSON.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "A mapping whose keys are the top-level data keys returned from\nVault and whose values are the corresponding values. This map can only\nrepresent string data, so any non-string values returned from Vault are\nserialized as JSON.\n"
},
"deleteVersionAfter": {
- "type": "integer",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "type": "integer"
},
"maxVersions": {
- "type": "integer",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "type": "integer"
}
},
"type": "object"
@@ -6338,128 +3777,58 @@
"properties": {
"accessKey": {
"type": "string",
- "description": "The AWS access key to use.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The AWS access key to use.\n"
},
"allowGenerateKey": {
"type": "boolean",
- "description": "If no existing key can be found in \nthe referenced backend, instructs Vault to generate a key within the backend.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "If no existing key can be found in \nthe referenced backend, instructs Vault to generate a key within the backend.\n"
},
"allowReplaceKey": {
"type": "boolean",
- "description": "Controls the ability for Vault to replace through\ngeneration or importing a key into the configured backend even\nif a key is present, if set to `false` those operations are forbidden\nif a key exists.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "Controls the ability for Vault to replace through\ngeneration or importing a key into the configured backend even\nif a key is present, if set to `false` those operations are forbidden\nif a key exists.\n"
},
"allowStoreKey": {
"type": "boolean",
- "description": "Controls the ability for Vault to import a key to the\nconfigured backend, if `false`, those operations will be forbidden.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "Controls the ability for Vault to import a key to the\nconfigured backend, if `false`, those operations will be forbidden.\n"
},
"anyMount": {
"type": "boolean",
- "description": "If `true`, allows usage from any mount point within the\nnamespace.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "If `true`, allows usage from any mount point within the\nnamespace.\n"
},
"curve": {
"type": "string",
- "description": "Supplies the curve value when using the `CKM_ECDSA` mechanism.\nRequired if `allow_generate_key` is `true`.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The curve to use for an ECDSA key. Used when `key_type` \nis `ECDSA`. Required if `allow_generate_key` is `true`.\n"
},
"endpoint": {
"type": "string",
- "description": "Used to specify a custom AWS endpoint.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "Used to specify a custom AWS endpoint.\n"
},
"keyBits": {
"type": "string",
- "description": "Supplies the size in bits of the key when using `CKM_RSA_PKCS_PSS`,\n`CKM_RSA_PKCS_OAEP` or `CKM_RSA_PKCS` as a value for `mechanism`. Required if\n`allow_generate_key` is `true`.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The size in bits for an RSA key.\n"
},
"keyType": {
"type": "string",
- "description": "The type of key to use.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The type of key to use.\n"
},
"kmsKey": {
"type": "string",
- "description": "An identifier for the key.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "An identifier for the key.\n"
},
"name": {
"type": "string",
- "description": "A unique lowercase name that serves as identifying the key.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "A unique lowercase name that serves as identifying the key.\n"
},
"region": {
"type": "string",
- "description": "The AWS region where the keys are stored (or will be stored).\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The AWS region where the keys are stored (or will be stored).\n"
},
"secretKey": {
"type": "string",
- "description": "The AWS access key to use.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The AWS access key to use.\n"
},
"uuid": {
- "type": "string",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "type": "string"
}
},
"type": "object",
@@ -6494,137 +3863,62 @@
"properties": {
"allowGenerateKey": {
"type": "boolean",
- "description": "If no existing key can be found in \nthe referenced backend, instructs Vault to generate a key within the backend.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "If no existing key can be found in \nthe referenced backend, instructs Vault to generate a key within the backend.\n"
},
"allowReplaceKey": {
"type": "boolean",
- "description": "Controls the ability for Vault to replace through\ngeneration or importing a key into the configured backend even\nif a key is present, if set to `false` those operations are forbidden\nif a key exists.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "Controls the ability for Vault to replace through\ngeneration or importing a key into the configured backend even\nif a key is present, if set to `false` those operations are forbidden\nif a key exists.\n"
},
"allowStoreKey": {
"type": "boolean",
- "description": "Controls the ability for Vault to import a key to the\nconfigured backend, if `false`, those operations will be forbidden.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "Controls the ability for Vault to import a key to the\nconfigured backend, if `false`, those operations will be forbidden.\n"
},
"anyMount": {
"type": "boolean",
- "description": "If `true`, allows usage from any mount point within the\nnamespace.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "If `true`, allows usage from any mount point within the\nnamespace.\n"
},
"clientId": {
"type": "string",
- "description": "The client id for credentials to query the Azure APIs.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The client id for credentials to query the Azure APIs.\n"
},
"clientSecret": {
"type": "string",
- "description": "The client secret for credentials to query the Azure APIs.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The client secret for credentials to query the Azure APIs.\n"
},
"environment": {
"type": "string",
- "description": "The Azure Cloud environment API endpoints to use.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The Azure Cloud environment API endpoints to use.\n"
},
"keyBits": {
"type": "string",
- "description": "Supplies the size in bits of the key when using `CKM_RSA_PKCS_PSS`,\n`CKM_RSA_PKCS_OAEP` or `CKM_RSA_PKCS` as a value for `mechanism`. Required if\n`allow_generate_key` is `true`.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The size in bits for an RSA key.\n"
},
"keyName": {
"type": "string",
- "description": "The Key Vault key to use for encryption and decryption.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The Key Vault key to use for encryption and decryption.\n"
},
"keyType": {
"type": "string",
- "description": "The type of key to use.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The type of key to use.\n"
},
"name": {
"type": "string",
- "description": "A unique lowercase name that serves as identifying the key.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "A unique lowercase name that serves as identifying the key.\n"
},
"resource": {
"type": "string",
- "description": "The Azure Key Vault resource's DNS Suffix to connect to.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The Azure Key Vault resource's DNS Suffix to connect to.\n"
},
"tenantId": {
"type": "string",
- "description": "The tenant id for the Azure Active Directory organization.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The tenant id for the Azure Active Directory organization.\n"
},
"uuid": {
- "type": "string",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "type": "string"
},
"vaultName": {
"type": "string",
- "description": "The Key Vault vault to use for encryption and decryption.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The Key Vault vault to use for encryption and decryption.\n"
}
},
"type": "object",
@@ -6662,146 +3956,66 @@
"properties": {
"allowGenerateKey": {
"type": "boolean",
- "description": "If no existing key can be found in \nthe referenced backend, instructs Vault to generate a key within the backend.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "If no existing key can be found in \nthe referenced backend, instructs Vault to generate a key within the backend.\n"
},
"allowReplaceKey": {
"type": "boolean",
- "description": "Controls the ability for Vault to replace through\ngeneration or importing a key into the configured backend even\nif a key is present, if set to `false` those operations are forbidden\nif a key exists.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "Controls the ability for Vault to replace through\ngeneration or importing a key into the configured backend even\nif a key is present, if set to `false` those operations are forbidden\nif a key exists.\n"
},
"allowStoreKey": {
"type": "boolean",
- "description": "Controls the ability for Vault to import a key to the\nconfigured backend, if `false`, those operations will be forbidden.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "Controls the ability for Vault to import a key to the\nconfigured backend, if `false`, those operations will be forbidden.\n"
},
"anyMount": {
"type": "boolean",
- "description": "If `true`, allows usage from any mount point within the\nnamespace.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "If `true`, allows usage from any mount point within the\nnamespace.\n"
},
"curve": {
"type": "string",
- "description": "Supplies the curve value when using the `CKM_ECDSA` mechanism.\nRequired if `allow_generate_key` is `true`.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The curve to use for an ECDSA key. Used when `key_type` \nis `ECDSA`. Required if `allow_generate_key` is `true`.\n"
},
"forceRwSession": {
"type": "string",
- "description": "Force all operations to open up a read-write session to\nthe HSM.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "Force all operations to open up a read-write session to\nthe HSM.\n"
},
"keyBits": {
"type": "string",
- "description": "Supplies the size in bits of the key when using `CKM_RSA_PKCS_PSS`,\n`CKM_RSA_PKCS_OAEP` or `CKM_RSA_PKCS` as a value for `mechanism`. Required if\n`allow_generate_key` is `true`.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The size in bits for an RSA key.\n"
},
"keyId": {
"type": "string",
- "description": "The id of a PKCS#11 key to use.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The id of a PKCS#11 key to use.\n"
},
"keyLabel": {
"type": "string",
- "description": "The label of the key to use.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The label of the key to use.\n"
},
"library": {
"type": "string",
- "description": "The name of the kms_library stanza to use from Vault's config\nto lookup the local library path.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The name of the kms_library stanza to use from Vault's config\nto lookup the local library path.\n"
},
"mechanism": {
"type": "string",
- "description": "The encryption/decryption mechanism to use, specified as a\nhexadecimal (prefixed by 0x) string.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The encryption/decryption mechanism to use, specified as a\nhexadecimal (prefixed by 0x) string.\n"
},
"name": {
"type": "string",
- "description": "A unique lowercase name that serves as identifying the key.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "A unique lowercase name that serves as identifying the key.\n"
},
"pin": {
"type": "string",
- "description": "The PIN for login.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The PIN for login.\n"
},
"slot": {
"type": "string",
- "description": "The slot number to use, specified as a string in a decimal format\n(e.g. `2305843009213693953`).\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The slot number to use, specified as a string in a decimal format\n(e.g. `2305843009213693953`).\n"
},
"tokenLabel": {
"type": "string",
- "description": "The slot token label to use.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The slot token label to use.\n"
},
"uuid": {
- "type": "string",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "type": "string"
}
},
"type": "object",
@@ -6835,24 +4049,14 @@
"properties": {
"groupName": {
"type": "string",
- "description": "Name of the group within the Okta\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "Name of the group within the Okta\n"
},
"policies": {
"type": "array",
"items": {
"type": "string"
},
- "description": "List of Vault policies to associate with this user\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "Vault policies to associate with this group\n"
}
},
"type": "object",
@@ -6868,33 +4072,18 @@
"items": {
"type": "string"
},
- "description": "List of Okta groups to associate with this user\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "List of Okta groups to associate with this user\n"
},
"policies": {
"type": "array",
"items": {
"type": "string"
},
- "description": "List of Vault policies to associate with this user\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "Vault policies to associate with this group\n"
},
"username": {
"type": "string",
- "description": "Name of the user within Okta\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "Name of the user within Okta\n"
}
},
"type": "object",
@@ -6906,30 +4095,15 @@
"properties": {
"cps": {
"type": "string",
- "description": "The URL of the CPS for the policy identifier\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The URL of the CPS for the policy identifier\n\nExample usage:\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.Mount;\nimport com.pulumi.vault.MountArgs;\nimport com.pulumi.vault.pkiSecret.SecretBackendRole;\nimport com.pulumi.vault.pkiSecret.SecretBackendRoleArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var pki = new Mount(\"pki\", MountArgs.builder() \n .path(\"pki\")\n .type(\"pki\")\n .defaultLeaseTtlSeconds(3600)\n .maxLeaseTtlSeconds(86400)\n .build());\n\n var role = new SecretBackendRole(\"role\", SecretBackendRoleArgs.builder() \n .backend(pki.path())\n .ttl(3600)\n .allowIpSans(true)\n .keyType(\"rsa\")\n .keyBits(4096)\n .allowedDomains( \n \"example.com\",\n \"my.domain\")\n .allowSubdomains(true)\n .policyIdentifiers( \n Map.ofEntries(\n Map.entry(\"oid\", \"1.3.6.1.4.1.7.8\"),\n Map.entry(\"notice\", \"I am a user Notice\")\n ),\n Map.ofEntries(\n Map.entry(\"oid\", \"1.3.6.1.4.1.44947.1.2.4\"),\n Map.entry(\"cps\", \"https://example.com\")\n ))\n .build());\n\n }\n}\n```\n```yaml\nresources:\n pki:\n type: vault:Mount\n properties:\n path: pki\n type: pki\n defaultLeaseTtlSeconds: 3600\n maxLeaseTtlSeconds: 86400\n role:\n type: vault:pkiSecret:SecretBackendRole\n properties:\n backend: ${pki.path}\n ttl: 3600\n allowIpSans: true\n keyType: rsa\n keyBits: 4096\n allowedDomains:\n - example.com\n - my.domain\n allowSubdomains: true\n policyIdentifiers:\n - oid: 1.3.6.1.4.1.7.8\n notice: I am a user Notice\n - oid: 1.3.6.1.4.1.44947.1.2.4\n cps: https://example.com\n```\n"
},
"notice": {
"type": "string",
- "description": "A notice for the policy identifier\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "A notice for the policy identifier\n"
},
"oid": {
"type": "string",
- "description": "The OID for the policy identifier\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The OID for the policy identifier\n"
}
},
"type": "object",
@@ -6940,36 +4114,16 @@
"vault:rabbitMq/SecretBackendRoleVhost:SecretBackendRoleVhost": {
"properties": {
"configure": {
- "type": "string",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "type": "string"
},
"host": {
- "type": "string",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "type": "string"
},
"read": {
- "type": "string",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "type": "string"
},
"write": {
- "type": "string",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "type": "string"
}
},
"type": "object",
@@ -6983,24 +4137,14 @@
"vault:rabbitMq/SecretBackendRoleVhostTopic:SecretBackendRoleVhostTopic": {
"properties": {
"host": {
- "type": "string",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "type": "string"
},
"vhosts": {
"type": "array",
"items": {
"$ref": "#/types/vault:rabbitMq/SecretBackendRoleVhostTopicVhost:SecretBackendRoleVhostTopicVhost"
},
- "description": "Specifies a map of virtual hosts to permissions.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "Specifies a map of virtual hosts to permissions.\n"
}
},
"type": "object",
@@ -7011,28 +4155,13 @@
"vault:rabbitMq/SecretBackendRoleVhostTopicVhost:SecretBackendRoleVhostTopicVhost": {
"properties": {
"read": {
- "type": "string",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "type": "string"
},
"topic": {
- "type": "string",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "type": "string"
},
"write": {
- "type": "string",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "type": "string"
}
},
"type": "object",
@@ -7049,21 +4178,11 @@
"items": {
"type": "integer"
},
- "description": "A list of allowed key lengths as integers. \nFor key types that do not support setting the length a value of `[0]` should be used.\nSetting multiple lengths is only supported on Vault 1.10+. For prior releases `length`\nmust be set to a single element list.\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "A list of allowed key lengths as integers. \nFor key types that do not support setting the length a value of `[0]` should be used.\nSetting multiple lengths is only supported on Vault 1.10+. For prior releases `length`\nmust be set to a single element list.\n\nExample configuration blocks that might be included in the `vault.ssh.SecretBackendRole`\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\n```\n```python\nimport pulumi\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n }\n}\n```\n```yaml\n{}\n```\n"
},
"type": {
"type": "string",
- "description": "The SSH public key type. \n*Supported key types are:*\n`rsa`, `ecdsa`, `ec`, `dsa`, `ed25519`, `ssh-rsa`, `ssh-dss`, `ssh-ed25519`,\n`ecdsa-sha2-nistp256`, `ecdsa-sha2-nistp384`, `ecdsa-sha2-nistp521`\n",
- "language": {
- "python": {
- "mapCase": false
- }
- }
+ "description": "The SSH public key type. \n*Supported key types are:*\n`rsa`, `ecdsa`, `ec`, `dsa`, `ed25519`, `ssh-rsa`, `ssh-dss`, `ssh-ed25519`,\n`ecdsa-sha2-nistp256`, `ecdsa-sha2-nistp384`, `ecdsa-sha2-nistp521`\n"
}
},
"type": "object",
@@ -7150,7 +4269,8 @@
"items": {
"$ref": "#/types/vault:index/ProviderHeader:ProviderHeader"
},
- "description": "The headers to send with each Vault request.\n"
+ "description": "The headers to send with each Vault request.\n",
+ "secret": true
},
"maxLeaseTtlSeconds": {
"type": "integer",
@@ -7168,6 +4288,10 @@
"type": "string",
"description": "The namespace to use. Available only for Vault Enterprise.\n"
},
+ "setNamespaceFromToken": {
+ "type": "boolean",
+ "description": "In the case where the Vault token is for a specific namespace and the provider namespace is not configured, use the\ntoken namespace as the root namespace for all resources.\n"
+ },
"skipChildToken": {
"type": "boolean",
"description": "Set this to true to prevent the creation of ephemeral child token used by this provider.\n"
@@ -7276,7 +4400,8 @@
"items": {
"$ref": "#/types/vault:index/ProviderHeader:ProviderHeader"
},
- "description": "The headers to send with each Vault request.\n"
+ "description": "The headers to send with each Vault request.\n",
+ "secret": true
},
"maxLeaseTtlSeconds": {
"type": "integer",
@@ -7306,6 +4431,10 @@
"type": "string",
"description": "The namespace to use. Available only for Vault Enterprise.\n"
},
+ "setNamespaceFromToken": {
+ "type": "boolean",
+ "description": "In the case where the Vault token is for a specific namespace and the provider namespace is not configured, use the\ntoken namespace as the root namespace for all resources.\n"
+ },
"skipChildToken": {
"type": "boolean",
"description": "Set this to true to prevent the creation of ephemeral child token used by this provider.\n"
@@ -7347,7 +4476,7 @@
},
"resources": {
"vault:ad/secretBackend:SecretBackend": {
- "description": "{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst config = new vault.ad.SecretBackend(\"config\", {\n backend: \"ad\",\n binddn: \"CN=Administrator,CN=Users,DC=corp,DC=example,DC=net\",\n bindpass: \"SuperSecretPassw0rd\",\n insecureTls: true,\n url: \"ldaps://ad\",\n userdn: \"CN=Users,DC=corp,DC=example,DC=net\",\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nconfig = vault.ad.SecretBackend(\"config\",\n backend=\"ad\",\n binddn=\"CN=Administrator,CN=Users,DC=corp,DC=example,DC=net\",\n bindpass=\"SuperSecretPassw0rd\",\n insecure_tls=True,\n url=\"ldaps://ad\",\n userdn=\"CN=Users,DC=corp,DC=example,DC=net\")\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Vault.AD.SecretBackend(\"config\", new()\n {\n Backend = \"ad\",\n Binddn = \"CN=Administrator,CN=Users,DC=corp,DC=example,DC=net\",\n Bindpass = \"SuperSecretPassw0rd\",\n InsecureTls = true,\n Url = \"ldaps://ad\",\n Userdn = \"CN=Users,DC=corp,DC=example,DC=net\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/ad\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := ad.NewSecretBackend(ctx, \"config\", \u0026ad.SecretBackendArgs{\n\t\t\tBackend: pulumi.String(\"ad\"),\n\t\t\tBinddn: pulumi.String(\"CN=Administrator,CN=Users,DC=corp,DC=example,DC=net\"),\n\t\t\tBindpass: pulumi.String(\"SuperSecretPassw0rd\"),\n\t\t\tInsecureTls: pulumi.Bool(true),\n\t\t\tUrl: pulumi.String(\"ldaps://ad\"),\n\t\t\tUserdn: pulumi.String(\"CN=Users,DC=corp,DC=example,DC=net\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.ad.SecretBackend;\nimport com.pulumi.vault.ad.SecretBackendArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var config = new SecretBackend(\"config\", SecretBackendArgs.builder() \n .backend(\"ad\")\n .binddn(\"CN=Administrator,CN=Users,DC=corp,DC=example,DC=net\")\n .bindpass(\"SuperSecretPassw0rd\")\n .insecureTls(\"true\")\n .url(\"ldaps://ad\")\n .userdn(\"CN=Users,DC=corp,DC=example,DC=net\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n config:\n type: vault:ad:SecretBackend\n properties:\n backend: ad\n binddn: CN=Administrator,CN=Users,DC=corp,DC=example,DC=net\n bindpass: SuperSecretPassw0rd\n insecureTls: true\n url: ldaps://ad\n userdn: CN=Users,DC=corp,DC=example,DC=net\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nAD secret backend can be imported using the `backend`, e.g.\n\n```sh\n $ pulumi import vault:ad/secretBackend:SecretBackend ad ad\n```\n\n ",
+ "description": "{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst config = new vault.ad.SecretBackend(\"config\", {\n backend: \"ad\",\n binddn: \"CN=Administrator,CN=Users,DC=corp,DC=example,DC=net\",\n bindpass: \"SuperSecretPassw0rd\",\n insecureTls: true,\n url: \"ldaps://ad\",\n userdn: \"CN=Users,DC=corp,DC=example,DC=net\",\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nconfig = vault.ad.SecretBackend(\"config\",\n backend=\"ad\",\n binddn=\"CN=Administrator,CN=Users,DC=corp,DC=example,DC=net\",\n bindpass=\"SuperSecretPassw0rd\",\n insecure_tls=True,\n url=\"ldaps://ad\",\n userdn=\"CN=Users,DC=corp,DC=example,DC=net\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Vault.AD.SecretBackend(\"config\", new()\n {\n Backend = \"ad\",\n Binddn = \"CN=Administrator,CN=Users,DC=corp,DC=example,DC=net\",\n Bindpass = \"SuperSecretPassw0rd\",\n InsecureTls = true,\n Url = \"ldaps://ad\",\n Userdn = \"CN=Users,DC=corp,DC=example,DC=net\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/ad\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := ad.NewSecretBackend(ctx, \"config\", \u0026ad.SecretBackendArgs{\n\t\t\tBackend: pulumi.String(\"ad\"),\n\t\t\tBinddn: pulumi.String(\"CN=Administrator,CN=Users,DC=corp,DC=example,DC=net\"),\n\t\t\tBindpass: pulumi.String(\"SuperSecretPassw0rd\"),\n\t\t\tInsecureTls: pulumi.Bool(true),\n\t\t\tUrl: pulumi.String(\"ldaps://ad\"),\n\t\t\tUserdn: pulumi.String(\"CN=Users,DC=corp,DC=example,DC=net\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.ad.SecretBackend;\nimport com.pulumi.vault.ad.SecretBackendArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var config = new SecretBackend(\"config\", SecretBackendArgs.builder() \n .backend(\"ad\")\n .binddn(\"CN=Administrator,CN=Users,DC=corp,DC=example,DC=net\")\n .bindpass(\"SuperSecretPassw0rd\")\n .insecureTls(\"true\")\n .url(\"ldaps://ad\")\n .userdn(\"CN=Users,DC=corp,DC=example,DC=net\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n config:\n type: vault:ad:SecretBackend\n properties:\n backend: ad\n binddn: CN=Administrator,CN=Users,DC=corp,DC=example,DC=net\n bindpass: SuperSecretPassw0rd\n insecureTls: 'true'\n url: ldaps://ad\n userdn: CN=Users,DC=corp,DC=example,DC=net\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nAD secret backend can be imported using the `backend`, e.g.\n\n```sh\n $ pulumi import vault:ad/secretBackend:SecretBackend ad ad\n```\n ",
"properties": {
"anonymousGroupSearch": {
"type": "boolean",
@@ -7829,7 +4958,7 @@
}
},
"vault:ad/secretLibrary:SecretLibrary": {
- "description": "{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst config = new vault.ad.SecretBackend(\"config\", {\n backend: \"ad\",\n binddn: \"CN=Administrator,CN=Users,DC=corp,DC=example,DC=net\",\n bindpass: \"SuperSecretPassw0rd\",\n url: \"ldaps://ad\",\n insecureTls: true,\n userdn: \"CN=Users,DC=corp,DC=example,DC=net\",\n});\nconst qa = new vault.ad.SecretLibrary(\"qa\", {\n backend: config.backend,\n serviceAccountNames: [\n \"Bob\",\n \"Mary\",\n ],\n ttl: 60,\n disableCheckInEnforcement: true,\n maxTtl: 120,\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nconfig = vault.ad.SecretBackend(\"config\",\n backend=\"ad\",\n binddn=\"CN=Administrator,CN=Users,DC=corp,DC=example,DC=net\",\n bindpass=\"SuperSecretPassw0rd\",\n url=\"ldaps://ad\",\n insecure_tls=True,\n userdn=\"CN=Users,DC=corp,DC=example,DC=net\")\nqa = vault.ad.SecretLibrary(\"qa\",\n backend=config.backend,\n service_account_names=[\n \"Bob\",\n \"Mary\",\n ],\n ttl=60,\n disable_check_in_enforcement=True,\n max_ttl=120)\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Vault.AD.SecretBackend(\"config\", new()\n {\n Backend = \"ad\",\n Binddn = \"CN=Administrator,CN=Users,DC=corp,DC=example,DC=net\",\n Bindpass = \"SuperSecretPassw0rd\",\n Url = \"ldaps://ad\",\n InsecureTls = true,\n Userdn = \"CN=Users,DC=corp,DC=example,DC=net\",\n });\n\n var qa = new Vault.AD.SecretLibrary(\"qa\", new()\n {\n Backend = config.Backend,\n ServiceAccountNames = new[]\n {\n \"Bob\",\n \"Mary\",\n },\n Ttl = 60,\n DisableCheckInEnforcement = true,\n MaxTtl = 120,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/ad\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tconfig, err := ad.NewSecretBackend(ctx, \"config\", \u0026ad.SecretBackendArgs{\n\t\t\tBackend: pulumi.String(\"ad\"),\n\t\t\tBinddn: pulumi.String(\"CN=Administrator,CN=Users,DC=corp,DC=example,DC=net\"),\n\t\t\tBindpass: pulumi.String(\"SuperSecretPassw0rd\"),\n\t\t\tUrl: pulumi.String(\"ldaps://ad\"),\n\t\t\tInsecureTls: pulumi.Bool(true),\n\t\t\tUserdn: pulumi.String(\"CN=Users,DC=corp,DC=example,DC=net\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = ad.NewSecretLibrary(ctx, \"qa\", \u0026ad.SecretLibraryArgs{\n\t\t\tBackend: config.Backend,\n\t\t\tServiceAccountNames: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"Bob\"),\n\t\t\t\tpulumi.String(\"Mary\"),\n\t\t\t},\n\t\t\tTtl: pulumi.Int(60),\n\t\t\tDisableCheckInEnforcement: pulumi.Bool(true),\n\t\t\tMaxTtl: pulumi.Int(120),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.ad.SecretBackend;\nimport com.pulumi.vault.ad.SecretBackendArgs;\nimport com.pulumi.vault.ad.SecretLibrary;\nimport com.pulumi.vault.ad.SecretLibraryArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var config = new SecretBackend(\"config\", SecretBackendArgs.builder() \n .backend(\"ad\")\n .binddn(\"CN=Administrator,CN=Users,DC=corp,DC=example,DC=net\")\n .bindpass(\"SuperSecretPassw0rd\")\n .url(\"ldaps://ad\")\n .insecureTls(\"true\")\n .userdn(\"CN=Users,DC=corp,DC=example,DC=net\")\n .build());\n\n var qa = new SecretLibrary(\"qa\", SecretLibraryArgs.builder() \n .backend(config.backend())\n .serviceAccountNames( \n \"Bob\",\n \"Mary\")\n .ttl(60)\n .disableCheckInEnforcement(true)\n .maxTtl(120)\n .build());\n\n }\n}\n```\n```yaml\nresources:\n config:\n type: vault:ad:SecretBackend\n properties:\n backend: ad\n binddn: CN=Administrator,CN=Users,DC=corp,DC=example,DC=net\n bindpass: SuperSecretPassw0rd\n url: ldaps://ad\n insecureTls: true\n userdn: CN=Users,DC=corp,DC=example,DC=net\n qa:\n type: vault:ad:SecretLibrary\n properties:\n backend: ${config.backend}\n serviceAccountNames:\n - Bob\n - Mary\n ttl: 60\n disableCheckInEnforcement: true\n maxTtl: 120\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nAD secret backend libraries can be imported using the `path`, e.g.\n\n```sh\n $ pulumi import vault:ad/secretLibrary:SecretLibrary role ad/library/bob\n```\n\n ",
+ "description": "{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst config = new vault.ad.SecretBackend(\"config\", {\n backend: \"ad\",\n binddn: \"CN=Administrator,CN=Users,DC=corp,DC=example,DC=net\",\n bindpass: \"SuperSecretPassw0rd\",\n url: \"ldaps://ad\",\n insecureTls: true,\n userdn: \"CN=Users,DC=corp,DC=example,DC=net\",\n});\nconst qa = new vault.ad.SecretLibrary(\"qa\", {\n backend: config.backend,\n serviceAccountNames: [\n \"Bob\",\n \"Mary\",\n ],\n ttl: 60,\n disableCheckInEnforcement: true,\n maxTtl: 120,\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nconfig = vault.ad.SecretBackend(\"config\",\n backend=\"ad\",\n binddn=\"CN=Administrator,CN=Users,DC=corp,DC=example,DC=net\",\n bindpass=\"SuperSecretPassw0rd\",\n url=\"ldaps://ad\",\n insecure_tls=True,\n userdn=\"CN=Users,DC=corp,DC=example,DC=net\")\nqa = vault.ad.SecretLibrary(\"qa\",\n backend=config.backend,\n service_account_names=[\n \"Bob\",\n \"Mary\",\n ],\n ttl=60,\n disable_check_in_enforcement=True,\n max_ttl=120)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Vault.AD.SecretBackend(\"config\", new()\n {\n Backend = \"ad\",\n Binddn = \"CN=Administrator,CN=Users,DC=corp,DC=example,DC=net\",\n Bindpass = \"SuperSecretPassw0rd\",\n Url = \"ldaps://ad\",\n InsecureTls = true,\n Userdn = \"CN=Users,DC=corp,DC=example,DC=net\",\n });\n\n var qa = new Vault.AD.SecretLibrary(\"qa\", new()\n {\n Backend = config.Backend,\n ServiceAccountNames = new[]\n {\n \"Bob\",\n \"Mary\",\n },\n Ttl = 60,\n DisableCheckInEnforcement = true,\n MaxTtl = 120,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/ad\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tconfig, err := ad.NewSecretBackend(ctx, \"config\", \u0026ad.SecretBackendArgs{\n\t\t\tBackend: pulumi.String(\"ad\"),\n\t\t\tBinddn: pulumi.String(\"CN=Administrator,CN=Users,DC=corp,DC=example,DC=net\"),\n\t\t\tBindpass: pulumi.String(\"SuperSecretPassw0rd\"),\n\t\t\tUrl: pulumi.String(\"ldaps://ad\"),\n\t\t\tInsecureTls: pulumi.Bool(true),\n\t\t\tUserdn: pulumi.String(\"CN=Users,DC=corp,DC=example,DC=net\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = ad.NewSecretLibrary(ctx, \"qa\", \u0026ad.SecretLibraryArgs{\n\t\t\tBackend: config.Backend,\n\t\t\tServiceAccountNames: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"Bob\"),\n\t\t\t\tpulumi.String(\"Mary\"),\n\t\t\t},\n\t\t\tTtl: pulumi.Int(60),\n\t\t\tDisableCheckInEnforcement: pulumi.Bool(true),\n\t\t\tMaxTtl: pulumi.Int(120),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.ad.SecretBackend;\nimport com.pulumi.vault.ad.SecretBackendArgs;\nimport com.pulumi.vault.ad.SecretLibrary;\nimport com.pulumi.vault.ad.SecretLibraryArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var config = new SecretBackend(\"config\", SecretBackendArgs.builder() \n .backend(\"ad\")\n .binddn(\"CN=Administrator,CN=Users,DC=corp,DC=example,DC=net\")\n .bindpass(\"SuperSecretPassw0rd\")\n .url(\"ldaps://ad\")\n .insecureTls(\"true\")\n .userdn(\"CN=Users,DC=corp,DC=example,DC=net\")\n .build());\n\n var qa = new SecretLibrary(\"qa\", SecretLibraryArgs.builder() \n .backend(config.backend())\n .serviceAccountNames( \n \"Bob\",\n \"Mary\")\n .ttl(60)\n .disableCheckInEnforcement(true)\n .maxTtl(120)\n .build());\n\n }\n}\n```\n```yaml\nresources:\n config:\n type: vault:ad:SecretBackend\n properties:\n backend: ad\n binddn: CN=Administrator,CN=Users,DC=corp,DC=example,DC=net\n bindpass: SuperSecretPassw0rd\n url: ldaps://ad\n insecureTls: 'true'\n userdn: CN=Users,DC=corp,DC=example,DC=net\n qa:\n type: vault:ad:SecretLibrary\n properties:\n backend: ${config.backend}\n serviceAccountNames:\n - Bob\n - Mary\n ttl: 60\n disableCheckInEnforcement: true\n maxTtl: 120\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nAD secret backend libraries can be imported using the `path`, e.g.\n\n```sh\n $ pulumi import vault:ad/secretLibrary:SecretLibrary role ad/library/bob\n```\n ",
"properties": {
"backend": {
"type": "string",
@@ -7954,7 +5083,7 @@
}
},
"vault:ad/secretRole:SecretRole": {
- "description": "{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst config = new vault.ad.SecretBackend(\"config\", {\n backend: \"ad\",\n binddn: \"CN=Administrator,CN=Users,DC=corp,DC=example,DC=net\",\n bindpass: \"SuperSecretPassw0rd\",\n url: \"ldaps://ad\",\n insecureTls: true,\n userdn: \"CN=Users,DC=corp,DC=example,DC=net\",\n});\nconst role = new vault.ad.SecretRole(\"role\", {\n backend: config.backend,\n role: \"bob\",\n serviceAccountName: \"Bob\",\n ttl: 60,\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nconfig = vault.ad.SecretBackend(\"config\",\n backend=\"ad\",\n binddn=\"CN=Administrator,CN=Users,DC=corp,DC=example,DC=net\",\n bindpass=\"SuperSecretPassw0rd\",\n url=\"ldaps://ad\",\n insecure_tls=True,\n userdn=\"CN=Users,DC=corp,DC=example,DC=net\")\nrole = vault.ad.SecretRole(\"role\",\n backend=config.backend,\n role=\"bob\",\n service_account_name=\"Bob\",\n ttl=60)\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Vault.AD.SecretBackend(\"config\", new()\n {\n Backend = \"ad\",\n Binddn = \"CN=Administrator,CN=Users,DC=corp,DC=example,DC=net\",\n Bindpass = \"SuperSecretPassw0rd\",\n Url = \"ldaps://ad\",\n InsecureTls = true,\n Userdn = \"CN=Users,DC=corp,DC=example,DC=net\",\n });\n\n var role = new Vault.AD.SecretRole(\"role\", new()\n {\n Backend = config.Backend,\n Role = \"bob\",\n ServiceAccountName = \"Bob\",\n Ttl = 60,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/ad\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tconfig, err := ad.NewSecretBackend(ctx, \"config\", \u0026ad.SecretBackendArgs{\n\t\t\tBackend: pulumi.String(\"ad\"),\n\t\t\tBinddn: pulumi.String(\"CN=Administrator,CN=Users,DC=corp,DC=example,DC=net\"),\n\t\t\tBindpass: pulumi.String(\"SuperSecretPassw0rd\"),\n\t\t\tUrl: pulumi.String(\"ldaps://ad\"),\n\t\t\tInsecureTls: pulumi.Bool(true),\n\t\t\tUserdn: pulumi.String(\"CN=Users,DC=corp,DC=example,DC=net\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = ad.NewSecretRole(ctx, \"role\", \u0026ad.SecretRoleArgs{\n\t\t\tBackend: config.Backend,\n\t\t\tRole: pulumi.String(\"bob\"),\n\t\t\tServiceAccountName: pulumi.String(\"Bob\"),\n\t\t\tTtl: pulumi.Int(60),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.ad.SecretBackend;\nimport com.pulumi.vault.ad.SecretBackendArgs;\nimport com.pulumi.vault.ad.SecretRole;\nimport com.pulumi.vault.ad.SecretRoleArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var config = new SecretBackend(\"config\", SecretBackendArgs.builder() \n .backend(\"ad\")\n .binddn(\"CN=Administrator,CN=Users,DC=corp,DC=example,DC=net\")\n .bindpass(\"SuperSecretPassw0rd\")\n .url(\"ldaps://ad\")\n .insecureTls(\"true\")\n .userdn(\"CN=Users,DC=corp,DC=example,DC=net\")\n .build());\n\n var role = new SecretRole(\"role\", SecretRoleArgs.builder() \n .backend(config.backend())\n .role(\"bob\")\n .serviceAccountName(\"Bob\")\n .ttl(60)\n .build());\n\n }\n}\n```\n```yaml\nresources:\n config:\n type: vault:ad:SecretBackend\n properties:\n backend: ad\n binddn: CN=Administrator,CN=Users,DC=corp,DC=example,DC=net\n bindpass: SuperSecretPassw0rd\n url: ldaps://ad\n insecureTls: true\n userdn: CN=Users,DC=corp,DC=example,DC=net\n role:\n type: vault:ad:SecretRole\n properties:\n backend: ${config.backend}\n role: bob\n serviceAccountName: Bob\n ttl: 60\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nAD secret backend roles can be imported using the `path`, e.g.\n\n```sh\n $ pulumi import vault:ad/secretRole:SecretRole role ad/roles/bob\n```\n\n ",
+ "description": "{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst config = new vault.ad.SecretBackend(\"config\", {\n backend: \"ad\",\n binddn: \"CN=Administrator,CN=Users,DC=corp,DC=example,DC=net\",\n bindpass: \"SuperSecretPassw0rd\",\n url: \"ldaps://ad\",\n insecureTls: true,\n userdn: \"CN=Users,DC=corp,DC=example,DC=net\",\n});\nconst role = new vault.ad.SecretRole(\"role\", {\n backend: config.backend,\n role: \"bob\",\n serviceAccountName: \"Bob\",\n ttl: 60,\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nconfig = vault.ad.SecretBackend(\"config\",\n backend=\"ad\",\n binddn=\"CN=Administrator,CN=Users,DC=corp,DC=example,DC=net\",\n bindpass=\"SuperSecretPassw0rd\",\n url=\"ldaps://ad\",\n insecure_tls=True,\n userdn=\"CN=Users,DC=corp,DC=example,DC=net\")\nrole = vault.ad.SecretRole(\"role\",\n backend=config.backend,\n role=\"bob\",\n service_account_name=\"Bob\",\n ttl=60)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Vault.AD.SecretBackend(\"config\", new()\n {\n Backend = \"ad\",\n Binddn = \"CN=Administrator,CN=Users,DC=corp,DC=example,DC=net\",\n Bindpass = \"SuperSecretPassw0rd\",\n Url = \"ldaps://ad\",\n InsecureTls = true,\n Userdn = \"CN=Users,DC=corp,DC=example,DC=net\",\n });\n\n var role = new Vault.AD.SecretRole(\"role\", new()\n {\n Backend = config.Backend,\n Role = \"bob\",\n ServiceAccountName = \"Bob\",\n Ttl = 60,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/ad\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tconfig, err := ad.NewSecretBackend(ctx, \"config\", \u0026ad.SecretBackendArgs{\n\t\t\tBackend: pulumi.String(\"ad\"),\n\t\t\tBinddn: pulumi.String(\"CN=Administrator,CN=Users,DC=corp,DC=example,DC=net\"),\n\t\t\tBindpass: pulumi.String(\"SuperSecretPassw0rd\"),\n\t\t\tUrl: pulumi.String(\"ldaps://ad\"),\n\t\t\tInsecureTls: pulumi.Bool(true),\n\t\t\tUserdn: pulumi.String(\"CN=Users,DC=corp,DC=example,DC=net\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = ad.NewSecretRole(ctx, \"role\", \u0026ad.SecretRoleArgs{\n\t\t\tBackend: config.Backend,\n\t\t\tRole: pulumi.String(\"bob\"),\n\t\t\tServiceAccountName: pulumi.String(\"Bob\"),\n\t\t\tTtl: pulumi.Int(60),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.ad.SecretBackend;\nimport com.pulumi.vault.ad.SecretBackendArgs;\nimport com.pulumi.vault.ad.SecretRole;\nimport com.pulumi.vault.ad.SecretRoleArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var config = new SecretBackend(\"config\", SecretBackendArgs.builder() \n .backend(\"ad\")\n .binddn(\"CN=Administrator,CN=Users,DC=corp,DC=example,DC=net\")\n .bindpass(\"SuperSecretPassw0rd\")\n .url(\"ldaps://ad\")\n .insecureTls(\"true\")\n .userdn(\"CN=Users,DC=corp,DC=example,DC=net\")\n .build());\n\n var role = new SecretRole(\"role\", SecretRoleArgs.builder() \n .backend(config.backend())\n .role(\"bob\")\n .serviceAccountName(\"Bob\")\n .ttl(60)\n .build());\n\n }\n}\n```\n```yaml\nresources:\n config:\n type: vault:ad:SecretBackend\n properties:\n backend: ad\n binddn: CN=Administrator,CN=Users,DC=corp,DC=example,DC=net\n bindpass: SuperSecretPassw0rd\n url: ldaps://ad\n insecureTls: 'true'\n userdn: CN=Users,DC=corp,DC=example,DC=net\n role:\n type: vault:ad:SecretRole\n properties:\n backend: ${config.backend}\n role: bob\n serviceAccountName: Bob\n ttl: 60\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nAD secret backend roles can be imported using the `path`, e.g.\n\n```sh\n $ pulumi import vault:ad/secretRole:SecretRole role ad/roles/bob\n```\n ",
"properties": {
"backend": {
"type": "string",
@@ -8061,7 +5190,7 @@
}
},
"vault:alicloud/authBackendRole:AuthBackendRole": {
- "description": "Provides a resource to create a role in an [AliCloud auth backend within Vault](https://www.vaultproject.io/docs/auth/alicloud.html).\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst alicloudAuthBackend = new vault.AuthBackend(\"alicloudAuthBackend\", {\n type: \"alicloud\",\n path: \"alicloud\",\n});\nconst alicloudAuthBackendRole = new vault.alicloud.AuthBackendRole(\"alicloudAuthBackendRole\", {\n backend: alicloudAuthBackend.path,\n role: \"example\",\n arn: \"acs:ram:123456:tf:role/foobar\",\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nalicloud_auth_backend = vault.AuthBackend(\"alicloudAuthBackend\",\n type=\"alicloud\",\n path=\"alicloud\")\nalicloud_auth_backend_role = vault.alicloud.AuthBackendRole(\"alicloudAuthBackendRole\",\n backend=alicloud_auth_backend.path,\n role=\"example\",\n arn=\"acs:ram:123456:tf:role/foobar\")\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var alicloudAuthBackend = new Vault.AuthBackend(\"alicloudAuthBackend\", new()\n {\n Type = \"alicloud\",\n Path = \"alicloud\",\n });\n\n var alicloudAuthBackendRole = new Vault.AliCloud.AuthBackendRole(\"alicloudAuthBackendRole\", new()\n {\n Backend = alicloudAuthBackend.Path,\n Role = \"example\",\n Arn = \"acs:ram:123456:tf:role/foobar\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault\"\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/alicloud\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\talicloudAuthBackend, err := vault.NewAuthBackend(ctx, \"alicloudAuthBackend\", \u0026vault.AuthBackendArgs{\n\t\t\tType: pulumi.String(\"alicloud\"),\n\t\t\tPath: pulumi.String(\"alicloud\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = alicloud.NewAuthBackendRole(ctx, \"alicloudAuthBackendRole\", \u0026alicloud.AuthBackendRoleArgs{\n\t\t\tBackend: alicloudAuthBackend.Path,\n\t\t\tRole: pulumi.String(\"example\"),\n\t\t\tArn: pulumi.String(\"acs:ram:123456:tf:role/foobar\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.AuthBackend;\nimport com.pulumi.vault.AuthBackendArgs;\nimport com.pulumi.vault.alicloud.AuthBackendRole;\nimport com.pulumi.vault.alicloud.AuthBackendRoleArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var alicloudAuthBackend = new AuthBackend(\"alicloudAuthBackend\", AuthBackendArgs.builder() \n .type(\"alicloud\")\n .path(\"alicloud\")\n .build());\n\n var alicloudAuthBackendRole = new AuthBackendRole(\"alicloudAuthBackendRole\", AuthBackendRoleArgs.builder() \n .backend(alicloudAuthBackend.path())\n .role(\"example\")\n .arn(\"acs:ram:123456:tf:role/foobar\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n alicloudAuthBackend:\n type: vault:AuthBackend\n properties:\n type: alicloud\n path: alicloud\n alicloudAuthBackendRole:\n type: vault:alicloud:AuthBackendRole\n properties:\n backend: ${alicloudAuthBackend.path}\n role: example\n arn: acs:ram:123456:tf:role/foobar\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nAlicloud authentication roles can be imported using the `path`, e.g.\n\n```sh\n $ pulumi import vault:alicloud/authBackendRole:AuthBackendRole my_role auth/alicloud/role/my_role\n```\n\n ",
+ "description": "Provides a resource to create a role in an [AliCloud auth backend within Vault](https://www.vaultproject.io/docs/auth/alicloud.html).\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst alicloudAuthBackend = new vault.AuthBackend(\"alicloudAuthBackend\", {\n type: \"alicloud\",\n path: \"alicloud\",\n});\nconst alicloudAuthBackendRole = new vault.alicloud.AuthBackendRole(\"alicloudAuthBackendRole\", {\n backend: alicloudAuthBackend.path,\n role: \"example\",\n arn: \"acs:ram:123456:tf:role/foobar\",\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nalicloud_auth_backend = vault.AuthBackend(\"alicloudAuthBackend\",\n type=\"alicloud\",\n path=\"alicloud\")\nalicloud_auth_backend_role = vault.alicloud.AuthBackendRole(\"alicloudAuthBackendRole\",\n backend=alicloud_auth_backend.path,\n role=\"example\",\n arn=\"acs:ram:123456:tf:role/foobar\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var alicloudAuthBackend = new Vault.AuthBackend(\"alicloudAuthBackend\", new()\n {\n Type = \"alicloud\",\n Path = \"alicloud\",\n });\n\n var alicloudAuthBackendRole = new Vault.AliCloud.AuthBackendRole(\"alicloudAuthBackendRole\", new()\n {\n Backend = alicloudAuthBackend.Path,\n Role = \"example\",\n Arn = \"acs:ram:123456:tf:role/foobar\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault\"\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/alicloud\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\talicloudAuthBackend, err := vault.NewAuthBackend(ctx, \"alicloudAuthBackend\", \u0026vault.AuthBackendArgs{\n\t\t\tType: pulumi.String(\"alicloud\"),\n\t\t\tPath: pulumi.String(\"alicloud\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = alicloud.NewAuthBackendRole(ctx, \"alicloudAuthBackendRole\", \u0026alicloud.AuthBackendRoleArgs{\n\t\t\tBackend: alicloudAuthBackend.Path,\n\t\t\tRole: pulumi.String(\"example\"),\n\t\t\tArn: pulumi.String(\"acs:ram:123456:tf:role/foobar\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.AuthBackend;\nimport com.pulumi.vault.AuthBackendArgs;\nimport com.pulumi.vault.alicloud.AuthBackendRole;\nimport com.pulumi.vault.alicloud.AuthBackendRoleArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var alicloudAuthBackend = new AuthBackend(\"alicloudAuthBackend\", AuthBackendArgs.builder() \n .type(\"alicloud\")\n .path(\"alicloud\")\n .build());\n\n var alicloudAuthBackendRole = new AuthBackendRole(\"alicloudAuthBackendRole\", AuthBackendRoleArgs.builder() \n .backend(alicloudAuthBackend.path())\n .role(\"example\")\n .arn(\"acs:ram:123456:tf:role/foobar\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n alicloudAuthBackend:\n type: vault:AuthBackend\n properties:\n type: alicloud\n path: alicloud\n alicloudAuthBackendRole:\n type: vault:alicloud:AuthBackendRole\n properties:\n backend: ${alicloudAuthBackend.path}\n role: example\n arn: acs:ram:123456:tf:role/foobar\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nAlicloud authentication roles can be imported using the `path`, e.g.\n\n```sh\n $ pulumi import vault:alicloud/authBackendRole:AuthBackendRole my_role auth/alicloud/role/my_role\n```\n ",
"properties": {
"arn": {
"type": "string",
@@ -8069,7 +5198,7 @@
},
"backend": {
"type": "string",
- "description": "Path to the mounted AliCloud auth backend.\nDefaults to `alicloud`\n"
+ "description": "Path to the mounted AliCloud auth backend.\nDefaults to `alicloud`\n\nFor more details on the usage of each argument consult the [Vault AliCloud API documentation](https://www.vaultproject.io/api-docs/auth/alicloud).\n"
},
"namespace": {
"type": "string",
@@ -8133,7 +5262,7 @@
},
"backend": {
"type": "string",
- "description": "Path to the mounted AliCloud auth backend.\nDefaults to `alicloud`\n",
+ "description": "Path to the mounted AliCloud auth backend.\nDefaults to `alicloud`\n\nFor more details on the usage of each argument consult the [Vault AliCloud API documentation](https://www.vaultproject.io/api-docs/auth/alicloud).\n",
"willReplaceOnChanges": true
},
"namespace": {
@@ -8202,7 +5331,7 @@
},
"backend": {
"type": "string",
- "description": "Path to the mounted AliCloud auth backend.\nDefaults to `alicloud`\n",
+ "description": "Path to the mounted AliCloud auth backend.\nDefaults to `alicloud`\n\nFor more details on the usage of each argument consult the [Vault AliCloud API documentation](https://www.vaultproject.io/api-docs/auth/alicloud).\n",
"willReplaceOnChanges": true
},
"namespace": {
@@ -8262,7 +5391,7 @@
}
},
"vault:appRole/authBackendLogin:AuthBackendLogin": {
- "description": "Logs into Vault using the AppRole auth backend. See the [Vault\ndocumentation](https://www.vaultproject.io/docs/auth/approle) for more\ninformation.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst approle = new vault.AuthBackend(\"approle\", {type: \"approle\"});\nconst example = new vault.approle.AuthBackendRole(\"example\", {\n backend: approle.path,\n roleName: \"test-role\",\n tokenPolicies: [\n \"default\",\n \"dev\",\n \"prod\",\n ],\n});\nconst id = new vault.approle.AuthBackendRoleSecretId(\"id\", {\n backend: approle.path,\n roleName: example.roleName,\n});\nconst login = new vault.approle.AuthBackendLogin(\"login\", {\n backend: approle.path,\n roleId: example.roleId,\n secretId: id.secretId,\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\napprole = vault.AuthBackend(\"approle\", type=\"approle\")\nexample = vault.app_role.AuthBackendRole(\"example\",\n backend=approle.path,\n role_name=\"test-role\",\n token_policies=[\n \"default\",\n \"dev\",\n \"prod\",\n ])\nid = vault.app_role.AuthBackendRoleSecretId(\"id\",\n backend=approle.path,\n role_name=example.role_name)\nlogin = vault.app_role.AuthBackendLogin(\"login\",\n backend=approle.path,\n role_id=example.role_id,\n secret_id=id.secret_id)\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var approle = new Vault.AuthBackend(\"approle\", new()\n {\n Type = \"approle\",\n });\n\n var example = new Vault.AppRole.AuthBackendRole(\"example\", new()\n {\n Backend = approle.Path,\n RoleName = \"test-role\",\n TokenPolicies = new[]\n {\n \"default\",\n \"dev\",\n \"prod\",\n },\n });\n\n var id = new Vault.AppRole.AuthBackendRoleSecretId(\"id\", new()\n {\n Backend = approle.Path,\n RoleName = example.RoleName,\n });\n\n var login = new Vault.AppRole.AuthBackendLogin(\"login\", new()\n {\n Backend = approle.Path,\n RoleId = example.RoleId,\n SecretId = id.SecretId,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault\"\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/appRole\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tapprole, err := vault.NewAuthBackend(ctx, \"approle\", \u0026vault.AuthBackendArgs{\n\t\t\tType: pulumi.String(\"approle\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texample, err := appRole.NewAuthBackendRole(ctx, \"example\", \u0026appRole.AuthBackendRoleArgs{\n\t\t\tBackend: approle.Path,\n\t\t\tRoleName: pulumi.String(\"test-role\"),\n\t\t\tTokenPolicies: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"default\"),\n\t\t\t\tpulumi.String(\"dev\"),\n\t\t\t\tpulumi.String(\"prod\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tid, err := appRole.NewAuthBackendRoleSecretId(ctx, \"id\", \u0026appRole.AuthBackendRoleSecretIdArgs{\n\t\t\tBackend: approle.Path,\n\t\t\tRoleName: example.RoleName,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = appRole.NewAuthBackendLogin(ctx, \"login\", \u0026appRole.AuthBackendLoginArgs{\n\t\t\tBackend: approle.Path,\n\t\t\tRoleId: example.RoleId,\n\t\t\tSecretId: id.SecretId,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.AuthBackend;\nimport com.pulumi.vault.AuthBackendArgs;\nimport com.pulumi.vault.appRole.AuthBackendRole;\nimport com.pulumi.vault.appRole.AuthBackendRoleArgs;\nimport com.pulumi.vault.appRole.AuthBackendRoleSecretId;\nimport com.pulumi.vault.appRole.AuthBackendRoleSecretIdArgs;\nimport com.pulumi.vault.appRole.AuthBackendLogin;\nimport com.pulumi.vault.appRole.AuthBackendLoginArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var approle = new AuthBackend(\"approle\", AuthBackendArgs.builder() \n .type(\"approle\")\n .build());\n\n var example = new AuthBackendRole(\"example\", AuthBackendRoleArgs.builder() \n .backend(approle.path())\n .roleName(\"test-role\")\n .tokenPolicies( \n \"default\",\n \"dev\",\n \"prod\")\n .build());\n\n var id = new AuthBackendRoleSecretId(\"id\", AuthBackendRoleSecretIdArgs.builder() \n .backend(approle.path())\n .roleName(example.roleName())\n .build());\n\n var login = new AuthBackendLogin(\"login\", AuthBackendLoginArgs.builder() \n .backend(approle.path())\n .roleId(example.roleId())\n .secretId(id.secretId())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n approle:\n type: vault:AuthBackend\n properties:\n type: approle\n example:\n type: vault:appRole:AuthBackendRole\n properties:\n backend: ${approle.path}\n roleName: test-role\n tokenPolicies:\n - default\n - dev\n - prod\n id:\n type: vault:appRole:AuthBackendRoleSecretId\n properties:\n backend: ${approle.path}\n roleName: ${example.roleName}\n login:\n type: vault:appRole:AuthBackendLogin\n properties:\n backend: ${approle.path}\n roleId: ${example.roleId}\n secretId: ${id.secretId}\n```\n{{% /example %}}\n{{% /examples %}}",
+ "description": "Logs into Vault using the AppRole auth backend. See the [Vault\ndocumentation](https://www.vaultproject.io/docs/auth/approle) for more\ninformation.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst approle = new vault.AuthBackend(\"approle\", {type: \"approle\"});\nconst example = new vault.approle.AuthBackendRole(\"example\", {\n backend: approle.path,\n roleName: \"test-role\",\n tokenPolicies: [\n \"default\",\n \"dev\",\n \"prod\",\n ],\n});\nconst id = new vault.approle.AuthBackendRoleSecretId(\"id\", {\n backend: approle.path,\n roleName: example.roleName,\n});\nconst login = new vault.approle.AuthBackendLogin(\"login\", {\n backend: approle.path,\n roleId: example.roleId,\n secretId: id.secretId,\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\napprole = vault.AuthBackend(\"approle\", type=\"approle\")\nexample = vault.app_role.AuthBackendRole(\"example\",\n backend=approle.path,\n role_name=\"test-role\",\n token_policies=[\n \"default\",\n \"dev\",\n \"prod\",\n ])\nid = vault.app_role.AuthBackendRoleSecretId(\"id\",\n backend=approle.path,\n role_name=example.role_name)\nlogin = vault.app_role.AuthBackendLogin(\"login\",\n backend=approle.path,\n role_id=example.role_id,\n secret_id=id.secret_id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var approle = new Vault.AuthBackend(\"approle\", new()\n {\n Type = \"approle\",\n });\n\n var example = new Vault.AppRole.AuthBackendRole(\"example\", new()\n {\n Backend = approle.Path,\n RoleName = \"test-role\",\n TokenPolicies = new[]\n {\n \"default\",\n \"dev\",\n \"prod\",\n },\n });\n\n var id = new Vault.AppRole.AuthBackendRoleSecretId(\"id\", new()\n {\n Backend = approle.Path,\n RoleName = example.RoleName,\n });\n\n var login = new Vault.AppRole.AuthBackendLogin(\"login\", new()\n {\n Backend = approle.Path,\n RoleId = example.RoleId,\n SecretId = id.SecretId,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault\"\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/appRole\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tapprole, err := vault.NewAuthBackend(ctx, \"approle\", \u0026vault.AuthBackendArgs{\n\t\t\tType: pulumi.String(\"approle\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texample, err := appRole.NewAuthBackendRole(ctx, \"example\", \u0026appRole.AuthBackendRoleArgs{\n\t\t\tBackend: approle.Path,\n\t\t\tRoleName: pulumi.String(\"test-role\"),\n\t\t\tTokenPolicies: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"default\"),\n\t\t\t\tpulumi.String(\"dev\"),\n\t\t\t\tpulumi.String(\"prod\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tid, err := appRole.NewAuthBackendRoleSecretId(ctx, \"id\", \u0026appRole.AuthBackendRoleSecretIdArgs{\n\t\t\tBackend: approle.Path,\n\t\t\tRoleName: example.RoleName,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = appRole.NewAuthBackendLogin(ctx, \"login\", \u0026appRole.AuthBackendLoginArgs{\n\t\t\tBackend: approle.Path,\n\t\t\tRoleId: example.RoleId,\n\t\t\tSecretId: id.SecretId,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.AuthBackend;\nimport com.pulumi.vault.AuthBackendArgs;\nimport com.pulumi.vault.appRole.AuthBackendRole;\nimport com.pulumi.vault.appRole.AuthBackendRoleArgs;\nimport com.pulumi.vault.appRole.AuthBackendRoleSecretId;\nimport com.pulumi.vault.appRole.AuthBackendRoleSecretIdArgs;\nimport com.pulumi.vault.appRole.AuthBackendLogin;\nimport com.pulumi.vault.appRole.AuthBackendLoginArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var approle = new AuthBackend(\"approle\", AuthBackendArgs.builder() \n .type(\"approle\")\n .build());\n\n var example = new AuthBackendRole(\"example\", AuthBackendRoleArgs.builder() \n .backend(approle.path())\n .roleName(\"test-role\")\n .tokenPolicies( \n \"default\",\n \"dev\",\n \"prod\")\n .build());\n\n var id = new AuthBackendRoleSecretId(\"id\", AuthBackendRoleSecretIdArgs.builder() \n .backend(approle.path())\n .roleName(example.roleName())\n .build());\n\n var login = new AuthBackendLogin(\"login\", AuthBackendLoginArgs.builder() \n .backend(approle.path())\n .roleId(example.roleId())\n .secretId(id.secretId())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n approle:\n type: vault:AuthBackend\n properties:\n type: approle\n example:\n type: vault:appRole:AuthBackendRole\n properties:\n backend: ${approle.path}\n roleName: test-role\n tokenPolicies:\n - default\n - dev\n - prod\n id:\n type: vault:appRole:AuthBackendRoleSecretId\n properties:\n backend: ${approle.path}\n roleName: ${example.roleName}\n login:\n type: vault:appRole:AuthBackendLogin\n properties:\n backend: ${approle.path}\n roleId: ${example.roleId}\n secretId: ${id.secretId}\n```\n{{% /example %}}\n{{% /examples %}}",
"properties": {
"accessor": {
"type": "string",
@@ -8417,7 +5546,7 @@
}
},
"vault:appRole/authBackendRole:AuthBackendRole": {
- "description": "Manages an AppRole auth backend role in a Vault server. See the [Vault\ndocumentation](https://www.vaultproject.io/docs/auth/approle) for more\ninformation.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst approle = new vault.AuthBackend(\"approle\", {type: \"approle\"});\nconst example = new vault.approle.AuthBackendRole(\"example\", {\n backend: approle.path,\n roleName: \"test-role\",\n tokenPolicies: [\n \"default\",\n \"dev\",\n \"prod\",\n ],\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\napprole = vault.AuthBackend(\"approle\", type=\"approle\")\nexample = vault.app_role.AuthBackendRole(\"example\",\n backend=approle.path,\n role_name=\"test-role\",\n token_policies=[\n \"default\",\n \"dev\",\n \"prod\",\n ])\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var approle = new Vault.AuthBackend(\"approle\", new()\n {\n Type = \"approle\",\n });\n\n var example = new Vault.AppRole.AuthBackendRole(\"example\", new()\n {\n Backend = approle.Path,\n RoleName = \"test-role\",\n TokenPolicies = new[]\n {\n \"default\",\n \"dev\",\n \"prod\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault\"\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/appRole\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tapprole, err := vault.NewAuthBackend(ctx, \"approle\", \u0026vault.AuthBackendArgs{\n\t\t\tType: pulumi.String(\"approle\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = appRole.NewAuthBackendRole(ctx, \"example\", \u0026appRole.AuthBackendRoleArgs{\n\t\t\tBackend: approle.Path,\n\t\t\tRoleName: pulumi.String(\"test-role\"),\n\t\t\tTokenPolicies: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"default\"),\n\t\t\t\tpulumi.String(\"dev\"),\n\t\t\t\tpulumi.String(\"prod\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.AuthBackend;\nimport com.pulumi.vault.AuthBackendArgs;\nimport com.pulumi.vault.appRole.AuthBackendRole;\nimport com.pulumi.vault.appRole.AuthBackendRoleArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var approle = new AuthBackend(\"approle\", AuthBackendArgs.builder() \n .type(\"approle\")\n .build());\n\n var example = new AuthBackendRole(\"example\", AuthBackendRoleArgs.builder() \n .backend(approle.path())\n .roleName(\"test-role\")\n .tokenPolicies( \n \"default\",\n \"dev\",\n \"prod\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n approle:\n type: vault:AuthBackend\n properties:\n type: approle\n example:\n type: vault:appRole:AuthBackendRole\n properties:\n backend: ${approle.path}\n roleName: test-role\n tokenPolicies:\n - default\n - dev\n - prod\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nAppRole authentication backend roles can be imported using the `path`, e.g.\n\n```sh\n $ pulumi import vault:appRole/authBackendRole:AuthBackendRole example auth/approle/role/test-role\n```\n\n ",
+ "description": "Manages an AppRole auth backend role in a Vault server. See the [Vault\ndocumentation](https://www.vaultproject.io/docs/auth/approle) for more\ninformation.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst approle = new vault.AuthBackend(\"approle\", {type: \"approle\"});\nconst example = new vault.approle.AuthBackendRole(\"example\", {\n backend: approle.path,\n roleName: \"test-role\",\n tokenPolicies: [\n \"default\",\n \"dev\",\n \"prod\",\n ],\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\napprole = vault.AuthBackend(\"approle\", type=\"approle\")\nexample = vault.app_role.AuthBackendRole(\"example\",\n backend=approle.path,\n role_name=\"test-role\",\n token_policies=[\n \"default\",\n \"dev\",\n \"prod\",\n ])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var approle = new Vault.AuthBackend(\"approle\", new()\n {\n Type = \"approle\",\n });\n\n var example = new Vault.AppRole.AuthBackendRole(\"example\", new()\n {\n Backend = approle.Path,\n RoleName = \"test-role\",\n TokenPolicies = new[]\n {\n \"default\",\n \"dev\",\n \"prod\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault\"\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/appRole\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tapprole, err := vault.NewAuthBackend(ctx, \"approle\", \u0026vault.AuthBackendArgs{\n\t\t\tType: pulumi.String(\"approle\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = appRole.NewAuthBackendRole(ctx, \"example\", \u0026appRole.AuthBackendRoleArgs{\n\t\t\tBackend: approle.Path,\n\t\t\tRoleName: pulumi.String(\"test-role\"),\n\t\t\tTokenPolicies: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"default\"),\n\t\t\t\tpulumi.String(\"dev\"),\n\t\t\t\tpulumi.String(\"prod\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.AuthBackend;\nimport com.pulumi.vault.AuthBackendArgs;\nimport com.pulumi.vault.appRole.AuthBackendRole;\nimport com.pulumi.vault.appRole.AuthBackendRoleArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var approle = new AuthBackend(\"approle\", AuthBackendArgs.builder() \n .type(\"approle\")\n .build());\n\n var example = new AuthBackendRole(\"example\", AuthBackendRoleArgs.builder() \n .backend(approle.path())\n .roleName(\"test-role\")\n .tokenPolicies( \n \"default\",\n \"dev\",\n \"prod\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n approle:\n type: vault:AuthBackend\n properties:\n type: approle\n example:\n type: vault:appRole:AuthBackendRole\n properties:\n backend: ${approle.path}\n roleName: test-role\n tokenPolicies:\n - default\n - dev\n - prod\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nAppRole authentication backend roles can be imported using the `path`, e.g.\n\n```sh\n $ pulumi import vault:appRole/authBackendRole:AuthBackendRole example auth/approle/role/test-role\n```\n ",
"properties": {
"backend": {
"type": "string",
@@ -8674,7 +5803,7 @@
}
},
"vault:appRole/authBackendRoleSecretId:AuthBackendRoleSecretId": {
- "description": "Manages an AppRole auth backend SecretID in a Vault server. See the [Vault\ndocumentation](https://www.vaultproject.io/docs/auth/approle) for more\ninformation.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst approle = new vault.AuthBackend(\"approle\", {type: \"approle\"});\nconst example = new vault.approle.AuthBackendRole(\"example\", {\n backend: approle.path,\n roleName: \"test-role\",\n tokenPolicies: [\n \"default\",\n \"dev\",\n \"prod\",\n ],\n});\nconst id = new vault.approle.AuthBackendRoleSecretId(\"id\", {\n backend: approle.path,\n roleName: example.roleName,\n metadata: JSON.stringify({\n hello: \"world\",\n }),\n});\n```\n```python\nimport pulumi\nimport json\nimport pulumi_vault as vault\n\napprole = vault.AuthBackend(\"approle\", type=\"approle\")\nexample = vault.app_role.AuthBackendRole(\"example\",\n backend=approle.path,\n role_name=\"test-role\",\n token_policies=[\n \"default\",\n \"dev\",\n \"prod\",\n ])\nid = vault.app_role.AuthBackendRoleSecretId(\"id\",\n backend=approle.path,\n role_name=example.role_name,\n metadata=json.dumps({\n \"hello\": \"world\",\n }))\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Text.Json;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var approle = new Vault.AuthBackend(\"approle\", new()\n {\n Type = \"approle\",\n });\n\n var example = new Vault.AppRole.AuthBackendRole(\"example\", new()\n {\n Backend = approle.Path,\n RoleName = \"test-role\",\n TokenPolicies = new[]\n {\n \"default\",\n \"dev\",\n \"prod\",\n },\n });\n\n var id = new Vault.AppRole.AuthBackendRoleSecretId(\"id\", new()\n {\n Backend = approle.Path,\n RoleName = example.RoleName,\n Metadata = JsonSerializer.Serialize(new Dictionary\u003cstring, object?\u003e\n {\n [\"hello\"] = \"world\",\n }),\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"encoding/json\"\n\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault\"\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/appRole\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tapprole, err := vault.NewAuthBackend(ctx, \"approle\", \u0026vault.AuthBackendArgs{\n\t\t\tType: pulumi.String(\"approle\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texample, err := appRole.NewAuthBackendRole(ctx, \"example\", \u0026appRole.AuthBackendRoleArgs{\n\t\t\tBackend: approle.Path,\n\t\t\tRoleName: pulumi.String(\"test-role\"),\n\t\t\tTokenPolicies: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"default\"),\n\t\t\t\tpulumi.String(\"dev\"),\n\t\t\t\tpulumi.String(\"prod\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\ttmpJSON0, err := json.Marshal(map[string]interface{}{\n\t\t\t\"hello\": \"world\",\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tjson0 := string(tmpJSON0)\n\t\t_, err = appRole.NewAuthBackendRoleSecretId(ctx, \"id\", \u0026appRole.AuthBackendRoleSecretIdArgs{\n\t\t\tBackend: approle.Path,\n\t\t\tRoleName: example.RoleName,\n\t\t\tMetadata: pulumi.String(json0),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.AuthBackend;\nimport com.pulumi.vault.AuthBackendArgs;\nimport com.pulumi.vault.appRole.AuthBackendRole;\nimport com.pulumi.vault.appRole.AuthBackendRoleArgs;\nimport com.pulumi.vault.appRole.AuthBackendRoleSecretId;\nimport com.pulumi.vault.appRole.AuthBackendRoleSecretIdArgs;\nimport static com.pulumi.codegen.internal.Serialization.*;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var approle = new AuthBackend(\"approle\", AuthBackendArgs.builder() \n .type(\"approle\")\n .build());\n\n var example = new AuthBackendRole(\"example\", AuthBackendRoleArgs.builder() \n .backend(approle.path())\n .roleName(\"test-role\")\n .tokenPolicies( \n \"default\",\n \"dev\",\n \"prod\")\n .build());\n\n var id = new AuthBackendRoleSecretId(\"id\", AuthBackendRoleSecretIdArgs.builder() \n .backend(approle.path())\n .roleName(example.roleName())\n .metadata(serializeJson(\n jsonObject(\n jsonProperty(\"hello\", \"world\")\n )))\n .build());\n\n }\n}\n```\n```yaml\nresources:\n approle:\n type: vault:AuthBackend\n properties:\n type: approle\n example:\n type: vault:appRole:AuthBackendRole\n properties:\n backend: ${approle.path}\n roleName: test-role\n tokenPolicies:\n - default\n - dev\n - prod\n id:\n type: vault:appRole:AuthBackendRoleSecretId\n properties:\n backend: ${approle.path}\n roleName: ${example.roleName}\n metadata:\n Fn::ToJSON:\n hello: world\n```\n{{% /example %}}\n{{% /examples %}}",
+ "description": "Manages an AppRole auth backend SecretID in a Vault server. See the [Vault\ndocumentation](https://www.vaultproject.io/docs/auth/approle) for more\ninformation.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst approle = new vault.AuthBackend(\"approle\", {type: \"approle\"});\nconst example = new vault.approle.AuthBackendRole(\"example\", {\n backend: approle.path,\n roleName: \"test-role\",\n tokenPolicies: [\n \"default\",\n \"dev\",\n \"prod\",\n ],\n});\nconst id = new vault.approle.AuthBackendRoleSecretId(\"id\", {\n backend: approle.path,\n roleName: example.roleName,\n metadata: JSON.stringify({\n hello: \"world\",\n }),\n});\n```\n```python\nimport pulumi\nimport json\nimport pulumi_vault as vault\n\napprole = vault.AuthBackend(\"approle\", type=\"approle\")\nexample = vault.app_role.AuthBackendRole(\"example\",\n backend=approle.path,\n role_name=\"test-role\",\n token_policies=[\n \"default\",\n \"dev\",\n \"prod\",\n ])\nid = vault.app_role.AuthBackendRoleSecretId(\"id\",\n backend=approle.path,\n role_name=example.role_name,\n metadata=json.dumps({\n \"hello\": \"world\",\n }))\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text.Json;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var approle = new Vault.AuthBackend(\"approle\", new()\n {\n Type = \"approle\",\n });\n\n var example = new Vault.AppRole.AuthBackendRole(\"example\", new()\n {\n Backend = approle.Path,\n RoleName = \"test-role\",\n TokenPolicies = new[]\n {\n \"default\",\n \"dev\",\n \"prod\",\n },\n });\n\n var id = new Vault.AppRole.AuthBackendRoleSecretId(\"id\", new()\n {\n Backend = approle.Path,\n RoleName = example.RoleName,\n Metadata = JsonSerializer.Serialize(new Dictionary\u003cstring, object?\u003e\n {\n [\"hello\"] = \"world\",\n }),\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"encoding/json\"\n\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault\"\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/appRole\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tapprole, err := vault.NewAuthBackend(ctx, \"approle\", \u0026vault.AuthBackendArgs{\n\t\t\tType: pulumi.String(\"approle\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texample, err := appRole.NewAuthBackendRole(ctx, \"example\", \u0026appRole.AuthBackendRoleArgs{\n\t\t\tBackend: approle.Path,\n\t\t\tRoleName: pulumi.String(\"test-role\"),\n\t\t\tTokenPolicies: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"default\"),\n\t\t\t\tpulumi.String(\"dev\"),\n\t\t\t\tpulumi.String(\"prod\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\ttmpJSON0, err := json.Marshal(map[string]interface{}{\n\t\t\t\"hello\": \"world\",\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tjson0 := string(tmpJSON0)\n\t\t_, err = appRole.NewAuthBackendRoleSecretId(ctx, \"id\", \u0026appRole.AuthBackendRoleSecretIdArgs{\n\t\t\tBackend: approle.Path,\n\t\t\tRoleName: example.RoleName,\n\t\t\tMetadata: pulumi.String(json0),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.AuthBackend;\nimport com.pulumi.vault.AuthBackendArgs;\nimport com.pulumi.vault.appRole.AuthBackendRole;\nimport com.pulumi.vault.appRole.AuthBackendRoleArgs;\nimport com.pulumi.vault.appRole.AuthBackendRoleSecretId;\nimport com.pulumi.vault.appRole.AuthBackendRoleSecretIdArgs;\nimport static com.pulumi.codegen.internal.Serialization.*;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var approle = new AuthBackend(\"approle\", AuthBackendArgs.builder() \n .type(\"approle\")\n .build());\n\n var example = new AuthBackendRole(\"example\", AuthBackendRoleArgs.builder() \n .backend(approle.path())\n .roleName(\"test-role\")\n .tokenPolicies( \n \"default\",\n \"dev\",\n \"prod\")\n .build());\n\n var id = new AuthBackendRoleSecretId(\"id\", AuthBackendRoleSecretIdArgs.builder() \n .backend(approle.path())\n .roleName(example.roleName())\n .metadata(serializeJson(\n jsonObject(\n jsonProperty(\"hello\", \"world\")\n )))\n .build());\n\n }\n}\n```\n```yaml\nresources:\n approle:\n type: vault:AuthBackend\n properties:\n type: approle\n example:\n type: vault:appRole:AuthBackendRole\n properties:\n backend: ${approle.path}\n roleName: test-role\n tokenPolicies:\n - default\n - dev\n - prod\n id:\n type: vault:appRole:AuthBackendRoleSecretId\n properties:\n backend: ${approle.path}\n roleName: ${example.roleName}\n metadata:\n fn::toJSON:\n hello: world\n```\n{{% /example %}}\n{{% /examples %}}",
"properties": {
"accessor": {
"type": "string",
@@ -8852,7 +5981,7 @@
]
},
"vault:aws/authBackendCert:AuthBackendCert": {
- "description": "\n\n## Import\n\nAWS auth backend certificates can be imported using `auth/`, the `backend` path, `/config/certificate/`, and the `cert_name` e.g.\n\n```sh\n $ pulumi import vault:aws/authBackendCert:AuthBackendCert example auth/aws/config/certificate/my-cert\n```\n\n ",
+ "description": "\n\n## Import\n\nAWS auth backend certificates can be imported using `auth/`, the `backend` path, `/config/certificate/`, and the `cert_name` e.g.\n\n```sh\n $ pulumi import vault:aws/authBackendCert:AuthBackendCert example auth/aws/config/certificate/my-cert\n```\n ",
"properties": {
"awsPublicCert": {
"type": "string",
@@ -8943,7 +6072,7 @@
}
},
"vault:aws/authBackendClient:AuthBackendClient": {
- "description": "{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst exampleAuthBackend = new vault.AuthBackend(\"exampleAuthBackend\", {type: \"aws\"});\nconst exampleAuthBackendClient = new vault.aws.AuthBackendClient(\"exampleAuthBackendClient\", {\n backend: exampleAuthBackend.path,\n accessKey: \"INSERT_AWS_ACCESS_KEY\",\n secretKey: \"INSERT_AWS_SECRET_KEY\",\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nexample_auth_backend = vault.AuthBackend(\"exampleAuthBackend\", type=\"aws\")\nexample_auth_backend_client = vault.aws.AuthBackendClient(\"exampleAuthBackendClient\",\n backend=example_auth_backend.path,\n access_key=\"INSERT_AWS_ACCESS_KEY\",\n secret_key=\"INSERT_AWS_SECRET_KEY\")\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var exampleAuthBackend = new Vault.AuthBackend(\"exampleAuthBackend\", new()\n {\n Type = \"aws\",\n });\n\n var exampleAuthBackendClient = new Vault.Aws.AuthBackendClient(\"exampleAuthBackendClient\", new()\n {\n Backend = exampleAuthBackend.Path,\n AccessKey = \"INSERT_AWS_ACCESS_KEY\",\n SecretKey = \"INSERT_AWS_SECRET_KEY\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault\"\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/aws\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texampleAuthBackend, err := vault.NewAuthBackend(ctx, \"exampleAuthBackend\", \u0026vault.AuthBackendArgs{\n\t\t\tType: pulumi.String(\"aws\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = aws.NewAuthBackendClient(ctx, \"exampleAuthBackendClient\", \u0026aws.AuthBackendClientArgs{\n\t\t\tBackend: exampleAuthBackend.Path,\n\t\t\tAccessKey: pulumi.String(\"INSERT_AWS_ACCESS_KEY\"),\n\t\t\tSecretKey: pulumi.String(\"INSERT_AWS_SECRET_KEY\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.AuthBackend;\nimport com.pulumi.vault.AuthBackendArgs;\nimport com.pulumi.vault.aws.AuthBackendClient;\nimport com.pulumi.vault.aws.AuthBackendClientArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var exampleAuthBackend = new AuthBackend(\"exampleAuthBackend\", AuthBackendArgs.builder() \n .type(\"aws\")\n .build());\n\n var exampleAuthBackendClient = new AuthBackendClient(\"exampleAuthBackendClient\", AuthBackendClientArgs.builder() \n .backend(exampleAuthBackend.path())\n .accessKey(\"INSERT_AWS_ACCESS_KEY\")\n .secretKey(\"INSERT_AWS_SECRET_KEY\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n exampleAuthBackend:\n type: vault:AuthBackend\n properties:\n type: aws\n exampleAuthBackendClient:\n type: vault:aws:AuthBackendClient\n properties:\n backend: ${exampleAuthBackend.path}\n accessKey: INSERT_AWS_ACCESS_KEY\n secretKey: INSERT_AWS_SECRET_KEY\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nAWS auth backend clients can be imported using `auth/`, the `backend` path, and `/config/client` e.g.\n\n```sh\n $ pulumi import vault:aws/authBackendClient:AuthBackendClient example auth/aws/config/client\n```\n\n ",
+ "description": "{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst exampleAuthBackend = new vault.AuthBackend(\"exampleAuthBackend\", {type: \"aws\"});\nconst exampleAuthBackendClient = new vault.aws.AuthBackendClient(\"exampleAuthBackendClient\", {\n backend: exampleAuthBackend.path,\n accessKey: \"INSERT_AWS_ACCESS_KEY\",\n secretKey: \"INSERT_AWS_SECRET_KEY\",\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nexample_auth_backend = vault.AuthBackend(\"exampleAuthBackend\", type=\"aws\")\nexample_auth_backend_client = vault.aws.AuthBackendClient(\"exampleAuthBackendClient\",\n backend=example_auth_backend.path,\n access_key=\"INSERT_AWS_ACCESS_KEY\",\n secret_key=\"INSERT_AWS_SECRET_KEY\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var exampleAuthBackend = new Vault.AuthBackend(\"exampleAuthBackend\", new()\n {\n Type = \"aws\",\n });\n\n var exampleAuthBackendClient = new Vault.Aws.AuthBackendClient(\"exampleAuthBackendClient\", new()\n {\n Backend = exampleAuthBackend.Path,\n AccessKey = \"INSERT_AWS_ACCESS_KEY\",\n SecretKey = \"INSERT_AWS_SECRET_KEY\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault\"\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/aws\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texampleAuthBackend, err := vault.NewAuthBackend(ctx, \"exampleAuthBackend\", \u0026vault.AuthBackendArgs{\n\t\t\tType: pulumi.String(\"aws\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = aws.NewAuthBackendClient(ctx, \"exampleAuthBackendClient\", \u0026aws.AuthBackendClientArgs{\n\t\t\tBackend: exampleAuthBackend.Path,\n\t\t\tAccessKey: pulumi.String(\"INSERT_AWS_ACCESS_KEY\"),\n\t\t\tSecretKey: pulumi.String(\"INSERT_AWS_SECRET_KEY\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.AuthBackend;\nimport com.pulumi.vault.AuthBackendArgs;\nimport com.pulumi.vault.aws.AuthBackendClient;\nimport com.pulumi.vault.aws.AuthBackendClientArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var exampleAuthBackend = new AuthBackend(\"exampleAuthBackend\", AuthBackendArgs.builder() \n .type(\"aws\")\n .build());\n\n var exampleAuthBackendClient = new AuthBackendClient(\"exampleAuthBackendClient\", AuthBackendClientArgs.builder() \n .backend(exampleAuthBackend.path())\n .accessKey(\"INSERT_AWS_ACCESS_KEY\")\n .secretKey(\"INSERT_AWS_SECRET_KEY\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n exampleAuthBackend:\n type: vault:AuthBackend\n properties:\n type: aws\n exampleAuthBackendClient:\n type: vault:aws:AuthBackendClient\n properties:\n backend: ${exampleAuthBackend.path}\n accessKey: INSERT_AWS_ACCESS_KEY\n secretKey: INSERT_AWS_SECRET_KEY\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nAWS auth backend clients can be imported using `auth/`, the `backend` path, and `/config/client` e.g.\n\n```sh\n $ pulumi import vault:aws/authBackendClient:AuthBackendClient example auth/aws/config/client\n```\n ",
"properties": {
"accessKey": {
"type": "string",
@@ -9089,7 +6218,7 @@
}
},
"vault:aws/authBackendConfigIdentity:AuthBackendConfigIdentity": {
- "description": "Manages an AWS auth backend identity configuration in a Vault server. This configuration defines how Vault interacts\nwith the identity store. See the [Vault documentation](https://www.vaultproject.io/docs/auth/aws.html) for more\ninformation.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst aws = new vault.AuthBackend(\"aws\", {type: \"aws\"});\nconst example = new vault.aws.AuthBackendConfigIdentity(\"example\", {\n backend: aws.path,\n iamAlias: \"full_arn\",\n iamMetadatas: [\n \"canonical_arn\",\n \"account_id\",\n ],\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\naws = vault.AuthBackend(\"aws\", type=\"aws\")\nexample = vault.aws.AuthBackendConfigIdentity(\"example\",\n backend=aws.path,\n iam_alias=\"full_arn\",\n iam_metadatas=[\n \"canonical_arn\",\n \"account_id\",\n ])\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var aws = new Vault.AuthBackend(\"aws\", new()\n {\n Type = \"aws\",\n });\n\n var example = new Vault.Aws.AuthBackendConfigIdentity(\"example\", new()\n {\n Backend = aws.Path,\n IamAlias = \"full_arn\",\n IamMetadatas = new[]\n {\n \"canonical_arn\",\n \"account_id\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault\"\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/aws\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\taws, err := vault.NewAuthBackend(ctx, \"aws\", \u0026vault.AuthBackendArgs{\n\t\t\tType: pulumi.String(\"aws\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = aws.NewAuthBackendConfigIdentity(ctx, \"example\", \u0026aws.AuthBackendConfigIdentityArgs{\n\t\t\tBackend: aws.Path,\n\t\t\tIamAlias: pulumi.String(\"full_arn\"),\n\t\t\tIamMetadatas: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"canonical_arn\"),\n\t\t\t\tpulumi.String(\"account_id\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.AuthBackend;\nimport com.pulumi.vault.AuthBackendArgs;\nimport com.pulumi.vault.aws.AuthBackendConfigIdentity;\nimport com.pulumi.vault.aws.AuthBackendConfigIdentityArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var aws = new AuthBackend(\"aws\", AuthBackendArgs.builder() \n .type(\"aws\")\n .build());\n\n var example = new AuthBackendConfigIdentity(\"example\", AuthBackendConfigIdentityArgs.builder() \n .backend(aws.path())\n .iamAlias(\"full_arn\")\n .iamMetadatas( \n \"canonical_arn\",\n \"account_id\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n aws:\n type: vault:AuthBackend\n properties:\n type: aws\n example:\n type: vault:aws:AuthBackendConfigIdentity\n properties:\n backend: ${aws.path}\n iamAlias: full_arn\n iamMetadatas:\n - canonical_arn\n - account_id\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nAWS auth backend identity config can be imported using `auth/`, the `backend` path, and `/config/identity` e.g.\n\n```sh\n $ pulumi import vault:aws/authBackendConfigIdentity:AuthBackendConfigIdentity example auth/aws/config/identity\n```\n\n ",
+ "description": "Manages an AWS auth backend identity configuration in a Vault server. This configuration defines how Vault interacts\nwith the identity store. See the [Vault documentation](https://www.vaultproject.io/docs/auth/aws.html) for more\ninformation.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst aws = new vault.AuthBackend(\"aws\", {type: \"aws\"});\nconst example = new vault.aws.AuthBackendConfigIdentity(\"example\", {\n backend: aws.path,\n iamAlias: \"full_arn\",\n iamMetadatas: [\n \"canonical_arn\",\n \"account_id\",\n ],\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\naws = vault.AuthBackend(\"aws\", type=\"aws\")\nexample = vault.aws.AuthBackendConfigIdentity(\"example\",\n backend=aws.path,\n iam_alias=\"full_arn\",\n iam_metadatas=[\n \"canonical_arn\",\n \"account_id\",\n ])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var aws = new Vault.AuthBackend(\"aws\", new()\n {\n Type = \"aws\",\n });\n\n var example = new Vault.Aws.AuthBackendConfigIdentity(\"example\", new()\n {\n Backend = aws.Path,\n IamAlias = \"full_arn\",\n IamMetadatas = new[]\n {\n \"canonical_arn\",\n \"account_id\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault\"\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/aws\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\taws, err := vault.NewAuthBackend(ctx, \"aws\", \u0026vault.AuthBackendArgs{\n\t\t\tType: pulumi.String(\"aws\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = aws.NewAuthBackendConfigIdentity(ctx, \"example\", \u0026aws.AuthBackendConfigIdentityArgs{\n\t\t\tBackend: aws.Path,\n\t\t\tIamAlias: pulumi.String(\"full_arn\"),\n\t\t\tIamMetadatas: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"canonical_arn\"),\n\t\t\t\tpulumi.String(\"account_id\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.AuthBackend;\nimport com.pulumi.vault.AuthBackendArgs;\nimport com.pulumi.vault.aws.AuthBackendConfigIdentity;\nimport com.pulumi.vault.aws.AuthBackendConfigIdentityArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var aws = new AuthBackend(\"aws\", AuthBackendArgs.builder() \n .type(\"aws\")\n .build());\n\n var example = new AuthBackendConfigIdentity(\"example\", AuthBackendConfigIdentityArgs.builder() \n .backend(aws.path())\n .iamAlias(\"full_arn\")\n .iamMetadatas( \n \"canonical_arn\",\n \"account_id\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n aws:\n type: vault:AuthBackend\n properties:\n type: aws\n example:\n type: vault:aws:AuthBackendConfigIdentity\n properties:\n backend: ${aws.path}\n iamAlias: full_arn\n iamMetadatas:\n - canonical_arn\n - account_id\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nAWS auth backend identity config can be imported using `auth/`, the `backend` path, and `/config/identity` e.g.\n\n```sh\n $ pulumi import vault:aws/authBackendConfigIdentity:AuthBackendConfigIdentity example auth/aws/config/identity\n```\n ",
"properties": {
"backend": {
"type": "string",
@@ -9196,7 +6325,7 @@
}
},
"vault:aws/authBackendIdentityWhitelist:AuthBackendIdentityWhitelist": {
- "description": "Configures the periodic tidying operation of the whitelisted identity entries.\n\nFor more information, see the\n[Vault docs](https://www.vaultproject.io/api-docs/auth/aws#configure-identity-whitelist-tidy-operation).\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst exampleAuthBackend = new vault.AuthBackend(\"exampleAuthBackend\", {type: \"aws\"});\nconst exampleAuthBackendIdentityWhitelist = new vault.aws.AuthBackendIdentityWhitelist(\"exampleAuthBackendIdentityWhitelist\", {\n backend: exampleAuthBackend.path,\n safetyBuffer: 3600,\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nexample_auth_backend = vault.AuthBackend(\"exampleAuthBackend\", type=\"aws\")\nexample_auth_backend_identity_whitelist = vault.aws.AuthBackendIdentityWhitelist(\"exampleAuthBackendIdentityWhitelist\",\n backend=example_auth_backend.path,\n safety_buffer=3600)\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var exampleAuthBackend = new Vault.AuthBackend(\"exampleAuthBackend\", new()\n {\n Type = \"aws\",\n });\n\n var exampleAuthBackendIdentityWhitelist = new Vault.Aws.AuthBackendIdentityWhitelist(\"exampleAuthBackendIdentityWhitelist\", new()\n {\n Backend = exampleAuthBackend.Path,\n SafetyBuffer = 3600,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault\"\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/aws\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texampleAuthBackend, err := vault.NewAuthBackend(ctx, \"exampleAuthBackend\", \u0026vault.AuthBackendArgs{\n\t\t\tType: pulumi.String(\"aws\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = aws.NewAuthBackendIdentityWhitelist(ctx, \"exampleAuthBackendIdentityWhitelist\", \u0026aws.AuthBackendIdentityWhitelistArgs{\n\t\t\tBackend: exampleAuthBackend.Path,\n\t\t\tSafetyBuffer: pulumi.Int(3600),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.AuthBackend;\nimport com.pulumi.vault.AuthBackendArgs;\nimport com.pulumi.vault.aws.AuthBackendIdentityWhitelist;\nimport com.pulumi.vault.aws.AuthBackendIdentityWhitelistArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var exampleAuthBackend = new AuthBackend(\"exampleAuthBackend\", AuthBackendArgs.builder() \n .type(\"aws\")\n .build());\n\n var exampleAuthBackendIdentityWhitelist = new AuthBackendIdentityWhitelist(\"exampleAuthBackendIdentityWhitelist\", AuthBackendIdentityWhitelistArgs.builder() \n .backend(exampleAuthBackend.path())\n .safetyBuffer(3600)\n .build());\n\n }\n}\n```\n```yaml\nresources:\n exampleAuthBackend:\n type: vault:AuthBackend\n properties:\n type: aws\n exampleAuthBackendIdentityWhitelist:\n type: vault:aws:AuthBackendIdentityWhitelist\n properties:\n backend: ${exampleAuthBackend.path}\n safetyBuffer: 3600\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nAWS auth backend identity whitelists can be imported using `auth/`, the `backend` path, and `/config/tidy/identity-whitelist` e.g.\n\n```sh\n $ pulumi import vault:aws/authBackendIdentityWhitelist:AuthBackendIdentityWhitelist example auth/aws/config/tidy/identity-whitelist\n```\n\n ",
+ "description": "Configures the periodic tidying operation of the whitelisted identity entries.\n\nFor more information, see the\n[Vault docs](https://www.vaultproject.io/api-docs/auth/aws#configure-identity-whitelist-tidy-operation).\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst exampleAuthBackend = new vault.AuthBackend(\"exampleAuthBackend\", {type: \"aws\"});\nconst exampleAuthBackendIdentityWhitelist = new vault.aws.AuthBackendIdentityWhitelist(\"exampleAuthBackendIdentityWhitelist\", {\n backend: exampleAuthBackend.path,\n safetyBuffer: 3600,\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nexample_auth_backend = vault.AuthBackend(\"exampleAuthBackend\", type=\"aws\")\nexample_auth_backend_identity_whitelist = vault.aws.AuthBackendIdentityWhitelist(\"exampleAuthBackendIdentityWhitelist\",\n backend=example_auth_backend.path,\n safety_buffer=3600)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var exampleAuthBackend = new Vault.AuthBackend(\"exampleAuthBackend\", new()\n {\n Type = \"aws\",\n });\n\n var exampleAuthBackendIdentityWhitelist = new Vault.Aws.AuthBackendIdentityWhitelist(\"exampleAuthBackendIdentityWhitelist\", new()\n {\n Backend = exampleAuthBackend.Path,\n SafetyBuffer = 3600,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault\"\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/aws\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texampleAuthBackend, err := vault.NewAuthBackend(ctx, \"exampleAuthBackend\", \u0026vault.AuthBackendArgs{\n\t\t\tType: pulumi.String(\"aws\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = aws.NewAuthBackendIdentityWhitelist(ctx, \"exampleAuthBackendIdentityWhitelist\", \u0026aws.AuthBackendIdentityWhitelistArgs{\n\t\t\tBackend: exampleAuthBackend.Path,\n\t\t\tSafetyBuffer: pulumi.Int(3600),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.AuthBackend;\nimport com.pulumi.vault.AuthBackendArgs;\nimport com.pulumi.vault.aws.AuthBackendIdentityWhitelist;\nimport com.pulumi.vault.aws.AuthBackendIdentityWhitelistArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var exampleAuthBackend = new AuthBackend(\"exampleAuthBackend\", AuthBackendArgs.builder() \n .type(\"aws\")\n .build());\n\n var exampleAuthBackendIdentityWhitelist = new AuthBackendIdentityWhitelist(\"exampleAuthBackendIdentityWhitelist\", AuthBackendIdentityWhitelistArgs.builder() \n .backend(exampleAuthBackend.path())\n .safetyBuffer(3600)\n .build());\n\n }\n}\n```\n```yaml\nresources:\n exampleAuthBackend:\n type: vault:AuthBackend\n properties:\n type: aws\n exampleAuthBackendIdentityWhitelist:\n type: vault:aws:AuthBackendIdentityWhitelist\n properties:\n backend: ${exampleAuthBackend.path}\n safetyBuffer: 3600\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nAWS auth backend identity whitelists can be imported using `auth/`, the `backend` path, and `/config/tidy/identity-whitelist` e.g.\n\n```sh\n $ pulumi import vault:aws/authBackendIdentityWhitelist:AuthBackendIdentityWhitelist example auth/aws/config/tidy/identity-whitelist\n```\n ",
"properties": {
"backend": {
"type": "string",
@@ -9261,7 +6390,7 @@
}
},
"vault:aws/authBackendLogin:AuthBackendLogin": {
- "description": "Logs into a Vault server using an AWS auth backend. Login can be\naccomplished using a signed identity request from IAM or using ec2\ninstance metadata. For more information, see the [Vault\ndocumentation](https://www.vaultproject.io/docs/auth/aws.html).\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.AuthBackend;\nimport com.pulumi.vault.AuthBackendArgs;\nimport com.pulumi.vault.aws.AuthBackendClient;\nimport com.pulumi.vault.aws.AuthBackendClientArgs;\nimport com.pulumi.vault.aws.AuthBackendRole;\nimport com.pulumi.vault.aws.AuthBackendRoleArgs;\nimport com.pulumi.vault.aws.AuthBackendLogin;\nimport com.pulumi.vault.aws.AuthBackendLoginArgs;\nimport com.pulumi.resources.CustomResourceOptions;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var aws = new AuthBackend(\"aws\", AuthBackendArgs.builder() \n .type(\"aws\")\n .path(\"aws\")\n .build());\n\n var exampleAuthBackendClient = new AuthBackendClient(\"exampleAuthBackendClient\", AuthBackendClientArgs.builder() \n .backend(aws.path())\n .accessKey(\"123456789012\")\n .secretKey(\"AWSSECRETKEYGOESHERE\")\n .build());\n\n var exampleAuthBackendRole = new AuthBackendRole(\"exampleAuthBackendRole\", AuthBackendRoleArgs.builder() \n .backend(aws.path())\n .role(\"test-role\")\n .authType(\"ec2\")\n .boundAmiId(\"ami-8c1be5f6\")\n .boundAccountId(\"123456789012\")\n .boundVpcId(\"vpc-b61106d4\")\n .boundSubnetId(\"vpc-133128f1\")\n .boundIamInstanceProfileArns(\"arn:aws:iam::123456789012:instance-profile/MyProfile\")\n .ttl(60)\n .maxTtl(120)\n .tokenPolicies( \n \"default\",\n \"dev\",\n \"prod\")\n .build(), CustomResourceOptions.builder()\n .dependsOn(\"vault_aws_auth_backend_client.example\")\n .build());\n\n var exampleAuthBackendLogin = new AuthBackendLogin(\"exampleAuthBackendLogin\", AuthBackendLoginArgs.builder() \n .backend(vault_auth_backend.example().path())\n .role(exampleAuthBackendRole.role())\n .identity(\"BASE64ENCODEDIDENTITYDOCUMENT\")\n .signature(\"BASE64ENCODEDSHA256IDENTITYDOCUMENTSIGNATURE\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n aws:\n type: vault:AuthBackend\n properties:\n type: aws\n path: aws\n exampleAuthBackendClient:\n type: vault:aws:AuthBackendClient\n properties:\n backend: ${aws.path}\n accessKey: 123456789012\n secretKey: AWSSECRETKEYGOESHERE\n exampleAuthBackendRole:\n type: vault:aws:AuthBackendRole\n properties:\n backend: ${aws.path}\n role: test-role\n authType: ec2\n boundAmiId: ami-8c1be5f6\n boundAccountId: 123456789012\n boundVpcId: vpc-b61106d4\n boundSubnetId: vpc-133128f1\n boundIamInstanceProfileArns:\n - arn:aws:iam::123456789012:instance-profile/MyProfile\n ttl: 60\n maxTtl: 120\n tokenPolicies:\n - default\n - dev\n - prod\n options:\n dependson:\n - vault_aws_auth_backend_client.example\n exampleAuthBackendLogin:\n type: vault:aws:AuthBackendLogin\n properties:\n backend: ${vault_auth_backend.example.path}\n role: ${exampleAuthBackendRole.role}\n identity: BASE64ENCODEDIDENTITYDOCUMENT\n signature: BASE64ENCODEDSHA256IDENTITYDOCUMENTSIGNATURE\n```\n{{% /example %}}\n{{% /examples %}}",
+ "description": "Logs into a Vault server using an AWS auth backend. Login can be\naccomplished using a signed identity request from IAM or using ec2\ninstance metadata. For more information, see the [Vault\ndocumentation](https://www.vaultproject.io/docs/auth/aws.html).\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.AuthBackend;\nimport com.pulumi.vault.AuthBackendArgs;\nimport com.pulumi.vault.aws.AuthBackendClient;\nimport com.pulumi.vault.aws.AuthBackendClientArgs;\nimport com.pulumi.vault.aws.AuthBackendRole;\nimport com.pulumi.vault.aws.AuthBackendRoleArgs;\nimport com.pulumi.vault.aws.AuthBackendLogin;\nimport com.pulumi.vault.aws.AuthBackendLoginArgs;\nimport com.pulumi.resources.CustomResourceOptions;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var aws = new AuthBackend(\"aws\", AuthBackendArgs.builder() \n .type(\"aws\")\n .path(\"aws\")\n .build());\n\n var exampleAuthBackendClient = new AuthBackendClient(\"exampleAuthBackendClient\", AuthBackendClientArgs.builder() \n .backend(aws.path())\n .accessKey(\"123456789012\")\n .secretKey(\"AWSSECRETKEYGOESHERE\")\n .build());\n\n var exampleAuthBackendRole = new AuthBackendRole(\"exampleAuthBackendRole\", AuthBackendRoleArgs.builder() \n .backend(aws.path())\n .role(\"test-role\")\n .authType(\"ec2\")\n .boundAmiId(\"ami-8c1be5f6\")\n .boundAccountId(\"123456789012\")\n .boundVpcId(\"vpc-b61106d4\")\n .boundSubnetId(\"vpc-133128f1\")\n .boundIamInstanceProfileArns(\"arn:aws:iam::123456789012:instance-profile/MyProfile\")\n .ttl(60)\n .maxTtl(120)\n .tokenPolicies( \n \"default\",\n \"dev\",\n \"prod\")\n .build(), CustomResourceOptions.builder()\n .dependsOn(\"vault_aws_auth_backend_client.example\")\n .build());\n\n var exampleAuthBackendLogin = new AuthBackendLogin(\"exampleAuthBackendLogin\", AuthBackendLoginArgs.builder() \n .backend(vault_auth_backend.example().path())\n .role(exampleAuthBackendRole.role())\n .identity(\"BASE64ENCODEDIDENTITYDOCUMENT\")\n .signature(\"BASE64ENCODEDSHA256IDENTITYDOCUMENTSIGNATURE\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n aws:\n type: vault:AuthBackend\n properties:\n type: aws\n path: aws\n exampleAuthBackendClient:\n type: vault:aws:AuthBackendClient\n properties:\n backend: ${aws.path}\n accessKey: '123456789012'\n secretKey: AWSSECRETKEYGOESHERE\n exampleAuthBackendRole:\n type: vault:aws:AuthBackendRole\n properties:\n backend: ${aws.path}\n role: test-role\n authType: ec2\n boundAmiId: ami-8c1be5f6\n boundAccountId: '123456789012'\n boundVpcId: vpc-b61106d4\n boundSubnetId: vpc-133128f1\n boundIamInstanceProfileArns:\n - arn:aws:iam::123456789012:instance-profile/MyProfile\n ttl: 60\n maxTtl: 120\n tokenPolicies:\n - default\n - dev\n - prod\n options:\n dependson:\n - vault_aws_auth_backend_client.example\n exampleAuthBackendLogin:\n type: vault:aws:AuthBackendLogin\n properties:\n backend: ${vault_auth_backend.example.path}\n role: ${exampleAuthBackendRole.role}\n identity: BASE64ENCODEDIDENTITYDOCUMENT\n signature: BASE64ENCODEDSHA256IDENTITYDOCUMENTSIGNATURE\n```\n{{% /example %}}\n{{% /examples %}}",
"properties": {
"accessor": {
"type": "string",
@@ -9518,7 +6647,7 @@
}
},
"vault:aws/authBackendRole:AuthBackendRole": {
- "description": "Manages an AWS auth backend role in a Vault server. Roles constrain the\ninstances or principals that can perform the login operation against the\nbackend. See the [Vault\ndocumentation](https://www.vaultproject.io/docs/auth/aws.html) for more\ninformation.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst aws = new vault.AuthBackend(\"aws\", {type: \"aws\"});\nconst example = new vault.aws.AuthBackendRole(\"example\", {\n backend: aws.path,\n role: \"test-role\",\n authType: \"iam\",\n boundAmiIds: [\"ami-8c1be5f6\"],\n boundAccountIds: [\"123456789012\"],\n boundVpcIds: [\"vpc-b61106d4\"],\n boundSubnetIds: [\"vpc-133128f1\"],\n boundIamRoleArns: [\"arn:aws:iam::123456789012:role/MyRole\"],\n boundIamInstanceProfileArns: [\"arn:aws:iam::123456789012:instance-profile/MyProfile\"],\n inferredEntityType: \"ec2_instance\",\n inferredAwsRegion: \"us-east-1\",\n tokenTtl: 60,\n tokenMaxTtl: 120,\n tokenPolicies: [\n \"default\",\n \"dev\",\n \"prod\",\n ],\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\naws = vault.AuthBackend(\"aws\", type=\"aws\")\nexample = vault.aws.AuthBackendRole(\"example\",\n backend=aws.path,\n role=\"test-role\",\n auth_type=\"iam\",\n bound_ami_ids=[\"ami-8c1be5f6\"],\n bound_account_ids=[\"123456789012\"],\n bound_vpc_ids=[\"vpc-b61106d4\"],\n bound_subnet_ids=[\"vpc-133128f1\"],\n bound_iam_role_arns=[\"arn:aws:iam::123456789012:role/MyRole\"],\n bound_iam_instance_profile_arns=[\"arn:aws:iam::123456789012:instance-profile/MyProfile\"],\n inferred_entity_type=\"ec2_instance\",\n inferred_aws_region=\"us-east-1\",\n token_ttl=60,\n token_max_ttl=120,\n token_policies=[\n \"default\",\n \"dev\",\n \"prod\",\n ])\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var aws = new Vault.AuthBackend(\"aws\", new()\n {\n Type = \"aws\",\n });\n\n var example = new Vault.Aws.AuthBackendRole(\"example\", new()\n {\n Backend = aws.Path,\n Role = \"test-role\",\n AuthType = \"iam\",\n BoundAmiIds = new[]\n {\n \"ami-8c1be5f6\",\n },\n BoundAccountIds = new[]\n {\n \"123456789012\",\n },\n BoundVpcIds = new[]\n {\n \"vpc-b61106d4\",\n },\n BoundSubnetIds = new[]\n {\n \"vpc-133128f1\",\n },\n BoundIamRoleArns = new[]\n {\n \"arn:aws:iam::123456789012:role/MyRole\",\n },\n BoundIamInstanceProfileArns = new[]\n {\n \"arn:aws:iam::123456789012:instance-profile/MyProfile\",\n },\n InferredEntityType = \"ec2_instance\",\n InferredAwsRegion = \"us-east-1\",\n TokenTtl = 60,\n TokenMaxTtl = 120,\n TokenPolicies = new[]\n {\n \"default\",\n \"dev\",\n \"prod\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault\"\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/aws\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\taws, err := vault.NewAuthBackend(ctx, \"aws\", \u0026vault.AuthBackendArgs{\n\t\t\tType: pulumi.String(\"aws\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = aws.NewAuthBackendRole(ctx, \"example\", \u0026aws.AuthBackendRoleArgs{\n\t\t\tBackend: aws.Path,\n\t\t\tRole: pulumi.String(\"test-role\"),\n\t\t\tAuthType: pulumi.String(\"iam\"),\n\t\t\tBoundAmiIds: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"ami-8c1be5f6\"),\n\t\t\t},\n\t\t\tBoundAccountIds: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"123456789012\"),\n\t\t\t},\n\t\t\tBoundVpcIds: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"vpc-b61106d4\"),\n\t\t\t},\n\t\t\tBoundSubnetIds: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"vpc-133128f1\"),\n\t\t\t},\n\t\t\tBoundIamRoleArns: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"arn:aws:iam::123456789012:role/MyRole\"),\n\t\t\t},\n\t\t\tBoundIamInstanceProfileArns: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"arn:aws:iam::123456789012:instance-profile/MyProfile\"),\n\t\t\t},\n\t\t\tInferredEntityType: pulumi.String(\"ec2_instance\"),\n\t\t\tInferredAwsRegion: pulumi.String(\"us-east-1\"),\n\t\t\tTokenTtl: pulumi.Int(60),\n\t\t\tTokenMaxTtl: pulumi.Int(120),\n\t\t\tTokenPolicies: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"default\"),\n\t\t\t\tpulumi.String(\"dev\"),\n\t\t\t\tpulumi.String(\"prod\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.AuthBackend;\nimport com.pulumi.vault.AuthBackendArgs;\nimport com.pulumi.vault.aws.AuthBackendRole;\nimport com.pulumi.vault.aws.AuthBackendRoleArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var aws = new AuthBackend(\"aws\", AuthBackendArgs.builder() \n .type(\"aws\")\n .build());\n\n var example = new AuthBackendRole(\"example\", AuthBackendRoleArgs.builder() \n .backend(aws.path())\n .role(\"test-role\")\n .authType(\"iam\")\n .boundAmiIds(\"ami-8c1be5f6\")\n .boundAccountIds(\"123456789012\")\n .boundVpcIds(\"vpc-b61106d4\")\n .boundSubnetIds(\"vpc-133128f1\")\n .boundIamRoleArns(\"arn:aws:iam::123456789012:role/MyRole\")\n .boundIamInstanceProfileArns(\"arn:aws:iam::123456789012:instance-profile/MyProfile\")\n .inferredEntityType(\"ec2_instance\")\n .inferredAwsRegion(\"us-east-1\")\n .tokenTtl(60)\n .tokenMaxTtl(120)\n .tokenPolicies( \n \"default\",\n \"dev\",\n \"prod\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n aws:\n type: vault:AuthBackend\n properties:\n type: aws\n example:\n type: vault:aws:AuthBackendRole\n properties:\n backend: ${aws.path}\n role: test-role\n authType: iam\n boundAmiIds:\n - ami-8c1be5f6\n boundAccountIds:\n - 123456789012\n boundVpcIds:\n - vpc-b61106d4\n boundSubnetIds:\n - vpc-133128f1\n boundIamRoleArns:\n - arn:aws:iam::123456789012:role/MyRole\n boundIamInstanceProfileArns:\n - arn:aws:iam::123456789012:instance-profile/MyProfile\n inferredEntityType: ec2_instance\n inferredAwsRegion: us-east-1\n tokenTtl: 60\n tokenMaxTtl: 120\n tokenPolicies:\n - default\n - dev\n - prod\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nAWS auth backend roles can be imported using `auth/`, the `backend` path, `/role/`, and the `role` name e.g.\n\n```sh\n $ pulumi import vault:aws/authBackendRole:AuthBackendRole example auth/aws/role/test-role\n```\n\n ",
+ "description": "Manages an AWS auth backend role in a Vault server. Roles constrain the\ninstances or principals that can perform the login operation against the\nbackend. See the [Vault\ndocumentation](https://www.vaultproject.io/docs/auth/aws.html) for more\ninformation.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst aws = new vault.AuthBackend(\"aws\", {type: \"aws\"});\nconst example = new vault.aws.AuthBackendRole(\"example\", {\n backend: aws.path,\n role: \"test-role\",\n authType: \"iam\",\n boundAmiIds: [\"ami-8c1be5f6\"],\n boundAccountIds: [\"123456789012\"],\n boundVpcIds: [\"vpc-b61106d4\"],\n boundSubnetIds: [\"vpc-133128f1\"],\n boundIamRoleArns: [\"arn:aws:iam::123456789012:role/MyRole\"],\n boundIamInstanceProfileArns: [\"arn:aws:iam::123456789012:instance-profile/MyProfile\"],\n inferredEntityType: \"ec2_instance\",\n inferredAwsRegion: \"us-east-1\",\n tokenTtl: 60,\n tokenMaxTtl: 120,\n tokenPolicies: [\n \"default\",\n \"dev\",\n \"prod\",\n ],\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\naws = vault.AuthBackend(\"aws\", type=\"aws\")\nexample = vault.aws.AuthBackendRole(\"example\",\n backend=aws.path,\n role=\"test-role\",\n auth_type=\"iam\",\n bound_ami_ids=[\"ami-8c1be5f6\"],\n bound_account_ids=[\"123456789012\"],\n bound_vpc_ids=[\"vpc-b61106d4\"],\n bound_subnet_ids=[\"vpc-133128f1\"],\n bound_iam_role_arns=[\"arn:aws:iam::123456789012:role/MyRole\"],\n bound_iam_instance_profile_arns=[\"arn:aws:iam::123456789012:instance-profile/MyProfile\"],\n inferred_entity_type=\"ec2_instance\",\n inferred_aws_region=\"us-east-1\",\n token_ttl=60,\n token_max_ttl=120,\n token_policies=[\n \"default\",\n \"dev\",\n \"prod\",\n ])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var aws = new Vault.AuthBackend(\"aws\", new()\n {\n Type = \"aws\",\n });\n\n var example = new Vault.Aws.AuthBackendRole(\"example\", new()\n {\n Backend = aws.Path,\n Role = \"test-role\",\n AuthType = \"iam\",\n BoundAmiIds = new[]\n {\n \"ami-8c1be5f6\",\n },\n BoundAccountIds = new[]\n {\n \"123456789012\",\n },\n BoundVpcIds = new[]\n {\n \"vpc-b61106d4\",\n },\n BoundSubnetIds = new[]\n {\n \"vpc-133128f1\",\n },\n BoundIamRoleArns = new[]\n {\n \"arn:aws:iam::123456789012:role/MyRole\",\n },\n BoundIamInstanceProfileArns = new[]\n {\n \"arn:aws:iam::123456789012:instance-profile/MyProfile\",\n },\n InferredEntityType = \"ec2_instance\",\n InferredAwsRegion = \"us-east-1\",\n TokenTtl = 60,\n TokenMaxTtl = 120,\n TokenPolicies = new[]\n {\n \"default\",\n \"dev\",\n \"prod\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault\"\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/aws\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\taws, err := vault.NewAuthBackend(ctx, \"aws\", \u0026vault.AuthBackendArgs{\n\t\t\tType: pulumi.String(\"aws\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = aws.NewAuthBackendRole(ctx, \"example\", \u0026aws.AuthBackendRoleArgs{\n\t\t\tBackend: aws.Path,\n\t\t\tRole: pulumi.String(\"test-role\"),\n\t\t\tAuthType: pulumi.String(\"iam\"),\n\t\t\tBoundAmiIds: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"ami-8c1be5f6\"),\n\t\t\t},\n\t\t\tBoundAccountIds: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"123456789012\"),\n\t\t\t},\n\t\t\tBoundVpcIds: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"vpc-b61106d4\"),\n\t\t\t},\n\t\t\tBoundSubnetIds: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"vpc-133128f1\"),\n\t\t\t},\n\t\t\tBoundIamRoleArns: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"arn:aws:iam::123456789012:role/MyRole\"),\n\t\t\t},\n\t\t\tBoundIamInstanceProfileArns: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"arn:aws:iam::123456789012:instance-profile/MyProfile\"),\n\t\t\t},\n\t\t\tInferredEntityType: pulumi.String(\"ec2_instance\"),\n\t\t\tInferredAwsRegion: pulumi.String(\"us-east-1\"),\n\t\t\tTokenTtl: pulumi.Int(60),\n\t\t\tTokenMaxTtl: pulumi.Int(120),\n\t\t\tTokenPolicies: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"default\"),\n\t\t\t\tpulumi.String(\"dev\"),\n\t\t\t\tpulumi.String(\"prod\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.AuthBackend;\nimport com.pulumi.vault.AuthBackendArgs;\nimport com.pulumi.vault.aws.AuthBackendRole;\nimport com.pulumi.vault.aws.AuthBackendRoleArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var aws = new AuthBackend(\"aws\", AuthBackendArgs.builder() \n .type(\"aws\")\n .build());\n\n var example = new AuthBackendRole(\"example\", AuthBackendRoleArgs.builder() \n .backend(aws.path())\n .role(\"test-role\")\n .authType(\"iam\")\n .boundAmiIds(\"ami-8c1be5f6\")\n .boundAccountIds(\"123456789012\")\n .boundVpcIds(\"vpc-b61106d4\")\n .boundSubnetIds(\"vpc-133128f1\")\n .boundIamRoleArns(\"arn:aws:iam::123456789012:role/MyRole\")\n .boundIamInstanceProfileArns(\"arn:aws:iam::123456789012:instance-profile/MyProfile\")\n .inferredEntityType(\"ec2_instance\")\n .inferredAwsRegion(\"us-east-1\")\n .tokenTtl(60)\n .tokenMaxTtl(120)\n .tokenPolicies( \n \"default\",\n \"dev\",\n \"prod\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n aws:\n type: vault:AuthBackend\n properties:\n type: aws\n example:\n type: vault:aws:AuthBackendRole\n properties:\n backend: ${aws.path}\n role: test-role\n authType: iam\n boundAmiIds:\n - ami-8c1be5f6\n boundAccountIds:\n - '123456789012'\n boundVpcIds:\n - vpc-b61106d4\n boundSubnetIds:\n - vpc-133128f1\n boundIamRoleArns:\n - arn:aws:iam::123456789012:role/MyRole\n boundIamInstanceProfileArns:\n - arn:aws:iam::123456789012:instance-profile/MyProfile\n inferredEntityType: ec2_instance\n inferredAwsRegion: us-east-1\n tokenTtl: 60\n tokenMaxTtl: 120\n tokenPolicies:\n - default\n - dev\n - prod\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nAWS auth backend roles can be imported using `auth/`, the `backend` path, `/role/`, and the `role` name e.g.\n\n```sh\n $ pulumi import vault:aws/authBackendRole:AuthBackendRole example auth/aws/role/test-role\n```\n ",
"properties": {
"allowInstanceMigration": {
"type": "boolean",
@@ -9989,7 +7118,7 @@
}
},
"vault:aws/authBackendRoleTag:AuthBackendRoleTag": {
- "description": "Reads role tag information from an AWS auth backend in Vault. \n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.AuthBackend;\nimport com.pulumi.vault.AuthBackendArgs;\nimport com.pulumi.vault.aws.AuthBackendRole;\nimport com.pulumi.vault.aws.AuthBackendRoleArgs;\nimport com.pulumi.vault.aws.AuthBackendRoleTag;\nimport com.pulumi.vault.aws.AuthBackendRoleTagArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var aws = new AuthBackend(\"aws\", AuthBackendArgs.builder() \n .path(\"%s\")\n .type(\"aws\")\n .build());\n\n var role = new AuthBackendRole(\"role\", AuthBackendRoleArgs.builder() \n .backend(aws.path())\n .role(\"%s\")\n .authType(\"ec2\")\n .boundAccountId(\"123456789012\")\n .policies( \n \"dev\",\n \"prod\",\n \"qa\",\n \"test\")\n .roleTag(\"VaultRoleTag\")\n .build());\n\n var test = new AuthBackendRoleTag(\"test\", AuthBackendRoleTagArgs.builder() \n .backend(aws.path())\n .role(role.role())\n .policies( \n \"prod\",\n \"dev\",\n \"test\")\n .maxTtl(\"1h\")\n .instanceId(\"i-1234567\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n aws:\n type: vault:AuthBackend\n properties:\n path: '%s'\n type: aws\n role:\n type: vault:aws:AuthBackendRole\n properties:\n backend: ${aws.path}\n role: '%s'\n authType: ec2\n boundAccountId: 123456789012\n policies:\n - dev\n - prod\n - qa\n - test\n roleTag: VaultRoleTag\n test:\n type: vault:aws:AuthBackendRoleTag\n properties:\n backend: ${aws.path}\n role: ${role.role}\n policies:\n - prod\n - dev\n - test\n maxTtl: 1h\n instanceId: i-1234567\n```\n{{% /example %}}\n{{% /examples %}}",
+ "description": "Reads role tag information from an AWS auth backend in Vault. \n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.AuthBackend;\nimport com.pulumi.vault.AuthBackendArgs;\nimport com.pulumi.vault.aws.AuthBackendRole;\nimport com.pulumi.vault.aws.AuthBackendRoleArgs;\nimport com.pulumi.vault.aws.AuthBackendRoleTag;\nimport com.pulumi.vault.aws.AuthBackendRoleTagArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var aws = new AuthBackend(\"aws\", AuthBackendArgs.builder() \n .path(\"%s\")\n .type(\"aws\")\n .build());\n\n var role = new AuthBackendRole(\"role\", AuthBackendRoleArgs.builder() \n .backend(aws.path())\n .role(\"%s\")\n .authType(\"ec2\")\n .boundAccountId(\"123456789012\")\n .policies( \n \"dev\",\n \"prod\",\n \"qa\",\n \"test\")\n .roleTag(\"VaultRoleTag\")\n .build());\n\n var test = new AuthBackendRoleTag(\"test\", AuthBackendRoleTagArgs.builder() \n .backend(aws.path())\n .role(role.role())\n .policies( \n \"prod\",\n \"dev\",\n \"test\")\n .maxTtl(\"1h\")\n .instanceId(\"i-1234567\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n aws:\n type: vault:AuthBackend\n properties:\n path: '%s'\n type: aws\n role:\n type: vault:aws:AuthBackendRole\n properties:\n backend: ${aws.path}\n role: '%s'\n authType: ec2\n boundAccountId: '123456789012'\n policies:\n - dev\n - prod\n - qa\n - test\n roleTag: VaultRoleTag\n test:\n type: vault:aws:AuthBackendRoleTag\n properties:\n backend: ${aws.path}\n role: ${role.role}\n policies:\n - prod\n - dev\n - test\n maxTtl: 1h\n instanceId: i-1234567\n```\n{{% /example %}}\n{{% /examples %}}",
"properties": {
"allowInstanceMigration": {
"type": "boolean",
@@ -10147,7 +7276,7 @@
}
},
"vault:aws/authBackendRoletagBlacklist:AuthBackendRoletagBlacklist": {
- "description": "Configures the periodic tidying operation of the blacklisted role tag entries.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst exampleAuthBackend = new vault.AuthBackend(\"exampleAuthBackend\", {type: \"aws\"});\nconst exampleAuthBackendRoletagBlacklist = new vault.aws.AuthBackendRoletagBlacklist(\"exampleAuthBackendRoletagBlacklist\", {\n backend: exampleAuthBackend.path,\n safetyBuffer: 360,\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nexample_auth_backend = vault.AuthBackend(\"exampleAuthBackend\", type=\"aws\")\nexample_auth_backend_roletag_blacklist = vault.aws.AuthBackendRoletagBlacklist(\"exampleAuthBackendRoletagBlacklist\",\n backend=example_auth_backend.path,\n safety_buffer=360)\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var exampleAuthBackend = new Vault.AuthBackend(\"exampleAuthBackend\", new()\n {\n Type = \"aws\",\n });\n\n var exampleAuthBackendRoletagBlacklist = new Vault.Aws.AuthBackendRoletagBlacklist(\"exampleAuthBackendRoletagBlacklist\", new()\n {\n Backend = exampleAuthBackend.Path,\n SafetyBuffer = 360,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault\"\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/aws\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texampleAuthBackend, err := vault.NewAuthBackend(ctx, \"exampleAuthBackend\", \u0026vault.AuthBackendArgs{\n\t\t\tType: pulumi.String(\"aws\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = aws.NewAuthBackendRoletagBlacklist(ctx, \"exampleAuthBackendRoletagBlacklist\", \u0026aws.AuthBackendRoletagBlacklistArgs{\n\t\t\tBackend: exampleAuthBackend.Path,\n\t\t\tSafetyBuffer: pulumi.Int(360),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.AuthBackend;\nimport com.pulumi.vault.AuthBackendArgs;\nimport com.pulumi.vault.aws.AuthBackendRoletagBlacklist;\nimport com.pulumi.vault.aws.AuthBackendRoletagBlacklistArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var exampleAuthBackend = new AuthBackend(\"exampleAuthBackend\", AuthBackendArgs.builder() \n .type(\"aws\")\n .build());\n\n var exampleAuthBackendRoletagBlacklist = new AuthBackendRoletagBlacklist(\"exampleAuthBackendRoletagBlacklist\", AuthBackendRoletagBlacklistArgs.builder() \n .backend(exampleAuthBackend.path())\n .safetyBuffer(360)\n .build());\n\n }\n}\n```\n```yaml\nresources:\n exampleAuthBackend:\n type: vault:AuthBackend\n properties:\n type: aws\n exampleAuthBackendRoletagBlacklist:\n type: vault:aws:AuthBackendRoletagBlacklist\n properties:\n backend: ${exampleAuthBackend.path}\n safetyBuffer: 360\n```\n{{% /example %}}\n{{% /examples %}}",
+ "description": "Configures the periodic tidying operation of the blacklisted role tag entries.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst exampleAuthBackend = new vault.AuthBackend(\"exampleAuthBackend\", {type: \"aws\"});\nconst exampleAuthBackendRoletagBlacklist = new vault.aws.AuthBackendRoletagBlacklist(\"exampleAuthBackendRoletagBlacklist\", {\n backend: exampleAuthBackend.path,\n safetyBuffer: 360,\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nexample_auth_backend = vault.AuthBackend(\"exampleAuthBackend\", type=\"aws\")\nexample_auth_backend_roletag_blacklist = vault.aws.AuthBackendRoletagBlacklist(\"exampleAuthBackendRoletagBlacklist\",\n backend=example_auth_backend.path,\n safety_buffer=360)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var exampleAuthBackend = new Vault.AuthBackend(\"exampleAuthBackend\", new()\n {\n Type = \"aws\",\n });\n\n var exampleAuthBackendRoletagBlacklist = new Vault.Aws.AuthBackendRoletagBlacklist(\"exampleAuthBackendRoletagBlacklist\", new()\n {\n Backend = exampleAuthBackend.Path,\n SafetyBuffer = 360,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault\"\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/aws\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texampleAuthBackend, err := vault.NewAuthBackend(ctx, \"exampleAuthBackend\", \u0026vault.AuthBackendArgs{\n\t\t\tType: pulumi.String(\"aws\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = aws.NewAuthBackendRoletagBlacklist(ctx, \"exampleAuthBackendRoletagBlacklist\", \u0026aws.AuthBackendRoletagBlacklistArgs{\n\t\t\tBackend: exampleAuthBackend.Path,\n\t\t\tSafetyBuffer: pulumi.Int(360),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.AuthBackend;\nimport com.pulumi.vault.AuthBackendArgs;\nimport com.pulumi.vault.aws.AuthBackendRoletagBlacklist;\nimport com.pulumi.vault.aws.AuthBackendRoletagBlacklistArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var exampleAuthBackend = new AuthBackend(\"exampleAuthBackend\", AuthBackendArgs.builder() \n .type(\"aws\")\n .build());\n\n var exampleAuthBackendRoletagBlacklist = new AuthBackendRoletagBlacklist(\"exampleAuthBackendRoletagBlacklist\", AuthBackendRoletagBlacklistArgs.builder() \n .backend(exampleAuthBackend.path())\n .safetyBuffer(360)\n .build());\n\n }\n}\n```\n```yaml\nresources:\n exampleAuthBackend:\n type: vault:AuthBackend\n properties:\n type: aws\n exampleAuthBackendRoletagBlacklist:\n type: vault:aws:AuthBackendRoletagBlacklist\n properties:\n backend: ${exampleAuthBackend.path}\n safetyBuffer: 360\n```\n{{% /example %}}\n{{% /examples %}}",
"properties": {
"backend": {
"type": "string",
@@ -10218,7 +7347,7 @@
}
},
"vault:aws/authBackendStsRole:AuthBackendStsRole": {
- "description": "{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst aws = new vault.AuthBackend(\"aws\", {type: \"aws\"});\nconst role = new vault.aws.AuthBackendStsRole(\"role\", {\n backend: aws.path,\n accountId: \"1234567890\",\n stsRole: \"arn:aws:iam::1234567890:role/my-role\",\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\naws = vault.AuthBackend(\"aws\", type=\"aws\")\nrole = vault.aws.AuthBackendStsRole(\"role\",\n backend=aws.path,\n account_id=\"1234567890\",\n sts_role=\"arn:aws:iam::1234567890:role/my-role\")\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var aws = new Vault.AuthBackend(\"aws\", new()\n {\n Type = \"aws\",\n });\n\n var role = new Vault.Aws.AuthBackendStsRole(\"role\", new()\n {\n Backend = aws.Path,\n AccountId = \"1234567890\",\n StsRole = \"arn:aws:iam::1234567890:role/my-role\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault\"\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/aws\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\taws, err := vault.NewAuthBackend(ctx, \"aws\", \u0026vault.AuthBackendArgs{\n\t\t\tType: pulumi.String(\"aws\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = aws.NewAuthBackendStsRole(ctx, \"role\", \u0026aws.AuthBackendStsRoleArgs{\n\t\t\tBackend: aws.Path,\n\t\t\tAccountId: pulumi.String(\"1234567890\"),\n\t\t\tStsRole: pulumi.String(\"arn:aws:iam::1234567890:role/my-role\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.AuthBackend;\nimport com.pulumi.vault.AuthBackendArgs;\nimport com.pulumi.vault.aws.AuthBackendStsRole;\nimport com.pulumi.vault.aws.AuthBackendStsRoleArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var aws = new AuthBackend(\"aws\", AuthBackendArgs.builder() \n .type(\"aws\")\n .build());\n\n var role = new AuthBackendStsRole(\"role\", AuthBackendStsRoleArgs.builder() \n .backend(aws.path())\n .accountId(\"1234567890\")\n .stsRole(\"arn:aws:iam::1234567890:role/my-role\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n aws:\n type: vault:AuthBackend\n properties:\n type: aws\n role:\n type: vault:aws:AuthBackendStsRole\n properties:\n backend: ${aws.path}\n accountId: 1234567890\n stsRole: arn:aws:iam::1234567890:role/my-role\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nAWS auth backend STS roles can be imported using `auth/`, the `backend` path, `/config/sts/`, and the `account_id` e.g.\n\n```sh\n $ pulumi import vault:aws/authBackendStsRole:AuthBackendStsRole example auth/aws/config/sts/1234567890\n```\n\n ",
+ "description": "{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst aws = new vault.AuthBackend(\"aws\", {type: \"aws\"});\nconst role = new vault.aws.AuthBackendStsRole(\"role\", {\n backend: aws.path,\n accountId: \"1234567890\",\n stsRole: \"arn:aws:iam::1234567890:role/my-role\",\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\naws = vault.AuthBackend(\"aws\", type=\"aws\")\nrole = vault.aws.AuthBackendStsRole(\"role\",\n backend=aws.path,\n account_id=\"1234567890\",\n sts_role=\"arn:aws:iam::1234567890:role/my-role\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var aws = new Vault.AuthBackend(\"aws\", new()\n {\n Type = \"aws\",\n });\n\n var role = new Vault.Aws.AuthBackendStsRole(\"role\", new()\n {\n Backend = aws.Path,\n AccountId = \"1234567890\",\n StsRole = \"arn:aws:iam::1234567890:role/my-role\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault\"\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/aws\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\taws, err := vault.NewAuthBackend(ctx, \"aws\", \u0026vault.AuthBackendArgs{\n\t\t\tType: pulumi.String(\"aws\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = aws.NewAuthBackendStsRole(ctx, \"role\", \u0026aws.AuthBackendStsRoleArgs{\n\t\t\tBackend: aws.Path,\n\t\t\tAccountId: pulumi.String(\"1234567890\"),\n\t\t\tStsRole: pulumi.String(\"arn:aws:iam::1234567890:role/my-role\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.AuthBackend;\nimport com.pulumi.vault.AuthBackendArgs;\nimport com.pulumi.vault.aws.AuthBackendStsRole;\nimport com.pulumi.vault.aws.AuthBackendStsRoleArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var aws = new AuthBackend(\"aws\", AuthBackendArgs.builder() \n .type(\"aws\")\n .build());\n\n var role = new AuthBackendStsRole(\"role\", AuthBackendStsRoleArgs.builder() \n .backend(aws.path())\n .accountId(\"1234567890\")\n .stsRole(\"arn:aws:iam::1234567890:role/my-role\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n aws:\n type: vault:AuthBackend\n properties:\n type: aws\n role:\n type: vault:aws:AuthBackendStsRole\n properties:\n backend: ${aws.path}\n accountId: '1234567890'\n stsRole: arn:aws:iam::1234567890:role/my-role\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nAWS auth backend STS roles can be imported using `auth/`, the `backend` path, `/config/sts/`, and the `account_id` e.g.\n\n```sh\n $ pulumi import vault:aws/authBackendStsRole:AuthBackendStsRole example auth/aws/config/sts/1234567890\n```\n ",
"properties": {
"accountId": {
"type": "string",
@@ -10291,7 +7420,7 @@
}
},
"vault:aws/secretBackend:SecretBackend": {
- "description": "\n\n\n## Import\n\nAWS secret backends can be imported using the `path`, e.g.\n\n```sh\n $ pulumi import vault:aws/secretBackend:SecretBackend aws aws\n```\n\n ",
+ "description": "\n\n\n## Import\n\nAWS secret backends can be imported using the `path`, e.g.\n\n```sh\n $ pulumi import vault:aws/secretBackend:SecretBackend aws aws\n```\n ",
"properties": {
"accessKey": {
"type": "string",
@@ -10316,7 +7445,7 @@
},
"local": {
"type": "boolean",
- "description": "Specifies whether the secrets mount will be marked as local. Local mounts are not replicated to performance replicas.\n"
+ "description": "Specifies whether the secrets mount will be marked as local. Local mounts are not replicated to performance replicas.\n\n"
},
"maxLeaseTtlSeconds": {
"type": "integer",
@@ -10332,11 +7461,11 @@
},
"region": {
"type": "string",
- "description": "The AWS region for API calls. Defaults to `us-east-1`.\n"
+ "description": "The AWS region to make API calls against. Defaults to us-east-1.\n"
},
"secretKey": {
"type": "string",
- "description": "The AWS Secret Key this backend should use to\nissue new credentials. Vault uses the official AWS SDK to authenticate, and thus can also use standard AWS environment credentials, shared file credentials or IAM role/ECS task credentials.\n",
+ "description": "The AWS Secret Access Key to use when generating new credentials.\n",
"secret": true
},
"stsEndpoint": {
@@ -10378,7 +7507,7 @@
},
"local": {
"type": "boolean",
- "description": "Specifies whether the secrets mount will be marked as local. Local mounts are not replicated to performance replicas.\n",
+ "description": "Specifies whether the secrets mount will be marked as local. Local mounts are not replicated to performance replicas.\n\n",
"willReplaceOnChanges": true
},
"maxLeaseTtlSeconds": {
@@ -10396,11 +7525,11 @@
},
"region": {
"type": "string",
- "description": "The AWS region for API calls. Defaults to `us-east-1`.\n"
+ "description": "The AWS region to make API calls against. Defaults to us-east-1.\n"
},
"secretKey": {
"type": "string",
- "description": "The AWS Secret Key this backend should use to\nissue new credentials. Vault uses the official AWS SDK to authenticate, and thus can also use standard AWS environment credentials, shared file credentials or IAM role/ECS task credentials.\n",
+ "description": "The AWS Secret Access Key to use when generating new credentials.\n",
"secret": true
},
"stsEndpoint": {
@@ -10438,7 +7567,7 @@
},
"local": {
"type": "boolean",
- "description": "Specifies whether the secrets mount will be marked as local. Local mounts are not replicated to performance replicas.\n",
+ "description": "Specifies whether the secrets mount will be marked as local. Local mounts are not replicated to performance replicas.\n\n",
"willReplaceOnChanges": true
},
"maxLeaseTtlSeconds": {
@@ -10456,11 +7585,11 @@
},
"region": {
"type": "string",
- "description": "The AWS region for API calls. Defaults to `us-east-1`.\n"
+ "description": "The AWS region to make API calls against. Defaults to us-east-1.\n"
},
"secretKey": {
"type": "string",
- "description": "The AWS Secret Key this backend should use to\nissue new credentials. Vault uses the official AWS SDK to authenticate, and thus can also use standard AWS environment credentials, shared file credentials or IAM role/ECS task credentials.\n",
+ "description": "The AWS Secret Access Key to use when generating new credentials.\n",
"secret": true
},
"stsEndpoint": {
@@ -10476,7 +7605,7 @@
}
},
"vault:aws/secretBackendRole:SecretBackendRole": {
- "description": "{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst aws = new vault.aws.SecretBackend(\"aws\", {\n accessKey: \"AKIA.....\",\n secretKey: \"AWS secret key\",\n});\nconst role = new vault.aws.SecretBackendRole(\"role\", {\n backend: aws.path,\n credentialType: \"iam_user\",\n policyDocument: `{\n \"Version\": \"2012-10-17\",\n \"Statement\": [\n {\n \"Effect\": \"Allow\",\n \"Action\": \"iam:*\",\n \"Resource\": \"*\"\n }\n ]\n}\n`,\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\naws = vault.aws.SecretBackend(\"aws\",\n access_key=\"AKIA.....\",\n secret_key=\"AWS secret key\")\nrole = vault.aws.SecretBackendRole(\"role\",\n backend=aws.path,\n credential_type=\"iam_user\",\n policy_document=\"\"\"{\n \"Version\": \"2012-10-17\",\n \"Statement\": [\n {\n \"Effect\": \"Allow\",\n \"Action\": \"iam:*\",\n \"Resource\": \"*\"\n }\n ]\n}\n\"\"\")\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var aws = new Vault.Aws.SecretBackend(\"aws\", new()\n {\n AccessKey = \"AKIA.....\",\n SecretKey = \"AWS secret key\",\n });\n\n var role = new Vault.Aws.SecretBackendRole(\"role\", new()\n {\n Backend = aws.Path,\n CredentialType = \"iam_user\",\n PolicyDocument = @\"{\n \"\"Version\"\": \"\"2012-10-17\"\",\n \"\"Statement\"\": [\n {\n \"\"Effect\"\": \"\"Allow\"\",\n \"\"Action\"\": \"\"iam:*\"\",\n \"\"Resource\"\": \"\"*\"\"\n }\n ]\n}\n\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/aws\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\taws, err := aws.NewSecretBackend(ctx, \"aws\", \u0026aws.SecretBackendArgs{\n\t\t\tAccessKey: pulumi.String(\"AKIA.....\"),\n\t\t\tSecretKey: pulumi.String(\"AWS secret key\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = aws.NewSecretBackendRole(ctx, \"role\", \u0026aws.SecretBackendRoleArgs{\n\t\t\tBackend: aws.Path,\n\t\t\tCredentialType: pulumi.String(\"iam_user\"),\n\t\t\tPolicyDocument: pulumi.String(\"{\\n \\\"Version\\\": \\\"2012-10-17\\\",\\n \\\"Statement\\\": [\\n {\\n \\\"Effect\\\": \\\"Allow\\\",\\n \\\"Action\\\": \\\"iam:*\\\",\\n \\\"Resource\\\": \\\"*\\\"\\n }\\n ]\\n}\\n\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.aws.SecretBackend;\nimport com.pulumi.vault.aws.SecretBackendArgs;\nimport com.pulumi.vault.aws.SecretBackendRole;\nimport com.pulumi.vault.aws.SecretBackendRoleArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var aws = new SecretBackend(\"aws\", SecretBackendArgs.builder() \n .accessKey(\"AKIA.....\")\n .secretKey(\"AWS secret key\")\n .build());\n\n var role = new SecretBackendRole(\"role\", SecretBackendRoleArgs.builder() \n .backend(aws.path())\n .credentialType(\"iam_user\")\n .policyDocument(\"\"\"\n{\n \"Version\": \"2012-10-17\",\n \"Statement\": [\n {\n \"Effect\": \"Allow\",\n \"Action\": \"iam:*\",\n \"Resource\": \"*\"\n }\n ]\n}\n \"\"\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n aws:\n type: vault:aws:SecretBackend\n properties:\n accessKey: AKIA.....\n secretKey: AWS secret key\n role:\n type: vault:aws:SecretBackendRole\n properties:\n backend: ${aws.path}\n credentialType: iam_user\n policyDocument: |\n {\n \"Version\": \"2012-10-17\",\n \"Statement\": [\n {\n \"Effect\": \"Allow\",\n \"Action\": \"iam:*\",\n \"Resource\": \"*\"\n }\n ]\n }\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nAWS secret backend roles can be imported using the `path`, e.g.\n\n```sh\n $ pulumi import vault:aws/secretBackendRole:SecretBackendRole role aws/roles/deploy\n```\n\n ",
+ "description": "{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst aws = new vault.aws.SecretBackend(\"aws\", {\n accessKey: \"AKIA.....\",\n secretKey: \"AWS secret key\",\n});\nconst role = new vault.aws.SecretBackendRole(\"role\", {\n backend: aws.path,\n credentialType: \"iam_user\",\n policyDocument: `{\n \"Version\": \"2012-10-17\",\n \"Statement\": [\n {\n \"Effect\": \"Allow\",\n \"Action\": \"iam:*\",\n \"Resource\": \"*\"\n }\n ]\n}\n`,\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\naws = vault.aws.SecretBackend(\"aws\",\n access_key=\"AKIA.....\",\n secret_key=\"AWS secret key\")\nrole = vault.aws.SecretBackendRole(\"role\",\n backend=aws.path,\n credential_type=\"iam_user\",\n policy_document=\"\"\"{\n \"Version\": \"2012-10-17\",\n \"Statement\": [\n {\n \"Effect\": \"Allow\",\n \"Action\": \"iam:*\",\n \"Resource\": \"*\"\n }\n ]\n}\n\"\"\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var aws = new Vault.Aws.SecretBackend(\"aws\", new()\n {\n AccessKey = \"AKIA.....\",\n SecretKey = \"AWS secret key\",\n });\n\n var role = new Vault.Aws.SecretBackendRole(\"role\", new()\n {\n Backend = aws.Path,\n CredentialType = \"iam_user\",\n PolicyDocument = @\"{\n \"\"Version\"\": \"\"2012-10-17\"\",\n \"\"Statement\"\": [\n {\n \"\"Effect\"\": \"\"Allow\"\",\n \"\"Action\"\": \"\"iam:*\"\",\n \"\"Resource\"\": \"\"*\"\"\n }\n ]\n}\n\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/aws\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\taws, err := aws.NewSecretBackend(ctx, \"aws\", \u0026aws.SecretBackendArgs{\n\t\t\tAccessKey: pulumi.String(\"AKIA.....\"),\n\t\t\tSecretKey: pulumi.String(\"AWS secret key\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = aws.NewSecretBackendRole(ctx, \"role\", \u0026aws.SecretBackendRoleArgs{\n\t\t\tBackend: aws.Path,\n\t\t\tCredentialType: pulumi.String(\"iam_user\"),\n\t\t\tPolicyDocument: pulumi.String(`{\n \"Version\": \"2012-10-17\",\n \"Statement\": [\n {\n \"Effect\": \"Allow\",\n \"Action\": \"iam:*\",\n \"Resource\": \"*\"\n }\n ]\n}\n`),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.aws.SecretBackend;\nimport com.pulumi.vault.aws.SecretBackendArgs;\nimport com.pulumi.vault.aws.SecretBackendRole;\nimport com.pulumi.vault.aws.SecretBackendRoleArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var aws = new SecretBackend(\"aws\", SecretBackendArgs.builder() \n .accessKey(\"AKIA.....\")\n .secretKey(\"AWS secret key\")\n .build());\n\n var role = new SecretBackendRole(\"role\", SecretBackendRoleArgs.builder() \n .backend(aws.path())\n .credentialType(\"iam_user\")\n .policyDocument(\"\"\"\n{\n \"Version\": \"2012-10-17\",\n \"Statement\": [\n {\n \"Effect\": \"Allow\",\n \"Action\": \"iam:*\",\n \"Resource\": \"*\"\n }\n ]\n}\n \"\"\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n aws:\n type: vault:aws:SecretBackend\n properties:\n accessKey: AKIA.....\n secretKey: AWS secret key\n role:\n type: vault:aws:SecretBackendRole\n properties:\n backend: ${aws.path}\n credentialType: iam_user\n policyDocument: |\n {\n \"Version\": \"2012-10-17\",\n \"Statement\": [\n {\n \"Effect\": \"Allow\",\n \"Action\": \"iam:*\",\n \"Resource\": \"*\"\n }\n ]\n }\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nAWS secret backend roles can be imported using the `path`, e.g.\n\n```sh\n $ pulumi import vault:aws/secretBackendRole:SecretBackendRole role aws/roles/deploy\n```\n ",
"properties": {
"backend": {
"type": "string",
@@ -10679,7 +7808,7 @@
}
},
"vault:aws/secretBackendStaticRole:SecretBackendStaticRole": {
- "description": "{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst aws = new vault.aws.SecretBackend(\"aws\", {\n path: \"my-aws\",\n description: \"Obtain AWS credentials.\",\n});\nconst role = new vault.aws.SecretBackendStaticRole(\"role\", {\n backend: aws.path,\n username: \"my-test-user\",\n rotationPeriod: 3600,\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\naws = vault.aws.SecretBackend(\"aws\",\n path=\"my-aws\",\n description=\"Obtain AWS credentials.\")\nrole = vault.aws.SecretBackendStaticRole(\"role\",\n backend=aws.path,\n username=\"my-test-user\",\n rotation_period=3600)\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var aws = new Vault.Aws.SecretBackend(\"aws\", new()\n {\n Path = \"my-aws\",\n Description = \"Obtain AWS credentials.\",\n });\n\n var role = new Vault.Aws.SecretBackendStaticRole(\"role\", new()\n {\n Backend = aws.Path,\n Username = \"my-test-user\",\n RotationPeriod = 3600,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/aws\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\taws, err := aws.NewSecretBackend(ctx, \"aws\", \u0026aws.SecretBackendArgs{\n\t\t\tPath: pulumi.String(\"my-aws\"),\n\t\t\tDescription: pulumi.String(\"Obtain AWS credentials.\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = aws.NewSecretBackendStaticRole(ctx, \"role\", \u0026aws.SecretBackendStaticRoleArgs{\n\t\t\tBackend: aws.Path,\n\t\t\tUsername: pulumi.String(\"my-test-user\"),\n\t\t\tRotationPeriod: pulumi.Int(3600),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.aws.SecretBackend;\nimport com.pulumi.vault.aws.SecretBackendArgs;\nimport com.pulumi.vault.aws.SecretBackendStaticRole;\nimport com.pulumi.vault.aws.SecretBackendStaticRoleArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var aws = new SecretBackend(\"aws\", SecretBackendArgs.builder() \n .path(\"my-aws\")\n .description(\"Obtain AWS credentials.\")\n .build());\n\n var role = new SecretBackendStaticRole(\"role\", SecretBackendStaticRoleArgs.builder() \n .backend(aws.path())\n .username(\"my-test-user\")\n .rotationPeriod(\"3600\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n aws:\n type: vault:aws:SecretBackend\n properties:\n path: my-aws\n description: Obtain AWS credentials.\n role:\n type: vault:aws:SecretBackendStaticRole\n properties:\n backend: ${aws.path}\n username: my-test-user\n rotationPeriod: 3600\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nAWS secret backend static role can be imported using the full path to the role of the form`\u003cmount_path\u003e/static-roles/\u003crole_name\u003e` e.g.\n\n```sh\n $ pulumi import vault:aws/secretBackendStaticRole:SecretBackendStaticRole role aws/static-roles/example-role\n```\n\n ",
+ "description": "{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst aws = new vault.aws.SecretBackend(\"aws\", {\n path: \"my-aws\",\n description: \"Obtain AWS credentials.\",\n});\nconst role = new vault.aws.SecretBackendStaticRole(\"role\", {\n backend: aws.path,\n username: \"my-test-user\",\n rotationPeriod: 3600,\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\naws = vault.aws.SecretBackend(\"aws\",\n path=\"my-aws\",\n description=\"Obtain AWS credentials.\")\nrole = vault.aws.SecretBackendStaticRole(\"role\",\n backend=aws.path,\n username=\"my-test-user\",\n rotation_period=3600)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var aws = new Vault.Aws.SecretBackend(\"aws\", new()\n {\n Path = \"my-aws\",\n Description = \"Obtain AWS credentials.\",\n });\n\n var role = new Vault.Aws.SecretBackendStaticRole(\"role\", new()\n {\n Backend = aws.Path,\n Username = \"my-test-user\",\n RotationPeriod = 3600,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/aws\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\taws, err := aws.NewSecretBackend(ctx, \"aws\", \u0026aws.SecretBackendArgs{\n\t\t\tPath: pulumi.String(\"my-aws\"),\n\t\t\tDescription: pulumi.String(\"Obtain AWS credentials.\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = aws.NewSecretBackendStaticRole(ctx, \"role\", \u0026aws.SecretBackendStaticRoleArgs{\n\t\t\tBackend: aws.Path,\n\t\t\tUsername: pulumi.String(\"my-test-user\"),\n\t\t\tRotationPeriod: pulumi.Int(3600),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.aws.SecretBackend;\nimport com.pulumi.vault.aws.SecretBackendArgs;\nimport com.pulumi.vault.aws.SecretBackendStaticRole;\nimport com.pulumi.vault.aws.SecretBackendStaticRoleArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var aws = new SecretBackend(\"aws\", SecretBackendArgs.builder() \n .path(\"my-aws\")\n .description(\"Obtain AWS credentials.\")\n .build());\n\n var role = new SecretBackendStaticRole(\"role\", SecretBackendStaticRoleArgs.builder() \n .backend(aws.path())\n .username(\"my-test-user\")\n .rotationPeriod(\"3600\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n aws:\n type: vault:aws:SecretBackend\n properties:\n path: my-aws\n description: Obtain AWS credentials.\n role:\n type: vault:aws:SecretBackendStaticRole\n properties:\n backend: ${aws.path}\n username: my-test-user\n rotationPeriod: '3600'\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nAWS secret backend static role can be imported using the full path to the role of the form`\u003cmount_path\u003e/static-roles/\u003crole_name\u003e` e.g.\n\n```sh\n $ pulumi import vault:aws/secretBackendStaticRole:SecretBackendStaticRole role aws/static-roles/example-role\n```\n ",
"properties": {
"backend": {
"type": "string",
@@ -10767,7 +7896,7 @@
}
},
"vault:azure/authBackendConfig:AuthBackendConfig": {
- "description": "{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst exampleAuthBackend = new vault.AuthBackend(\"exampleAuthBackend\", {type: \"azure\"});\nconst exampleAuthBackendConfig = new vault.azure.AuthBackendConfig(\"exampleAuthBackendConfig\", {\n backend: exampleAuthBackend.path,\n tenantId: \"11111111-2222-3333-4444-555555555555\",\n clientId: \"11111111-2222-3333-4444-555555555555\",\n clientSecret: \"01234567890123456789\",\n resource: \"https://vault.hashicorp.com\",\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nexample_auth_backend = vault.AuthBackend(\"exampleAuthBackend\", type=\"azure\")\nexample_auth_backend_config = vault.azure.AuthBackendConfig(\"exampleAuthBackendConfig\",\n backend=example_auth_backend.path,\n tenant_id=\"11111111-2222-3333-4444-555555555555\",\n client_id=\"11111111-2222-3333-4444-555555555555\",\n client_secret=\"01234567890123456789\",\n resource=\"https://vault.hashicorp.com\")\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var exampleAuthBackend = new Vault.AuthBackend(\"exampleAuthBackend\", new()\n {\n Type = \"azure\",\n });\n\n var exampleAuthBackendConfig = new Vault.Azure.AuthBackendConfig(\"exampleAuthBackendConfig\", new()\n {\n Backend = exampleAuthBackend.Path,\n TenantId = \"11111111-2222-3333-4444-555555555555\",\n ClientId = \"11111111-2222-3333-4444-555555555555\",\n ClientSecret = \"01234567890123456789\",\n Resource = \"https://vault.hashicorp.com\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault\"\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/azure\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texampleAuthBackend, err := vault.NewAuthBackend(ctx, \"exampleAuthBackend\", \u0026vault.AuthBackendArgs{\n\t\t\tType: pulumi.String(\"azure\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = azure.NewAuthBackendConfig(ctx, \"exampleAuthBackendConfig\", \u0026azure.AuthBackendConfigArgs{\n\t\t\tBackend: exampleAuthBackend.Path,\n\t\t\tTenantId: pulumi.String(\"11111111-2222-3333-4444-555555555555\"),\n\t\t\tClientId: pulumi.String(\"11111111-2222-3333-4444-555555555555\"),\n\t\t\tClientSecret: pulumi.String(\"01234567890123456789\"),\n\t\t\tResource: pulumi.String(\"https://vault.hashicorp.com\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.AuthBackend;\nimport com.pulumi.vault.AuthBackendArgs;\nimport com.pulumi.vault.azure.AuthBackendConfig;\nimport com.pulumi.vault.azure.AuthBackendConfigArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var exampleAuthBackend = new AuthBackend(\"exampleAuthBackend\", AuthBackendArgs.builder() \n .type(\"azure\")\n .build());\n\n var exampleAuthBackendConfig = new AuthBackendConfig(\"exampleAuthBackendConfig\", AuthBackendConfigArgs.builder() \n .backend(exampleAuthBackend.path())\n .tenantId(\"11111111-2222-3333-4444-555555555555\")\n .clientId(\"11111111-2222-3333-4444-555555555555\")\n .clientSecret(\"01234567890123456789\")\n .resource(\"https://vault.hashicorp.com\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n exampleAuthBackend:\n type: vault:AuthBackend\n properties:\n type: azure\n exampleAuthBackendConfig:\n type: vault:azure:AuthBackendConfig\n properties:\n backend: ${exampleAuthBackend.path}\n tenantId: 11111111-2222-3333-4444-555555555555\n clientId: 11111111-2222-3333-4444-555555555555\n clientSecret: 01234567890123456789\n resource: https://vault.hashicorp.com\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nAzure auth backends can be imported using `auth/`, the `backend` path, and `/config` e.g.\n\n```sh\n $ pulumi import vault:azure/authBackendConfig:AuthBackendConfig example auth/azure/config\n```\n\n ",
+ "description": "{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst exampleAuthBackend = new vault.AuthBackend(\"exampleAuthBackend\", {type: \"azure\"});\nconst exampleAuthBackendConfig = new vault.azure.AuthBackendConfig(\"exampleAuthBackendConfig\", {\n backend: exampleAuthBackend.path,\n tenantId: \"11111111-2222-3333-4444-555555555555\",\n clientId: \"11111111-2222-3333-4444-555555555555\",\n clientSecret: \"01234567890123456789\",\n resource: \"https://vault.hashicorp.com\",\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nexample_auth_backend = vault.AuthBackend(\"exampleAuthBackend\", type=\"azure\")\nexample_auth_backend_config = vault.azure.AuthBackendConfig(\"exampleAuthBackendConfig\",\n backend=example_auth_backend.path,\n tenant_id=\"11111111-2222-3333-4444-555555555555\",\n client_id=\"11111111-2222-3333-4444-555555555555\",\n client_secret=\"01234567890123456789\",\n resource=\"https://vault.hashicorp.com\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var exampleAuthBackend = new Vault.AuthBackend(\"exampleAuthBackend\", new()\n {\n Type = \"azure\",\n });\n\n var exampleAuthBackendConfig = new Vault.Azure.AuthBackendConfig(\"exampleAuthBackendConfig\", new()\n {\n Backend = exampleAuthBackend.Path,\n TenantId = \"11111111-2222-3333-4444-555555555555\",\n ClientId = \"11111111-2222-3333-4444-555555555555\",\n ClientSecret = \"01234567890123456789\",\n Resource = \"https://vault.hashicorp.com\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault\"\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/azure\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texampleAuthBackend, err := vault.NewAuthBackend(ctx, \"exampleAuthBackend\", \u0026vault.AuthBackendArgs{\n\t\t\tType: pulumi.String(\"azure\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = azure.NewAuthBackendConfig(ctx, \"exampleAuthBackendConfig\", \u0026azure.AuthBackendConfigArgs{\n\t\t\tBackend: exampleAuthBackend.Path,\n\t\t\tTenantId: pulumi.String(\"11111111-2222-3333-4444-555555555555\"),\n\t\t\tClientId: pulumi.String(\"11111111-2222-3333-4444-555555555555\"),\n\t\t\tClientSecret: pulumi.String(\"01234567890123456789\"),\n\t\t\tResource: pulumi.String(\"https://vault.hashicorp.com\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.AuthBackend;\nimport com.pulumi.vault.AuthBackendArgs;\nimport com.pulumi.vault.azure.AuthBackendConfig;\nimport com.pulumi.vault.azure.AuthBackendConfigArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var exampleAuthBackend = new AuthBackend(\"exampleAuthBackend\", AuthBackendArgs.builder() \n .type(\"azure\")\n .build());\n\n var exampleAuthBackendConfig = new AuthBackendConfig(\"exampleAuthBackendConfig\", AuthBackendConfigArgs.builder() \n .backend(exampleAuthBackend.path())\n .tenantId(\"11111111-2222-3333-4444-555555555555\")\n .clientId(\"11111111-2222-3333-4444-555555555555\")\n .clientSecret(\"01234567890123456789\")\n .resource(\"https://vault.hashicorp.com\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n exampleAuthBackend:\n type: vault:AuthBackend\n properties:\n type: azure\n exampleAuthBackendConfig:\n type: vault:azure:AuthBackendConfig\n properties:\n backend: ${exampleAuthBackend.path}\n tenantId: 11111111-2222-3333-4444-555555555555\n clientId: 11111111-2222-3333-4444-555555555555\n clientSecret: '01234567890123456789'\n resource: https://vault.hashicorp.com\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nAzure auth backends can be imported using `auth/`, the `backend` path, and `/config` e.g.\n\n```sh\n $ pulumi import vault:azure/authBackendConfig:AuthBackendConfig example auth/azure/config\n```\n ",
"properties": {
"backend": {
"type": "string",
@@ -10885,7 +8014,7 @@
}
},
"vault:azure/authBackendRole:AuthBackendRole": {
- "description": "Manages an Azure auth backend role in a Vault server. Roles constrain the\ninstances or principals that can perform the login operation against the\nbackend. See the [Vault\ndocumentation](https://www.vaultproject.io/docs/auth/azure.html) for more\ninformation.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst azure = new vault.AuthBackend(\"azure\", {type: \"azure\"});\nconst example = new vault.azure.AuthBackendRole(\"example\", {\n backend: azure.path,\n role: \"test-role\",\n boundSubscriptionIds: [\"11111111-2222-3333-4444-555555555555\"],\n boundResourceGroups: [\"123456789012\"],\n tokenTtl: 60,\n tokenMaxTtl: 120,\n tokenPolicies: [\n \"default\",\n \"dev\",\n \"prod\",\n ],\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nazure = vault.AuthBackend(\"azure\", type=\"azure\")\nexample = vault.azure.AuthBackendRole(\"example\",\n backend=azure.path,\n role=\"test-role\",\n bound_subscription_ids=[\"11111111-2222-3333-4444-555555555555\"],\n bound_resource_groups=[\"123456789012\"],\n token_ttl=60,\n token_max_ttl=120,\n token_policies=[\n \"default\",\n \"dev\",\n \"prod\",\n ])\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var azure = new Vault.AuthBackend(\"azure\", new()\n {\n Type = \"azure\",\n });\n\n var example = new Vault.Azure.AuthBackendRole(\"example\", new()\n {\n Backend = azure.Path,\n Role = \"test-role\",\n BoundSubscriptionIds = new[]\n {\n \"11111111-2222-3333-4444-555555555555\",\n },\n BoundResourceGroups = new[]\n {\n \"123456789012\",\n },\n TokenTtl = 60,\n TokenMaxTtl = 120,\n TokenPolicies = new[]\n {\n \"default\",\n \"dev\",\n \"prod\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault\"\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/azure\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tazure, err := vault.NewAuthBackend(ctx, \"azure\", \u0026vault.AuthBackendArgs{\n\t\t\tType: pulumi.String(\"azure\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = azure.NewAuthBackendRole(ctx, \"example\", \u0026azure.AuthBackendRoleArgs{\n\t\t\tBackend: azure.Path,\n\t\t\tRole: pulumi.String(\"test-role\"),\n\t\t\tBoundSubscriptionIds: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"11111111-2222-3333-4444-555555555555\"),\n\t\t\t},\n\t\t\tBoundResourceGroups: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"123456789012\"),\n\t\t\t},\n\t\t\tTokenTtl: pulumi.Int(60),\n\t\t\tTokenMaxTtl: pulumi.Int(120),\n\t\t\tTokenPolicies: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"default\"),\n\t\t\t\tpulumi.String(\"dev\"),\n\t\t\t\tpulumi.String(\"prod\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.AuthBackend;\nimport com.pulumi.vault.AuthBackendArgs;\nimport com.pulumi.vault.azure.AuthBackendRole;\nimport com.pulumi.vault.azure.AuthBackendRoleArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var azure = new AuthBackend(\"azure\", AuthBackendArgs.builder() \n .type(\"azure\")\n .build());\n\n var example = new AuthBackendRole(\"example\", AuthBackendRoleArgs.builder() \n .backend(azure.path())\n .role(\"test-role\")\n .boundSubscriptionIds(\"11111111-2222-3333-4444-555555555555\")\n .boundResourceGroups(\"123456789012\")\n .tokenTtl(60)\n .tokenMaxTtl(120)\n .tokenPolicies( \n \"default\",\n \"dev\",\n \"prod\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n azure:\n type: vault:AuthBackend\n properties:\n type: azure\n example:\n type: vault:azure:AuthBackendRole\n properties:\n backend: ${azure.path}\n role: test-role\n boundSubscriptionIds:\n - 11111111-2222-3333-4444-555555555555\n boundResourceGroups:\n - 123456789012\n tokenTtl: 60\n tokenMaxTtl: 120\n tokenPolicies:\n - default\n - dev\n - prod\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nAzure auth backend roles can be imported using `auth/`, the `backend` path, `/role/`, and the `role` name e.g.\n\n```sh\n $ pulumi import vault:azure/authBackendRole:AuthBackendRole example auth/azure/role/test-role\n```\n\n ",
+ "description": "Manages an Azure auth backend role in a Vault server. Roles constrain the\ninstances or principals that can perform the login operation against the\nbackend. See the [Vault\ndocumentation](https://www.vaultproject.io/docs/auth/azure.html) for more\ninformation.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst azure = new vault.AuthBackend(\"azure\", {type: \"azure\"});\nconst example = new vault.azure.AuthBackendRole(\"example\", {\n backend: azure.path,\n role: \"test-role\",\n boundSubscriptionIds: [\"11111111-2222-3333-4444-555555555555\"],\n boundResourceGroups: [\"123456789012\"],\n tokenTtl: 60,\n tokenMaxTtl: 120,\n tokenPolicies: [\n \"default\",\n \"dev\",\n \"prod\",\n ],\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nazure = vault.AuthBackend(\"azure\", type=\"azure\")\nexample = vault.azure.AuthBackendRole(\"example\",\n backend=azure.path,\n role=\"test-role\",\n bound_subscription_ids=[\"11111111-2222-3333-4444-555555555555\"],\n bound_resource_groups=[\"123456789012\"],\n token_ttl=60,\n token_max_ttl=120,\n token_policies=[\n \"default\",\n \"dev\",\n \"prod\",\n ])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var azure = new Vault.AuthBackend(\"azure\", new()\n {\n Type = \"azure\",\n });\n\n var example = new Vault.Azure.AuthBackendRole(\"example\", new()\n {\n Backend = azure.Path,\n Role = \"test-role\",\n BoundSubscriptionIds = new[]\n {\n \"11111111-2222-3333-4444-555555555555\",\n },\n BoundResourceGroups = new[]\n {\n \"123456789012\",\n },\n TokenTtl = 60,\n TokenMaxTtl = 120,\n TokenPolicies = new[]\n {\n \"default\",\n \"dev\",\n \"prod\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault\"\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/azure\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tazure, err := vault.NewAuthBackend(ctx, \"azure\", \u0026vault.AuthBackendArgs{\n\t\t\tType: pulumi.String(\"azure\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = azure.NewAuthBackendRole(ctx, \"example\", \u0026azure.AuthBackendRoleArgs{\n\t\t\tBackend: azure.Path,\n\t\t\tRole: pulumi.String(\"test-role\"),\n\t\t\tBoundSubscriptionIds: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"11111111-2222-3333-4444-555555555555\"),\n\t\t\t},\n\t\t\tBoundResourceGroups: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"123456789012\"),\n\t\t\t},\n\t\t\tTokenTtl: pulumi.Int(60),\n\t\t\tTokenMaxTtl: pulumi.Int(120),\n\t\t\tTokenPolicies: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"default\"),\n\t\t\t\tpulumi.String(\"dev\"),\n\t\t\t\tpulumi.String(\"prod\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.AuthBackend;\nimport com.pulumi.vault.AuthBackendArgs;\nimport com.pulumi.vault.azure.AuthBackendRole;\nimport com.pulumi.vault.azure.AuthBackendRoleArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var azure = new AuthBackend(\"azure\", AuthBackendArgs.builder() \n .type(\"azure\")\n .build());\n\n var example = new AuthBackendRole(\"example\", AuthBackendRoleArgs.builder() \n .backend(azure.path())\n .role(\"test-role\")\n .boundSubscriptionIds(\"11111111-2222-3333-4444-555555555555\")\n .boundResourceGroups(\"123456789012\")\n .tokenTtl(60)\n .tokenMaxTtl(120)\n .tokenPolicies( \n \"default\",\n \"dev\",\n \"prod\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n azure:\n type: vault:AuthBackend\n properties:\n type: azure\n example:\n type: vault:azure:AuthBackendRole\n properties:\n backend: ${azure.path}\n role: test-role\n boundSubscriptionIds:\n - 11111111-2222-3333-4444-555555555555\n boundResourceGroups:\n - '123456789012'\n tokenTtl: 60\n tokenMaxTtl: 120\n tokenPolicies:\n - default\n - dev\n - prod\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nAzure auth backend roles can be imported using `auth/`, the `backend` path, `/role/`, and the `role` name e.g.\n\n```sh\n $ pulumi import vault:azure/authBackendRole:AuthBackendRole example auth/azure/role/test-role\n```\n ",
"properties": {
"backend": {
"type": "string",
@@ -11198,16 +8327,16 @@
}
},
"vault:azure/backend:Backend": {
- "description": "{{% examples %}}\n## Example Usage\n{{% example %}}\n### *Vault-1.9 And Above*\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst azure = new vault.azure.Backend(\"azure\", {\n clientId: \"11111111-2222-3333-4444-333333333333\",\n clientSecret: \"12345678901234567890\",\n environment: \"AzurePublicCloud\",\n subscriptionId: \"11111111-2222-3333-4444-111111111111\",\n tenantId: \"11111111-2222-3333-4444-222222222222\",\n useMicrosoftGraphApi: true,\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nazure = vault.azure.Backend(\"azure\",\n client_id=\"11111111-2222-3333-4444-333333333333\",\n client_secret=\"12345678901234567890\",\n environment=\"AzurePublicCloud\",\n subscription_id=\"11111111-2222-3333-4444-111111111111\",\n tenant_id=\"11111111-2222-3333-4444-222222222222\",\n use_microsoft_graph_api=True)\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var azure = new Vault.Azure.Backend(\"azure\", new()\n {\n ClientId = \"11111111-2222-3333-4444-333333333333\",\n ClientSecret = \"12345678901234567890\",\n Environment = \"AzurePublicCloud\",\n SubscriptionId = \"11111111-2222-3333-4444-111111111111\",\n TenantId = \"11111111-2222-3333-4444-222222222222\",\n UseMicrosoftGraphApi = true,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/azure\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := azure.NewBackend(ctx, \"azure\", \u0026azure.BackendArgs{\n\t\t\tClientId: pulumi.String(\"11111111-2222-3333-4444-333333333333\"),\n\t\t\tClientSecret: pulumi.String(\"12345678901234567890\"),\n\t\t\tEnvironment: pulumi.String(\"AzurePublicCloud\"),\n\t\t\tSubscriptionId: pulumi.String(\"11111111-2222-3333-4444-111111111111\"),\n\t\t\tTenantId: pulumi.String(\"11111111-2222-3333-4444-222222222222\"),\n\t\t\tUseMicrosoftGraphApi: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.azure.Backend;\nimport com.pulumi.vault.azure.BackendArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var azure = new Backend(\"azure\", BackendArgs.builder() \n .clientId(\"11111111-2222-3333-4444-333333333333\")\n .clientSecret(\"12345678901234567890\")\n .environment(\"AzurePublicCloud\")\n .subscriptionId(\"11111111-2222-3333-4444-111111111111\")\n .tenantId(\"11111111-2222-3333-4444-222222222222\")\n .useMicrosoftGraphApi(true)\n .build());\n\n }\n}\n```\n```yaml\nresources:\n azure:\n type: vault:azure:Backend\n properties:\n clientId: 11111111-2222-3333-4444-333333333333\n clientSecret: 12345678901234567890\n environment: AzurePublicCloud\n subscriptionId: 11111111-2222-3333-4444-111111111111\n tenantId: 11111111-2222-3333-4444-222222222222\n useMicrosoftGraphApi: true\n```\n\n{{% /example %}}\n{{% example %}}\n### *Vault-1.8 And Below*\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst azure = new vault.azure.Backend(\"azure\", {\n clientId: \"11111111-2222-3333-4444-333333333333\",\n clientSecret: \"12345678901234567890\",\n environment: \"AzurePublicCloud\",\n subscriptionId: \"11111111-2222-3333-4444-111111111111\",\n tenantId: \"11111111-2222-3333-4444-222222222222\",\n useMicrosoftGraphApi: false,\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nazure = vault.azure.Backend(\"azure\",\n client_id=\"11111111-2222-3333-4444-333333333333\",\n client_secret=\"12345678901234567890\",\n environment=\"AzurePublicCloud\",\n subscription_id=\"11111111-2222-3333-4444-111111111111\",\n tenant_id=\"11111111-2222-3333-4444-222222222222\",\n use_microsoft_graph_api=False)\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var azure = new Vault.Azure.Backend(\"azure\", new()\n {\n ClientId = \"11111111-2222-3333-4444-333333333333\",\n ClientSecret = \"12345678901234567890\",\n Environment = \"AzurePublicCloud\",\n SubscriptionId = \"11111111-2222-3333-4444-111111111111\",\n TenantId = \"11111111-2222-3333-4444-222222222222\",\n UseMicrosoftGraphApi = false,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/azure\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := azure.NewBackend(ctx, \"azure\", \u0026azure.BackendArgs{\n\t\t\tClientId: pulumi.String(\"11111111-2222-3333-4444-333333333333\"),\n\t\t\tClientSecret: pulumi.String(\"12345678901234567890\"),\n\t\t\tEnvironment: pulumi.String(\"AzurePublicCloud\"),\n\t\t\tSubscriptionId: pulumi.String(\"11111111-2222-3333-4444-111111111111\"),\n\t\t\tTenantId: pulumi.String(\"11111111-2222-3333-4444-222222222222\"),\n\t\t\tUseMicrosoftGraphApi: pulumi.Bool(false),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.azure.Backend;\nimport com.pulumi.vault.azure.BackendArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var azure = new Backend(\"azure\", BackendArgs.builder() \n .clientId(\"11111111-2222-3333-4444-333333333333\")\n .clientSecret(\"12345678901234567890\")\n .environment(\"AzurePublicCloud\")\n .subscriptionId(\"11111111-2222-3333-4444-111111111111\")\n .tenantId(\"11111111-2222-3333-4444-222222222222\")\n .useMicrosoftGraphApi(false)\n .build());\n\n }\n}\n```\n```yaml\nresources:\n azure:\n type: vault:azure:Backend\n properties:\n clientId: 11111111-2222-3333-4444-333333333333\n clientSecret: 12345678901234567890\n environment: AzurePublicCloud\n subscriptionId: 11111111-2222-3333-4444-111111111111\n tenantId: 11111111-2222-3333-4444-222222222222\n useMicrosoftGraphApi: false\n```\n{{% /example %}}\n{{% /examples %}}",
+ "description": "{{% examples %}}\n## Example Usage\n{{% example %}}\n### *Vault-1.9 And Above*\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst azure = new vault.azure.Backend(\"azure\", {\n clientId: \"11111111-2222-3333-4444-333333333333\",\n clientSecret: \"12345678901234567890\",\n environment: \"AzurePublicCloud\",\n subscriptionId: \"11111111-2222-3333-4444-111111111111\",\n tenantId: \"11111111-2222-3333-4444-222222222222\",\n useMicrosoftGraphApi: true,\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nazure = vault.azure.Backend(\"azure\",\n client_id=\"11111111-2222-3333-4444-333333333333\",\n client_secret=\"12345678901234567890\",\n environment=\"AzurePublicCloud\",\n subscription_id=\"11111111-2222-3333-4444-111111111111\",\n tenant_id=\"11111111-2222-3333-4444-222222222222\",\n use_microsoft_graph_api=True)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var azure = new Vault.Azure.Backend(\"azure\", new()\n {\n ClientId = \"11111111-2222-3333-4444-333333333333\",\n ClientSecret = \"12345678901234567890\",\n Environment = \"AzurePublicCloud\",\n SubscriptionId = \"11111111-2222-3333-4444-111111111111\",\n TenantId = \"11111111-2222-3333-4444-222222222222\",\n UseMicrosoftGraphApi = true,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/azure\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := azure.NewBackend(ctx, \"azure\", \u0026azure.BackendArgs{\n\t\t\tClientId: pulumi.String(\"11111111-2222-3333-4444-333333333333\"),\n\t\t\tClientSecret: pulumi.String(\"12345678901234567890\"),\n\t\t\tEnvironment: pulumi.String(\"AzurePublicCloud\"),\n\t\t\tSubscriptionId: pulumi.String(\"11111111-2222-3333-4444-111111111111\"),\n\t\t\tTenantId: pulumi.String(\"11111111-2222-3333-4444-222222222222\"),\n\t\t\tUseMicrosoftGraphApi: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.azure.Backend;\nimport com.pulumi.vault.azure.BackendArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var azure = new Backend(\"azure\", BackendArgs.builder() \n .clientId(\"11111111-2222-3333-4444-333333333333\")\n .clientSecret(\"12345678901234567890\")\n .environment(\"AzurePublicCloud\")\n .subscriptionId(\"11111111-2222-3333-4444-111111111111\")\n .tenantId(\"11111111-2222-3333-4444-222222222222\")\n .useMicrosoftGraphApi(true)\n .build());\n\n }\n}\n```\n```yaml\nresources:\n azure:\n type: vault:azure:Backend\n properties:\n clientId: 11111111-2222-3333-4444-333333333333\n clientSecret: '12345678901234567890'\n environment: AzurePublicCloud\n subscriptionId: 11111111-2222-3333-4444-111111111111\n tenantId: 11111111-2222-3333-4444-222222222222\n useMicrosoftGraphApi: true\n```\n\n{{% /example %}}\n{{% example %}}\n### *Vault-1.8 And Below*\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst azure = new vault.azure.Backend(\"azure\", {\n clientId: \"11111111-2222-3333-4444-333333333333\",\n clientSecret: \"12345678901234567890\",\n environment: \"AzurePublicCloud\",\n subscriptionId: \"11111111-2222-3333-4444-111111111111\",\n tenantId: \"11111111-2222-3333-4444-222222222222\",\n useMicrosoftGraphApi: false,\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nazure = vault.azure.Backend(\"azure\",\n client_id=\"11111111-2222-3333-4444-333333333333\",\n client_secret=\"12345678901234567890\",\n environment=\"AzurePublicCloud\",\n subscription_id=\"11111111-2222-3333-4444-111111111111\",\n tenant_id=\"11111111-2222-3333-4444-222222222222\",\n use_microsoft_graph_api=False)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var azure = new Vault.Azure.Backend(\"azure\", new()\n {\n ClientId = \"11111111-2222-3333-4444-333333333333\",\n ClientSecret = \"12345678901234567890\",\n Environment = \"AzurePublicCloud\",\n SubscriptionId = \"11111111-2222-3333-4444-111111111111\",\n TenantId = \"11111111-2222-3333-4444-222222222222\",\n UseMicrosoftGraphApi = false,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/azure\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := azure.NewBackend(ctx, \"azure\", \u0026azure.BackendArgs{\n\t\t\tClientId: pulumi.String(\"11111111-2222-3333-4444-333333333333\"),\n\t\t\tClientSecret: pulumi.String(\"12345678901234567890\"),\n\t\t\tEnvironment: pulumi.String(\"AzurePublicCloud\"),\n\t\t\tSubscriptionId: pulumi.String(\"11111111-2222-3333-4444-111111111111\"),\n\t\t\tTenantId: pulumi.String(\"11111111-2222-3333-4444-222222222222\"),\n\t\t\tUseMicrosoftGraphApi: pulumi.Bool(false),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.azure.Backend;\nimport com.pulumi.vault.azure.BackendArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var azure = new Backend(\"azure\", BackendArgs.builder() \n .clientId(\"11111111-2222-3333-4444-333333333333\")\n .clientSecret(\"12345678901234567890\")\n .environment(\"AzurePublicCloud\")\n .subscriptionId(\"11111111-2222-3333-4444-111111111111\")\n .tenantId(\"11111111-2222-3333-4444-222222222222\")\n .useMicrosoftGraphApi(false)\n .build());\n\n }\n}\n```\n```yaml\nresources:\n azure:\n type: vault:azure:Backend\n properties:\n clientId: 11111111-2222-3333-4444-333333333333\n clientSecret: '12345678901234567890'\n environment: AzurePublicCloud\n subscriptionId: 11111111-2222-3333-4444-111111111111\n tenantId: 11111111-2222-3333-4444-222222222222\n useMicrosoftGraphApi: false\n```\n{{% /example %}}\n{{% /examples %}}",
"properties": {
"clientId": {
"type": "string",
- "description": "- The OAuth2 client id to connect to Azure.\n",
+ "description": "The OAuth2 client id to connect to Azure.\n",
"secret": true
},
"clientSecret": {
"type": "string",
- "description": "- The OAuth2 client secret to connect to Azure.\n",
+ "description": "The OAuth2 client secret to connect to Azure.\n",
"secret": true
},
"description": {
@@ -11220,7 +8349,7 @@
},
"environment": {
"type": "string",
- "description": "- The Azure environment.\n"
+ "description": "The Azure environment.\n"
},
"namespace": {
"type": "string",
@@ -11228,21 +8357,21 @@
},
"path": {
"type": "string",
- "description": "- The unique path this backend should be mounted at. Defaults to `azure`.\n"
+ "description": "The unique path this backend should be mounted at. Defaults to `azure`.\n"
},
"subscriptionId": {
"type": "string",
- "description": "- The subscription id for the Azure Active Directory.\n",
+ "description": "The subscription id for the Azure Active Directory.\n",
"secret": true
},
"tenantId": {
"type": "string",
- "description": "- The tenant id for the Azure Active Directory.\n",
+ "description": "The tenant id for the Azure Active Directory.\n",
"secret": true
},
"useMicrosoftGraphApi": {
"type": "boolean",
- "description": "- Indicates whether the secrets engine should use \nthe Microsoft Graph API. This parameter has been deprecated and will be ignored in `vault-1.12+`.\nFor more information, please refer to the [Vault docs](https://developer.hashicorp.com/vault/api-docs/secret/azure#use_microsoft_graph_api)\n"
+ "description": "Indicates whether the secrets engine should use \nthe Microsoft Graph API. This parameter has been deprecated and will be ignored in `vault-1.12+`.\nFor more information, please refer to the [Vault docs](https://developer.hashicorp.com/vault/api-docs/secret/azure#use_microsoft_graph_api)\n"
}
},
"required": [
@@ -11253,12 +8382,12 @@
"inputProperties": {
"clientId": {
"type": "string",
- "description": "- The OAuth2 client id to connect to Azure.\n",
+ "description": "The OAuth2 client id to connect to Azure.\n",
"secret": true
},
"clientSecret": {
"type": "string",
- "description": "- The OAuth2 client secret to connect to Azure.\n",
+ "description": "The OAuth2 client secret to connect to Azure.\n",
"secret": true
},
"description": {
@@ -11271,7 +8400,7 @@
},
"environment": {
"type": "string",
- "description": "- The Azure environment.\n"
+ "description": "The Azure environment.\n"
},
"namespace": {
"type": "string",
@@ -11280,22 +8409,22 @@
},
"path": {
"type": "string",
- "description": "- The unique path this backend should be mounted at. Defaults to `azure`.\n"
+ "description": "The unique path this backend should be mounted at. Defaults to `azure`.\n"
},
"subscriptionId": {
"type": "string",
- "description": "- The subscription id for the Azure Active Directory.\n",
+ "description": "The subscription id for the Azure Active Directory.\n",
"secret": true,
"willReplaceOnChanges": true
},
"tenantId": {
"type": "string",
- "description": "- The tenant id for the Azure Active Directory.\n",
+ "description": "The tenant id for the Azure Active Directory.\n",
"secret": true
},
"useMicrosoftGraphApi": {
"type": "boolean",
- "description": "- Indicates whether the secrets engine should use \nthe Microsoft Graph API. This parameter has been deprecated and will be ignored in `vault-1.12+`.\nFor more information, please refer to the [Vault docs](https://developer.hashicorp.com/vault/api-docs/secret/azure#use_microsoft_graph_api)\n"
+ "description": "Indicates whether the secrets engine should use \nthe Microsoft Graph API. This parameter has been deprecated and will be ignored in `vault-1.12+`.\nFor more information, please refer to the [Vault docs](https://developer.hashicorp.com/vault/api-docs/secret/azure#use_microsoft_graph_api)\n"
}
},
"requiredInputs": [
@@ -11307,12 +8436,12 @@
"properties": {
"clientId": {
"type": "string",
- "description": "- The OAuth2 client id to connect to Azure.\n",
+ "description": "The OAuth2 client id to connect to Azure.\n",
"secret": true
},
"clientSecret": {
"type": "string",
- "description": "- The OAuth2 client secret to connect to Azure.\n",
+ "description": "The OAuth2 client secret to connect to Azure.\n",
"secret": true
},
"description": {
@@ -11325,7 +8454,7 @@
},
"environment": {
"type": "string",
- "description": "- The Azure environment.\n"
+ "description": "The Azure environment.\n"
},
"namespace": {
"type": "string",
@@ -11334,29 +8463,29 @@
},
"path": {
"type": "string",
- "description": "- The unique path this backend should be mounted at. Defaults to `azure`.\n"
+ "description": "The unique path this backend should be mounted at. Defaults to `azure`.\n"
},
"subscriptionId": {
"type": "string",
- "description": "- The subscription id for the Azure Active Directory.\n",
+ "description": "The subscription id for the Azure Active Directory.\n",
"secret": true,
"willReplaceOnChanges": true
},
"tenantId": {
"type": "string",
- "description": "- The tenant id for the Azure Active Directory.\n",
+ "description": "The tenant id for the Azure Active Directory.\n",
"secret": true
},
"useMicrosoftGraphApi": {
"type": "boolean",
- "description": "- Indicates whether the secrets engine should use \nthe Microsoft Graph API. This parameter has been deprecated and will be ignored in `vault-1.12+`.\nFor more information, please refer to the [Vault docs](https://developer.hashicorp.com/vault/api-docs/secret/azure#use_microsoft_graph_api)\n"
+ "description": "Indicates whether the secrets engine should use \nthe Microsoft Graph API. This parameter has been deprecated and will be ignored in `vault-1.12+`.\nFor more information, please refer to the [Vault docs](https://developer.hashicorp.com/vault/api-docs/secret/azure#use_microsoft_graph_api)\n"
}
},
"type": "object"
}
},
"vault:azure/backendRole:BackendRole": {
- "description": "{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst azure = new vault.azure.Backend(\"azure\", {\n subscriptionId: _var.subscription_id,\n tenantId: _var.tenant_id,\n clientSecret: _var.client_secret,\n clientId: _var.client_id,\n});\nconst generatedRole = new vault.azure.BackendRole(\"generatedRole\", {\n backend: azure.path,\n role: \"generated_role\",\n ttl: \"300\",\n maxTtl: \"600\",\n azureRoles: [{\n roleName: \"Reader\",\n scope: `/subscriptions/${_var.subscription_id}/resourceGroups/azure-vault-group`,\n }],\n});\nconst existingObjectId = new vault.azure.BackendRole(\"existingObjectId\", {\n backend: azure.path,\n role: \"existing_object_id\",\n applicationObjectId: \"11111111-2222-3333-4444-44444444444\",\n ttl: \"300\",\n maxTtl: \"600\",\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nazure = vault.azure.Backend(\"azure\",\n subscription_id=var[\"subscription_id\"],\n tenant_id=var[\"tenant_id\"],\n client_secret=var[\"client_secret\"],\n client_id=var[\"client_id\"])\ngenerated_role = vault.azure.BackendRole(\"generatedRole\",\n backend=azure.path,\n role=\"generated_role\",\n ttl=\"300\",\n max_ttl=\"600\",\n azure_roles=[vault.azure.BackendRoleAzureRoleArgs(\n role_name=\"Reader\",\n scope=f\"/subscriptions/{var['subscription_id']}/resourceGroups/azure-vault-group\",\n )])\nexisting_object_id = vault.azure.BackendRole(\"existingObjectId\",\n backend=azure.path,\n role=\"existing_object_id\",\n application_object_id=\"11111111-2222-3333-4444-44444444444\",\n ttl=\"300\",\n max_ttl=\"600\")\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var azure = new Vault.Azure.Backend(\"azure\", new()\n {\n SubscriptionId = @var.Subscription_id,\n TenantId = @var.Tenant_id,\n ClientSecret = @var.Client_secret,\n ClientId = @var.Client_id,\n });\n\n var generatedRole = new Vault.Azure.BackendRole(\"generatedRole\", new()\n {\n Backend = azure.Path,\n Role = \"generated_role\",\n Ttl = \"300\",\n MaxTtl = \"600\",\n AzureRoles = new[]\n {\n new Vault.Azure.Inputs.BackendRoleAzureRoleArgs\n {\n RoleName = \"Reader\",\n Scope = $\"/subscriptions/{@var.Subscription_id}/resourceGroups/azure-vault-group\",\n },\n },\n });\n\n var existingObjectId = new Vault.Azure.BackendRole(\"existingObjectId\", new()\n {\n Backend = azure.Path,\n Role = \"existing_object_id\",\n ApplicationObjectId = \"11111111-2222-3333-4444-44444444444\",\n Ttl = \"300\",\n MaxTtl = \"600\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/azure\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tazure, err := azure.NewBackend(ctx, \"azure\", \u0026azure.BackendArgs{\n\t\t\tSubscriptionId: pulumi.Any(_var.Subscription_id),\n\t\t\tTenantId: pulumi.Any(_var.Tenant_id),\n\t\t\tClientSecret: pulumi.Any(_var.Client_secret),\n\t\t\tClientId: pulumi.Any(_var.Client_id),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = azure.NewBackendRole(ctx, \"generatedRole\", \u0026azure.BackendRoleArgs{\n\t\t\tBackend: azure.Path,\n\t\t\tRole: pulumi.String(\"generated_role\"),\n\t\t\tTtl: pulumi.String(\"300\"),\n\t\t\tMaxTtl: pulumi.String(\"600\"),\n\t\t\tAzureRoles: azure.BackendRoleAzureRoleArray{\n\t\t\t\t\u0026azure.BackendRoleAzureRoleArgs{\n\t\t\t\t\tRoleName: pulumi.String(\"Reader\"),\n\t\t\t\t\tScope: pulumi.String(fmt.Sprintf(\"/subscriptions/%v/resourceGroups/azure-vault-group\", _var.Subscription_id)),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = azure.NewBackendRole(ctx, \"existingObjectId\", \u0026azure.BackendRoleArgs{\n\t\t\tBackend: azure.Path,\n\t\t\tRole: pulumi.String(\"existing_object_id\"),\n\t\t\tApplicationObjectId: pulumi.String(\"11111111-2222-3333-4444-44444444444\"),\n\t\t\tTtl: pulumi.String(\"300\"),\n\t\t\tMaxTtl: pulumi.String(\"600\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.azure.Backend;\nimport com.pulumi.vault.azure.BackendArgs;\nimport com.pulumi.vault.azure.BackendRole;\nimport com.pulumi.vault.azure.BackendRoleArgs;\nimport com.pulumi.vault.azure.inputs.BackendRoleAzureRoleArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var azure = new Backend(\"azure\", BackendArgs.builder() \n .subscriptionId(var_.subscription_id())\n .tenantId(var_.tenant_id())\n .clientSecret(var_.client_secret())\n .clientId(var_.client_id())\n .build());\n\n var generatedRole = new BackendRole(\"generatedRole\", BackendRoleArgs.builder() \n .backend(azure.path())\n .role(\"generated_role\")\n .ttl(300)\n .maxTtl(600)\n .azureRoles(BackendRoleAzureRoleArgs.builder()\n .roleName(\"Reader\")\n .scope(String.format(\"/subscriptions/%s/resourceGroups/azure-vault-group\", var_.subscription_id()))\n .build())\n .build());\n\n var existingObjectId = new BackendRole(\"existingObjectId\", BackendRoleArgs.builder() \n .backend(azure.path())\n .role(\"existing_object_id\")\n .applicationObjectId(\"11111111-2222-3333-4444-44444444444\")\n .ttl(300)\n .maxTtl(600)\n .build());\n\n }\n}\n```\n```yaml\nresources:\n azure:\n type: vault:azure:Backend\n properties:\n subscriptionId: ${var.subscription_id}\n tenantId: ${var.tenant_id}\n clientSecret: ${var.client_secret}\n clientId: ${var.client_id}\n generatedRole:\n type: vault:azure:BackendRole\n properties:\n backend: ${azure.path}\n role: generated_role\n ttl: 300\n maxTtl: 600\n azureRoles:\n - roleName: Reader\n scope: /subscriptions/${var.subscription_id}/resourceGroups/azure-vault-group\n existingObjectId:\n type: vault:azure:BackendRole\n properties:\n backend: ${azure.path}\n role: existing_object_id\n applicationObjectId: 11111111-2222-3333-4444-44444444444\n ttl: 300\n maxTtl: 600\n```\n{{% /example %}}\n{{% /examples %}}",
+ "description": "{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst azure = new vault.azure.Backend(\"azure\", {\n subscriptionId: _var.subscription_id,\n tenantId: _var.tenant_id,\n clientSecret: _var.client_secret,\n clientId: _var.client_id,\n});\nconst generatedRole = new vault.azure.BackendRole(\"generatedRole\", {\n backend: azure.path,\n role: \"generated_role\",\n ttl: \"300\",\n maxTtl: \"600\",\n azureRoles: [{\n roleName: \"Reader\",\n scope: `/subscriptions/${_var.subscription_id}/resourceGroups/azure-vault-group`,\n }],\n});\nconst existingObjectId = new vault.azure.BackendRole(\"existingObjectId\", {\n backend: azure.path,\n role: \"existing_object_id\",\n applicationObjectId: \"11111111-2222-3333-4444-44444444444\",\n ttl: \"300\",\n maxTtl: \"600\",\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nazure = vault.azure.Backend(\"azure\",\n subscription_id=var[\"subscription_id\"],\n tenant_id=var[\"tenant_id\"],\n client_secret=var[\"client_secret\"],\n client_id=var[\"client_id\"])\ngenerated_role = vault.azure.BackendRole(\"generatedRole\",\n backend=azure.path,\n role=\"generated_role\",\n ttl=\"300\",\n max_ttl=\"600\",\n azure_roles=[vault.azure.BackendRoleAzureRoleArgs(\n role_name=\"Reader\",\n scope=f\"/subscriptions/{var['subscription_id']}/resourceGroups/azure-vault-group\",\n )])\nexisting_object_id = vault.azure.BackendRole(\"existingObjectId\",\n backend=azure.path,\n role=\"existing_object_id\",\n application_object_id=\"11111111-2222-3333-4444-44444444444\",\n ttl=\"300\",\n max_ttl=\"600\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var azure = new Vault.Azure.Backend(\"azure\", new()\n {\n SubscriptionId = @var.Subscription_id,\n TenantId = @var.Tenant_id,\n ClientSecret = @var.Client_secret,\n ClientId = @var.Client_id,\n });\n\n var generatedRole = new Vault.Azure.BackendRole(\"generatedRole\", new()\n {\n Backend = azure.Path,\n Role = \"generated_role\",\n Ttl = \"300\",\n MaxTtl = \"600\",\n AzureRoles = new[]\n {\n new Vault.Azure.Inputs.BackendRoleAzureRoleArgs\n {\n RoleName = \"Reader\",\n Scope = $\"/subscriptions/{@var.Subscription_id}/resourceGroups/azure-vault-group\",\n },\n },\n });\n\n var existingObjectId = new Vault.Azure.BackendRole(\"existingObjectId\", new()\n {\n Backend = azure.Path,\n Role = \"existing_object_id\",\n ApplicationObjectId = \"11111111-2222-3333-4444-44444444444\",\n Ttl = \"300\",\n MaxTtl = \"600\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/azure\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tazure, err := azure.NewBackend(ctx, \"azure\", \u0026azure.BackendArgs{\n\t\t\tSubscriptionId: pulumi.Any(_var.Subscription_id),\n\t\t\tTenantId: pulumi.Any(_var.Tenant_id),\n\t\t\tClientSecret: pulumi.Any(_var.Client_secret),\n\t\t\tClientId: pulumi.Any(_var.Client_id),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = azure.NewBackendRole(ctx, \"generatedRole\", \u0026azure.BackendRoleArgs{\n\t\t\tBackend: azure.Path,\n\t\t\tRole: pulumi.String(\"generated_role\"),\n\t\t\tTtl: pulumi.String(\"300\"),\n\t\t\tMaxTtl: pulumi.String(\"600\"),\n\t\t\tAzureRoles: azure.BackendRoleAzureRoleArray{\n\t\t\t\t\u0026azure.BackendRoleAzureRoleArgs{\n\t\t\t\t\tRoleName: pulumi.String(\"Reader\"),\n\t\t\t\t\tScope: pulumi.String(fmt.Sprintf(\"/subscriptions/%v/resourceGroups/azure-vault-group\", _var.Subscription_id)),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = azure.NewBackendRole(ctx, \"existingObjectId\", \u0026azure.BackendRoleArgs{\n\t\t\tBackend: azure.Path,\n\t\t\tRole: pulumi.String(\"existing_object_id\"),\n\t\t\tApplicationObjectId: pulumi.String(\"11111111-2222-3333-4444-44444444444\"),\n\t\t\tTtl: pulumi.String(\"300\"),\n\t\t\tMaxTtl: pulumi.String(\"600\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.azure.Backend;\nimport com.pulumi.vault.azure.BackendArgs;\nimport com.pulumi.vault.azure.BackendRole;\nimport com.pulumi.vault.azure.BackendRoleArgs;\nimport com.pulumi.vault.azure.inputs.BackendRoleAzureRoleArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var azure = new Backend(\"azure\", BackendArgs.builder() \n .subscriptionId(var_.subscription_id())\n .tenantId(var_.tenant_id())\n .clientSecret(var_.client_secret())\n .clientId(var_.client_id())\n .build());\n\n var generatedRole = new BackendRole(\"generatedRole\", BackendRoleArgs.builder() \n .backend(azure.path())\n .role(\"generated_role\")\n .ttl(300)\n .maxTtl(600)\n .azureRoles(BackendRoleAzureRoleArgs.builder()\n .roleName(\"Reader\")\n .scope(String.format(\"/subscriptions/%s/resourceGroups/azure-vault-group\", var_.subscription_id()))\n .build())\n .build());\n\n var existingObjectId = new BackendRole(\"existingObjectId\", BackendRoleArgs.builder() \n .backend(azure.path())\n .role(\"existing_object_id\")\n .applicationObjectId(\"11111111-2222-3333-4444-44444444444\")\n .ttl(300)\n .maxTtl(600)\n .build());\n\n }\n}\n```\n```yaml\nresources:\n azure:\n type: vault:azure:Backend\n properties:\n subscriptionId: ${var.subscription_id}\n tenantId: ${var.tenant_id}\n clientSecret: ${var.client_secret}\n clientId: ${var.client_id}\n generatedRole:\n type: vault:azure:BackendRole\n properties:\n backend: ${azure.path}\n role: generated_role\n ttl: 300\n maxTtl: 600\n azureRoles:\n - roleName: Reader\n scope: /subscriptions/${var.subscription_id}/resourceGroups/azure-vault-group\n existingObjectId:\n type: vault:azure:BackendRole\n properties:\n backend: ${azure.path}\n role: existing_object_id\n applicationObjectId: 11111111-2222-3333-4444-44444444444\n ttl: 300\n maxTtl: 600\n```\n{{% /example %}}\n{{% /examples %}}",
"properties": {
"applicationObjectId": {
"type": "string",
@@ -11520,7 +8649,7 @@
}
},
"vault:consul/secretBackend:SecretBackend": {
- "description": "{{% examples %}}\n## Example Usage\n{{% example %}}\n### Creating a standard backend resource:\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst test = new vault.consul.SecretBackend(\"test\", {\n address: \"127.0.0.1:8500\",\n description: \"Manages the Consul backend\",\n path: \"consul\",\n token: \"4240861b-ce3d-8530-115a-521ff070dd29\",\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\ntest = vault.consul.SecretBackend(\"test\",\n address=\"127.0.0.1:8500\",\n description=\"Manages the Consul backend\",\n path=\"consul\",\n token=\"4240861b-ce3d-8530-115a-521ff070dd29\")\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var test = new Vault.Consul.SecretBackend(\"test\", new()\n {\n Address = \"127.0.0.1:8500\",\n Description = \"Manages the Consul backend\",\n Path = \"consul\",\n Token = \"4240861b-ce3d-8530-115a-521ff070dd29\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/consul\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := consul.NewSecretBackend(ctx, \"test\", \u0026consul.SecretBackendArgs{\n\t\t\tAddress: pulumi.String(\"127.0.0.1:8500\"),\n\t\t\tDescription: pulumi.String(\"Manages the Consul backend\"),\n\t\t\tPath: pulumi.String(\"consul\"),\n\t\t\tToken: pulumi.String(\"4240861b-ce3d-8530-115a-521ff070dd29\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.consul.SecretBackend;\nimport com.pulumi.vault.consul.SecretBackendArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var test = new SecretBackend(\"test\", SecretBackendArgs.builder() \n .address(\"127.0.0.1:8500\")\n .description(\"Manages the Consul backend\")\n .path(\"consul\")\n .token(\"4240861b-ce3d-8530-115a-521ff070dd29\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n test:\n type: vault:consul:SecretBackend\n properties:\n address: 127.0.0.1:8500\n description: Manages the Consul backend\n path: consul\n token: 4240861b-ce3d-8530-115a-521ff070dd29\n```\n{{% /example %}}\n{{% example %}}\n### Creating a backend resource to bootstrap a new Consul instance:\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst test = new vault.consul.SecretBackend(\"test\", {\n address: \"127.0.0.1:8500\",\n bootstrap: true,\n description: \"Bootstrap the Consul backend\",\n path: \"consul\",\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\ntest = vault.consul.SecretBackend(\"test\",\n address=\"127.0.0.1:8500\",\n bootstrap=True,\n description=\"Bootstrap the Consul backend\",\n path=\"consul\")\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var test = new Vault.Consul.SecretBackend(\"test\", new()\n {\n Address = \"127.0.0.1:8500\",\n Bootstrap = true,\n Description = \"Bootstrap the Consul backend\",\n Path = \"consul\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/consul\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := consul.NewSecretBackend(ctx, \"test\", \u0026consul.SecretBackendArgs{\n\t\t\tAddress: pulumi.String(\"127.0.0.1:8500\"),\n\t\t\tBootstrap: pulumi.Bool(true),\n\t\t\tDescription: pulumi.String(\"Bootstrap the Consul backend\"),\n\t\t\tPath: pulumi.String(\"consul\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.consul.SecretBackend;\nimport com.pulumi.vault.consul.SecretBackendArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var test = new SecretBackend(\"test\", SecretBackendArgs.builder() \n .address(\"127.0.0.1:8500\")\n .bootstrap(true)\n .description(\"Bootstrap the Consul backend\")\n .path(\"consul\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n test:\n type: vault:consul:SecretBackend\n properties:\n address: 127.0.0.1:8500\n bootstrap: true\n description: Bootstrap the Consul backend\n path: consul\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nConsul secret backends can be imported using the `path`, e.g.\n\n```sh\n $ pulumi import vault:consul/secretBackend:SecretBackend example consul\n```\n\n ",
+ "description": "{{% examples %}}\n## Example Usage\n{{% example %}}\n### Creating a standard backend resource:\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst test = new vault.consul.SecretBackend(\"test\", {\n address: \"127.0.0.1:8500\",\n description: \"Manages the Consul backend\",\n path: \"consul\",\n token: \"4240861b-ce3d-8530-115a-521ff070dd29\",\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\ntest = vault.consul.SecretBackend(\"test\",\n address=\"127.0.0.1:8500\",\n description=\"Manages the Consul backend\",\n path=\"consul\",\n token=\"4240861b-ce3d-8530-115a-521ff070dd29\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var test = new Vault.Consul.SecretBackend(\"test\", new()\n {\n Address = \"127.0.0.1:8500\",\n Description = \"Manages the Consul backend\",\n Path = \"consul\",\n Token = \"4240861b-ce3d-8530-115a-521ff070dd29\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/consul\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := consul.NewSecretBackend(ctx, \"test\", \u0026consul.SecretBackendArgs{\n\t\t\tAddress: pulumi.String(\"127.0.0.1:8500\"),\n\t\t\tDescription: pulumi.String(\"Manages the Consul backend\"),\n\t\t\tPath: pulumi.String(\"consul\"),\n\t\t\tToken: pulumi.String(\"4240861b-ce3d-8530-115a-521ff070dd29\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.consul.SecretBackend;\nimport com.pulumi.vault.consul.SecretBackendArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var test = new SecretBackend(\"test\", SecretBackendArgs.builder() \n .address(\"127.0.0.1:8500\")\n .description(\"Manages the Consul backend\")\n .path(\"consul\")\n .token(\"4240861b-ce3d-8530-115a-521ff070dd29\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n test:\n type: vault:consul:SecretBackend\n properties:\n address: 127.0.0.1:8500\n description: Manages the Consul backend\n path: consul\n token: 4240861b-ce3d-8530-115a-521ff070dd29\n```\n{{% /example %}}\n{{% example %}}\n### Creating a backend resource to bootstrap a new Consul instance:\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst test = new vault.consul.SecretBackend(\"test\", {\n address: \"127.0.0.1:8500\",\n bootstrap: true,\n description: \"Bootstrap the Consul backend\",\n path: \"consul\",\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\ntest = vault.consul.SecretBackend(\"test\",\n address=\"127.0.0.1:8500\",\n bootstrap=True,\n description=\"Bootstrap the Consul backend\",\n path=\"consul\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var test = new Vault.Consul.SecretBackend(\"test\", new()\n {\n Address = \"127.0.0.1:8500\",\n Bootstrap = true,\n Description = \"Bootstrap the Consul backend\",\n Path = \"consul\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/consul\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := consul.NewSecretBackend(ctx, \"test\", \u0026consul.SecretBackendArgs{\n\t\t\tAddress: pulumi.String(\"127.0.0.1:8500\"),\n\t\t\tBootstrap: pulumi.Bool(true),\n\t\t\tDescription: pulumi.String(\"Bootstrap the Consul backend\"),\n\t\t\tPath: pulumi.String(\"consul\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.consul.SecretBackend;\nimport com.pulumi.vault.consul.SecretBackendArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var test = new SecretBackend(\"test\", SecretBackendArgs.builder() \n .address(\"127.0.0.1:8500\")\n .bootstrap(true)\n .description(\"Bootstrap the Consul backend\")\n .path(\"consul\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n test:\n type: vault:consul:SecretBackend\n properties:\n address: 127.0.0.1:8500\n bootstrap: true\n description: Bootstrap the Consul backend\n path: consul\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nConsul secret backends can be imported using the `path`, e.g.\n\n```sh\n $ pulumi import vault:consul/secretBackend:SecretBackend example consul\n```\n ",
"properties": {
"address": {
"type": "string",
@@ -11528,7 +8657,7 @@
},
"bootstrap": {
"type": "boolean",
- "description": "Denotes that the resource is used to bootstrap the Consul ACL system.\n"
+ "description": "Denotes that the resource is used to bootstrap the Consul ACL system.\n\n\u003e **Important** When `bootstrap` is true, Vault will attempt to bootstrap the Consul server. The token returned from\nthis operation will only ever be known to Vault. If the resource is ever destroyed, the bootstrap token will be lost\nand a [Consul reset may be required.](https://learn.hashicorp.com/tutorials/consul/access-control-troubleshoot#reset-the-acl-system)\n"
},
"caCert": {
"type": "string",
@@ -11578,7 +8707,7 @@
},
"token": {
"type": "string",
- "description": "The Consul management token this backend should use to issue new tokens. This field is required\nwhen `bootstrap` is false.\n",
+ "description": "Specifies the Consul token to use when managing or issuing new tokens.\n",
"secret": true
}
},
@@ -11592,7 +8721,7 @@
},
"bootstrap": {
"type": "boolean",
- "description": "Denotes that the resource is used to bootstrap the Consul ACL system.\n"
+ "description": "Denotes that the resource is used to bootstrap the Consul ACL system.\n\n\u003e **Important** When `bootstrap` is true, Vault will attempt to bootstrap the Consul server. The token returned from\nthis operation will only ever be known to Vault. If the resource is ever destroyed, the bootstrap token will be lost\nand a [Consul reset may be required.](https://learn.hashicorp.com/tutorials/consul/access-control-troubleshoot#reset-the-acl-system)\n"
},
"caCert": {
"type": "string",
@@ -11644,7 +8773,7 @@
},
"token": {
"type": "string",
- "description": "The Consul management token this backend should use to issue new tokens. This field is required\nwhen `bootstrap` is false.\n",
+ "description": "Specifies the Consul token to use when managing or issuing new tokens.\n",
"secret": true
}
},
@@ -11660,7 +8789,7 @@
},
"bootstrap": {
"type": "boolean",
- "description": "Denotes that the resource is used to bootstrap the Consul ACL system.\n"
+ "description": "Denotes that the resource is used to bootstrap the Consul ACL system.\n\n\u003e **Important** When `bootstrap` is true, Vault will attempt to bootstrap the Consul server. The token returned from\nthis operation will only ever be known to Vault. If the resource is ever destroyed, the bootstrap token will be lost\nand a [Consul reset may be required.](https://learn.hashicorp.com/tutorials/consul/access-control-troubleshoot#reset-the-acl-system)\n"
},
"caCert": {
"type": "string",
@@ -11712,7 +8841,7 @@
},
"token": {
"type": "string",
- "description": "The Consul management token this backend should use to issue new tokens. This field is required\nwhen `bootstrap` is false.\n",
+ "description": "Specifies the Consul token to use when managing or issuing new tokens.\n",
"secret": true
}
},
@@ -11720,7 +8849,7 @@
}
},
"vault:consul/secretBackendRole:SecretBackendRole": {
- "description": "Manages a Consul secrets role for a Consul secrets engine in Vault. Consul secret backends can then issue Consul tokens.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst test = new vault.consul.SecretBackend(\"test\", {\n path: \"consul\",\n description: \"Manages the Consul backend\",\n address: \"127.0.0.1:8500\",\n token: \"4240861b-ce3d-8530-115a-521ff070dd29\",\n});\nconst example = new vault.consul.SecretBackendRole(\"example\", {\n backend: test.path,\n consulPolicies: [\"example-policy\"],\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\ntest = vault.consul.SecretBackend(\"test\",\n path=\"consul\",\n description=\"Manages the Consul backend\",\n address=\"127.0.0.1:8500\",\n token=\"4240861b-ce3d-8530-115a-521ff070dd29\")\nexample = vault.consul.SecretBackendRole(\"example\",\n backend=test.path,\n consul_policies=[\"example-policy\"])\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var test = new Vault.Consul.SecretBackend(\"test\", new()\n {\n Path = \"consul\",\n Description = \"Manages the Consul backend\",\n Address = \"127.0.0.1:8500\",\n Token = \"4240861b-ce3d-8530-115a-521ff070dd29\",\n });\n\n var example = new Vault.Consul.SecretBackendRole(\"example\", new()\n {\n Backend = test.Path,\n ConsulPolicies = new[]\n {\n \"example-policy\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/consul\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\ttest, err := consul.NewSecretBackend(ctx, \"test\", \u0026consul.SecretBackendArgs{\n\t\t\tPath: pulumi.String(\"consul\"),\n\t\t\tDescription: pulumi.String(\"Manages the Consul backend\"),\n\t\t\tAddress: pulumi.String(\"127.0.0.1:8500\"),\n\t\t\tToken: pulumi.String(\"4240861b-ce3d-8530-115a-521ff070dd29\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = consul.NewSecretBackendRole(ctx, \"example\", \u0026consul.SecretBackendRoleArgs{\n\t\t\tBackend: test.Path,\n\t\t\tConsulPolicies: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"example-policy\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.consul.SecretBackend;\nimport com.pulumi.vault.consul.SecretBackendArgs;\nimport com.pulumi.vault.consul.SecretBackendRole;\nimport com.pulumi.vault.consul.SecretBackendRoleArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var test = new SecretBackend(\"test\", SecretBackendArgs.builder() \n .path(\"consul\")\n .description(\"Manages the Consul backend\")\n .address(\"127.0.0.1:8500\")\n .token(\"4240861b-ce3d-8530-115a-521ff070dd29\")\n .build());\n\n var example = new SecretBackendRole(\"example\", SecretBackendRoleArgs.builder() \n .backend(test.path())\n .consulPolicies(\"example-policy\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n test:\n type: vault:consul:SecretBackend\n properties:\n path: consul\n description: Manages the Consul backend\n address: 127.0.0.1:8500\n token: 4240861b-ce3d-8530-115a-521ff070dd29\n example:\n type: vault:consul:SecretBackendRole\n properties:\n backend: ${test.path}\n consulPolicies:\n - example-policy\n```\n{{% /example %}}\n{{% /examples %}}\n## Note About Required Arguments\n\n*At least one* of the four arguments `consul_policies`, `consul_roles`, `service_identities`, or\n`node_identities` is required for a token. If desired, any combination of the four arguments up-to and\nincluding all four, is valid.\n\n\n## Import\n\nConsul secret backend roles can be imported using the `backend`, `/roles/`, and the `name` e.g.\n\n```sh\n $ pulumi import vault:consul/secretBackendRole:SecretBackendRole example consul/roles/my-role\n```\n\n ",
+ "description": "Manages a Consul secrets role for a Consul secrets engine in Vault. Consul secret backends can then issue Consul tokens.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst test = new vault.consul.SecretBackend(\"test\", {\n path: \"consul\",\n description: \"Manages the Consul backend\",\n address: \"127.0.0.1:8500\",\n token: \"4240861b-ce3d-8530-115a-521ff070dd29\",\n});\nconst example = new vault.consul.SecretBackendRole(\"example\", {\n backend: test.path,\n consulPolicies: [\"example-policy\"],\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\ntest = vault.consul.SecretBackend(\"test\",\n path=\"consul\",\n description=\"Manages the Consul backend\",\n address=\"127.0.0.1:8500\",\n token=\"4240861b-ce3d-8530-115a-521ff070dd29\")\nexample = vault.consul.SecretBackendRole(\"example\",\n backend=test.path,\n consul_policies=[\"example-policy\"])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var test = new Vault.Consul.SecretBackend(\"test\", new()\n {\n Path = \"consul\",\n Description = \"Manages the Consul backend\",\n Address = \"127.0.0.1:8500\",\n Token = \"4240861b-ce3d-8530-115a-521ff070dd29\",\n });\n\n var example = new Vault.Consul.SecretBackendRole(\"example\", new()\n {\n Backend = test.Path,\n ConsulPolicies = new[]\n {\n \"example-policy\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/consul\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\ttest, err := consul.NewSecretBackend(ctx, \"test\", \u0026consul.SecretBackendArgs{\n\t\t\tPath: pulumi.String(\"consul\"),\n\t\t\tDescription: pulumi.String(\"Manages the Consul backend\"),\n\t\t\tAddress: pulumi.String(\"127.0.0.1:8500\"),\n\t\t\tToken: pulumi.String(\"4240861b-ce3d-8530-115a-521ff070dd29\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = consul.NewSecretBackendRole(ctx, \"example\", \u0026consul.SecretBackendRoleArgs{\n\t\t\tBackend: test.Path,\n\t\t\tConsulPolicies: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"example-policy\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.consul.SecretBackend;\nimport com.pulumi.vault.consul.SecretBackendArgs;\nimport com.pulumi.vault.consul.SecretBackendRole;\nimport com.pulumi.vault.consul.SecretBackendRoleArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var test = new SecretBackend(\"test\", SecretBackendArgs.builder() \n .path(\"consul\")\n .description(\"Manages the Consul backend\")\n .address(\"127.0.0.1:8500\")\n .token(\"4240861b-ce3d-8530-115a-521ff070dd29\")\n .build());\n\n var example = new SecretBackendRole(\"example\", SecretBackendRoleArgs.builder() \n .backend(test.path())\n .consulPolicies(\"example-policy\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n test:\n type: vault:consul:SecretBackend\n properties:\n path: consul\n description: Manages the Consul backend\n address: 127.0.0.1:8500\n token: 4240861b-ce3d-8530-115a-521ff070dd29\n example:\n type: vault:consul:SecretBackendRole\n properties:\n backend: ${test.path}\n consulPolicies:\n - example-policy\n```\n{{% /example %}}\n{{% /examples %}}\n## Note About Required Arguments\n\n*At least one* of the four arguments `consul_policies`, `consul_roles`, `service_identities`, or\n`node_identities` is required for a token. If desired, any combination of the four arguments up-to and\nincluding all four, is valid.\n\n\n## Import\n\nConsul secret backend roles can be imported using the `backend`, `/roles/`, and the `name` e.g.\n\n```sh\n $ pulumi import vault:consul/secretBackendRole:SecretBackendRole example consul/roles/my-role\n```\n ",
"properties": {
"backend": {
"type": "string",
@@ -11960,7 +9089,7 @@
}
},
"vault:database/secretBackendConnection:SecretBackendConnection": {
- "description": "{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst db = new vault.Mount(\"db\", {\n path: \"postgres\",\n type: \"database\",\n});\nconst postgres = new vault.database.SecretBackendConnection(\"postgres\", {\n backend: db.path,\n allowedRoles: [\n \"dev\",\n \"prod\",\n ],\n postgresql: {\n connectionUrl: \"postgres://username:password@host:port/database\",\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\ndb = vault.Mount(\"db\",\n path=\"postgres\",\n type=\"database\")\npostgres = vault.database.SecretBackendConnection(\"postgres\",\n backend=db.path,\n allowed_roles=[\n \"dev\",\n \"prod\",\n ],\n postgresql=vault.database.SecretBackendConnectionPostgresqlArgs(\n connection_url=\"postgres://username:password@host:port/database\",\n ))\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var db = new Vault.Mount(\"db\", new()\n {\n Path = \"postgres\",\n Type = \"database\",\n });\n\n var postgres = new Vault.Database.SecretBackendConnection(\"postgres\", new()\n {\n Backend = db.Path,\n AllowedRoles = new[]\n {\n \"dev\",\n \"prod\",\n },\n Postgresql = new Vault.Database.Inputs.SecretBackendConnectionPostgresqlArgs\n {\n ConnectionUrl = \"postgres://username:password@host:port/database\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault\"\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/database\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tdb, err := vault.NewMount(ctx, \"db\", \u0026vault.MountArgs{\n\t\t\tPath: pulumi.String(\"postgres\"),\n\t\t\tType: pulumi.String(\"database\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = database.NewSecretBackendConnection(ctx, \"postgres\", \u0026database.SecretBackendConnectionArgs{\n\t\t\tBackend: db.Path,\n\t\t\tAllowedRoles: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"dev\"),\n\t\t\t\tpulumi.String(\"prod\"),\n\t\t\t},\n\t\t\tPostgresql: \u0026database.SecretBackendConnectionPostgresqlArgs{\n\t\t\t\tConnectionUrl: pulumi.String(\"postgres://username:password@host:port/database\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.Mount;\nimport com.pulumi.vault.MountArgs;\nimport com.pulumi.vault.database.SecretBackendConnection;\nimport com.pulumi.vault.database.SecretBackendConnectionArgs;\nimport com.pulumi.vault.database.inputs.SecretBackendConnectionPostgresqlArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var db = new Mount(\"db\", MountArgs.builder() \n .path(\"postgres\")\n .type(\"database\")\n .build());\n\n var postgres = new SecretBackendConnection(\"postgres\", SecretBackendConnectionArgs.builder() \n .backend(db.path())\n .allowedRoles( \n \"dev\",\n \"prod\")\n .postgresql(SecretBackendConnectionPostgresqlArgs.builder()\n .connectionUrl(\"postgres://username:password@host:port/database\")\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n db:\n type: vault:Mount\n properties:\n path: postgres\n type: database\n postgres:\n type: vault:database:SecretBackendConnection\n properties:\n backend: ${db.path}\n allowedRoles:\n - dev\n - prod\n postgresql:\n connectionUrl: postgres://username:password@host:port/database\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nDatabase secret backend connections can be imported using the `backend`, `/config/`, and the `name` e.g.\n\n```sh\n $ pulumi import vault:database/secretBackendConnection:SecretBackendConnection example postgres/config/postgres\n```\n\n ",
+ "description": "{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst db = new vault.Mount(\"db\", {\n path: \"postgres\",\n type: \"database\",\n});\nconst postgres = new vault.database.SecretBackendConnection(\"postgres\", {\n backend: db.path,\n allowedRoles: [\n \"dev\",\n \"prod\",\n ],\n postgresql: {\n connectionUrl: \"postgres://username:password@host:port/database\",\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\ndb = vault.Mount(\"db\",\n path=\"postgres\",\n type=\"database\")\npostgres = vault.database.SecretBackendConnection(\"postgres\",\n backend=db.path,\n allowed_roles=[\n \"dev\",\n \"prod\",\n ],\n postgresql=vault.database.SecretBackendConnectionPostgresqlArgs(\n connection_url=\"postgres://username:password@host:port/database\",\n ))\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var db = new Vault.Mount(\"db\", new()\n {\n Path = \"postgres\",\n Type = \"database\",\n });\n\n var postgres = new Vault.Database.SecretBackendConnection(\"postgres\", new()\n {\n Backend = db.Path,\n AllowedRoles = new[]\n {\n \"dev\",\n \"prod\",\n },\n Postgresql = new Vault.Database.Inputs.SecretBackendConnectionPostgresqlArgs\n {\n ConnectionUrl = \"postgres://username:password@host:port/database\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault\"\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/database\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tdb, err := vault.NewMount(ctx, \"db\", \u0026vault.MountArgs{\n\t\t\tPath: pulumi.String(\"postgres\"),\n\t\t\tType: pulumi.String(\"database\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = database.NewSecretBackendConnection(ctx, \"postgres\", \u0026database.SecretBackendConnectionArgs{\n\t\t\tBackend: db.Path,\n\t\t\tAllowedRoles: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"dev\"),\n\t\t\t\tpulumi.String(\"prod\"),\n\t\t\t},\n\t\t\tPostgresql: \u0026database.SecretBackendConnectionPostgresqlArgs{\n\t\t\t\tConnectionUrl: pulumi.String(\"postgres://username:password@host:port/database\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.Mount;\nimport com.pulumi.vault.MountArgs;\nimport com.pulumi.vault.database.SecretBackendConnection;\nimport com.pulumi.vault.database.SecretBackendConnectionArgs;\nimport com.pulumi.vault.database.inputs.SecretBackendConnectionPostgresqlArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var db = new Mount(\"db\", MountArgs.builder() \n .path(\"postgres\")\n .type(\"database\")\n .build());\n\n var postgres = new SecretBackendConnection(\"postgres\", SecretBackendConnectionArgs.builder() \n .backend(db.path())\n .allowedRoles( \n \"dev\",\n \"prod\")\n .postgresql(SecretBackendConnectionPostgresqlArgs.builder()\n .connectionUrl(\"postgres://username:password@host:port/database\")\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n db:\n type: vault:Mount\n properties:\n path: postgres\n type: database\n postgres:\n type: vault:database:SecretBackendConnection\n properties:\n backend: ${db.path}\n allowedRoles:\n - dev\n - prod\n postgresql:\n connectionUrl: postgres://username:password@host:port/database\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nDatabase secret backend connections can be imported using the `backend`, `/config/`, and the `name` e.g.\n\n```sh\n $ pulumi import vault:database/secretBackendConnection:SecretBackendConnection example postgres/config/postgres\n```\n ",
"properties": {
"allowedRoles": {
"type": "array",
@@ -12054,7 +9183,7 @@
},
"redisElasticache": {
"$ref": "#/types/vault:database/SecretBackendConnectionRedisElasticache:SecretBackendConnectionRedisElasticache",
- "description": "A nested block containing configuration options for Redis ElastiCache connections.\n"
+ "description": "A nested block containing configuration options for Redis ElastiCache connections.\n\nExactly one of the nested blocks of configuration options must be supplied.\n"
},
"redshift": {
"$ref": "#/types/vault:database/SecretBackendConnectionRedshift:SecretBackendConnectionRedshift",
@@ -12176,7 +9305,7 @@
},
"redisElasticache": {
"$ref": "#/types/vault:database/SecretBackendConnectionRedisElasticache:SecretBackendConnectionRedisElasticache",
- "description": "A nested block containing configuration options for Redis ElastiCache connections.\n"
+ "description": "A nested block containing configuration options for Redis ElastiCache connections.\n\nExactly one of the nested blocks of configuration options must be supplied.\n"
},
"redshift": {
"$ref": "#/types/vault:database/SecretBackendConnectionRedshift:SecretBackendConnectionRedshift",
@@ -12298,7 +9427,7 @@
},
"redisElasticache": {
"$ref": "#/types/vault:database/SecretBackendConnectionRedisElasticache:SecretBackendConnectionRedisElasticache",
- "description": "A nested block containing configuration options for Redis ElastiCache connections.\n"
+ "description": "A nested block containing configuration options for Redis ElastiCache connections.\n\nExactly one of the nested blocks of configuration options must be supplied.\n"
},
"redshift": {
"$ref": "#/types/vault:database/SecretBackendConnectionRedshift:SecretBackendConnectionRedshift",
@@ -12324,7 +9453,7 @@
}
},
"vault:database/secretBackendRole:SecretBackendRole": {
- "description": "{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst db = new vault.Mount(\"db\", {\n path: \"postgres\",\n type: \"database\",\n});\nconst postgres = new vault.database.SecretBackendConnection(\"postgres\", {\n backend: db.path,\n allowedRoles: [\n \"dev\",\n \"prod\",\n ],\n postgresql: {\n connectionUrl: \"postgres://username:password@host:port/database\",\n },\n});\nconst role = new vault.database.SecretBackendRole(\"role\", {\n backend: db.path,\n dbName: postgres.name,\n creationStatements: [\"CREATE ROLE \\\"{{name}}\\\" WITH LOGIN PASSWORD '{{password}}' VALID UNTIL '{{expiration}}';\"],\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\ndb = vault.Mount(\"db\",\n path=\"postgres\",\n type=\"database\")\npostgres = vault.database.SecretBackendConnection(\"postgres\",\n backend=db.path,\n allowed_roles=[\n \"dev\",\n \"prod\",\n ],\n postgresql=vault.database.SecretBackendConnectionPostgresqlArgs(\n connection_url=\"postgres://username:password@host:port/database\",\n ))\nrole = vault.database.SecretBackendRole(\"role\",\n backend=db.path,\n db_name=postgres.name,\n creation_statements=[\"CREATE ROLE \\\"{{name}}\\\" WITH LOGIN PASSWORD '{{password}}' VALID UNTIL '{{expiration}}';\"])\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var db = new Vault.Mount(\"db\", new()\n {\n Path = \"postgres\",\n Type = \"database\",\n });\n\n var postgres = new Vault.Database.SecretBackendConnection(\"postgres\", new()\n {\n Backend = db.Path,\n AllowedRoles = new[]\n {\n \"dev\",\n \"prod\",\n },\n Postgresql = new Vault.Database.Inputs.SecretBackendConnectionPostgresqlArgs\n {\n ConnectionUrl = \"postgres://username:password@host:port/database\",\n },\n });\n\n var role = new Vault.Database.SecretBackendRole(\"role\", new()\n {\n Backend = db.Path,\n DbName = postgres.Name,\n CreationStatements = new[]\n {\n \"CREATE ROLE \\\"{{name}}\\\" WITH LOGIN PASSWORD '{{password}}' VALID UNTIL '{{expiration}}';\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault\"\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/database\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tdb, err := vault.NewMount(ctx, \"db\", \u0026vault.MountArgs{\n\t\t\tPath: pulumi.String(\"postgres\"),\n\t\t\tType: pulumi.String(\"database\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tpostgres, err := database.NewSecretBackendConnection(ctx, \"postgres\", \u0026database.SecretBackendConnectionArgs{\n\t\t\tBackend: db.Path,\n\t\t\tAllowedRoles: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"dev\"),\n\t\t\t\tpulumi.String(\"prod\"),\n\t\t\t},\n\t\t\tPostgresql: \u0026database.SecretBackendConnectionPostgresqlArgs{\n\t\t\t\tConnectionUrl: pulumi.String(\"postgres://username:password@host:port/database\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = database.NewSecretBackendRole(ctx, \"role\", \u0026database.SecretBackendRoleArgs{\n\t\t\tBackend: db.Path,\n\t\t\tDbName: postgres.Name,\n\t\t\tCreationStatements: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"CREATE ROLE \\\"{{name}}\\\" WITH LOGIN PASSWORD '{{password}}' VALID UNTIL '{{expiration}}';\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.Mount;\nimport com.pulumi.vault.MountArgs;\nimport com.pulumi.vault.database.SecretBackendConnection;\nimport com.pulumi.vault.database.SecretBackendConnectionArgs;\nimport com.pulumi.vault.database.inputs.SecretBackendConnectionPostgresqlArgs;\nimport com.pulumi.vault.database.SecretBackendRole;\nimport com.pulumi.vault.database.SecretBackendRoleArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var db = new Mount(\"db\", MountArgs.builder() \n .path(\"postgres\")\n .type(\"database\")\n .build());\n\n var postgres = new SecretBackendConnection(\"postgres\", SecretBackendConnectionArgs.builder() \n .backend(db.path())\n .allowedRoles( \n \"dev\",\n \"prod\")\n .postgresql(SecretBackendConnectionPostgresqlArgs.builder()\n .connectionUrl(\"postgres://username:password@host:port/database\")\n .build())\n .build());\n\n var role = new SecretBackendRole(\"role\", SecretBackendRoleArgs.builder() \n .backend(db.path())\n .dbName(postgres.name())\n .creationStatements(\"CREATE ROLE \\\"{{name}}\\\" WITH LOGIN PASSWORD '{{password}}' VALID UNTIL '{{expiration}}';\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n db:\n type: vault:Mount\n properties:\n path: postgres\n type: database\n postgres:\n type: vault:database:SecretBackendConnection\n properties:\n backend: ${db.path}\n allowedRoles:\n - dev\n - prod\n postgresql:\n connectionUrl: postgres://username:password@host:port/database\n role:\n type: vault:database:SecretBackendRole\n properties:\n backend: ${db.path}\n dbName: ${postgres.name}\n creationStatements:\n - CREATE ROLE \"{{name}}\" WITH LOGIN PASSWORD '{{password}}' VALID UNTIL '{{expiration}}';\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nDatabase secret backend roles can be imported using the `backend`, `/roles/`, and the `name` e.g.\n\n```sh\n $ pulumi import vault:database/secretBackendRole:SecretBackendRole example postgres/roles/my-role\n```\n\n ",
+ "description": "{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst db = new vault.Mount(\"db\", {\n path: \"postgres\",\n type: \"database\",\n});\nconst postgres = new vault.database.SecretBackendConnection(\"postgres\", {\n backend: db.path,\n allowedRoles: [\n \"dev\",\n \"prod\",\n ],\n postgresql: {\n connectionUrl: \"postgres://username:password@host:port/database\",\n },\n});\nconst role = new vault.database.SecretBackendRole(\"role\", {\n backend: db.path,\n dbName: postgres.name,\n creationStatements: [\"CREATE ROLE \\\"{{name}}\\\" WITH LOGIN PASSWORD '{{password}}' VALID UNTIL '{{expiration}}';\"],\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\ndb = vault.Mount(\"db\",\n path=\"postgres\",\n type=\"database\")\npostgres = vault.database.SecretBackendConnection(\"postgres\",\n backend=db.path,\n allowed_roles=[\n \"dev\",\n \"prod\",\n ],\n postgresql=vault.database.SecretBackendConnectionPostgresqlArgs(\n connection_url=\"postgres://username:password@host:port/database\",\n ))\nrole = vault.database.SecretBackendRole(\"role\",\n backend=db.path,\n db_name=postgres.name,\n creation_statements=[\"CREATE ROLE \\\"{{name}}\\\" WITH LOGIN PASSWORD '{{password}}' VALID UNTIL '{{expiration}}';\"])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var db = new Vault.Mount(\"db\", new()\n {\n Path = \"postgres\",\n Type = \"database\",\n });\n\n var postgres = new Vault.Database.SecretBackendConnection(\"postgres\", new()\n {\n Backend = db.Path,\n AllowedRoles = new[]\n {\n \"dev\",\n \"prod\",\n },\n Postgresql = new Vault.Database.Inputs.SecretBackendConnectionPostgresqlArgs\n {\n ConnectionUrl = \"postgres://username:password@host:port/database\",\n },\n });\n\n var role = new Vault.Database.SecretBackendRole(\"role\", new()\n {\n Backend = db.Path,\n DbName = postgres.Name,\n CreationStatements = new[]\n {\n \"CREATE ROLE \\\"{{name}}\\\" WITH LOGIN PASSWORD '{{password}}' VALID UNTIL '{{expiration}}';\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault\"\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/database\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tdb, err := vault.NewMount(ctx, \"db\", \u0026vault.MountArgs{\n\t\t\tPath: pulumi.String(\"postgres\"),\n\t\t\tType: pulumi.String(\"database\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tpostgres, err := database.NewSecretBackendConnection(ctx, \"postgres\", \u0026database.SecretBackendConnectionArgs{\n\t\t\tBackend: db.Path,\n\t\t\tAllowedRoles: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"dev\"),\n\t\t\t\tpulumi.String(\"prod\"),\n\t\t\t},\n\t\t\tPostgresql: \u0026database.SecretBackendConnectionPostgresqlArgs{\n\t\t\t\tConnectionUrl: pulumi.String(\"postgres://username:password@host:port/database\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = database.NewSecretBackendRole(ctx, \"role\", \u0026database.SecretBackendRoleArgs{\n\t\t\tBackend: db.Path,\n\t\t\tDbName: postgres.Name,\n\t\t\tCreationStatements: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"CREATE ROLE \\\"{{name}}\\\" WITH LOGIN PASSWORD '{{password}}' VALID UNTIL '{{expiration}}';\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.Mount;\nimport com.pulumi.vault.MountArgs;\nimport com.pulumi.vault.database.SecretBackendConnection;\nimport com.pulumi.vault.database.SecretBackendConnectionArgs;\nimport com.pulumi.vault.database.inputs.SecretBackendConnectionPostgresqlArgs;\nimport com.pulumi.vault.database.SecretBackendRole;\nimport com.pulumi.vault.database.SecretBackendRoleArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var db = new Mount(\"db\", MountArgs.builder() \n .path(\"postgres\")\n .type(\"database\")\n .build());\n\n var postgres = new SecretBackendConnection(\"postgres\", SecretBackendConnectionArgs.builder() \n .backend(db.path())\n .allowedRoles( \n \"dev\",\n \"prod\")\n .postgresql(SecretBackendConnectionPostgresqlArgs.builder()\n .connectionUrl(\"postgres://username:password@host:port/database\")\n .build())\n .build());\n\n var role = new SecretBackendRole(\"role\", SecretBackendRoleArgs.builder() \n .backend(db.path())\n .dbName(postgres.name())\n .creationStatements(\"CREATE ROLE \\\"{{name}}\\\" WITH LOGIN PASSWORD '{{password}}' VALID UNTIL '{{expiration}}';\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n db:\n type: vault:Mount\n properties:\n path: postgres\n type: database\n postgres:\n type: vault:database:SecretBackendConnection\n properties:\n backend: ${db.path}\n allowedRoles:\n - dev\n - prod\n postgresql:\n connectionUrl: postgres://username:password@host:port/database\n role:\n type: vault:database:SecretBackendRole\n properties:\n backend: ${db.path}\n dbName: ${postgres.name}\n creationStatements:\n - CREATE ROLE \"{{name}}\" WITH LOGIN PASSWORD '{{password}}' VALID UNTIL '{{expiration}}';\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nDatabase secret backend roles can be imported using the `backend`, `/roles/`, and the `name` e.g.\n\n```sh\n $ pulumi import vault:database/secretBackendRole:SecretBackendRole example postgres/roles/my-role\n```\n ",
"properties": {
"backend": {
"type": "string",
@@ -12342,7 +9471,7 @@
"additionalProperties": {
"$ref": "pulumi.json#/Any"
},
- "description": "Specifies the configuration\nfor the given `credential_type`.\n"
+ "description": "Specifies the configuration\nfor the given `credential_type`.\n\nThe following options are available for each `credential_type` value:\n"
},
"credentialType": {
"type": "string",
@@ -12415,7 +9544,7 @@
"additionalProperties": {
"$ref": "pulumi.json#/Any"
},
- "description": "Specifies the configuration\nfor the given `credential_type`.\n"
+ "description": "Specifies the configuration\nfor the given `credential_type`.\n\nThe following options are available for each `credential_type` value:\n"
},
"credentialType": {
"type": "string",
@@ -12491,7 +9620,7 @@
"additionalProperties": {
"$ref": "pulumi.json#/Any"
},
- "description": "Specifies the configuration\nfor the given `credential_type`.\n"
+ "description": "Specifies the configuration\nfor the given `credential_type`.\n\nThe following options are available for each `credential_type` value:\n"
},
"credentialType": {
"type": "string",
@@ -12546,7 +9675,7 @@
}
},
"vault:database/secretBackendStaticRole:SecretBackendStaticRole": {
- "description": "Creates a Database Secret Backend static role in Vault. Database secret backend\nstatic roles can be used to manage 1-to-1 mapping of a Vault Role to a user in a\ndatabase for the database.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst db = new vault.Mount(\"db\", {\n path: \"postgres\",\n type: \"database\",\n});\nconst postgres = new vault.database.SecretBackendConnection(\"postgres\", {\n backend: db.path,\n allowedRoles: [\"*\"],\n postgresql: {\n connectionUrl: \"postgres://username:password@host:port/database\",\n },\n});\n// configure a static role with period-based rotations\nconst periodRole = new vault.database.SecretBackendStaticRole(\"periodRole\", {\n backend: db.path,\n dbName: postgres.name,\n username: \"example\",\n rotationPeriod: 3600,\n rotationStatements: [\"ALTER USER \\\"{{name}}\\\" WITH PASSWORD '{{password}}';\"],\n});\n// configure a static role with schedule-based rotations\nconst scheduleRole = new vault.database.SecretBackendStaticRole(\"scheduleRole\", {\n backend: db.path,\n dbName: postgres.name,\n username: \"example\",\n rotationSchedule: \"0 0 * * SAT\",\n rotationWindow: 172800,\n rotationStatements: [\"ALTER USER \\\"{{name}}\\\" WITH PASSWORD '{{password}}';\"],\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\ndb = vault.Mount(\"db\",\n path=\"postgres\",\n type=\"database\")\npostgres = vault.database.SecretBackendConnection(\"postgres\",\n backend=db.path,\n allowed_roles=[\"*\"],\n postgresql=vault.database.SecretBackendConnectionPostgresqlArgs(\n connection_url=\"postgres://username:password@host:port/database\",\n ))\n# configure a static role with period-based rotations\nperiod_role = vault.database.SecretBackendStaticRole(\"periodRole\",\n backend=db.path,\n db_name=postgres.name,\n username=\"example\",\n rotation_period=3600,\n rotation_statements=[\"ALTER USER \\\"{{name}}\\\" WITH PASSWORD '{{password}}';\"])\n# configure a static role with schedule-based rotations\nschedule_role = vault.database.SecretBackendStaticRole(\"scheduleRole\",\n backend=db.path,\n db_name=postgres.name,\n username=\"example\",\n rotation_schedule=\"0 0 * * SAT\",\n rotation_window=172800,\n rotation_statements=[\"ALTER USER \\\"{{name}}\\\" WITH PASSWORD '{{password}}';\"])\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var db = new Vault.Mount(\"db\", new()\n {\n Path = \"postgres\",\n Type = \"database\",\n });\n\n var postgres = new Vault.Database.SecretBackendConnection(\"postgres\", new()\n {\n Backend = db.Path,\n AllowedRoles = new[]\n {\n \"*\",\n },\n Postgresql = new Vault.Database.Inputs.SecretBackendConnectionPostgresqlArgs\n {\n ConnectionUrl = \"postgres://username:password@host:port/database\",\n },\n });\n\n // configure a static role with period-based rotations\n var periodRole = new Vault.Database.SecretBackendStaticRole(\"periodRole\", new()\n {\n Backend = db.Path,\n DbName = postgres.Name,\n Username = \"example\",\n RotationPeriod = 3600,\n RotationStatements = new[]\n {\n \"ALTER USER \\\"{{name}}\\\" WITH PASSWORD '{{password}}';\",\n },\n });\n\n // configure a static role with schedule-based rotations\n var scheduleRole = new Vault.Database.SecretBackendStaticRole(\"scheduleRole\", new()\n {\n Backend = db.Path,\n DbName = postgres.Name,\n Username = \"example\",\n RotationSchedule = \"0 0 * * SAT\",\n RotationWindow = 172800,\n RotationStatements = new[]\n {\n \"ALTER USER \\\"{{name}}\\\" WITH PASSWORD '{{password}}';\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault\"\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/database\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tdb, err := vault.NewMount(ctx, \"db\", \u0026vault.MountArgs{\n\t\t\tPath: pulumi.String(\"postgres\"),\n\t\t\tType: pulumi.String(\"database\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tpostgres, err := database.NewSecretBackendConnection(ctx, \"postgres\", \u0026database.SecretBackendConnectionArgs{\n\t\t\tBackend: db.Path,\n\t\t\tAllowedRoles: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"*\"),\n\t\t\t},\n\t\t\tPostgresql: \u0026database.SecretBackendConnectionPostgresqlArgs{\n\t\t\t\tConnectionUrl: pulumi.String(\"postgres://username:password@host:port/database\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = database.NewSecretBackendStaticRole(ctx, \"periodRole\", \u0026database.SecretBackendStaticRoleArgs{\n\t\t\tBackend: db.Path,\n\t\t\tDbName: postgres.Name,\n\t\t\tUsername: pulumi.String(\"example\"),\n\t\t\tRotationPeriod: pulumi.Int(3600),\n\t\t\tRotationStatements: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"ALTER USER \\\"{{name}}\\\" WITH PASSWORD '{{password}}';\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = database.NewSecretBackendStaticRole(ctx, \"scheduleRole\", \u0026database.SecretBackendStaticRoleArgs{\n\t\t\tBackend: db.Path,\n\t\t\tDbName: postgres.Name,\n\t\t\tUsername: pulumi.String(\"example\"),\n\t\t\tRotationSchedule: pulumi.String(\"0 0 * * SAT\"),\n\t\t\tRotationWindow: pulumi.Int(172800),\n\t\t\tRotationStatements: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"ALTER USER \\\"{{name}}\\\" WITH PASSWORD '{{password}}';\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.Mount;\nimport com.pulumi.vault.MountArgs;\nimport com.pulumi.vault.database.SecretBackendConnection;\nimport com.pulumi.vault.database.SecretBackendConnectionArgs;\nimport com.pulumi.vault.database.inputs.SecretBackendConnectionPostgresqlArgs;\nimport com.pulumi.vault.database.SecretBackendStaticRole;\nimport com.pulumi.vault.database.SecretBackendStaticRoleArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var db = new Mount(\"db\", MountArgs.builder() \n .path(\"postgres\")\n .type(\"database\")\n .build());\n\n var postgres = new SecretBackendConnection(\"postgres\", SecretBackendConnectionArgs.builder() \n .backend(db.path())\n .allowedRoles(\"*\")\n .postgresql(SecretBackendConnectionPostgresqlArgs.builder()\n .connectionUrl(\"postgres://username:password@host:port/database\")\n .build())\n .build());\n\n var periodRole = new SecretBackendStaticRole(\"periodRole\", SecretBackendStaticRoleArgs.builder() \n .backend(db.path())\n .dbName(postgres.name())\n .username(\"example\")\n .rotationPeriod(\"3600\")\n .rotationStatements(\"ALTER USER \\\"{{name}}\\\" WITH PASSWORD '{{password}}';\")\n .build());\n\n var scheduleRole = new SecretBackendStaticRole(\"scheduleRole\", SecretBackendStaticRoleArgs.builder() \n .backend(db.path())\n .dbName(postgres.name())\n .username(\"example\")\n .rotationSchedule(\"0 0 * * SAT\")\n .rotationWindow(\"172800\")\n .rotationStatements(\"ALTER USER \\\"{{name}}\\\" WITH PASSWORD '{{password}}';\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n db:\n type: vault:Mount\n properties:\n path: postgres\n type: database\n postgres:\n type: vault:database:SecretBackendConnection\n properties:\n backend: ${db.path}\n allowedRoles:\n - '*'\n postgresql:\n connectionUrl: postgres://username:password@host:port/database\n # configure a static role with period-based rotations\n periodRole:\n type: vault:database:SecretBackendStaticRole\n properties:\n backend: ${db.path}\n dbName: ${postgres.name}\n username: example\n rotationPeriod: 3600\n rotationStatements:\n - ALTER USER \"{{name}}\" WITH PASSWORD '{{password}}';\n # configure a static role with schedule-based rotations\n scheduleRole:\n type: vault:database:SecretBackendStaticRole\n properties:\n backend: ${db.path}\n dbName: ${postgres.name}\n username: example\n rotationSchedule: 0 0 * * SAT\n rotationWindow: 172800\n rotationStatements:\n - ALTER USER \"{{name}}\" WITH PASSWORD '{{password}}';\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nDatabase secret backend static roles can be imported using the `backend`, `/static-roles/`, and the `name` e.g.\n\n```sh\n $ pulumi import vault:database/secretBackendStaticRole:SecretBackendStaticRole example postgres/static-roles/my-role\n```\n\n ",
+ "description": "Creates a Database Secret Backend static role in Vault. Database secret backend\nstatic roles can be used to manage 1-to-1 mapping of a Vault Role to a user in a\ndatabase for the database.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst db = new vault.Mount(\"db\", {\n path: \"postgres\",\n type: \"database\",\n});\nconst postgres = new vault.database.SecretBackendConnection(\"postgres\", {\n backend: db.path,\n allowedRoles: [\"*\"],\n postgresql: {\n connectionUrl: \"postgres://username:password@host:port/database\",\n },\n});\n// configure a static role with period-based rotations\nconst periodRole = new vault.database.SecretBackendStaticRole(\"periodRole\", {\n backend: db.path,\n dbName: postgres.name,\n username: \"example\",\n rotationPeriod: 3600,\n rotationStatements: [\"ALTER USER \\\"{{name}}\\\" WITH PASSWORD '{{password}}';\"],\n});\n// configure a static role with schedule-based rotations\nconst scheduleRole = new vault.database.SecretBackendStaticRole(\"scheduleRole\", {\n backend: db.path,\n dbName: postgres.name,\n username: \"example\",\n rotationSchedule: \"0 0 * * SAT\",\n rotationWindow: 172800,\n rotationStatements: [\"ALTER USER \\\"{{name}}\\\" WITH PASSWORD '{{password}}';\"],\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\ndb = vault.Mount(\"db\",\n path=\"postgres\",\n type=\"database\")\npostgres = vault.database.SecretBackendConnection(\"postgres\",\n backend=db.path,\n allowed_roles=[\"*\"],\n postgresql=vault.database.SecretBackendConnectionPostgresqlArgs(\n connection_url=\"postgres://username:password@host:port/database\",\n ))\n# configure a static role with period-based rotations\nperiod_role = vault.database.SecretBackendStaticRole(\"periodRole\",\n backend=db.path,\n db_name=postgres.name,\n username=\"example\",\n rotation_period=3600,\n rotation_statements=[\"ALTER USER \\\"{{name}}\\\" WITH PASSWORD '{{password}}';\"])\n# configure a static role with schedule-based rotations\nschedule_role = vault.database.SecretBackendStaticRole(\"scheduleRole\",\n backend=db.path,\n db_name=postgres.name,\n username=\"example\",\n rotation_schedule=\"0 0 * * SAT\",\n rotation_window=172800,\n rotation_statements=[\"ALTER USER \\\"{{name}}\\\" WITH PASSWORD '{{password}}';\"])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var db = new Vault.Mount(\"db\", new()\n {\n Path = \"postgres\",\n Type = \"database\",\n });\n\n var postgres = new Vault.Database.SecretBackendConnection(\"postgres\", new()\n {\n Backend = db.Path,\n AllowedRoles = new[]\n {\n \"*\",\n },\n Postgresql = new Vault.Database.Inputs.SecretBackendConnectionPostgresqlArgs\n {\n ConnectionUrl = \"postgres://username:password@host:port/database\",\n },\n });\n\n // configure a static role with period-based rotations\n var periodRole = new Vault.Database.SecretBackendStaticRole(\"periodRole\", new()\n {\n Backend = db.Path,\n DbName = postgres.Name,\n Username = \"example\",\n RotationPeriod = 3600,\n RotationStatements = new[]\n {\n \"ALTER USER \\\"{{name}}\\\" WITH PASSWORD '{{password}}';\",\n },\n });\n\n // configure a static role with schedule-based rotations\n var scheduleRole = new Vault.Database.SecretBackendStaticRole(\"scheduleRole\", new()\n {\n Backend = db.Path,\n DbName = postgres.Name,\n Username = \"example\",\n RotationSchedule = \"0 0 * * SAT\",\n RotationWindow = 172800,\n RotationStatements = new[]\n {\n \"ALTER USER \\\"{{name}}\\\" WITH PASSWORD '{{password}}';\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault\"\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/database\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tdb, err := vault.NewMount(ctx, \"db\", \u0026vault.MountArgs{\n\t\t\tPath: pulumi.String(\"postgres\"),\n\t\t\tType: pulumi.String(\"database\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tpostgres, err := database.NewSecretBackendConnection(ctx, \"postgres\", \u0026database.SecretBackendConnectionArgs{\n\t\t\tBackend: db.Path,\n\t\t\tAllowedRoles: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"*\"),\n\t\t\t},\n\t\t\tPostgresql: \u0026database.SecretBackendConnectionPostgresqlArgs{\n\t\t\t\tConnectionUrl: pulumi.String(\"postgres://username:password@host:port/database\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = database.NewSecretBackendStaticRole(ctx, \"periodRole\", \u0026database.SecretBackendStaticRoleArgs{\n\t\t\tBackend: db.Path,\n\t\t\tDbName: postgres.Name,\n\t\t\tUsername: pulumi.String(\"example\"),\n\t\t\tRotationPeriod: pulumi.Int(3600),\n\t\t\tRotationStatements: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"ALTER USER \\\"{{name}}\\\" WITH PASSWORD '{{password}}';\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = database.NewSecretBackendStaticRole(ctx, \"scheduleRole\", \u0026database.SecretBackendStaticRoleArgs{\n\t\t\tBackend: db.Path,\n\t\t\tDbName: postgres.Name,\n\t\t\tUsername: pulumi.String(\"example\"),\n\t\t\tRotationSchedule: pulumi.String(\"0 0 * * SAT\"),\n\t\t\tRotationWindow: pulumi.Int(172800),\n\t\t\tRotationStatements: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"ALTER USER \\\"{{name}}\\\" WITH PASSWORD '{{password}}';\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.Mount;\nimport com.pulumi.vault.MountArgs;\nimport com.pulumi.vault.database.SecretBackendConnection;\nimport com.pulumi.vault.database.SecretBackendConnectionArgs;\nimport com.pulumi.vault.database.inputs.SecretBackendConnectionPostgresqlArgs;\nimport com.pulumi.vault.database.SecretBackendStaticRole;\nimport com.pulumi.vault.database.SecretBackendStaticRoleArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var db = new Mount(\"db\", MountArgs.builder() \n .path(\"postgres\")\n .type(\"database\")\n .build());\n\n var postgres = new SecretBackendConnection(\"postgres\", SecretBackendConnectionArgs.builder() \n .backend(db.path())\n .allowedRoles(\"*\")\n .postgresql(SecretBackendConnectionPostgresqlArgs.builder()\n .connectionUrl(\"postgres://username:password@host:port/database\")\n .build())\n .build());\n\n var periodRole = new SecretBackendStaticRole(\"periodRole\", SecretBackendStaticRoleArgs.builder() \n .backend(db.path())\n .dbName(postgres.name())\n .username(\"example\")\n .rotationPeriod(\"3600\")\n .rotationStatements(\"ALTER USER \\\"{{name}}\\\" WITH PASSWORD '{{password}}';\")\n .build());\n\n var scheduleRole = new SecretBackendStaticRole(\"scheduleRole\", SecretBackendStaticRoleArgs.builder() \n .backend(db.path())\n .dbName(postgres.name())\n .username(\"example\")\n .rotationSchedule(\"0 0 * * SAT\")\n .rotationWindow(\"172800\")\n .rotationStatements(\"ALTER USER \\\"{{name}}\\\" WITH PASSWORD '{{password}}';\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n db:\n type: vault:Mount\n properties:\n path: postgres\n type: database\n postgres:\n type: vault:database:SecretBackendConnection\n properties:\n backend: ${db.path}\n allowedRoles:\n - '*'\n postgresql:\n connectionUrl: postgres://username:password@host:port/database\n # configure a static role with period-based rotations\n periodRole:\n type: vault:database:SecretBackendStaticRole\n properties:\n backend: ${db.path}\n dbName: ${postgres.name}\n username: example\n rotationPeriod: '3600'\n rotationStatements:\n - ALTER USER \"{{name}}\" WITH PASSWORD '{{password}}';\n # configure a static role with schedule-based rotations\n scheduleRole:\n type: vault:database:SecretBackendStaticRole\n properties:\n backend: ${db.path}\n dbName: ${postgres.name}\n username: example\n rotationSchedule: 0 0 * * SAT\n rotationWindow: '172800'\n rotationStatements:\n - ALTER USER \"{{name}}\" WITH PASSWORD '{{password}}';\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nDatabase secret backend static roles can be imported using the `backend`, `/static-roles/`, and the `name` e.g.\n\n```sh\n $ pulumi import vault:database/secretBackendStaticRole:SecretBackendStaticRole example postgres/static-roles/my-role\n```\n ",
"properties": {
"backend": {
"type": "string",
@@ -12570,7 +9699,7 @@
},
"rotationSchedule": {
"type": "string",
- "description": "A cron-style string that will define the schedule on which rotations should occur.\nMutually exclusive with `rotation_period`.\n"
+ "description": "A cron-style string that will define the schedule on which rotations should occur.\nMutually exclusive with `rotation_period`.\n\n**Warning**: The `rotation_period` and `rotation_schedule` fields are\nmutually exclusive. One of them must be set but not both.\n"
},
"rotationStatements": {
"type": "array",
@@ -12621,7 +9750,7 @@
},
"rotationSchedule": {
"type": "string",
- "description": "A cron-style string that will define the schedule on which rotations should occur.\nMutually exclusive with `rotation_period`.\n"
+ "description": "A cron-style string that will define the schedule on which rotations should occur.\nMutually exclusive with `rotation_period`.\n\n**Warning**: The `rotation_period` and `rotation_schedule` fields are\nmutually exclusive. One of them must be set but not both.\n"
},
"rotationStatements": {
"type": "array",
@@ -12674,7 +9803,7 @@
},
"rotationSchedule": {
"type": "string",
- "description": "A cron-style string that will define the schedule on which rotations should occur.\nMutually exclusive with `rotation_period`.\n"
+ "description": "A cron-style string that will define the schedule on which rotations should occur.\nMutually exclusive with `rotation_period`.\n\n**Warning**: The `rotation_period` and `rotation_schedule` fields are\nmutually exclusive. One of them must be set but not both.\n"
},
"rotationStatements": {
"type": "array",
@@ -12697,7 +9826,7 @@
}
},
"vault:database/secretsMount:SecretsMount": {
- "description": "{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst db = new vault.database.SecretsMount(\"db\", {\n path: \"db\",\n mssqls: [{\n name: \"db1\",\n username: \"sa\",\n password: \"super_secret_1\",\n connectionUrl: \"sqlserver://{{username}}:{{password}}@127.0.0.1:1433\",\n allowedRoles: [\"dev1\"],\n }],\n postgresqls: [{\n name: \"db2\",\n username: \"postgres\",\n password: \"super_secret_2\",\n connectionUrl: \"postgresql://{{username}}:{{password}}@127.0.0.1:5432/postgres\",\n verifyConnection: true,\n allowedRoles: [\"dev2\"],\n }],\n});\nconst dev1 = new vault.database.SecretBackendRole(\"dev1\", {\n backend: db.path,\n dbName: db.mssqls.apply(mssqls =\u003e mssqls?[0]?.name),\n creationStatements: [\n \"CREATE LOGIN [{{name}}] WITH PASSWORD = '{{password}}';\",\n \"CREATE USER [{{name}}] FOR LOGIN [{{name}}];\",\n \"GRANT SELECT ON SCHEMA::dbo TO [{{name}}];\",\n ],\n});\nconst dev2 = new vault.database.SecretBackendRole(\"dev2\", {\n backend: db.path,\n dbName: db.postgresqls.apply(postgresqls =\u003e postgresqls?[0]?.name),\n creationStatements: [\n \"CREATE ROLE \\\"{{name}}\\\" WITH LOGIN PASSWORD '{{password}}' VALID UNTIL '{{expiration}}';\",\n \"GRANT SELECT ON ALL TABLES IN SCHEMA public TO \\\"{{name}}\\\";\",\n ],\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\ndb = vault.database.SecretsMount(\"db\",\n path=\"db\",\n mssqls=[vault.database.SecretsMountMssqlArgs(\n name=\"db1\",\n username=\"sa\",\n password=\"super_secret_1\",\n connection_url=\"sqlserver://{{username}}:{{password}}@127.0.0.1:1433\",\n allowed_roles=[\"dev1\"],\n )],\n postgresqls=[vault.database.SecretsMountPostgresqlArgs(\n name=\"db2\",\n username=\"postgres\",\n password=\"super_secret_2\",\n connection_url=\"postgresql://{{username}}:{{password}}@127.0.0.1:5432/postgres\",\n verify_connection=True,\n allowed_roles=[\"dev2\"],\n )])\ndev1 = vault.database.SecretBackendRole(\"dev1\",\n backend=db.path,\n db_name=db.mssqls[0].name,\n creation_statements=[\n \"CREATE LOGIN [{{name}}] WITH PASSWORD = '{{password}}';\",\n \"CREATE USER [{{name}}] FOR LOGIN [{{name}}];\",\n \"GRANT SELECT ON SCHEMA::dbo TO [{{name}}];\",\n ])\ndev2 = vault.database.SecretBackendRole(\"dev2\",\n backend=db.path,\n db_name=db.postgresqls[0].name,\n creation_statements=[\n \"CREATE ROLE \\\"{{name}}\\\" WITH LOGIN PASSWORD '{{password}}' VALID UNTIL '{{expiration}}';\",\n \"GRANT SELECT ON ALL TABLES IN SCHEMA public TO \\\"{{name}}\\\";\",\n ])\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var db = new Vault.Database.SecretsMount(\"db\", new()\n {\n Path = \"db\",\n Mssqls = new[]\n {\n new Vault.Database.Inputs.SecretsMountMssqlArgs\n {\n Name = \"db1\",\n Username = \"sa\",\n Password = \"super_secret_1\",\n ConnectionUrl = \"sqlserver://{{username}}:{{password}}@127.0.0.1:1433\",\n AllowedRoles = new[]\n {\n \"dev1\",\n },\n },\n },\n Postgresqls = new[]\n {\n new Vault.Database.Inputs.SecretsMountPostgresqlArgs\n {\n Name = \"db2\",\n Username = \"postgres\",\n Password = \"super_secret_2\",\n ConnectionUrl = \"postgresql://{{username}}:{{password}}@127.0.0.1:5432/postgres\",\n VerifyConnection = true,\n AllowedRoles = new[]\n {\n \"dev2\",\n },\n },\n },\n });\n\n var dev1 = new Vault.Database.SecretBackendRole(\"dev1\", new()\n {\n Backend = db.Path,\n DbName = db.Mssqls.Apply(mssqls =\u003e mssqls[0]?.Name),\n CreationStatements = new[]\n {\n \"CREATE LOGIN [{{name}}] WITH PASSWORD = '{{password}}';\",\n \"CREATE USER [{{name}}] FOR LOGIN [{{name}}];\",\n \"GRANT SELECT ON SCHEMA::dbo TO [{{name}}];\",\n },\n });\n\n var dev2 = new Vault.Database.SecretBackendRole(\"dev2\", new()\n {\n Backend = db.Path,\n DbName = db.Postgresqls.Apply(postgresqls =\u003e postgresqls[0]?.Name),\n CreationStatements = new[]\n {\n \"CREATE ROLE \\\"{{name}}\\\" WITH LOGIN PASSWORD '{{password}}' VALID UNTIL '{{expiration}}';\",\n \"GRANT SELECT ON ALL TABLES IN SCHEMA public TO \\\"{{name}}\\\";\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/database\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tdb, err := database.NewSecretsMount(ctx, \"db\", \u0026database.SecretsMountArgs{\n\t\t\tPath: pulumi.String(\"db\"),\n\t\t\tMssqls: database.SecretsMountMssqlArray{\n\t\t\t\t\u0026database.SecretsMountMssqlArgs{\n\t\t\t\t\tName: pulumi.String(\"db1\"),\n\t\t\t\t\tUsername: pulumi.String(\"sa\"),\n\t\t\t\t\tPassword: pulumi.String(\"super_secret_1\"),\n\t\t\t\t\tConnectionUrl: pulumi.String(\"sqlserver://{{username}}:{{password}}@127.0.0.1:1433\"),\n\t\t\t\t\tAllowedRoles: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"dev1\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tPostgresqls: database.SecretsMountPostgresqlArray{\n\t\t\t\t\u0026database.SecretsMountPostgresqlArgs{\n\t\t\t\t\tName: pulumi.String(\"db2\"),\n\t\t\t\t\tUsername: pulumi.String(\"postgres\"),\n\t\t\t\t\tPassword: pulumi.String(\"super_secret_2\"),\n\t\t\t\t\tConnectionUrl: pulumi.String(\"postgresql://{{username}}:{{password}}@127.0.0.1:5432/postgres\"),\n\t\t\t\t\tVerifyConnection: pulumi.Bool(true),\n\t\t\t\t\tAllowedRoles: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"dev2\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = database.NewSecretBackendRole(ctx, \"dev1\", \u0026database.SecretBackendRoleArgs{\n\t\t\tBackend: db.Path,\n\t\t\tDbName: db.Mssqls.ApplyT(func(mssqls []database.SecretsMountMssql) (string, error) {\n\t\t\t\treturn mssqls[0].Name, nil\n\t\t\t}).(pulumi.StringOutput),\n\t\t\tCreationStatements: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"CREATE LOGIN [{{name}}] WITH PASSWORD = '{{password}}';\"),\n\t\t\t\tpulumi.String(\"CREATE USER [{{name}}] FOR LOGIN [{{name}}];\"),\n\t\t\t\tpulumi.String(\"GRANT SELECT ON SCHEMA::dbo TO [{{name}}];\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = database.NewSecretBackendRole(ctx, \"dev2\", \u0026database.SecretBackendRoleArgs{\n\t\t\tBackend: db.Path,\n\t\t\tDbName: db.Postgresqls.ApplyT(func(postgresqls []database.SecretsMountPostgresql) (string, error) {\n\t\t\t\treturn postgresqls[0].Name, nil\n\t\t\t}).(pulumi.StringOutput),\n\t\t\tCreationStatements: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"CREATE ROLE \\\"{{name}}\\\" WITH LOGIN PASSWORD '{{password}}' VALID UNTIL '{{expiration}}';\"),\n\t\t\t\tpulumi.String(\"GRANT SELECT ON ALL TABLES IN SCHEMA public TO \\\"{{name}}\\\";\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.database.SecretsMount;\nimport com.pulumi.vault.database.SecretsMountArgs;\nimport com.pulumi.vault.database.inputs.SecretsMountMssqlArgs;\nimport com.pulumi.vault.database.inputs.SecretsMountPostgresqlArgs;\nimport com.pulumi.vault.database.SecretBackendRole;\nimport com.pulumi.vault.database.SecretBackendRoleArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var db = new SecretsMount(\"db\", SecretsMountArgs.builder() \n .path(\"db\")\n .mssqls(SecretsMountMssqlArgs.builder()\n .name(\"db1\")\n .username(\"sa\")\n .password(\"super_secret_1\")\n .connectionUrl(\"sqlserver://{{username}}:{{password}}@127.0.0.1:1433\")\n .allowedRoles(\"dev1\")\n .build())\n .postgresqls(SecretsMountPostgresqlArgs.builder()\n .name(\"db2\")\n .username(\"postgres\")\n .password(\"super_secret_2\")\n .connectionUrl(\"postgresql://{{username}}:{{password}}@127.0.0.1:5432/postgres\")\n .verifyConnection(true)\n .allowedRoles(\"dev2\")\n .build())\n .build());\n\n var dev1 = new SecretBackendRole(\"dev1\", SecretBackendRoleArgs.builder() \n .backend(db.path())\n .dbName(db.mssqls().applyValue(mssqls -\u003e mssqls[0].name()))\n .creationStatements( \n \"CREATE LOGIN [{{name}}] WITH PASSWORD = '{{password}}';\",\n \"CREATE USER [{{name}}] FOR LOGIN [{{name}}];\",\n \"GRANT SELECT ON SCHEMA::dbo TO [{{name}}];\")\n .build());\n\n var dev2 = new SecretBackendRole(\"dev2\", SecretBackendRoleArgs.builder() \n .backend(db.path())\n .dbName(db.postgresqls().applyValue(postgresqls -\u003e postgresqls[0].name()))\n .creationStatements( \n \"CREATE ROLE \\\"{{name}}\\\" WITH LOGIN PASSWORD '{{password}}' VALID UNTIL '{{expiration}}';\",\n \"GRANT SELECT ON ALL TABLES IN SCHEMA public TO \\\"{{name}}\\\";\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n db:\n type: vault:database:SecretsMount\n properties:\n path: db\n mssqls:\n - name: db1\n username: sa\n password: super_secret_1\n connectionUrl: sqlserver://{{username}}:{{password}}@127.0.0.1:1433\n allowedRoles:\n - dev1\n postgresqls:\n - name: db2\n username: postgres\n password: super_secret_2\n connectionUrl: postgresql://{{username}}:{{password}}@127.0.0.1:5432/postgres\n verifyConnection: true\n allowedRoles:\n - dev2\n dev1:\n type: vault:database:SecretBackendRole\n properties:\n backend: ${db.path}\n dbName: ${db.mssqls[0].name}\n creationStatements:\n - CREATE LOGIN [{{name}}] WITH PASSWORD = '{{password}}';\n - CREATE USER [{{name}}] FOR LOGIN [{{name}}];\n - GRANT SELECT ON SCHEMA::dbo TO [{{name}}];\n dev2:\n type: vault:database:SecretBackendRole\n properties:\n backend: ${db.path}\n dbName: ${db.postgresqls[0].name}\n creationStatements:\n - CREATE ROLE \"{{name}}\" WITH LOGIN PASSWORD '{{password}}' VALID UNTIL '{{expiration}}';\n - GRANT SELECT ON ALL TABLES IN SCHEMA public TO \"{{name}}\";\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nDatabase secret backend connections can be imported using the `path` e.g.\n\n```sh\n $ pulumi import vault:database/secretsMount:SecretsMount db db\n```\n\n ",
+ "description": "{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst db = new vault.database.SecretsMount(\"db\", {\n path: \"db\",\n mssqls: [{\n name: \"db1\",\n username: \"sa\",\n password: \"super_secret_1\",\n connectionUrl: \"sqlserver://{{username}}:{{password}}@127.0.0.1:1433\",\n allowedRoles: [\"dev1\"],\n }],\n postgresqls: [{\n name: \"db2\",\n username: \"postgres\",\n password: \"super_secret_2\",\n connectionUrl: \"postgresql://{{username}}:{{password}}@127.0.0.1:5432/postgres\",\n verifyConnection: true,\n allowedRoles: [\"dev2\"],\n }],\n});\nconst dev1 = new vault.database.SecretBackendRole(\"dev1\", {\n backend: db.path,\n dbName: db.mssqls.apply(mssqls =\u003e mssqls?.[0]?.name),\n creationStatements: [\n \"CREATE LOGIN [{{name}}] WITH PASSWORD = '{{password}}';\",\n \"CREATE USER [{{name}}] FOR LOGIN [{{name}}];\",\n \"GRANT SELECT ON SCHEMA::dbo TO [{{name}}];\",\n ],\n});\nconst dev2 = new vault.database.SecretBackendRole(\"dev2\", {\n backend: db.path,\n dbName: db.postgresqls.apply(postgresqls =\u003e postgresqls?.[0]?.name),\n creationStatements: [\n \"CREATE ROLE \\\"{{name}}\\\" WITH LOGIN PASSWORD '{{password}}' VALID UNTIL '{{expiration}}';\",\n \"GRANT SELECT ON ALL TABLES IN SCHEMA public TO \\\"{{name}}\\\";\",\n ],\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\ndb = vault.database.SecretsMount(\"db\",\n path=\"db\",\n mssqls=[vault.database.SecretsMountMssqlArgs(\n name=\"db1\",\n username=\"sa\",\n password=\"super_secret_1\",\n connection_url=\"sqlserver://{{username}}:{{password}}@127.0.0.1:1433\",\n allowed_roles=[\"dev1\"],\n )],\n postgresqls=[vault.database.SecretsMountPostgresqlArgs(\n name=\"db2\",\n username=\"postgres\",\n password=\"super_secret_2\",\n connection_url=\"postgresql://{{username}}:{{password}}@127.0.0.1:5432/postgres\",\n verify_connection=True,\n allowed_roles=[\"dev2\"],\n )])\ndev1 = vault.database.SecretBackendRole(\"dev1\",\n backend=db.path,\n db_name=db.mssqls[0].name,\n creation_statements=[\n \"CREATE LOGIN [{{name}}] WITH PASSWORD = '{{password}}';\",\n \"CREATE USER [{{name}}] FOR LOGIN [{{name}}];\",\n \"GRANT SELECT ON SCHEMA::dbo TO [{{name}}];\",\n ])\ndev2 = vault.database.SecretBackendRole(\"dev2\",\n backend=db.path,\n db_name=db.postgresqls[0].name,\n creation_statements=[\n \"CREATE ROLE \\\"{{name}}\\\" WITH LOGIN PASSWORD '{{password}}' VALID UNTIL '{{expiration}}';\",\n \"GRANT SELECT ON ALL TABLES IN SCHEMA public TO \\\"{{name}}\\\";\",\n ])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var db = new Vault.Database.SecretsMount(\"db\", new()\n {\n Path = \"db\",\n Mssqls = new[]\n {\n new Vault.Database.Inputs.SecretsMountMssqlArgs\n {\n Name = \"db1\",\n Username = \"sa\",\n Password = \"super_secret_1\",\n ConnectionUrl = \"sqlserver://{{username}}:{{password}}@127.0.0.1:1433\",\n AllowedRoles = new[]\n {\n \"dev1\",\n },\n },\n },\n Postgresqls = new[]\n {\n new Vault.Database.Inputs.SecretsMountPostgresqlArgs\n {\n Name = \"db2\",\n Username = \"postgres\",\n Password = \"super_secret_2\",\n ConnectionUrl = \"postgresql://{{username}}:{{password}}@127.0.0.1:5432/postgres\",\n VerifyConnection = true,\n AllowedRoles = new[]\n {\n \"dev2\",\n },\n },\n },\n });\n\n var dev1 = new Vault.Database.SecretBackendRole(\"dev1\", new()\n {\n Backend = db.Path,\n DbName = db.Mssqls.Apply(mssqls =\u003e mssqls[0]?.Name),\n CreationStatements = new[]\n {\n \"CREATE LOGIN [{{name}}] WITH PASSWORD = '{{password}}';\",\n \"CREATE USER [{{name}}] FOR LOGIN [{{name}}];\",\n \"GRANT SELECT ON SCHEMA::dbo TO [{{name}}];\",\n },\n });\n\n var dev2 = new Vault.Database.SecretBackendRole(\"dev2\", new()\n {\n Backend = db.Path,\n DbName = db.Postgresqls.Apply(postgresqls =\u003e postgresqls[0]?.Name),\n CreationStatements = new[]\n {\n \"CREATE ROLE \\\"{{name}}\\\" WITH LOGIN PASSWORD '{{password}}' VALID UNTIL '{{expiration}}';\",\n \"GRANT SELECT ON ALL TABLES IN SCHEMA public TO \\\"{{name}}\\\";\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/database\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tdb, err := database.NewSecretsMount(ctx, \"db\", \u0026database.SecretsMountArgs{\n\t\t\tPath: pulumi.String(\"db\"),\n\t\t\tMssqls: database.SecretsMountMssqlArray{\n\t\t\t\t\u0026database.SecretsMountMssqlArgs{\n\t\t\t\t\tName: pulumi.String(\"db1\"),\n\t\t\t\t\tUsername: pulumi.String(\"sa\"),\n\t\t\t\t\tPassword: pulumi.String(\"super_secret_1\"),\n\t\t\t\t\tConnectionUrl: pulumi.String(\"sqlserver://{{username}}:{{password}}@127.0.0.1:1433\"),\n\t\t\t\t\tAllowedRoles: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"dev1\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tPostgresqls: database.SecretsMountPostgresqlArray{\n\t\t\t\t\u0026database.SecretsMountPostgresqlArgs{\n\t\t\t\t\tName: pulumi.String(\"db2\"),\n\t\t\t\t\tUsername: pulumi.String(\"postgres\"),\n\t\t\t\t\tPassword: pulumi.String(\"super_secret_2\"),\n\t\t\t\t\tConnectionUrl: pulumi.String(\"postgresql://{{username}}:{{password}}@127.0.0.1:5432/postgres\"),\n\t\t\t\t\tVerifyConnection: pulumi.Bool(true),\n\t\t\t\t\tAllowedRoles: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"dev2\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = database.NewSecretBackendRole(ctx, \"dev1\", \u0026database.SecretBackendRoleArgs{\n\t\t\tBackend: db.Path,\n\t\t\tDbName: db.Mssqls.ApplyT(func(mssqls []database.SecretsMountMssql) (*string, error) {\n\t\t\t\treturn \u0026mssqls[0].Name, nil\n\t\t\t}).(pulumi.StringPtrOutput),\n\t\t\tCreationStatements: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"CREATE LOGIN [{{name}}] WITH PASSWORD = '{{password}}';\"),\n\t\t\t\tpulumi.String(\"CREATE USER [{{name}}] FOR LOGIN [{{name}}];\"),\n\t\t\t\tpulumi.String(\"GRANT SELECT ON SCHEMA::dbo TO [{{name}}];\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = database.NewSecretBackendRole(ctx, \"dev2\", \u0026database.SecretBackendRoleArgs{\n\t\t\tBackend: db.Path,\n\t\t\tDbName: db.Postgresqls.ApplyT(func(postgresqls []database.SecretsMountPostgresql) (*string, error) {\n\t\t\t\treturn \u0026postgresqls[0].Name, nil\n\t\t\t}).(pulumi.StringPtrOutput),\n\t\t\tCreationStatements: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"CREATE ROLE \\\"{{name}}\\\" WITH LOGIN PASSWORD '{{password}}' VALID UNTIL '{{expiration}}';\"),\n\t\t\t\tpulumi.String(\"GRANT SELECT ON ALL TABLES IN SCHEMA public TO \\\"{{name}}\\\";\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.database.SecretsMount;\nimport com.pulumi.vault.database.SecretsMountArgs;\nimport com.pulumi.vault.database.inputs.SecretsMountMssqlArgs;\nimport com.pulumi.vault.database.inputs.SecretsMountPostgresqlArgs;\nimport com.pulumi.vault.database.SecretBackendRole;\nimport com.pulumi.vault.database.SecretBackendRoleArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var db = new SecretsMount(\"db\", SecretsMountArgs.builder() \n .path(\"db\")\n .mssqls(SecretsMountMssqlArgs.builder()\n .name(\"db1\")\n .username(\"sa\")\n .password(\"super_secret_1\")\n .connectionUrl(\"sqlserver://{{username}}:{{password}}@127.0.0.1:1433\")\n .allowedRoles(\"dev1\")\n .build())\n .postgresqls(SecretsMountPostgresqlArgs.builder()\n .name(\"db2\")\n .username(\"postgres\")\n .password(\"super_secret_2\")\n .connectionUrl(\"postgresql://{{username}}:{{password}}@127.0.0.1:5432/postgres\")\n .verifyConnection(true)\n .allowedRoles(\"dev2\")\n .build())\n .build());\n\n var dev1 = new SecretBackendRole(\"dev1\", SecretBackendRoleArgs.builder() \n .backend(db.path())\n .dbName(db.mssqls().applyValue(mssqls -\u003e mssqls[0].name()))\n .creationStatements( \n \"CREATE LOGIN [{{name}}] WITH PASSWORD = '{{password}}';\",\n \"CREATE USER [{{name}}] FOR LOGIN [{{name}}];\",\n \"GRANT SELECT ON SCHEMA::dbo TO [{{name}}];\")\n .build());\n\n var dev2 = new SecretBackendRole(\"dev2\", SecretBackendRoleArgs.builder() \n .backend(db.path())\n .dbName(db.postgresqls().applyValue(postgresqls -\u003e postgresqls[0].name()))\n .creationStatements( \n \"CREATE ROLE \\\"{{name}}\\\" WITH LOGIN PASSWORD '{{password}}' VALID UNTIL '{{expiration}}';\",\n \"GRANT SELECT ON ALL TABLES IN SCHEMA public TO \\\"{{name}}\\\";\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n db:\n type: vault:database:SecretsMount\n properties:\n path: db\n mssqls:\n - name: db1\n username: sa\n password: super_secret_1\n connectionUrl: sqlserver://{{username}}:{{password}}@127.0.0.1:1433\n allowedRoles:\n - dev1\n postgresqls:\n - name: db2\n username: postgres\n password: super_secret_2\n connectionUrl: postgresql://{{username}}:{{password}}@127.0.0.1:5432/postgres\n verifyConnection: true\n allowedRoles:\n - dev2\n dev1:\n type: vault:database:SecretBackendRole\n properties:\n backend: ${db.path}\n dbName: ${db.mssqls[0].name}\n creationStatements:\n - CREATE LOGIN [{{name}}] WITH PASSWORD = '{{password}}';\n - CREATE USER [{{name}}] FOR LOGIN [{{name}}];\n - GRANT SELECT ON SCHEMA::dbo TO [{{name}}];\n dev2:\n type: vault:database:SecretBackendRole\n properties:\n backend: ${db.path}\n dbName: ${db.postgresqls[0].name}\n creationStatements:\n - CREATE ROLE \"{{name}}\" WITH LOGIN PASSWORD '{{password}}' VALID UNTIL '{{expiration}}';\n - GRANT SELECT ON ALL TABLES IN SCHEMA public TO \"{{name}}\";\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nDatabase secret backend connections can be imported using the `path` e.g.\n\n```sh\n $ pulumi import vault:database/secretsMount:SecretsMount db db\n```\n ",
"properties": {
"accessor": {
"type": "string",
@@ -12708,7 +9837,7 @@
"items": {
"type": "string"
},
- "description": "Set of managed key registry entry names that the mount in question is allowed to access\n"
+ "description": "Set of managed key registry entry names that the mount in question is allowed to access\n\nThe following arguments are common to all database engines:\n"
},
"auditNonHmacRequestKeys": {
"type": "array",
@@ -12910,7 +10039,7 @@
"items": {
"type": "string"
},
- "description": "Set of managed key registry entry names that the mount in question is allowed to access\n",
+ "description": "Set of managed key registry entry names that the mount in question is allowed to access\n\nThe following arguments are common to all database engines:\n",
"willReplaceOnChanges": true
},
"auditNonHmacRequestKeys": {
@@ -13112,7 +10241,7 @@
"items": {
"type": "string"
},
- "description": "Set of managed key registry entry names that the mount in question is allowed to access\n",
+ "description": "Set of managed key registry entry names that the mount in question is allowed to access\n\nThe following arguments are common to all database engines:\n",
"willReplaceOnChanges": true
},
"auditNonHmacRequestKeys": {
@@ -13307,7 +10436,7 @@
}
},
"vault:gcp/authBackend:AuthBackend": {
- "description": "Provides a resource to configure the [GCP auth backend within Vault](https://www.vaultproject.io/docs/auth/gcp.html).\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as fs from \"fs\";\nimport * as vault from \"@pulumi/vault\";\n\nconst gcp = new vault.gcp.AuthBackend(\"gcp\", {\n credentials: fs.readFileSync(\"vault-gcp-credentials.json\"),\n customEndpoint: {\n api: \"www.googleapis.com\",\n iam: \"iam.googleapis.com\",\n crm: \"cloudresourcemanager.googleapis.com\",\n compute: \"compute.googleapis.com\",\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\ngcp = vault.gcp.AuthBackend(\"gcp\",\n credentials=(lambda path: open(path).read())(\"vault-gcp-credentials.json\"),\n custom_endpoint=vault.gcp.AuthBackendCustomEndpointArgs(\n api=\"www.googleapis.com\",\n iam=\"iam.googleapis.com\",\n crm=\"cloudresourcemanager.googleapis.com\",\n compute=\"compute.googleapis.com\",\n ))\n```\n```csharp\nusing System.Collections.Generic;\nusing System.IO;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var gcp = new Vault.Gcp.AuthBackend(\"gcp\", new()\n {\n Credentials = File.ReadAllText(\"vault-gcp-credentials.json\"),\n CustomEndpoint = new Vault.Gcp.Inputs.AuthBackendCustomEndpointArgs\n {\n Api = \"www.googleapis.com\",\n Iam = \"iam.googleapis.com\",\n Crm = \"cloudresourcemanager.googleapis.com\",\n Compute = \"compute.googleapis.com\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"io/ioutil\"\n\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/gcp\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc readFileOrPanic(path string) pulumi.StringPtrInput {\n\tdata, err := ioutil.ReadFile(path)\n\tif err != nil {\n\t\tpanic(err.Error())\n\t}\n\treturn pulumi.String(string(data))\n}\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := gcp.NewAuthBackend(ctx, \"gcp\", \u0026gcp.AuthBackendArgs{\n\t\t\tCredentials: readFileOrPanic(\"vault-gcp-credentials.json\"),\n\t\t\tCustomEndpoint: \u0026gcp.AuthBackendCustomEndpointArgs{\n\t\t\t\tApi: pulumi.String(\"www.googleapis.com\"),\n\t\t\t\tIam: pulumi.String(\"iam.googleapis.com\"),\n\t\t\t\tCrm: pulumi.String(\"cloudresourcemanager.googleapis.com\"),\n\t\t\t\tCompute: pulumi.String(\"compute.googleapis.com\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.gcp.AuthBackend;\nimport com.pulumi.vault.gcp.AuthBackendArgs;\nimport com.pulumi.vault.gcp.inputs.AuthBackendCustomEndpointArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var gcp = new AuthBackend(\"gcp\", AuthBackendArgs.builder() \n .credentials(Files.readString(Paths.get(\"vault-gcp-credentials.json\")))\n .customEndpoint(AuthBackendCustomEndpointArgs.builder()\n .api(\"www.googleapis.com\")\n .iam(\"iam.googleapis.com\")\n .crm(\"cloudresourcemanager.googleapis.com\")\n .compute(\"compute.googleapis.com\")\n .build())\n .build());\n\n }\n}\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nGCP authentication backends can be imported using the backend name, e.g.\n\n```sh\n $ pulumi import vault:gcp/authBackend:AuthBackend gcp gcp\n```\n\n ",
+ "description": "Provides a resource to configure the [GCP auth backend within Vault](https://www.vaultproject.io/docs/auth/gcp.html).\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as fs from \"fs\";\nimport * as vault from \"@pulumi/vault\";\n\nconst gcp = new vault.gcp.AuthBackend(\"gcp\", {\n credentials: fs.readFileSync(\"vault-gcp-credentials.json\"),\n customEndpoint: {\n api: \"www.googleapis.com\",\n iam: \"iam.googleapis.com\",\n crm: \"cloudresourcemanager.googleapis.com\",\n compute: \"compute.googleapis.com\",\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\ngcp = vault.gcp.AuthBackend(\"gcp\",\n credentials=(lambda path: open(path).read())(\"vault-gcp-credentials.json\"),\n custom_endpoint=vault.gcp.AuthBackendCustomEndpointArgs(\n api=\"www.googleapis.com\",\n iam=\"iam.googleapis.com\",\n crm=\"cloudresourcemanager.googleapis.com\",\n compute=\"compute.googleapis.com\",\n ))\n```\n```csharp\nusing System.Collections.Generic;\nusing System.IO;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var gcp = new Vault.Gcp.AuthBackend(\"gcp\", new()\n {\n Credentials = File.ReadAllText(\"vault-gcp-credentials.json\"),\n CustomEndpoint = new Vault.Gcp.Inputs.AuthBackendCustomEndpointArgs\n {\n Api = \"www.googleapis.com\",\n Iam = \"iam.googleapis.com\",\n Crm = \"cloudresourcemanager.googleapis.com\",\n Compute = \"compute.googleapis.com\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"os\"\n\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/gcp\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc readFileOrPanic(path string) pulumi.StringPtrInput {\n\tdata, err := os.ReadFile(path)\n\tif err != nil {\n\t\tpanic(err.Error())\n\t}\n\treturn pulumi.String(string(data))\n}\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := gcp.NewAuthBackend(ctx, \"gcp\", \u0026gcp.AuthBackendArgs{\n\t\t\tCredentials: readFileOrPanic(\"vault-gcp-credentials.json\"),\n\t\t\tCustomEndpoint: \u0026gcp.AuthBackendCustomEndpointArgs{\n\t\t\t\tApi: pulumi.String(\"www.googleapis.com\"),\n\t\t\t\tIam: pulumi.String(\"iam.googleapis.com\"),\n\t\t\t\tCrm: pulumi.String(\"cloudresourcemanager.googleapis.com\"),\n\t\t\t\tCompute: pulumi.String(\"compute.googleapis.com\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.gcp.AuthBackend;\nimport com.pulumi.vault.gcp.AuthBackendArgs;\nimport com.pulumi.vault.gcp.inputs.AuthBackendCustomEndpointArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var gcp = new AuthBackend(\"gcp\", AuthBackendArgs.builder() \n .credentials(Files.readString(Paths.get(\"vault-gcp-credentials.json\")))\n .customEndpoint(AuthBackendCustomEndpointArgs.builder()\n .api(\"www.googleapis.com\")\n .iam(\"iam.googleapis.com\")\n .crm(\"cloudresourcemanager.googleapis.com\")\n .compute(\"compute.googleapis.com\")\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n gcp:\n type: vault:gcp:AuthBackend\n properties:\n credentials:\n fn::readFile: vault-gcp-credentials.json\n customEndpoint:\n api: www.googleapis.com\n iam: iam.googleapis.com\n crm: cloudresourcemanager.googleapis.com\n compute: compute.googleapis.com\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nGCP authentication backends can be imported using the backend name, e.g.\n\n```sh\n $ pulumi import vault:gcp/authBackend:AuthBackend gcp gcp\n```\n ",
"properties": {
"accessor": {
"type": "string",
@@ -13328,7 +10457,7 @@
},
"customEndpoint": {
"$ref": "#/types/vault:gcp/AuthBackendCustomEndpoint:AuthBackendCustomEndpoint",
- "description": "Specifies overrides to\n[service endpoints](https://cloud.google.com/apis/design/glossary#api_service_endpoint)\nused when making API requests. This allows specific requests made during authentication\nto target alternative service endpoints for use in [Private Google Access](https://cloud.google.com/vpc/docs/configure-private-google-access)\nenvironments. Requires Vault 1.11+.\n"
+ "description": "Specifies overrides to\n[service endpoints](https://cloud.google.com/apis/design/glossary#api_service_endpoint)\nused when making API requests. This allows specific requests made during authentication\nto target alternative service endpoints for use in [Private Google Access](https://cloud.google.com/vpc/docs/configure-private-google-access)\nenvironments. Requires Vault 1.11+.\n\nOverrides are set at the subdomain level using the following keys:\n"
},
"description": {
"type": "string",
@@ -13382,7 +10511,7 @@
},
"customEndpoint": {
"$ref": "#/types/vault:gcp/AuthBackendCustomEndpoint:AuthBackendCustomEndpoint",
- "description": "Specifies overrides to\n[service endpoints](https://cloud.google.com/apis/design/glossary#api_service_endpoint)\nused when making API requests. This allows specific requests made during authentication\nto target alternative service endpoints for use in [Private Google Access](https://cloud.google.com/vpc/docs/configure-private-google-access)\nenvironments. Requires Vault 1.11+.\n"
+ "description": "Specifies overrides to\n[service endpoints](https://cloud.google.com/apis/design/glossary#api_service_endpoint)\nused when making API requests. This allows specific requests made during authentication\nto target alternative service endpoints for use in [Private Google Access](https://cloud.google.com/vpc/docs/configure-private-google-access)\nenvironments. Requires Vault 1.11+.\n\nOverrides are set at the subdomain level using the following keys:\n"
},
"description": {
"type": "string",
@@ -13437,7 +10566,7 @@
},
"customEndpoint": {
"$ref": "#/types/vault:gcp/AuthBackendCustomEndpoint:AuthBackendCustomEndpoint",
- "description": "Specifies overrides to\n[service endpoints](https://cloud.google.com/apis/design/glossary#api_service_endpoint)\nused when making API requests. This allows specific requests made during authentication\nto target alternative service endpoints for use in [Private Google Access](https://cloud.google.com/vpc/docs/configure-private-google-access)\nenvironments. Requires Vault 1.11+.\n"
+ "description": "Specifies overrides to\n[service endpoints](https://cloud.google.com/apis/design/glossary#api_service_endpoint)\nused when making API requests. This allows specific requests made during authentication\nto target alternative service endpoints for use in [Private Google Access](https://cloud.google.com/vpc/docs/configure-private-google-access)\nenvironments. Requires Vault 1.11+.\n\nOverrides are set at the subdomain level using the following keys:\n"
},
"description": {
"type": "string",
@@ -13474,7 +10603,7 @@
}
},
"vault:gcp/authBackendRole:AuthBackendRole": {
- "description": "Provides a resource to create a role in an [GCP auth backend within Vault](https://www.vaultproject.io/docs/auth/gcp.html).\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst gcp = new vault.AuthBackend(\"gcp\", {\n path: \"gcp\",\n type: \"gcp\",\n});\nconst test = new vault.gcp.AuthBackendRole(\"test\", {\n backend: gcp.path,\n role: \"test\",\n type: \"iam\",\n boundServiceAccounts: [\"test\"],\n boundProjects: [\"test\"],\n tokenTtl: 300,\n tokenMaxTtl: 600,\n tokenPolicies: [\n \"policy_a\",\n \"policy_b\",\n ],\n addGroupAliases: true,\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\ngcp = vault.AuthBackend(\"gcp\",\n path=\"gcp\",\n type=\"gcp\")\ntest = vault.gcp.AuthBackendRole(\"test\",\n backend=gcp.path,\n role=\"test\",\n type=\"iam\",\n bound_service_accounts=[\"test\"],\n bound_projects=[\"test\"],\n token_ttl=300,\n token_max_ttl=600,\n token_policies=[\n \"policy_a\",\n \"policy_b\",\n ],\n add_group_aliases=True)\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var gcp = new Vault.AuthBackend(\"gcp\", new()\n {\n Path = \"gcp\",\n Type = \"gcp\",\n });\n\n var test = new Vault.Gcp.AuthBackendRole(\"test\", new()\n {\n Backend = gcp.Path,\n Role = \"test\",\n Type = \"iam\",\n BoundServiceAccounts = new[]\n {\n \"test\",\n },\n BoundProjects = new[]\n {\n \"test\",\n },\n TokenTtl = 300,\n TokenMaxTtl = 600,\n TokenPolicies = new[]\n {\n \"policy_a\",\n \"policy_b\",\n },\n AddGroupAliases = true,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault\"\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/gcp\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tgcp, err := vault.NewAuthBackend(ctx, \"gcp\", \u0026vault.AuthBackendArgs{\n\t\t\tPath: pulumi.String(\"gcp\"),\n\t\t\tType: pulumi.String(\"gcp\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = gcp.NewAuthBackendRole(ctx, \"test\", \u0026gcp.AuthBackendRoleArgs{\n\t\t\tBackend: gcp.Path,\n\t\t\tRole: pulumi.String(\"test\"),\n\t\t\tType: pulumi.String(\"iam\"),\n\t\t\tBoundServiceAccounts: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"test\"),\n\t\t\t},\n\t\t\tBoundProjects: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"test\"),\n\t\t\t},\n\t\t\tTokenTtl: pulumi.Int(300),\n\t\t\tTokenMaxTtl: pulumi.Int(600),\n\t\t\tTokenPolicies: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"policy_a\"),\n\t\t\t\tpulumi.String(\"policy_b\"),\n\t\t\t},\n\t\t\tAddGroupAliases: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.AuthBackend;\nimport com.pulumi.vault.AuthBackendArgs;\nimport com.pulumi.vault.gcp.AuthBackendRole;\nimport com.pulumi.vault.gcp.AuthBackendRoleArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var gcp = new AuthBackend(\"gcp\", AuthBackendArgs.builder() \n .path(\"gcp\")\n .type(\"gcp\")\n .build());\n\n var test = new AuthBackendRole(\"test\", AuthBackendRoleArgs.builder() \n .backend(gcp.path())\n .role(\"test\")\n .type(\"iam\")\n .boundServiceAccounts(\"test\")\n .boundProjects(\"test\")\n .tokenTtl(300)\n .tokenMaxTtl(600)\n .tokenPolicies( \n \"policy_a\",\n \"policy_b\")\n .addGroupAliases(true)\n .build());\n\n }\n}\n```\n```yaml\nresources:\n gcp:\n type: vault:AuthBackend\n properties:\n path: gcp\n type: gcp\n test:\n type: vault:gcp:AuthBackendRole\n properties:\n backend: ${gcp.path}\n role: test\n type: iam\n boundServiceAccounts:\n - test\n boundProjects:\n - test\n tokenTtl: 300\n tokenMaxTtl: 600\n tokenPolicies:\n - policy_a\n - policy_b\n addGroupAliases: true\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nGCP authentication roles can be imported using the `path`, e.g.\n\n```sh\n $ pulumi import vault:gcp/authBackendRole:AuthBackendRole my_role auth/gcp/role/my_role\n```\n\n ",
+ "description": "Provides a resource to create a role in an [GCP auth backend within Vault](https://www.vaultproject.io/docs/auth/gcp.html).\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst gcp = new vault.AuthBackend(\"gcp\", {\n path: \"gcp\",\n type: \"gcp\",\n});\nconst test = new vault.gcp.AuthBackendRole(\"test\", {\n backend: gcp.path,\n role: \"test\",\n type: \"iam\",\n boundServiceAccounts: [\"test\"],\n boundProjects: [\"test\"],\n tokenTtl: 300,\n tokenMaxTtl: 600,\n tokenPolicies: [\n \"policy_a\",\n \"policy_b\",\n ],\n addGroupAliases: true,\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\ngcp = vault.AuthBackend(\"gcp\",\n path=\"gcp\",\n type=\"gcp\")\ntest = vault.gcp.AuthBackendRole(\"test\",\n backend=gcp.path,\n role=\"test\",\n type=\"iam\",\n bound_service_accounts=[\"test\"],\n bound_projects=[\"test\"],\n token_ttl=300,\n token_max_ttl=600,\n token_policies=[\n \"policy_a\",\n \"policy_b\",\n ],\n add_group_aliases=True)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var gcp = new Vault.AuthBackend(\"gcp\", new()\n {\n Path = \"gcp\",\n Type = \"gcp\",\n });\n\n var test = new Vault.Gcp.AuthBackendRole(\"test\", new()\n {\n Backend = gcp.Path,\n Role = \"test\",\n Type = \"iam\",\n BoundServiceAccounts = new[]\n {\n \"test\",\n },\n BoundProjects = new[]\n {\n \"test\",\n },\n TokenTtl = 300,\n TokenMaxTtl = 600,\n TokenPolicies = new[]\n {\n \"policy_a\",\n \"policy_b\",\n },\n AddGroupAliases = true,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault\"\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/gcp\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tgcp, err := vault.NewAuthBackend(ctx, \"gcp\", \u0026vault.AuthBackendArgs{\n\t\t\tPath: pulumi.String(\"gcp\"),\n\t\t\tType: pulumi.String(\"gcp\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = gcp.NewAuthBackendRole(ctx, \"test\", \u0026gcp.AuthBackendRoleArgs{\n\t\t\tBackend: gcp.Path,\n\t\t\tRole: pulumi.String(\"test\"),\n\t\t\tType: pulumi.String(\"iam\"),\n\t\t\tBoundServiceAccounts: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"test\"),\n\t\t\t},\n\t\t\tBoundProjects: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"test\"),\n\t\t\t},\n\t\t\tTokenTtl: pulumi.Int(300),\n\t\t\tTokenMaxTtl: pulumi.Int(600),\n\t\t\tTokenPolicies: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"policy_a\"),\n\t\t\t\tpulumi.String(\"policy_b\"),\n\t\t\t},\n\t\t\tAddGroupAliases: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.AuthBackend;\nimport com.pulumi.vault.AuthBackendArgs;\nimport com.pulumi.vault.gcp.AuthBackendRole;\nimport com.pulumi.vault.gcp.AuthBackendRoleArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var gcp = new AuthBackend(\"gcp\", AuthBackendArgs.builder() \n .path(\"gcp\")\n .type(\"gcp\")\n .build());\n\n var test = new AuthBackendRole(\"test\", AuthBackendRoleArgs.builder() \n .backend(gcp.path())\n .role(\"test\")\n .type(\"iam\")\n .boundServiceAccounts(\"test\")\n .boundProjects(\"test\")\n .tokenTtl(300)\n .tokenMaxTtl(600)\n .tokenPolicies( \n \"policy_a\",\n \"policy_b\")\n .addGroupAliases(true)\n .build());\n\n }\n}\n```\n```yaml\nresources:\n gcp:\n type: vault:AuthBackend\n properties:\n path: gcp\n type: gcp\n test:\n type: vault:gcp:AuthBackendRole\n properties:\n backend: ${gcp.path}\n role: test\n type: iam\n boundServiceAccounts:\n - test\n boundProjects:\n - test\n tokenTtl: 300\n tokenMaxTtl: 600\n tokenPolicies:\n - policy_a\n - policy_b\n addGroupAliases: true\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nGCP authentication roles can be imported using the `path`, e.g.\n\n```sh\n $ pulumi import vault:gcp/authBackendRole:AuthBackendRole my_role auth/gcp/role/my_role\n```\n ",
"properties": {
"addGroupAliases": {
"type": "boolean"
@@ -13506,7 +10635,7 @@
"items": {
"type": "string"
},
- "description": "GCP Projects that the role exists within\n"
+ "description": "An array of GCP project IDs. Only entities belonging to this project can authenticate under the role.\n"
},
"boundRegions": {
"type": "array",
@@ -13632,7 +10761,7 @@
"items": {
"type": "string"
},
- "description": "GCP Projects that the role exists within\n",
+ "description": "An array of GCP project IDs. Only entities belonging to this project can authenticate under the role.\n",
"willReplaceOnChanges": true
},
"boundRegions": {
@@ -13756,7 +10885,7 @@
"items": {
"type": "string"
},
- "description": "GCP Projects that the role exists within\n",
+ "description": "An array of GCP project IDs. Only entities belonging to this project can authenticate under the role.\n",
"willReplaceOnChanges": true
},
"boundRegions": {
@@ -13846,11 +10975,11 @@
}
},
"vault:gcp/secretBackend:SecretBackend": {
- "description": "{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as fs from \"fs\";\nimport * as vault from \"@pulumi/vault\";\n\nconst gcp = new vault.gcp.SecretBackend(\"gcp\", {credentials: fs.readFileSync(\"credentials.json\")});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\ngcp = vault.gcp.SecretBackend(\"gcp\", credentials=(lambda path: open(path).read())(\"credentials.json\"))\n```\n```csharp\nusing System.Collections.Generic;\nusing System.IO;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var gcp = new Vault.Gcp.SecretBackend(\"gcp\", new()\n {\n Credentials = File.ReadAllText(\"credentials.json\"),\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"io/ioutil\"\n\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/gcp\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc readFileOrPanic(path string) pulumi.StringPtrInput {\n\tdata, err := ioutil.ReadFile(path)\n\tif err != nil {\n\t\tpanic(err.Error())\n\t}\n\treturn pulumi.String(string(data))\n}\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := gcp.NewSecretBackend(ctx, \"gcp\", \u0026gcp.SecretBackendArgs{\n\t\t\tCredentials: readFileOrPanic(\"credentials.json\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.gcp.SecretBackend;\nimport com.pulumi.vault.gcp.SecretBackendArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var gcp = new SecretBackend(\"gcp\", SecretBackendArgs.builder() \n .credentials(Files.readString(Paths.get(\"credentials.json\")))\n .build());\n\n }\n}\n```\n{{% /example %}}\n{{% /examples %}}",
+ "description": "{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as fs from \"fs\";\nimport * as vault from \"@pulumi/vault\";\n\nconst gcp = new vault.gcp.SecretBackend(\"gcp\", {credentials: fs.readFileSync(\"credentials.json\")});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\ngcp = vault.gcp.SecretBackend(\"gcp\", credentials=(lambda path: open(path).read())(\"credentials.json\"))\n```\n```csharp\nusing System.Collections.Generic;\nusing System.IO;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var gcp = new Vault.Gcp.SecretBackend(\"gcp\", new()\n {\n Credentials = File.ReadAllText(\"credentials.json\"),\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"os\"\n\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/gcp\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc readFileOrPanic(path string) pulumi.StringPtrInput {\n\tdata, err := os.ReadFile(path)\n\tif err != nil {\n\t\tpanic(err.Error())\n\t}\n\treturn pulumi.String(string(data))\n}\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := gcp.NewSecretBackend(ctx, \"gcp\", \u0026gcp.SecretBackendArgs{\n\t\t\tCredentials: readFileOrPanic(\"credentials.json\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.gcp.SecretBackend;\nimport com.pulumi.vault.gcp.SecretBackendArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var gcp = new SecretBackend(\"gcp\", SecretBackendArgs.builder() \n .credentials(Files.readString(Paths.get(\"credentials.json\")))\n .build());\n\n }\n}\n```\n```yaml\nresources:\n gcp:\n type: vault:gcp:SecretBackend\n properties:\n credentials:\n fn::readFile: credentials.json\n```\n{{% /example %}}\n{{% /examples %}}",
"properties": {
"credentials": {
"type": "string",
- "description": "The GCP service account credentials in JSON format.\n",
+ "description": "JSON-encoded credentials to use to connect to GCP\n",
"secret": true
},
"defaultLeaseTtlSeconds": {
@@ -13885,7 +11014,7 @@
"inputProperties": {
"credentials": {
"type": "string",
- "description": "The GCP service account credentials in JSON format.\n",
+ "description": "JSON-encoded credentials to use to connect to GCP\n",
"secret": true
},
"defaultLeaseTtlSeconds": {
@@ -13924,7 +11053,7 @@
"properties": {
"credentials": {
"type": "string",
- "description": "The GCP service account credentials in JSON format.\n",
+ "description": "JSON-encoded credentials to use to connect to GCP\n",
"secret": true
},
"defaultLeaseTtlSeconds": {
@@ -13962,7 +11091,7 @@
}
},
"vault:gcp/secretImpersonatedAccount:SecretImpersonatedAccount": {
- "description": "Creates a Impersonated Account in the [GCP Secrets Engine](https://www.vaultproject.io/docs/secrets/gcp/index.html) for Vault.\n\nEach [impersonated account](https://www.vaultproject.io/docs/secrets/gcp/index.html#impersonated-accounts) is tied to a separately managed\nService Account.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as fs from \"fs\";\nimport * as gcp from \"@pulumi/gcp\";\nimport * as vault from \"@pulumi/vault\";\n\nconst _this = new gcp.serviceaccount.Account(\"this\", {accountId: \"my-awesome-account\"});\nconst gcp = new vault.gcp.SecretBackend(\"gcp\", {\n path: \"gcp\",\n credentials: fs.readFileSync(\"credentials.json\"),\n});\nconst impersonatedAccount = new vault.gcp.SecretImpersonatedAccount(\"impersonatedAccount\", {\n backend: gcp.path,\n impersonatedAccount: \"this\",\n serviceAccountEmail: _this.email,\n tokenScopes: [\"https://www.googleapis.com/auth/cloud-platform\"],\n});\n```\n```python\nimport pulumi\nimport pulumi_gcp as gcp\nimport pulumi_vault as vault\n\nthis = gcp.service_account.Account(\"this\", account_id=\"my-awesome-account\")\ngcp = vault.gcp.SecretBackend(\"gcp\",\n path=\"gcp\",\n credentials=(lambda path: open(path).read())(\"credentials.json\"))\nimpersonated_account = vault.gcp.SecretImpersonatedAccount(\"impersonatedAccount\",\n backend=gcp.path,\n impersonated_account=\"this\",\n service_account_email=this.email,\n token_scopes=[\"https://www.googleapis.com/auth/cloud-platform\"])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.IO;\nusing Pulumi;\nusing Gcp = Pulumi.Gcp;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @this = new Gcp.ServiceAccount.Account(\"this\", new()\n {\n AccountId = \"my-awesome-account\",\n });\n\n var gcp = new Vault.Gcp.SecretBackend(\"gcp\", new()\n {\n Path = \"gcp\",\n Credentials = File.ReadAllText(\"credentials.json\"),\n });\n\n var impersonatedAccount = new Vault.Gcp.SecretImpersonatedAccount(\"impersonatedAccount\", new()\n {\n Backend = gcp.Path,\n ImpersonatedAccount = \"this\",\n ServiceAccountEmail = @this.Email,\n TokenScopes = new[]\n {\n \"https://www.googleapis.com/auth/cloud-platform\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"io/ioutil\"\n\n\t\"github.com/pulumi/pulumi-gcp/sdk/v5/go/gcp/serviceAccount\"\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/gcp\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc readFileOrPanic(path string) pulumi.StringPtrInput {\n\tdata, err := ioutil.ReadFile(path)\n\tif err != nil {\n\t\tpanic(err.Error())\n\t}\n\treturn pulumi.String(string(data))\n}\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tthis, err := serviceAccount.NewAccount(ctx, \"this\", \u0026serviceAccount.AccountArgs{\n\t\t\tAccountId: pulumi.String(\"my-awesome-account\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tgcp, err := gcp.NewSecretBackend(ctx, \"gcp\", \u0026gcp.SecretBackendArgs{\n\t\t\tPath: pulumi.String(\"gcp\"),\n\t\t\tCredentials: readFileOrPanic(\"credentials.json\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = gcp.NewSecretImpersonatedAccount(ctx, \"impersonatedAccount\", \u0026gcp.SecretImpersonatedAccountArgs{\n\t\t\tBackend: gcp.Path,\n\t\t\tImpersonatedAccount: pulumi.String(\"this\"),\n\t\t\tServiceAccountEmail: this.Email,\n\t\t\tTokenScopes: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"https://www.googleapis.com/auth/cloud-platform\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.gcp.serviceAccount.Account;\nimport com.pulumi.gcp.serviceAccount.AccountArgs;\nimport com.pulumi.vault.gcp.SecretBackend;\nimport com.pulumi.vault.gcp.SecretBackendArgs;\nimport com.pulumi.vault.gcp.SecretImpersonatedAccount;\nimport com.pulumi.vault.gcp.SecretImpersonatedAccountArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var this_ = new Account(\"this\", AccountArgs.builder() \n .accountId(\"my-awesome-account\")\n .build());\n\n var gcp = new SecretBackend(\"gcp\", SecretBackendArgs.builder() \n .path(\"gcp\")\n .credentials(Files.readString(Paths.get(\"credentials.json\")))\n .build());\n\n var impersonatedAccount = new SecretImpersonatedAccount(\"impersonatedAccount\", SecretImpersonatedAccountArgs.builder() \n .backend(gcp.path())\n .impersonatedAccount(\"this\")\n .serviceAccountEmail(this_.email())\n .tokenScopes(\"https://www.googleapis.com/auth/cloud-platform\")\n .build());\n\n }\n}\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nA impersonated account can be imported using its Vault Path. For example, referencing the example above,\n\n```sh\n $ pulumi import vault:gcp/secretImpersonatedAccount:SecretImpersonatedAccount impersonated_account gcp/impersonated-account/project_viewer\n```\n\n ",
+ "description": "Creates a Impersonated Account in the [GCP Secrets Engine](https://www.vaultproject.io/docs/secrets/gcp/index.html) for Vault.\n\nEach [impersonated account](https://www.vaultproject.io/docs/secrets/gcp/index.html#impersonated-accounts) is tied to a separately managed\nService Account.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as fs from \"fs\";\nimport * as gcp from \"@pulumi/gcp\";\nimport * as vault from \"@pulumi/vault\";\n\nconst _this = new gcp.serviceaccount.Account(\"this\", {accountId: \"my-awesome-account\"});\nconst gcp = new vault.gcp.SecretBackend(\"gcp\", {\n path: \"gcp\",\n credentials: fs.readFileSync(\"credentials.json\"),\n});\nconst impersonatedAccount = new vault.gcp.SecretImpersonatedAccount(\"impersonatedAccount\", {\n backend: gcp.path,\n impersonatedAccount: \"this\",\n serviceAccountEmail: _this.email,\n tokenScopes: [\"https://www.googleapis.com/auth/cloud-platform\"],\n});\n```\n```python\nimport pulumi\nimport pulumi_gcp as gcp\nimport pulumi_vault as vault\n\nthis = gcp.service_account.Account(\"this\", account_id=\"my-awesome-account\")\ngcp = vault.gcp.SecretBackend(\"gcp\",\n path=\"gcp\",\n credentials=(lambda path: open(path).read())(\"credentials.json\"))\nimpersonated_account = vault.gcp.SecretImpersonatedAccount(\"impersonatedAccount\",\n backend=gcp.path,\n impersonated_account=\"this\",\n service_account_email=this.email,\n token_scopes=[\"https://www.googleapis.com/auth/cloud-platform\"])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.IO;\nusing System.Linq;\nusing Pulumi;\nusing Gcp = Pulumi.Gcp;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @this = new Gcp.ServiceAccount.Account(\"this\", new()\n {\n AccountId = \"my-awesome-account\",\n });\n\n var gcp = new Vault.Gcp.SecretBackend(\"gcp\", new()\n {\n Path = \"gcp\",\n Credentials = File.ReadAllText(\"credentials.json\"),\n });\n\n var impersonatedAccount = new Vault.Gcp.SecretImpersonatedAccount(\"impersonatedAccount\", new()\n {\n Backend = gcp.Path,\n ImpersonatedAccount = \"this\",\n ServiceAccountEmail = @this.Email,\n TokenScopes = new[]\n {\n \"https://www.googleapis.com/auth/cloud-platform\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"os\"\n\n\t\"github.com/pulumi/pulumi-gcp/sdk/v5/go/gcp/serviceAccount\"\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/gcp\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc readFileOrPanic(path string) pulumi.StringPtrInput {\n\tdata, err := os.ReadFile(path)\n\tif err != nil {\n\t\tpanic(err.Error())\n\t}\n\treturn pulumi.String(string(data))\n}\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tthis, err := serviceAccount.NewAccount(ctx, \"this\", \u0026serviceAccount.AccountArgs{\n\t\t\tAccountId: pulumi.String(\"my-awesome-account\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tgcp, err := gcp.NewSecretBackend(ctx, \"gcp\", \u0026gcp.SecretBackendArgs{\n\t\t\tPath: pulumi.String(\"gcp\"),\n\t\t\tCredentials: readFileOrPanic(\"credentials.json\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = gcp.NewSecretImpersonatedAccount(ctx, \"impersonatedAccount\", \u0026gcp.SecretImpersonatedAccountArgs{\n\t\t\tBackend: gcp.Path,\n\t\t\tImpersonatedAccount: pulumi.String(\"this\"),\n\t\t\tServiceAccountEmail: this.Email,\n\t\t\tTokenScopes: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"https://www.googleapis.com/auth/cloud-platform\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.gcp.serviceAccount.Account;\nimport com.pulumi.gcp.serviceAccount.AccountArgs;\nimport com.pulumi.vault.gcp.SecretBackend;\nimport com.pulumi.vault.gcp.SecretBackendArgs;\nimport com.pulumi.vault.gcp.SecretImpersonatedAccount;\nimport com.pulumi.vault.gcp.SecretImpersonatedAccountArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var this_ = new Account(\"this\", AccountArgs.builder() \n .accountId(\"my-awesome-account\")\n .build());\n\n var gcp = new SecretBackend(\"gcp\", SecretBackendArgs.builder() \n .path(\"gcp\")\n .credentials(Files.readString(Paths.get(\"credentials.json\")))\n .build());\n\n var impersonatedAccount = new SecretImpersonatedAccount(\"impersonatedAccount\", SecretImpersonatedAccountArgs.builder() \n .backend(gcp.path())\n .impersonatedAccount(\"this\")\n .serviceAccountEmail(this_.email())\n .tokenScopes(\"https://www.googleapis.com/auth/cloud-platform\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n this:\n type: gcp:serviceAccount:Account\n properties:\n accountId: my-awesome-account\n gcp:\n type: vault:gcp:SecretBackend\n properties:\n path: gcp\n credentials:\n fn::readFile: credentials.json\n impersonatedAccount:\n type: vault:gcp:SecretImpersonatedAccount\n properties:\n backend: ${gcp.path}\n impersonatedAccount: this\n serviceAccountEmail: ${this.email}\n tokenScopes:\n - https://www.googleapis.com/auth/cloud-platform\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nA impersonated account can be imported using its Vault Path. For example, referencing the example above,\n\n```sh\n $ pulumi import vault:gcp/secretImpersonatedAccount:SecretImpersonatedAccount impersonated_account gcp/impersonated-account/project_viewer\n```\n ",
"properties": {
"backend": {
"type": "string",
@@ -14071,7 +11200,7 @@
}
},
"vault:gcp/secretRoleset:SecretRoleset": {
- "description": "Creates a Roleset in the [GCP Secrets Engine](https://www.vaultproject.io/docs/secrets/gcp/index.html) for Vault.\n\nEach Roleset is [tied](https://www.vaultproject.io/docs/secrets/gcp/index.html#service-accounts-are-tied-to-rolesets) to a Service Account, and can have one or more [bindings](https://www.vaultproject.io/docs/secrets/gcp/index.html#roleset-bindings) associated with it.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as fs from \"fs\";\nimport * as vault from \"@pulumi/vault\";\n\nconst project = \"my-awesome-project\";\nconst gcp = new vault.gcp.SecretBackend(\"gcp\", {\n path: \"gcp\",\n credentials: fs.readFileSync(\"credentials.json\"),\n});\nconst roleset = new vault.gcp.SecretRoleset(\"roleset\", {\n backend: gcp.path,\n roleset: \"project_viewer\",\n secretType: \"access_token\",\n project: project,\n tokenScopes: [\"https://www.googleapis.com/auth/cloud-platform\"],\n bindings: [{\n resource: `//cloudresourcemanager.googleapis.com/projects/${project}`,\n roles: [\"roles/viewer\"],\n }],\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nproject = \"my-awesome-project\"\ngcp = vault.gcp.SecretBackend(\"gcp\",\n path=\"gcp\",\n credentials=(lambda path: open(path).read())(\"credentials.json\"))\nroleset = vault.gcp.SecretRoleset(\"roleset\",\n backend=gcp.path,\n roleset=\"project_viewer\",\n secret_type=\"access_token\",\n project=project,\n token_scopes=[\"https://www.googleapis.com/auth/cloud-platform\"],\n bindings=[vault.gcp.SecretRolesetBindingArgs(\n resource=f\"//cloudresourcemanager.googleapis.com/projects/{project}\",\n roles=[\"roles/viewer\"],\n )])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.IO;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var project = \"my-awesome-project\";\n\n var gcp = new Vault.Gcp.SecretBackend(\"gcp\", new()\n {\n Path = \"gcp\",\n Credentials = File.ReadAllText(\"credentials.json\"),\n });\n\n var roleset = new Vault.Gcp.SecretRoleset(\"roleset\", new()\n {\n Backend = gcp.Path,\n Roleset = \"project_viewer\",\n SecretType = \"access_token\",\n Project = project,\n TokenScopes = new[]\n {\n \"https://www.googleapis.com/auth/cloud-platform\",\n },\n Bindings = new[]\n {\n new Vault.Gcp.Inputs.SecretRolesetBindingArgs\n {\n Resource = $\"//cloudresourcemanager.googleapis.com/projects/{project}\",\n Roles = new[]\n {\n \"roles/viewer\",\n },\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\t\"io/ioutil\"\n\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/gcp\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc readFileOrPanic(path string) pulumi.StringPtrInput {\n\tdata, err := ioutil.ReadFile(path)\n\tif err != nil {\n\t\tpanic(err.Error())\n\t}\n\treturn pulumi.String(string(data))\n}\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tproject := \"my-awesome-project\"\n\t\tgcp, err := gcp.NewSecretBackend(ctx, \"gcp\", \u0026gcp.SecretBackendArgs{\n\t\t\tPath: pulumi.String(\"gcp\"),\n\t\t\tCredentials: readFileOrPanic(\"credentials.json\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = gcp.NewSecretRoleset(ctx, \"roleset\", \u0026gcp.SecretRolesetArgs{\n\t\t\tBackend: gcp.Path,\n\t\t\tRoleset: pulumi.String(\"project_viewer\"),\n\t\t\tSecretType: pulumi.String(\"access_token\"),\n\t\t\tProject: pulumi.String(project),\n\t\t\tTokenScopes: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"https://www.googleapis.com/auth/cloud-platform\"),\n\t\t\t},\n\t\t\tBindings: gcp.SecretRolesetBindingArray{\n\t\t\t\t\u0026gcp.SecretRolesetBindingArgs{\n\t\t\t\t\tResource: pulumi.String(fmt.Sprintf(\"//cloudresourcemanager.googleapis.com/projects/%v\", project)),\n\t\t\t\t\tRoles: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"roles/viewer\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.gcp.SecretBackend;\nimport com.pulumi.vault.gcp.SecretBackendArgs;\nimport com.pulumi.vault.gcp.SecretRoleset;\nimport com.pulumi.vault.gcp.SecretRolesetArgs;\nimport com.pulumi.vault.gcp.inputs.SecretRolesetBindingArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var project = \"my-awesome-project\";\n\n var gcp = new SecretBackend(\"gcp\", SecretBackendArgs.builder() \n .path(\"gcp\")\n .credentials(Files.readString(Paths.get(\"credentials.json\")))\n .build());\n\n var roleset = new SecretRoleset(\"roleset\", SecretRolesetArgs.builder() \n .backend(gcp.path())\n .roleset(\"project_viewer\")\n .secretType(\"access_token\")\n .project(project)\n .tokenScopes(\"https://www.googleapis.com/auth/cloud-platform\")\n .bindings(SecretRolesetBindingArgs.builder()\n .resource(String.format(\"//cloudresourcemanager.googleapis.com/projects/%s\", project))\n .roles(\"roles/viewer\")\n .build())\n .build());\n\n }\n}\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nA roleset can be imported using its Vault Path. For example, referencing the example above,\n\n```sh\n $ pulumi import vault:gcp/secretRoleset:SecretRoleset roleset gcp/roleset/project_viewer\n```\n\n ",
+ "description": "Creates a Roleset in the [GCP Secrets Engine](https://www.vaultproject.io/docs/secrets/gcp/index.html) for Vault.\n\nEach Roleset is [tied](https://www.vaultproject.io/docs/secrets/gcp/index.html#service-accounts-are-tied-to-rolesets) to a Service Account, and can have one or more [bindings](https://www.vaultproject.io/docs/secrets/gcp/index.html#roleset-bindings) associated with it.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as fs from \"fs\";\nimport * as vault from \"@pulumi/vault\";\n\nconst project = \"my-awesome-project\";\nconst gcp = new vault.gcp.SecretBackend(\"gcp\", {\n path: \"gcp\",\n credentials: fs.readFileSync(\"credentials.json\"),\n});\nconst roleset = new vault.gcp.SecretRoleset(\"roleset\", {\n backend: gcp.path,\n roleset: \"project_viewer\",\n secretType: \"access_token\",\n project: project,\n tokenScopes: [\"https://www.googleapis.com/auth/cloud-platform\"],\n bindings: [{\n resource: `//cloudresourcemanager.googleapis.com/projects/${project}`,\n roles: [\"roles/viewer\"],\n }],\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nproject = \"my-awesome-project\"\ngcp = vault.gcp.SecretBackend(\"gcp\",\n path=\"gcp\",\n credentials=(lambda path: open(path).read())(\"credentials.json\"))\nroleset = vault.gcp.SecretRoleset(\"roleset\",\n backend=gcp.path,\n roleset=\"project_viewer\",\n secret_type=\"access_token\",\n project=project,\n token_scopes=[\"https://www.googleapis.com/auth/cloud-platform\"],\n bindings=[vault.gcp.SecretRolesetBindingArgs(\n resource=f\"//cloudresourcemanager.googleapis.com/projects/{project}\",\n roles=[\"roles/viewer\"],\n )])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.IO;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var project = \"my-awesome-project\";\n\n var gcp = new Vault.Gcp.SecretBackend(\"gcp\", new()\n {\n Path = \"gcp\",\n Credentials = File.ReadAllText(\"credentials.json\"),\n });\n\n var roleset = new Vault.Gcp.SecretRoleset(\"roleset\", new()\n {\n Backend = gcp.Path,\n Roleset = \"project_viewer\",\n SecretType = \"access_token\",\n Project = project,\n TokenScopes = new[]\n {\n \"https://www.googleapis.com/auth/cloud-platform\",\n },\n Bindings = new[]\n {\n new Vault.Gcp.Inputs.SecretRolesetBindingArgs\n {\n Resource = $\"//cloudresourcemanager.googleapis.com/projects/{project}\",\n Roles = new[]\n {\n \"roles/viewer\",\n },\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\t\"os\"\n\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/gcp\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc readFileOrPanic(path string) pulumi.StringPtrInput {\n\tdata, err := os.ReadFile(path)\n\tif err != nil {\n\t\tpanic(err.Error())\n\t}\n\treturn pulumi.String(string(data))\n}\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tproject := \"my-awesome-project\"\n\t\tgcp, err := gcp.NewSecretBackend(ctx, \"gcp\", \u0026gcp.SecretBackendArgs{\n\t\t\tPath: pulumi.String(\"gcp\"),\n\t\t\tCredentials: readFileOrPanic(\"credentials.json\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = gcp.NewSecretRoleset(ctx, \"roleset\", \u0026gcp.SecretRolesetArgs{\n\t\t\tBackend: gcp.Path,\n\t\t\tRoleset: pulumi.String(\"project_viewer\"),\n\t\t\tSecretType: pulumi.String(\"access_token\"),\n\t\t\tProject: pulumi.String(project),\n\t\t\tTokenScopes: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"https://www.googleapis.com/auth/cloud-platform\"),\n\t\t\t},\n\t\t\tBindings: gcp.SecretRolesetBindingArray{\n\t\t\t\t\u0026gcp.SecretRolesetBindingArgs{\n\t\t\t\t\tResource: pulumi.String(fmt.Sprintf(\"//cloudresourcemanager.googleapis.com/projects/%v\", project)),\n\t\t\t\t\tRoles: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"roles/viewer\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.gcp.SecretBackend;\nimport com.pulumi.vault.gcp.SecretBackendArgs;\nimport com.pulumi.vault.gcp.SecretRoleset;\nimport com.pulumi.vault.gcp.SecretRolesetArgs;\nimport com.pulumi.vault.gcp.inputs.SecretRolesetBindingArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var project = \"my-awesome-project\";\n\n var gcp = new SecretBackend(\"gcp\", SecretBackendArgs.builder() \n .path(\"gcp\")\n .credentials(Files.readString(Paths.get(\"credentials.json\")))\n .build());\n\n var roleset = new SecretRoleset(\"roleset\", SecretRolesetArgs.builder() \n .backend(gcp.path())\n .roleset(\"project_viewer\")\n .secretType(\"access_token\")\n .project(project)\n .tokenScopes(\"https://www.googleapis.com/auth/cloud-platform\")\n .bindings(SecretRolesetBindingArgs.builder()\n .resource(String.format(\"//cloudresourcemanager.googleapis.com/projects/%s\", project))\n .roles(\"roles/viewer\")\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n gcp:\n type: vault:gcp:SecretBackend\n properties:\n path: gcp\n credentials:\n fn::readFile: credentials.json\n roleset:\n type: vault:gcp:SecretRoleset\n properties:\n backend: ${gcp.path}\n roleset: project_viewer\n secretType: access_token\n project: ${project}\n tokenScopes:\n - https://www.googleapis.com/auth/cloud-platform\n bindings:\n - resource: //cloudresourcemanager.googleapis.com/projects/${project}\n roles:\n - roles/viewer\nvariables:\n project: my-awesome-project\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nA roleset can be imported using its Vault Path. For example, referencing the example above,\n\n```sh\n $ pulumi import vault:gcp/secretRoleset:SecretRoleset roleset gcp/roleset/project_viewer\n```\n ",
"properties": {
"backend": {
"type": "string",
@@ -14102,7 +11231,7 @@
},
"serviceAccountEmail": {
"type": "string",
- "description": "Email of the service account created by Vault for this Roleset\n"
+ "description": "Email of the service account created by Vault for this Roleset.\n"
},
"tokenScopes": {
"type": "array",
@@ -14204,7 +11333,7 @@
},
"serviceAccountEmail": {
"type": "string",
- "description": "Email of the service account created by Vault for this Roleset\n"
+ "description": "Email of the service account created by Vault for this Roleset.\n"
},
"tokenScopes": {
"type": "array",
@@ -14218,7 +11347,7 @@
}
},
"vault:gcp/secretStaticAccount:SecretStaticAccount": {
- "description": "Creates a Static Account in the [GCP Secrets Engine](https://www.vaultproject.io/docs/secrets/gcp/index.html) for Vault.\n\nEach [static account](https://www.vaultproject.io/docs/secrets/gcp/index.html#static-accounts) is tied to a separately managed\nService Account, and can have one or more [bindings](https://www.vaultproject.io/docs/secrets/gcp/index.html#bindings) associated with it.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as fs from \"fs\";\nimport * as gcp from \"@pulumi/gcp\";\nimport * as vault from \"@pulumi/vault\";\n\nconst _this = new gcp.serviceaccount.Account(\"this\", {accountId: \"my-awesome-account\"});\nconst gcp = new vault.gcp.SecretBackend(\"gcp\", {\n path: \"gcp\",\n credentials: fs.readFileSync(\"credentials.json\"),\n});\nconst staticAccount = new vault.gcp.SecretStaticAccount(\"staticAccount\", {\n backend: gcp.path,\n staticAccount: \"project_viewer\",\n secretType: \"access_token\",\n tokenScopes: [\"https://www.googleapis.com/auth/cloud-platform\"],\n serviceAccountEmail: _this.email,\n bindings: [{\n resource: pulumi.interpolate`//cloudresourcemanager.googleapis.com/projects/${_this.project}`,\n roles: [\"roles/viewer\"],\n }],\n});\n```\n```python\nimport pulumi\nimport pulumi_gcp as gcp\nimport pulumi_vault as vault\n\nthis = gcp.service_account.Account(\"this\", account_id=\"my-awesome-account\")\ngcp = vault.gcp.SecretBackend(\"gcp\",\n path=\"gcp\",\n credentials=(lambda path: open(path).read())(\"credentials.json\"))\nstatic_account = vault.gcp.SecretStaticAccount(\"staticAccount\",\n backend=gcp.path,\n static_account=\"project_viewer\",\n secret_type=\"access_token\",\n token_scopes=[\"https://www.googleapis.com/auth/cloud-platform\"],\n service_account_email=this.email,\n bindings=[vault.gcp.SecretStaticAccountBindingArgs(\n resource=this.project.apply(lambda project: f\"//cloudresourcemanager.googleapis.com/projects/{project}\"),\n roles=[\"roles/viewer\"],\n )])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.IO;\nusing Pulumi;\nusing Gcp = Pulumi.Gcp;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @this = new Gcp.ServiceAccount.Account(\"this\", new()\n {\n AccountId = \"my-awesome-account\",\n });\n\n var gcp = new Vault.Gcp.SecretBackend(\"gcp\", new()\n {\n Path = \"gcp\",\n Credentials = File.ReadAllText(\"credentials.json\"),\n });\n\n var staticAccount = new Vault.Gcp.SecretStaticAccount(\"staticAccount\", new()\n {\n Backend = gcp.Path,\n StaticAccount = \"project_viewer\",\n SecretType = \"access_token\",\n TokenScopes = new[]\n {\n \"https://www.googleapis.com/auth/cloud-platform\",\n },\n ServiceAccountEmail = @this.Email,\n Bindings = new[]\n {\n new Vault.Gcp.Inputs.SecretStaticAccountBindingArgs\n {\n Resource = @this.Project.Apply(project =\u003e $\"//cloudresourcemanager.googleapis.com/projects/{project}\"),\n Roles = new[]\n {\n \"roles/viewer\",\n },\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\t\"io/ioutil\"\n\n\t\"github.com/pulumi/pulumi-gcp/sdk/v5/go/gcp/serviceAccount\"\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/gcp\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc readFileOrPanic(path string) pulumi.StringPtrInput {\n\tdata, err := ioutil.ReadFile(path)\n\tif err != nil {\n\t\tpanic(err.Error())\n\t}\n\treturn pulumi.String(string(data))\n}\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tthis, err := serviceAccount.NewAccount(ctx, \"this\", \u0026serviceAccount.AccountArgs{\n\t\t\tAccountId: pulumi.String(\"my-awesome-account\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tgcp, err := gcp.NewSecretBackend(ctx, \"gcp\", \u0026gcp.SecretBackendArgs{\n\t\t\tPath: pulumi.String(\"gcp\"),\n\t\t\tCredentials: readFileOrPanic(\"credentials.json\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = gcp.NewSecretStaticAccount(ctx, \"staticAccount\", \u0026gcp.SecretStaticAccountArgs{\n\t\t\tBackend: gcp.Path,\n\t\t\tStaticAccount: pulumi.String(\"project_viewer\"),\n\t\t\tSecretType: pulumi.String(\"access_token\"),\n\t\t\tTokenScopes: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"https://www.googleapis.com/auth/cloud-platform\"),\n\t\t\t},\n\t\t\tServiceAccountEmail: this.Email,\n\t\t\tBindings: gcp.SecretStaticAccountBindingArray{\n\t\t\t\t\u0026gcp.SecretStaticAccountBindingArgs{\n\t\t\t\t\tResource: this.Project.ApplyT(func(project string) (string, error) {\n\t\t\t\t\t\treturn fmt.Sprintf(\"//cloudresourcemanager.googleapis.com/projects/%v\", project), nil\n\t\t\t\t\t}).(pulumi.StringOutput),\n\t\t\t\t\tRoles: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"roles/viewer\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.gcp.serviceAccount.Account;\nimport com.pulumi.gcp.serviceAccount.AccountArgs;\nimport com.pulumi.vault.gcp.SecretBackend;\nimport com.pulumi.vault.gcp.SecretBackendArgs;\nimport com.pulumi.vault.gcp.SecretStaticAccount;\nimport com.pulumi.vault.gcp.SecretStaticAccountArgs;\nimport com.pulumi.vault.gcp.inputs.SecretStaticAccountBindingArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var this_ = new Account(\"this\", AccountArgs.builder() \n .accountId(\"my-awesome-account\")\n .build());\n\n var gcp = new SecretBackend(\"gcp\", SecretBackendArgs.builder() \n .path(\"gcp\")\n .credentials(Files.readString(Paths.get(\"credentials.json\")))\n .build());\n\n var staticAccount = new SecretStaticAccount(\"staticAccount\", SecretStaticAccountArgs.builder() \n .backend(gcp.path())\n .staticAccount(\"project_viewer\")\n .secretType(\"access_token\")\n .tokenScopes(\"https://www.googleapis.com/auth/cloud-platform\")\n .serviceAccountEmail(this_.email())\n .bindings(SecretStaticAccountBindingArgs.builder()\n .resource(this_.project().applyValue(project -\u003e String.format(\"//cloudresourcemanager.googleapis.com/projects/%s\", project)))\n .roles(\"roles/viewer\")\n .build())\n .build());\n\n }\n}\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nA static account can be imported using its Vault Path. For example, referencing the example above,\n\n```sh\n $ pulumi import vault:gcp/secretStaticAccount:SecretStaticAccount static_account gcp/static-account/project_viewer\n```\n\n ",
+ "description": "Creates a Static Account in the [GCP Secrets Engine](https://www.vaultproject.io/docs/secrets/gcp/index.html) for Vault.\n\nEach [static account](https://www.vaultproject.io/docs/secrets/gcp/index.html#static-accounts) is tied to a separately managed\nService Account, and can have one or more [bindings](https://www.vaultproject.io/docs/secrets/gcp/index.html#bindings) associated with it.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as fs from \"fs\";\nimport * as gcp from \"@pulumi/gcp\";\nimport * as vault from \"@pulumi/vault\";\n\nconst _this = new gcp.serviceaccount.Account(\"this\", {accountId: \"my-awesome-account\"});\nconst gcp = new vault.gcp.SecretBackend(\"gcp\", {\n path: \"gcp\",\n credentials: fs.readFileSync(\"credentials.json\"),\n});\nconst staticAccount = new vault.gcp.SecretStaticAccount(\"staticAccount\", {\n backend: gcp.path,\n staticAccount: \"project_viewer\",\n secretType: \"access_token\",\n tokenScopes: [\"https://www.googleapis.com/auth/cloud-platform\"],\n serviceAccountEmail: _this.email,\n bindings: [{\n resource: pulumi.interpolate`//cloudresourcemanager.googleapis.com/projects/${_this.project}`,\n roles: [\"roles/viewer\"],\n }],\n});\n```\n```python\nimport pulumi\nimport pulumi_gcp as gcp\nimport pulumi_vault as vault\n\nthis = gcp.service_account.Account(\"this\", account_id=\"my-awesome-account\")\ngcp = vault.gcp.SecretBackend(\"gcp\",\n path=\"gcp\",\n credentials=(lambda path: open(path).read())(\"credentials.json\"))\nstatic_account = vault.gcp.SecretStaticAccount(\"staticAccount\",\n backend=gcp.path,\n static_account=\"project_viewer\",\n secret_type=\"access_token\",\n token_scopes=[\"https://www.googleapis.com/auth/cloud-platform\"],\n service_account_email=this.email,\n bindings=[vault.gcp.SecretStaticAccountBindingArgs(\n resource=this.project.apply(lambda project: f\"//cloudresourcemanager.googleapis.com/projects/{project}\"),\n roles=[\"roles/viewer\"],\n )])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.IO;\nusing System.Linq;\nusing Pulumi;\nusing Gcp = Pulumi.Gcp;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @this = new Gcp.ServiceAccount.Account(\"this\", new()\n {\n AccountId = \"my-awesome-account\",\n });\n\n var gcp = new Vault.Gcp.SecretBackend(\"gcp\", new()\n {\n Path = \"gcp\",\n Credentials = File.ReadAllText(\"credentials.json\"),\n });\n\n var staticAccount = new Vault.Gcp.SecretStaticAccount(\"staticAccount\", new()\n {\n Backend = gcp.Path,\n StaticAccount = \"project_viewer\",\n SecretType = \"access_token\",\n TokenScopes = new[]\n {\n \"https://www.googleapis.com/auth/cloud-platform\",\n },\n ServiceAccountEmail = @this.Email,\n Bindings = new[]\n {\n new Vault.Gcp.Inputs.SecretStaticAccountBindingArgs\n {\n Resource = @this.Project.Apply(project =\u003e $\"//cloudresourcemanager.googleapis.com/projects/{project}\"),\n Roles = new[]\n {\n \"roles/viewer\",\n },\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\t\"os\"\n\n\t\"github.com/pulumi/pulumi-gcp/sdk/v5/go/gcp/serviceAccount\"\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/gcp\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc readFileOrPanic(path string) pulumi.StringPtrInput {\n\tdata, err := os.ReadFile(path)\n\tif err != nil {\n\t\tpanic(err.Error())\n\t}\n\treturn pulumi.String(string(data))\n}\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tthis, err := serviceAccount.NewAccount(ctx, \"this\", \u0026serviceAccount.AccountArgs{\n\t\t\tAccountId: pulumi.String(\"my-awesome-account\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tgcp, err := gcp.NewSecretBackend(ctx, \"gcp\", \u0026gcp.SecretBackendArgs{\n\t\t\tPath: pulumi.String(\"gcp\"),\n\t\t\tCredentials: readFileOrPanic(\"credentials.json\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = gcp.NewSecretStaticAccount(ctx, \"staticAccount\", \u0026gcp.SecretStaticAccountArgs{\n\t\t\tBackend: gcp.Path,\n\t\t\tStaticAccount: pulumi.String(\"project_viewer\"),\n\t\t\tSecretType: pulumi.String(\"access_token\"),\n\t\t\tTokenScopes: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"https://www.googleapis.com/auth/cloud-platform\"),\n\t\t\t},\n\t\t\tServiceAccountEmail: this.Email,\n\t\t\tBindings: gcp.SecretStaticAccountBindingArray{\n\t\t\t\t\u0026gcp.SecretStaticAccountBindingArgs{\n\t\t\t\t\tResource: this.Project.ApplyT(func(project string) (string, error) {\n\t\t\t\t\t\treturn fmt.Sprintf(\"//cloudresourcemanager.googleapis.com/projects/%v\", project), nil\n\t\t\t\t\t}).(pulumi.StringOutput),\n\t\t\t\t\tRoles: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"roles/viewer\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.gcp.serviceAccount.Account;\nimport com.pulumi.gcp.serviceAccount.AccountArgs;\nimport com.pulumi.vault.gcp.SecretBackend;\nimport com.pulumi.vault.gcp.SecretBackendArgs;\nimport com.pulumi.vault.gcp.SecretStaticAccount;\nimport com.pulumi.vault.gcp.SecretStaticAccountArgs;\nimport com.pulumi.vault.gcp.inputs.SecretStaticAccountBindingArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var this_ = new Account(\"this\", AccountArgs.builder() \n .accountId(\"my-awesome-account\")\n .build());\n\n var gcp = new SecretBackend(\"gcp\", SecretBackendArgs.builder() \n .path(\"gcp\")\n .credentials(Files.readString(Paths.get(\"credentials.json\")))\n .build());\n\n var staticAccount = new SecretStaticAccount(\"staticAccount\", SecretStaticAccountArgs.builder() \n .backend(gcp.path())\n .staticAccount(\"project_viewer\")\n .secretType(\"access_token\")\n .tokenScopes(\"https://www.googleapis.com/auth/cloud-platform\")\n .serviceAccountEmail(this_.email())\n .bindings(SecretStaticAccountBindingArgs.builder()\n .resource(this_.project().applyValue(project -\u003e String.format(\"//cloudresourcemanager.googleapis.com/projects/%s\", project)))\n .roles(\"roles/viewer\")\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n this:\n type: gcp:serviceAccount:Account\n properties:\n accountId: my-awesome-account\n gcp:\n type: vault:gcp:SecretBackend\n properties:\n path: gcp\n credentials:\n fn::readFile: credentials.json\n staticAccount:\n type: vault:gcp:SecretStaticAccount\n properties:\n backend: ${gcp.path}\n staticAccount: project_viewer\n secretType: access_token\n tokenScopes:\n - https://www.googleapis.com/auth/cloud-platform\n serviceAccountEmail: ${this.email}\n # Optional\n bindings:\n - resource: //cloudresourcemanager.googleapis.com/projects/${this.project}\n roles:\n - roles/viewer\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nA static account can be imported using its Vault Path. For example, referencing the example above,\n\n```sh\n $ pulumi import vault:gcp/secretStaticAccount:SecretStaticAccount static_account gcp/static-account/project_viewer\n```\n ",
"properties": {
"backend": {
"type": "string",
@@ -14363,7 +11492,7 @@
}
},
"vault:generic/endpoint:Endpoint": {
- "description": "{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst userpass = new vault.AuthBackend(\"userpass\", {type: \"userpass\"});\nconst u1 = new vault.generic.Endpoint(\"u1\", {\n path: \"auth/userpass/users/u1\",\n ignoreAbsentFields: true,\n dataJson: `{\n \"policies\": [\"p1\"],\n \"password\": \"changeme\"\n}\n`,\n}, {\n dependsOn: [userpass],\n});\nconst u1Token = new vault.generic.Endpoint(\"u1Token\", {\n path: \"auth/userpass/login/u1\",\n disableRead: true,\n disableDelete: true,\n dataJson: `{\n \"password\": \"changeme\"\n}\n`,\n}, {\n dependsOn: [u1],\n});\nconst u1Entity = new vault.generic.Endpoint(\"u1Entity\", {\n disableRead: true,\n disableDelete: true,\n path: \"identity/lookup/entity\",\n ignoreAbsentFields: true,\n writeFields: [\"id\"],\n dataJson: `{\n \"alias_name\": \"u1\",\n \"alias_mount_accessor\": vault_auth_backend.userpass.accessor\n}\n`,\n}, {\n dependsOn: [u1Token],\n});\nexport const u1Id = u1Entity.writeData.id;\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var userpass = new Vault.AuthBackend(\"userpass\", new()\n {\n Type = \"userpass\",\n });\n\n var u1 = new Vault.Generic.Endpoint(\"u1\", new()\n {\n Path = \"auth/userpass/users/u1\",\n IgnoreAbsentFields = true,\n DataJson = @\"{\n \"\"policies\"\": [\"\"p1\"\"],\n \"\"password\"\": \"\"changeme\"\"\n}\n\",\n }, new CustomResourceOptions\n {\n DependsOn = new[]\n {\n userpass,\n },\n });\n\n var u1Token = new Vault.Generic.Endpoint(\"u1Token\", new()\n {\n Path = \"auth/userpass/login/u1\",\n DisableRead = true,\n DisableDelete = true,\n DataJson = @\"{\n \"\"password\"\": \"\"changeme\"\"\n}\n\",\n }, new CustomResourceOptions\n {\n DependsOn = new[]\n {\n u1,\n },\n });\n\n var u1Entity = new Vault.Generic.Endpoint(\"u1Entity\", new()\n {\n DisableRead = true,\n DisableDelete = true,\n Path = \"identity/lookup/entity\",\n IgnoreAbsentFields = true,\n WriteFields = new[]\n {\n \"id\",\n },\n DataJson = @\"{\n \"\"alias_name\"\": \"\"u1\"\",\n \"\"alias_mount_accessor\"\": vault_auth_backend.userpass.accessor\n}\n\",\n }, new CustomResourceOptions\n {\n DependsOn = new[]\n {\n u1Token,\n },\n });\n\n return new Dictionary\u003cstring, object?\u003e\n {\n [\"u1Id\"] = u1Entity.WriteData.Apply(writeData =\u003e writeData.Id),\n };\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault\"\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/generic\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tuserpass, err := vault.NewAuthBackend(ctx, \"userpass\", \u0026vault.AuthBackendArgs{\n\t\t\tType: pulumi.String(\"userpass\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tu1, err := generic.NewEndpoint(ctx, \"u1\", \u0026generic.EndpointArgs{\n\t\t\tPath: pulumi.String(\"auth/userpass/users/u1\"),\n\t\t\tIgnoreAbsentFields: pulumi.Bool(true),\n\t\t\tDataJson: pulumi.String(\"{\\n \\\"policies\\\": [\\\"p1\\\"],\\n \\\"password\\\": \\\"changeme\\\"\\n}\\n\"),\n\t\t}, pulumi.DependsOn([]pulumi.Resource{\n\t\t\tuserpass,\n\t\t}))\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tu1Token, err := generic.NewEndpoint(ctx, \"u1Token\", \u0026generic.EndpointArgs{\n\t\t\tPath: pulumi.String(\"auth/userpass/login/u1\"),\n\t\t\tDisableRead: pulumi.Bool(true),\n\t\t\tDisableDelete: pulumi.Bool(true),\n\t\t\tDataJson: pulumi.String(\"{\\n \\\"password\\\": \\\"changeme\\\"\\n}\\n\"),\n\t\t}, pulumi.DependsOn([]pulumi.Resource{\n\t\t\tu1,\n\t\t}))\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tu1Entity, err := generic.NewEndpoint(ctx, \"u1Entity\", \u0026generic.EndpointArgs{\n\t\t\tDisableRead: pulumi.Bool(true),\n\t\t\tDisableDelete: pulumi.Bool(true),\n\t\t\tPath: pulumi.String(\"identity/lookup/entity\"),\n\t\t\tIgnoreAbsentFields: pulumi.Bool(true),\n\t\t\tWriteFields: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"id\"),\n\t\t\t},\n\t\t\tDataJson: pulumi.String(\"{\\n \\\"alias_name\\\": \\\"u1\\\",\\n \\\"alias_mount_accessor\\\": vault_auth_backend.userpass.accessor\\n}\\n\"),\n\t\t}, pulumi.DependsOn([]pulumi.Resource{\n\t\t\tu1Token,\n\t\t}))\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tctx.Export(\"u1Id\", u1Entity.WriteData.ApplyT(func(writeData map[string]string) (string, error) {\n\t\t\treturn writeData.Id, nil\n\t\t}).(pulumi.StringOutput))\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.AuthBackend;\nimport com.pulumi.vault.AuthBackendArgs;\nimport com.pulumi.vault.generic.Endpoint;\nimport com.pulumi.vault.generic.EndpointArgs;\nimport com.pulumi.resources.CustomResourceOptions;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var userpass = new AuthBackend(\"userpass\", AuthBackendArgs.builder() \n .type(\"userpass\")\n .build());\n\n var u1 = new Endpoint(\"u1\", EndpointArgs.builder() \n .path(\"auth/userpass/users/u1\")\n .ignoreAbsentFields(true)\n .dataJson(\"\"\"\n{\n \"policies\": [\"p1\"],\n \"password\": \"changeme\"\n}\n \"\"\")\n .build(), CustomResourceOptions.builder()\n .dependsOn(userpass)\n .build());\n\n var u1Token = new Endpoint(\"u1Token\", EndpointArgs.builder() \n .path(\"auth/userpass/login/u1\")\n .disableRead(true)\n .disableDelete(true)\n .dataJson(\"\"\"\n{\n \"password\": \"changeme\"\n}\n \"\"\")\n .build(), CustomResourceOptions.builder()\n .dependsOn(u1)\n .build());\n\n var u1Entity = new Endpoint(\"u1Entity\", EndpointArgs.builder() \n .disableRead(true)\n .disableDelete(true)\n .path(\"identity/lookup/entity\")\n .ignoreAbsentFields(true)\n .writeFields(\"id\")\n .dataJson(\"\"\"\n{\n \"alias_name\": \"u1\",\n \"alias_mount_accessor\": vault_auth_backend.userpass.accessor\n}\n \"\"\")\n .build(), CustomResourceOptions.builder()\n .dependsOn(u1Token)\n .build());\n\n ctx.export(\"u1Id\", u1Entity.writeData().applyValue(writeData -\u003e writeData.id()));\n }\n}\n```\n```yaml\nresources:\n userpass:\n type: vault:AuthBackend\n properties:\n type: userpass\n u1:\n type: vault:generic:Endpoint\n properties:\n path: auth/userpass/users/u1\n ignoreAbsentFields: true\n dataJson: |\n {\n \"policies\": [\"p1\"],\n \"password\": \"changeme\"\n }\n options:\n dependson:\n - ${userpass}\n u1Token:\n type: vault:generic:Endpoint\n properties:\n path: auth/userpass/login/u1\n disableRead: true\n disableDelete: true\n dataJson: |\n {\n \"password\": \"changeme\"\n }\n options:\n dependson:\n - ${u1}\n u1Entity:\n type: vault:generic:Endpoint\n properties:\n disableRead: true\n disableDelete: true\n path: identity/lookup/entity\n ignoreAbsentFields: true\n writeFields:\n - id\n dataJson: |\n {\n \"alias_name\": \"u1\",\n \"alias_mount_accessor\": vault_auth_backend.userpass.accessor\n }\n options:\n dependson:\n - ${u1Token}\noutputs:\n u1Id: ${u1Entity.writeData.id}\n```\n{{% /example %}}\n{{% /examples %}}\n## Required Vault Capabilities\n\nUse of this resource requires the `create` or `update` capability\n(depending on whether the resource already exists) on the given path. If\n`disable_delete` is false, the `delete` capability is also required. If\n`disable_read` is false, the `read` capability is required.\n\n\n## Import\n\nImport is not supported for this resource. ",
+ "description": "{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst userpass = new vault.AuthBackend(\"userpass\", {type: \"userpass\"});\nconst u1 = new vault.generic.Endpoint(\"u1\", {\n path: \"auth/userpass/users/u1\",\n ignoreAbsentFields: true,\n dataJson: `{\n \"policies\": [\"p1\"],\n \"password\": \"changeme\"\n}\n`,\n}, {\n dependsOn: [userpass],\n});\nconst u1Token = new vault.generic.Endpoint(\"u1Token\", {\n path: \"auth/userpass/login/u1\",\n disableRead: true,\n disableDelete: true,\n dataJson: `{\n \"password\": \"changeme\"\n}\n`,\n}, {\n dependsOn: [u1],\n});\nconst u1Entity = new vault.generic.Endpoint(\"u1Entity\", {\n disableRead: true,\n disableDelete: true,\n path: \"identity/lookup/entity\",\n ignoreAbsentFields: true,\n writeFields: [\"id\"],\n dataJson: `{\n \"alias_name\": \"u1\",\n \"alias_mount_accessor\": vault_auth_backend.userpass.accessor\n}\n`,\n}, {\n dependsOn: [u1Token],\n});\nexport const u1Id = u1Entity.writeData.id;\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nuserpass = vault.AuthBackend(\"userpass\", type=\"userpass\")\nu1 = vault.generic.Endpoint(\"u1\",\n path=\"auth/userpass/users/u1\",\n ignore_absent_fields=True,\n data_json=\"\"\"{\n \"policies\": [\"p1\"],\n \"password\": \"changeme\"\n}\n\"\"\",\n opts=pulumi.ResourceOptions(depends_on=[userpass]))\nu1_token = vault.generic.Endpoint(\"u1Token\",\n path=\"auth/userpass/login/u1\",\n disable_read=True,\n disable_delete=True,\n data_json=\"\"\"{\n \"password\": \"changeme\"\n}\n\"\"\",\n opts=pulumi.ResourceOptions(depends_on=[u1]))\nu1_entity = vault.generic.Endpoint(\"u1Entity\",\n disable_read=True,\n disable_delete=True,\n path=\"identity/lookup/entity\",\n ignore_absent_fields=True,\n write_fields=[\"id\"],\n data_json=\"\"\"{\n \"alias_name\": \"u1\",\n \"alias_mount_accessor\": vault_auth_backend.userpass.accessor\n}\n\"\"\",\n opts=pulumi.ResourceOptions(depends_on=[u1_token]))\npulumi.export(\"u1Id\", u1_entity.write_data[\"id\"])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var userpass = new Vault.AuthBackend(\"userpass\", new()\n {\n Type = \"userpass\",\n });\n\n var u1 = new Vault.Generic.Endpoint(\"u1\", new()\n {\n Path = \"auth/userpass/users/u1\",\n IgnoreAbsentFields = true,\n DataJson = @\"{\n \"\"policies\"\": [\"\"p1\"\"],\n \"\"password\"\": \"\"changeme\"\"\n}\n\",\n }, new CustomResourceOptions\n {\n DependsOn = new[]\n {\n userpass,\n },\n });\n\n var u1Token = new Vault.Generic.Endpoint(\"u1Token\", new()\n {\n Path = \"auth/userpass/login/u1\",\n DisableRead = true,\n DisableDelete = true,\n DataJson = @\"{\n \"\"password\"\": \"\"changeme\"\"\n}\n\",\n }, new CustomResourceOptions\n {\n DependsOn = new[]\n {\n u1,\n },\n });\n\n var u1Entity = new Vault.Generic.Endpoint(\"u1Entity\", new()\n {\n DisableRead = true,\n DisableDelete = true,\n Path = \"identity/lookup/entity\",\n IgnoreAbsentFields = true,\n WriteFields = new[]\n {\n \"id\",\n },\n DataJson = @\"{\n \"\"alias_name\"\": \"\"u1\"\",\n \"\"alias_mount_accessor\"\": vault_auth_backend.userpass.accessor\n}\n\",\n }, new CustomResourceOptions\n {\n DependsOn = new[]\n {\n u1Token,\n },\n });\n\n return new Dictionary\u003cstring, object?\u003e\n {\n [\"u1Id\"] = u1Entity.WriteData.Apply(writeData =\u003e writeData.Id),\n };\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault\"\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/generic\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tuserpass, err := vault.NewAuthBackend(ctx, \"userpass\", \u0026vault.AuthBackendArgs{\n\t\t\tType: pulumi.String(\"userpass\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tu1, err := generic.NewEndpoint(ctx, \"u1\", \u0026generic.EndpointArgs{\n\t\t\tPath: pulumi.String(\"auth/userpass/users/u1\"),\n\t\t\tIgnoreAbsentFields: pulumi.Bool(true),\n\t\t\tDataJson: pulumi.String(\"{\\n \\\"policies\\\": [\\\"p1\\\"],\\n \\\"password\\\": \\\"changeme\\\"\\n}\\n\"),\n\t\t}, pulumi.DependsOn([]pulumi.Resource{\n\t\t\tuserpass,\n\t\t}))\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tu1Token, err := generic.NewEndpoint(ctx, \"u1Token\", \u0026generic.EndpointArgs{\n\t\t\tPath: pulumi.String(\"auth/userpass/login/u1\"),\n\t\t\tDisableRead: pulumi.Bool(true),\n\t\t\tDisableDelete: pulumi.Bool(true),\n\t\t\tDataJson: pulumi.String(\"{\\n \\\"password\\\": \\\"changeme\\\"\\n}\\n\"),\n\t\t}, pulumi.DependsOn([]pulumi.Resource{\n\t\t\tu1,\n\t\t}))\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tu1Entity, err := generic.NewEndpoint(ctx, \"u1Entity\", \u0026generic.EndpointArgs{\n\t\t\tDisableRead: pulumi.Bool(true),\n\t\t\tDisableDelete: pulumi.Bool(true),\n\t\t\tPath: pulumi.String(\"identity/lookup/entity\"),\n\t\t\tIgnoreAbsentFields: pulumi.Bool(true),\n\t\t\tWriteFields: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"id\"),\n\t\t\t},\n\t\t\tDataJson: pulumi.String(\"{\\n \\\"alias_name\\\": \\\"u1\\\",\\n \\\"alias_mount_accessor\\\": vault_auth_backend.userpass.accessor\\n}\\n\"),\n\t\t}, pulumi.DependsOn([]pulumi.Resource{\n\t\t\tu1Token,\n\t\t}))\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tctx.Export(\"u1Id\", u1Entity.WriteData.ApplyT(func(writeData map[string]string) (string, error) {\n\t\t\treturn writeData.Id, nil\n\t\t}).(pulumi.StringOutput))\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.AuthBackend;\nimport com.pulumi.vault.AuthBackendArgs;\nimport com.pulumi.vault.generic.Endpoint;\nimport com.pulumi.vault.generic.EndpointArgs;\nimport com.pulumi.resources.CustomResourceOptions;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var userpass = new AuthBackend(\"userpass\", AuthBackendArgs.builder() \n .type(\"userpass\")\n .build());\n\n var u1 = new Endpoint(\"u1\", EndpointArgs.builder() \n .path(\"auth/userpass/users/u1\")\n .ignoreAbsentFields(true)\n .dataJson(\"\"\"\n{\n \"policies\": [\"p1\"],\n \"password\": \"changeme\"\n}\n \"\"\")\n .build(), CustomResourceOptions.builder()\n .dependsOn(userpass)\n .build());\n\n var u1Token = new Endpoint(\"u1Token\", EndpointArgs.builder() \n .path(\"auth/userpass/login/u1\")\n .disableRead(true)\n .disableDelete(true)\n .dataJson(\"\"\"\n{\n \"password\": \"changeme\"\n}\n \"\"\")\n .build(), CustomResourceOptions.builder()\n .dependsOn(u1)\n .build());\n\n var u1Entity = new Endpoint(\"u1Entity\", EndpointArgs.builder() \n .disableRead(true)\n .disableDelete(true)\n .path(\"identity/lookup/entity\")\n .ignoreAbsentFields(true)\n .writeFields(\"id\")\n .dataJson(\"\"\"\n{\n \"alias_name\": \"u1\",\n \"alias_mount_accessor\": vault_auth_backend.userpass.accessor\n}\n \"\"\")\n .build(), CustomResourceOptions.builder()\n .dependsOn(u1Token)\n .build());\n\n ctx.export(\"u1Id\", u1Entity.writeData().applyValue(writeData -\u003e writeData.id()));\n }\n}\n```\n```yaml\nresources:\n userpass:\n type: vault:AuthBackend\n properties:\n type: userpass\n u1:\n type: vault:generic:Endpoint\n properties:\n path: auth/userpass/users/u1\n ignoreAbsentFields: true\n dataJson: |\n {\n \"policies\": [\"p1\"],\n \"password\": \"changeme\"\n }\n options:\n dependson:\n - ${userpass}\n u1Token:\n type: vault:generic:Endpoint\n properties:\n path: auth/userpass/login/u1\n disableRead: true\n disableDelete: true\n dataJson: |\n {\n \"password\": \"changeme\"\n }\n options:\n dependson:\n - ${u1}\n u1Entity:\n type: vault:generic:Endpoint\n properties:\n disableRead: true\n disableDelete: true\n path: identity/lookup/entity\n ignoreAbsentFields: true\n writeFields:\n - id\n dataJson: |\n {\n \"alias_name\": \"u1\",\n \"alias_mount_accessor\": vault_auth_backend.userpass.accessor\n }\n options:\n dependson:\n - ${u1Token}\noutputs:\n u1Id: ${u1Entity.writeData.id}\n```\n{{% /example %}}\n{{% /examples %}}\n## Required Vault Capabilities\n\nUse of this resource requires the `create` or `update` capability\n(depending on whether the resource already exists) on the given path. If\n`disable_delete` is false, the `delete` capability is also required. If\n`disable_read` is false, the `read` capability is required.\n\n\n## Import\n\nImport is not supported for this resource. ",
"properties": {
"dataJson": {
"type": "string",
@@ -14372,7 +11501,7 @@
},
"disableDelete": {
"type": "boolean",
- "description": "Don't attempt to delete the path from Vault if true\n"
+ "description": "- (Optional) True/false. Set this to true if your\nvault authentication is not able to delete the data or if the endpoint\ndoes not support the `DELETE` method. Defaults to false.\n"
},
"disableRead": {
"type": "boolean",
@@ -14380,7 +11509,7 @@
},
"ignoreAbsentFields": {
"type": "boolean",
- "description": "When reading, disregard fields not present in data_json\n"
+ "description": "- (Optional) True/false. If set to true,\nignore any fields present when the endpoint is read but that were not\nin `data_json`. Also, if a field that was written is not returned when\nthe endpoint is read, treat that field as being up to date. You should\nset this to `true` when writing to endpoint that, when read, returns a\ndifferent set of fields from the ones you wrote, as is common with\nmany configuration endpoints. Defaults to false.\n"
},
"namespace": {
"type": "string",
@@ -14395,18 +11524,18 @@
"additionalProperties": {
"type": "string"
},
- "description": "Map of strings returned by write operation\n"
+ "description": "- A map whose keys are the top-level data keys\nreturned from Vault by the write operation and whose values are the\ncorresponding values. This map can only represent string data, so\nany non-string values returned from Vault are serialized as JSON.\nOnly fields set in `write_fields` are present in the JSON data.\n"
},
"writeDataJson": {
"type": "string",
- "description": "JSON data returned by write operation\n"
+ "description": "- The JSON data returned by the write operation.\nOnly fields set in `write_fields` are present in the JSON data.\n"
},
"writeFields": {
"type": "array",
"items": {
"type": "string"
},
- "description": "Top-level fields returned by write to persist in state\n"
+ "description": "- (Optional). A list of fields that should be returned\nin `write_data_json` and `write_data`. If omitted, data returned by\nthe write operation is not available to the resource or included in\nstate. This helps to avoid accidental storage of sensitive values in\nstate. Some endpoints, such as many dynamic secrets endpoints, return\ndata from writing to an endpoint rather than reading it. You should\nuse `write_fields` if you need information returned in this way.\n"
}
},
"required": [
@@ -14423,7 +11552,7 @@
},
"disableDelete": {
"type": "boolean",
- "description": "Don't attempt to delete the path from Vault if true\n"
+ "description": "- (Optional) True/false. Set this to true if your\nvault authentication is not able to delete the data or if the endpoint\ndoes not support the `DELETE` method. Defaults to false.\n"
},
"disableRead": {
"type": "boolean",
@@ -14431,7 +11560,7 @@
},
"ignoreAbsentFields": {
"type": "boolean",
- "description": "When reading, disregard fields not present in data_json\n"
+ "description": "- (Optional) True/false. If set to true,\nignore any fields present when the endpoint is read but that were not\nin `data_json`. Also, if a field that was written is not returned when\nthe endpoint is read, treat that field as being up to date. You should\nset this to `true` when writing to endpoint that, when read, returns a\ndifferent set of fields from the ones you wrote, as is common with\nmany configuration endpoints. Defaults to false.\n"
},
"namespace": {
"type": "string",
@@ -14448,7 +11577,7 @@
"items": {
"type": "string"
},
- "description": "Top-level fields returned by write to persist in state\n"
+ "description": "- (Optional). A list of fields that should be returned\nin `write_data_json` and `write_data`. If omitted, data returned by\nthe write operation is not available to the resource or included in\nstate. This helps to avoid accidental storage of sensitive values in\nstate. Some endpoints, such as many dynamic secrets endpoints, return\ndata from writing to an endpoint rather than reading it. You should\nuse `write_fields` if you need information returned in this way.\n"
}
},
"requiredInputs": [
@@ -14465,7 +11594,7 @@
},
"disableDelete": {
"type": "boolean",
- "description": "Don't attempt to delete the path from Vault if true\n"
+ "description": "- (Optional) True/false. Set this to true if your\nvault authentication is not able to delete the data or if the endpoint\ndoes not support the `DELETE` method. Defaults to false.\n"
},
"disableRead": {
"type": "boolean",
@@ -14473,7 +11602,7 @@
},
"ignoreAbsentFields": {
"type": "boolean",
- "description": "When reading, disregard fields not present in data_json\n"
+ "description": "- (Optional) True/false. If set to true,\nignore any fields present when the endpoint is read but that were not\nin `data_json`. Also, if a field that was written is not returned when\nthe endpoint is read, treat that field as being up to date. You should\nset this to `true` when writing to endpoint that, when read, returns a\ndifferent set of fields from the ones you wrote, as is common with\nmany configuration endpoints. Defaults to false.\n"
},
"namespace": {
"type": "string",
@@ -14490,25 +11619,25 @@
"additionalProperties": {
"type": "string"
},
- "description": "Map of strings returned by write operation\n"
+ "description": "- A map whose keys are the top-level data keys\nreturned from Vault by the write operation and whose values are the\ncorresponding values. This map can only represent string data, so\nany non-string values returned from Vault are serialized as JSON.\nOnly fields set in `write_fields` are present in the JSON data.\n"
},
"writeDataJson": {
"type": "string",
- "description": "JSON data returned by write operation\n"
+ "description": "- The JSON data returned by the write operation.\nOnly fields set in `write_fields` are present in the JSON data.\n"
},
"writeFields": {
"type": "array",
"items": {
"type": "string"
},
- "description": "Top-level fields returned by write to persist in state\n"
+ "description": "- (Optional). A list of fields that should be returned\nin `write_data_json` and `write_data`. If omitted, data returned by\nthe write operation is not available to the resource or included in\nstate. This helps to avoid accidental storage of sensitive values in\nstate. Some endpoints, such as many dynamic secrets endpoints, return\ndata from writing to an endpoint rather than reading it. You should\nuse `write_fields` if you need information returned in this way.\n"
}
},
"type": "object"
}
},
"vault:generic/secret:Secret": {
- "description": "\n\n\n## Import\n\nGeneric secrets can be imported using the `path`, e.g.\n\n```sh\n $ pulumi import vault:generic/secret:Secret example secret/foo\n```\n\n ",
+ "description": "\n\n\n## Import\n\nGeneric secrets can be imported using the `path`, e.g.\n\n```sh\n $ pulumi import vault:generic/secret:Secret example secret/foo\n```\n ",
"properties": {
"data": {
"type": "object",
@@ -14613,7 +11742,7 @@
}
},
"vault:github/authBackend:AuthBackend": {
- "description": "Manages a GitHub Auth mount in a Vault server. See the [Vault\ndocumentation](https://www.vaultproject.io/docs/auth/github/) for more\ninformation.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst example = new vault.github.AuthBackend(\"example\", {\n organization: \"myorg\",\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nexample = vault.github.AuthBackend(\"example\", organization=\"myorg\")\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new Vault.GitHub.AuthBackend(\"example\", new()\n {\n Organization = \"myorg\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/github\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := github.NewAuthBackend(ctx, \"example\", \u0026github.AuthBackendArgs{\n\t\t\tOrganization: pulumi.String(\"myorg\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.github.AuthBackend;\nimport com.pulumi.vault.github.AuthBackendArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new AuthBackend(\"example\", AuthBackendArgs.builder() \n .organization(\"myorg\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: vault:github:AuthBackend\n properties:\n organization: myorg\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nGitHub authentication mounts can be imported using the `path`, e.g.\n\n```sh\n $ pulumi import vault:github/authBackend:AuthBackend example github\n```\n\n ",
+ "description": "Manages a GitHub Auth mount in a Vault server. See the [Vault\ndocumentation](https://www.vaultproject.io/docs/auth/github/) for more\ninformation.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst example = new vault.github.AuthBackend(\"example\", {organization: \"myorg\"});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nexample = vault.github.AuthBackend(\"example\", organization=\"myorg\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new Vault.GitHub.AuthBackend(\"example\", new()\n {\n Organization = \"myorg\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/github\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := github.NewAuthBackend(ctx, \"example\", \u0026github.AuthBackendArgs{\n\t\t\tOrganization: pulumi.String(\"myorg\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.github.AuthBackend;\nimport com.pulumi.vault.github.AuthBackendArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new AuthBackend(\"example\", AuthBackendArgs.builder() \n .organization(\"myorg\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: vault:github:AuthBackend\n properties:\n organization: myorg\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nGitHub authentication mounts can be imported using the `path`, e.g.\n\n```sh\n $ pulumi import vault:github/authBackend:AuthBackend example github\n```\n ",
"properties": {
"accessor": {
"type": "string",
@@ -14691,7 +11820,7 @@
},
"tune": {
"$ref": "#/types/vault:github/AuthBackendTune:AuthBackendTune",
- "description": "Extra configuration block. Structure is documented below.\n"
+ "description": "Extra configuration block. Structure is documented below.\n\nThe `tune` block is used to tune the auth backend:\n"
}
},
"required": [
@@ -14774,7 +11903,7 @@
},
"tune": {
"$ref": "#/types/vault:github/AuthBackendTune:AuthBackendTune",
- "description": "Extra configuration block. Structure is documented below.\n"
+ "description": "Extra configuration block. Structure is documented below.\n\nThe `tune` block is used to tune the auth backend:\n"
}
},
"requiredInputs": [
@@ -14860,14 +11989,14 @@
},
"tune": {
"$ref": "#/types/vault:github/AuthBackendTune:AuthBackendTune",
- "description": "Extra configuration block. Structure is documented below.\n"
+ "description": "Extra configuration block. Structure is documented below.\n\nThe `tune` block is used to tune the auth backend:\n"
}
},
"type": "object"
}
},
"vault:github/team:Team": {
- "description": "Manages policy mappings for Github Teams authenticated via Github. See the [Vault\ndocumentation](https://www.vaultproject.io/docs/auth/github/) for more\ninformation.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst example = new vault.github.AuthBackend(\"example\", {organization: \"myorg\"});\nconst tfDevs = new vault.github.Team(\"tfDevs\", {\n backend: example.id,\n team: \"terraform-developers\",\n policies: [\n \"developer\",\n \"read-only\",\n ],\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nexample = vault.github.AuthBackend(\"example\", organization=\"myorg\")\ntf_devs = vault.github.Team(\"tfDevs\",\n backend=example.id,\n team=\"terraform-developers\",\n policies=[\n \"developer\",\n \"read-only\",\n ])\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new Vault.GitHub.AuthBackend(\"example\", new()\n {\n Organization = \"myorg\",\n });\n\n var tfDevs = new Vault.GitHub.Team(\"tfDevs\", new()\n {\n Backend = example.Id,\n TeamCity = \"terraform-developers\",\n Policies = new[]\n {\n \"developer\",\n \"read-only\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/github\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texample, err := github.NewAuthBackend(ctx, \"example\", \u0026github.AuthBackendArgs{\n\t\t\tOrganization: pulumi.String(\"myorg\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = github.NewTeam(ctx, \"tfDevs\", \u0026github.TeamArgs{\n\t\t\tBackend: example.ID(),\n\t\t\tTeam: pulumi.String(\"terraform-developers\"),\n\t\t\tPolicies: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"developer\"),\n\t\t\t\tpulumi.String(\"read-only\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.github.AuthBackend;\nimport com.pulumi.vault.github.AuthBackendArgs;\nimport com.pulumi.vault.github.Team;\nimport com.pulumi.vault.github.TeamArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new AuthBackend(\"example\", AuthBackendArgs.builder() \n .organization(\"myorg\")\n .build());\n\n var tfDevs = new Team(\"tfDevs\", TeamArgs.builder() \n .backend(example.id())\n .team(\"terraform-developers\")\n .policies( \n \"developer\",\n \"read-only\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: vault:github:AuthBackend\n properties:\n organization: myorg\n tfDevs:\n type: vault:github:Team\n properties:\n backend: ${example.id}\n team: terraform-developers\n policies:\n - developer\n - read-only\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nGithub team mappings can be imported using the `path`, e.g.\n\n```sh\n $ pulumi import vault:github/team:Team tf_devs auth/github/map/teams/terraform-developers\n```\n\n ",
+ "description": "Manages policy mappings for Github Teams authenticated via Github. See the [Vault\ndocumentation](https://www.vaultproject.io/docs/auth/github/) for more\ninformation.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst example = new vault.github.AuthBackend(\"example\", {organization: \"myorg\"});\nconst tfDevs = new vault.github.Team(\"tfDevs\", {\n backend: example.id,\n team: \"terraform-developers\",\n policies: [\n \"developer\",\n \"read-only\",\n ],\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nexample = vault.github.AuthBackend(\"example\", organization=\"myorg\")\ntf_devs = vault.github.Team(\"tfDevs\",\n backend=example.id,\n team=\"terraform-developers\",\n policies=[\n \"developer\",\n \"read-only\",\n ])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new Vault.GitHub.AuthBackend(\"example\", new()\n {\n Organization = \"myorg\",\n });\n\n var tfDevs = new Vault.GitHub.Team(\"tfDevs\", new()\n {\n Backend = example.Id,\n TeamCity = \"terraform-developers\",\n Policies = new[]\n {\n \"developer\",\n \"read-only\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/github\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texample, err := github.NewAuthBackend(ctx, \"example\", \u0026github.AuthBackendArgs{\n\t\t\tOrganization: pulumi.String(\"myorg\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = github.NewTeam(ctx, \"tfDevs\", \u0026github.TeamArgs{\n\t\t\tBackend: example.ID(),\n\t\t\tTeam: pulumi.String(\"terraform-developers\"),\n\t\t\tPolicies: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"developer\"),\n\t\t\t\tpulumi.String(\"read-only\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.github.AuthBackend;\nimport com.pulumi.vault.github.AuthBackendArgs;\nimport com.pulumi.vault.github.Team;\nimport com.pulumi.vault.github.TeamArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new AuthBackend(\"example\", AuthBackendArgs.builder() \n .organization(\"myorg\")\n .build());\n\n var tfDevs = new Team(\"tfDevs\", TeamArgs.builder() \n .backend(example.id())\n .team(\"terraform-developers\")\n .policies( \n \"developer\",\n \"read-only\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: vault:github:AuthBackend\n properties:\n organization: myorg\n tfDevs:\n type: vault:github:Team\n properties:\n backend: ${example.id}\n team: terraform-developers\n policies:\n - developer\n - read-only\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nGithub team mappings can be imported using the `path`, e.g.\n\n```sh\n $ pulumi import vault:github/team:Team tf_devs auth/github/map/teams/terraform-developers\n```\n ",
"properties": {
"backend": {
"type": "string",
@@ -14964,7 +12093,7 @@
}
},
"vault:github/user:User": {
- "description": "Manages policy mappings for Github Users authenticated via Github. See the [Vault\ndocumentation](https://www.vaultproject.io/docs/auth/github/) for more\ninformation.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst example = new vault.github.AuthBackend(\"example\", {organization: \"myorg\"});\nconst tfUser = new vault.github.User(\"tfUser\", {\n backend: example.id,\n user: \"john.doe\",\n policies: [\n \"developer\",\n \"read-only\",\n ],\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nexample = vault.github.AuthBackend(\"example\", organization=\"myorg\")\ntf_user = vault.github.User(\"tfUser\",\n backend=example.id,\n user=\"john.doe\",\n policies=[\n \"developer\",\n \"read-only\",\n ])\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new Vault.GitHub.AuthBackend(\"example\", new()\n {\n Organization = \"myorg\",\n });\n\n var tfUser = new Vault.GitHub.User(\"tfUser\", new()\n {\n Backend = example.Id,\n UserName = \"john.doe\",\n Policies = new[]\n {\n \"developer\",\n \"read-only\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/github\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texample, err := github.NewAuthBackend(ctx, \"example\", \u0026github.AuthBackendArgs{\n\t\t\tOrganization: pulumi.String(\"myorg\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = github.NewUser(ctx, \"tfUser\", \u0026github.UserArgs{\n\t\t\tBackend: example.ID(),\n\t\t\tUser: pulumi.String(\"john.doe\"),\n\t\t\tPolicies: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"developer\"),\n\t\t\t\tpulumi.String(\"read-only\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.github.AuthBackend;\nimport com.pulumi.vault.github.AuthBackendArgs;\nimport com.pulumi.vault.github.User;\nimport com.pulumi.vault.github.UserArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new AuthBackend(\"example\", AuthBackendArgs.builder() \n .organization(\"myorg\")\n .build());\n\n var tfUser = new User(\"tfUser\", UserArgs.builder() \n .backend(example.id())\n .user(\"john.doe\")\n .policies( \n \"developer\",\n \"read-only\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: vault:github:AuthBackend\n properties:\n organization: myorg\n tfUser:\n type: vault:github:User\n properties:\n backend: ${example.id}\n user: john.doe\n policies:\n - developer\n - read-only\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nGithub user mappings can be imported using the `path`, e.g.\n\n```sh\n $ pulumi import vault:github/user:User tf_user auth/github/map/users/john.doe\n```\n\n ",
+ "description": "Manages policy mappings for Github Users authenticated via Github. See the [Vault\ndocumentation](https://www.vaultproject.io/docs/auth/github/) for more\ninformation.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst example = new vault.github.AuthBackend(\"example\", {organization: \"myorg\"});\nconst tfUser = new vault.github.User(\"tfUser\", {\n backend: example.id,\n user: \"john.doe\",\n policies: [\n \"developer\",\n \"read-only\",\n ],\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nexample = vault.github.AuthBackend(\"example\", organization=\"myorg\")\ntf_user = vault.github.User(\"tfUser\",\n backend=example.id,\n user=\"john.doe\",\n policies=[\n \"developer\",\n \"read-only\",\n ])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new Vault.GitHub.AuthBackend(\"example\", new()\n {\n Organization = \"myorg\",\n });\n\n var tfUser = new Vault.GitHub.User(\"tfUser\", new()\n {\n Backend = example.Id,\n UserName = \"john.doe\",\n Policies = new[]\n {\n \"developer\",\n \"read-only\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/github\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texample, err := github.NewAuthBackend(ctx, \"example\", \u0026github.AuthBackendArgs{\n\t\t\tOrganization: pulumi.String(\"myorg\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = github.NewUser(ctx, \"tfUser\", \u0026github.UserArgs{\n\t\t\tBackend: example.ID(),\n\t\t\tUser: pulumi.String(\"john.doe\"),\n\t\t\tPolicies: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"developer\"),\n\t\t\t\tpulumi.String(\"read-only\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.github.AuthBackend;\nimport com.pulumi.vault.github.AuthBackendArgs;\nimport com.pulumi.vault.github.User;\nimport com.pulumi.vault.github.UserArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new AuthBackend(\"example\", AuthBackendArgs.builder() \n .organization(\"myorg\")\n .build());\n\n var tfUser = new User(\"tfUser\", UserArgs.builder() \n .backend(example.id())\n .user(\"john.doe\")\n .policies( \n \"developer\",\n \"read-only\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: vault:github:AuthBackend\n properties:\n organization: myorg\n tfUser:\n type: vault:github:User\n properties:\n backend: ${example.id}\n user: john.doe\n policies:\n - developer\n - read-only\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nGithub user mappings can be imported using the `path`, e.g.\n\n```sh\n $ pulumi import vault:github/user:User tf_user auth/github/map/users/john.doe\n```\n ",
"properties": {
"backend": {
"type": "string",
@@ -15061,7 +12190,7 @@
}
},
"vault:identity/entity:Entity": {
- "description": "{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst test = new vault.identity.Entity(\"test\", {\n metadata: {\n foo: \"bar\",\n },\n policies: [\"test\"],\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\ntest = vault.identity.Entity(\"test\",\n metadata={\n \"foo\": \"bar\",\n },\n policies=[\"test\"])\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var test = new Vault.Identity.Entity(\"test\", new()\n {\n Metadata = \n {\n { \"foo\", \"bar\" },\n },\n Policies = new[]\n {\n \"test\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/identity\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := identity.NewEntity(ctx, \"test\", \u0026identity.EntityArgs{\n\t\t\tMetadata: pulumi.StringMap{\n\t\t\t\t\"foo\": pulumi.String(\"bar\"),\n\t\t\t},\n\t\t\tPolicies: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"test\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.identity.Entity;\nimport com.pulumi.vault.identity.EntityArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var test = new Entity(\"test\", EntityArgs.builder() \n .metadata(Map.of(\"foo\", \"bar\"))\n .policies(\"test\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n test:\n type: vault:identity:Entity\n properties:\n metadata:\n foo: bar\n policies:\n - test\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nIdentity entity can be imported using the `id`, e.g.\n\n```sh\n $ pulumi import vault:identity/entity:Entity test \"ae6f8ued-0f1a-9f6b-2915-1a2be20dc053\"\n```\n\n ",
+ "description": "{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst test = new vault.identity.Entity(\"test\", {\n metadata: {\n foo: \"bar\",\n },\n policies: [\"test\"],\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\ntest = vault.identity.Entity(\"test\",\n metadata={\n \"foo\": \"bar\",\n },\n policies=[\"test\"])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var test = new Vault.Identity.Entity(\"test\", new()\n {\n Metadata = \n {\n { \"foo\", \"bar\" },\n },\n Policies = new[]\n {\n \"test\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/identity\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := identity.NewEntity(ctx, \"test\", \u0026identity.EntityArgs{\n\t\t\tMetadata: pulumi.StringMap{\n\t\t\t\t\"foo\": pulumi.String(\"bar\"),\n\t\t\t},\n\t\t\tPolicies: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"test\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.identity.Entity;\nimport com.pulumi.vault.identity.EntityArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var test = new Entity(\"test\", EntityArgs.builder() \n .metadata(Map.of(\"foo\", \"bar\"))\n .policies(\"test\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n test:\n type: vault:identity:Entity\n properties:\n metadata:\n foo: bar\n policies:\n - test\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nIdentity entity can be imported using the `id`, e.g.\n\n```sh\n $ pulumi import vault:identity/entity:Entity test \"ae6f8ued-0f1a-9f6b-2915-1a2be20dc053\"\n```\n ",
"properties": {
"disabled": {
"type": "boolean",
@@ -15169,7 +12298,7 @@
}
},
"vault:identity/entityAlias:EntityAlias": {
- "description": "{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst test = new vault.identity.EntityAlias(\"test\", {\n canonicalId: \"49877D63-07AD-4B85-BDA8-B61626C477E8\",\n mountAccessor: \"token_1f2bd5\",\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\ntest = vault.identity.EntityAlias(\"test\",\n canonical_id=\"49877D63-07AD-4B85-BDA8-B61626C477E8\",\n mount_accessor=\"token_1f2bd5\")\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var test = new Vault.Identity.EntityAlias(\"test\", new()\n {\n CanonicalId = \"49877D63-07AD-4B85-BDA8-B61626C477E8\",\n MountAccessor = \"token_1f2bd5\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/identity\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := identity.NewEntityAlias(ctx, \"test\", \u0026identity.EntityAliasArgs{\n\t\t\tCanonicalId: pulumi.String(\"49877D63-07AD-4B85-BDA8-B61626C477E8\"),\n\t\t\tMountAccessor: pulumi.String(\"token_1f2bd5\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.identity.EntityAlias;\nimport com.pulumi.vault.identity.EntityAliasArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var test = new EntityAlias(\"test\", EntityAliasArgs.builder() \n .canonicalId(\"49877D63-07AD-4B85-BDA8-B61626C477E8\")\n .mountAccessor(\"token_1f2bd5\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n test:\n type: vault:identity:EntityAlias\n properties:\n canonicalId: 49877D63-07AD-4B85-BDA8-B61626C477E8\n mountAccessor: token_1f2bd5\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nIdentity entity alias can be imported using the `id`, e.g.\n\n```sh\n $ pulumi import vault:identity/entityAlias:EntityAlias test \"3856fb4d-3c91-dcaf-2401-68f446796bfb\"\n```\n\n ",
+ "description": "{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst test = new vault.identity.EntityAlias(\"test\", {\n canonicalId: \"49877D63-07AD-4B85-BDA8-B61626C477E8\",\n mountAccessor: \"token_1f2bd5\",\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\ntest = vault.identity.EntityAlias(\"test\",\n canonical_id=\"49877D63-07AD-4B85-BDA8-B61626C477E8\",\n mount_accessor=\"token_1f2bd5\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var test = new Vault.Identity.EntityAlias(\"test\", new()\n {\n CanonicalId = \"49877D63-07AD-4B85-BDA8-B61626C477E8\",\n MountAccessor = \"token_1f2bd5\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/identity\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := identity.NewEntityAlias(ctx, \"test\", \u0026identity.EntityAliasArgs{\n\t\t\tCanonicalId: pulumi.String(\"49877D63-07AD-4B85-BDA8-B61626C477E8\"),\n\t\t\tMountAccessor: pulumi.String(\"token_1f2bd5\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.identity.EntityAlias;\nimport com.pulumi.vault.identity.EntityAliasArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var test = new EntityAlias(\"test\", EntityAliasArgs.builder() \n .canonicalId(\"49877D63-07AD-4B85-BDA8-B61626C477E8\")\n .mountAccessor(\"token_1f2bd5\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n test:\n type: vault:identity:EntityAlias\n properties:\n canonicalId: 49877D63-07AD-4B85-BDA8-B61626C477E8\n mountAccessor: token_1f2bd5\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nIdentity entity alias can be imported using the `id`, e.g.\n\n```sh\n $ pulumi import vault:identity/entityAlias:EntityAlias test \"3856fb4d-3c91-dcaf-2401-68f446796bfb\"\n```\n ",
"properties": {
"canonicalId": {
"type": "string",
@@ -15262,7 +12391,7 @@
}
},
"vault:identity/entityPolicies:EntityPolicies": {
- "description": "Manages policies for an Identity Entity for Vault. The [Identity secrets engine](https://www.vaultproject.io/docs/secrets/identity/index.html) is the identity management solution for Vault.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n### Exclusive Policies\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst entity = new vault.identity.Entity(\"entity\", {externalPolicies: true});\nconst policies = new vault.identity.EntityPolicies(\"policies\", {\n policies: [\n \"default\",\n \"test\",\n ],\n exclusive: true,\n entityId: entity.id,\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nentity = vault.identity.Entity(\"entity\", external_policies=True)\npolicies = vault.identity.EntityPolicies(\"policies\",\n policies=[\n \"default\",\n \"test\",\n ],\n exclusive=True,\n entity_id=entity.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var entity = new Vault.Identity.Entity(\"entity\", new()\n {\n ExternalPolicies = true,\n });\n\n var policies = new Vault.Identity.EntityPolicies(\"policies\", new()\n {\n Policies = new[]\n {\n \"default\",\n \"test\",\n },\n Exclusive = true,\n EntityId = entity.Id,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/identity\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tentity, err := identity.NewEntity(ctx, \"entity\", \u0026identity.EntityArgs{\n\t\t\tExternalPolicies: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = identity.NewEntityPolicies(ctx, \"policies\", \u0026identity.EntityPoliciesArgs{\n\t\t\tPolicies: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"default\"),\n\t\t\t\tpulumi.String(\"test\"),\n\t\t\t},\n\t\t\tExclusive: pulumi.Bool(true),\n\t\t\tEntityId: entity.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.identity.Entity;\nimport com.pulumi.vault.identity.EntityArgs;\nimport com.pulumi.vault.identity.EntityPolicies;\nimport com.pulumi.vault.identity.EntityPoliciesArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var entity = new Entity(\"entity\", EntityArgs.builder() \n .externalPolicies(true)\n .build());\n\n var policies = new EntityPolicies(\"policies\", EntityPoliciesArgs.builder() \n .policies( \n \"default\",\n \"test\")\n .exclusive(true)\n .entityId(entity.id())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n entity:\n type: vault:identity:Entity\n properties:\n externalPolicies: true\n policies:\n type: vault:identity:EntityPolicies\n properties:\n policies:\n - default\n - test\n exclusive: true\n entityId: ${entity.id}\n```\n{{% /example %}}\n{{% example %}}\n### Non-exclusive Policies\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst entity = new vault.identity.Entity(\"entity\", {externalPolicies: true});\nconst _default = new vault.identity.EntityPolicies(\"default\", {\n policies: [\n \"default\",\n \"test\",\n ],\n exclusive: false,\n entityId: entity.id,\n});\nconst others = new vault.identity.EntityPolicies(\"others\", {\n policies: [\"others\"],\n exclusive: false,\n entityId: entity.id,\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nentity = vault.identity.Entity(\"entity\", external_policies=True)\ndefault = vault.identity.EntityPolicies(\"default\",\n policies=[\n \"default\",\n \"test\",\n ],\n exclusive=False,\n entity_id=entity.id)\nothers = vault.identity.EntityPolicies(\"others\",\n policies=[\"others\"],\n exclusive=False,\n entity_id=entity.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var entity = new Vault.Identity.Entity(\"entity\", new()\n {\n ExternalPolicies = true,\n });\n\n var @default = new Vault.Identity.EntityPolicies(\"default\", new()\n {\n Policies = new[]\n {\n \"default\",\n \"test\",\n },\n Exclusive = false,\n EntityId = entity.Id,\n });\n\n var others = new Vault.Identity.EntityPolicies(\"others\", new()\n {\n Policies = new[]\n {\n \"others\",\n },\n Exclusive = false,\n EntityId = entity.Id,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/identity\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tentity, err := identity.NewEntity(ctx, \"entity\", \u0026identity.EntityArgs{\n\t\t\tExternalPolicies: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = identity.NewEntityPolicies(ctx, \"default\", \u0026identity.EntityPoliciesArgs{\n\t\t\tPolicies: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"default\"),\n\t\t\t\tpulumi.String(\"test\"),\n\t\t\t},\n\t\t\tExclusive: pulumi.Bool(false),\n\t\t\tEntityId: entity.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = identity.NewEntityPolicies(ctx, \"others\", \u0026identity.EntityPoliciesArgs{\n\t\t\tPolicies: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"others\"),\n\t\t\t},\n\t\t\tExclusive: pulumi.Bool(false),\n\t\t\tEntityId: entity.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.identity.Entity;\nimport com.pulumi.vault.identity.EntityArgs;\nimport com.pulumi.vault.identity.EntityPolicies;\nimport com.pulumi.vault.identity.EntityPoliciesArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var entity = new Entity(\"entity\", EntityArgs.builder() \n .externalPolicies(true)\n .build());\n\n var default_ = new EntityPolicies(\"default\", EntityPoliciesArgs.builder() \n .policies( \n \"default\",\n \"test\")\n .exclusive(false)\n .entityId(entity.id())\n .build());\n\n var others = new EntityPolicies(\"others\", EntityPoliciesArgs.builder() \n .policies(\"others\")\n .exclusive(false)\n .entityId(entity.id())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n entity:\n type: vault:identity:Entity\n properties:\n externalPolicies: true\n default:\n type: vault:identity:EntityPolicies\n properties:\n policies:\n - default\n - test\n exclusive: false\n entityId: ${entity.id}\n others:\n type: vault:identity:EntityPolicies\n properties:\n policies:\n - others\n exclusive: false\n entityId: ${entity.id}\n```\n{{% /example %}}\n{{% /examples %}}",
+ "description": "Manages policies for an Identity Entity for Vault. The [Identity secrets engine](https://www.vaultproject.io/docs/secrets/identity/index.html) is the identity management solution for Vault.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n### Exclusive Policies\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst entity = new vault.identity.Entity(\"entity\", {externalPolicies: true});\nconst policies = new vault.identity.EntityPolicies(\"policies\", {\n policies: [\n \"default\",\n \"test\",\n ],\n exclusive: true,\n entityId: entity.id,\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nentity = vault.identity.Entity(\"entity\", external_policies=True)\npolicies = vault.identity.EntityPolicies(\"policies\",\n policies=[\n \"default\",\n \"test\",\n ],\n exclusive=True,\n entity_id=entity.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var entity = new Vault.Identity.Entity(\"entity\", new()\n {\n ExternalPolicies = true,\n });\n\n var policies = new Vault.Identity.EntityPolicies(\"policies\", new()\n {\n Policies = new[]\n {\n \"default\",\n \"test\",\n },\n Exclusive = true,\n EntityId = entity.Id,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/identity\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tentity, err := identity.NewEntity(ctx, \"entity\", \u0026identity.EntityArgs{\n\t\t\tExternalPolicies: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = identity.NewEntityPolicies(ctx, \"policies\", \u0026identity.EntityPoliciesArgs{\n\t\t\tPolicies: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"default\"),\n\t\t\t\tpulumi.String(\"test\"),\n\t\t\t},\n\t\t\tExclusive: pulumi.Bool(true),\n\t\t\tEntityId: entity.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.identity.Entity;\nimport com.pulumi.vault.identity.EntityArgs;\nimport com.pulumi.vault.identity.EntityPolicies;\nimport com.pulumi.vault.identity.EntityPoliciesArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var entity = new Entity(\"entity\", EntityArgs.builder() \n .externalPolicies(true)\n .build());\n\n var policies = new EntityPolicies(\"policies\", EntityPoliciesArgs.builder() \n .policies( \n \"default\",\n \"test\")\n .exclusive(true)\n .entityId(entity.id())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n entity:\n type: vault:identity:Entity\n properties:\n externalPolicies: true\n policies:\n type: vault:identity:EntityPolicies\n properties:\n policies:\n - default\n - test\n exclusive: true\n entityId: ${entity.id}\n```\n{{% /example %}}\n{{% example %}}\n### Non-exclusive Policies\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst entity = new vault.identity.Entity(\"entity\", {externalPolicies: true});\nconst _default = new vault.identity.EntityPolicies(\"default\", {\n policies: [\n \"default\",\n \"test\",\n ],\n exclusive: false,\n entityId: entity.id,\n});\nconst others = new vault.identity.EntityPolicies(\"others\", {\n policies: [\"others\"],\n exclusive: false,\n entityId: entity.id,\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nentity = vault.identity.Entity(\"entity\", external_policies=True)\ndefault = vault.identity.EntityPolicies(\"default\",\n policies=[\n \"default\",\n \"test\",\n ],\n exclusive=False,\n entity_id=entity.id)\nothers = vault.identity.EntityPolicies(\"others\",\n policies=[\"others\"],\n exclusive=False,\n entity_id=entity.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var entity = new Vault.Identity.Entity(\"entity\", new()\n {\n ExternalPolicies = true,\n });\n\n var @default = new Vault.Identity.EntityPolicies(\"default\", new()\n {\n Policies = new[]\n {\n \"default\",\n \"test\",\n },\n Exclusive = false,\n EntityId = entity.Id,\n });\n\n var others = new Vault.Identity.EntityPolicies(\"others\", new()\n {\n Policies = new[]\n {\n \"others\",\n },\n Exclusive = false,\n EntityId = entity.Id,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/identity\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tentity, err := identity.NewEntity(ctx, \"entity\", \u0026identity.EntityArgs{\n\t\t\tExternalPolicies: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = identity.NewEntityPolicies(ctx, \"default\", \u0026identity.EntityPoliciesArgs{\n\t\t\tPolicies: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"default\"),\n\t\t\t\tpulumi.String(\"test\"),\n\t\t\t},\n\t\t\tExclusive: pulumi.Bool(false),\n\t\t\tEntityId: entity.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = identity.NewEntityPolicies(ctx, \"others\", \u0026identity.EntityPoliciesArgs{\n\t\t\tPolicies: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"others\"),\n\t\t\t},\n\t\t\tExclusive: pulumi.Bool(false),\n\t\t\tEntityId: entity.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.identity.Entity;\nimport com.pulumi.vault.identity.EntityArgs;\nimport com.pulumi.vault.identity.EntityPolicies;\nimport com.pulumi.vault.identity.EntityPoliciesArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var entity = new Entity(\"entity\", EntityArgs.builder() \n .externalPolicies(true)\n .build());\n\n var default_ = new EntityPolicies(\"default\", EntityPoliciesArgs.builder() \n .policies( \n \"default\",\n \"test\")\n .exclusive(false)\n .entityId(entity.id())\n .build());\n\n var others = new EntityPolicies(\"others\", EntityPoliciesArgs.builder() \n .policies(\"others\")\n .exclusive(false)\n .entityId(entity.id())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n entity:\n type: vault:identity:Entity\n properties:\n externalPolicies: true\n default:\n type: vault:identity:EntityPolicies\n properties:\n policies:\n - default\n - test\n exclusive: false\n entityId: ${entity.id}\n others:\n type: vault:identity:EntityPolicies\n properties:\n policies:\n - others\n exclusive: false\n entityId: ${entity.id}\n```\n{{% /example %}}\n{{% /examples %}}",
"properties": {
"entityId": {
"type": "string",
@@ -15274,7 +12403,7 @@
},
"exclusive": {
"type": "boolean",
- "description": "Defaults to `true`.\n"
+ "description": "Defaults to `true`.\n\nIf `true`, this resource will take exclusive control of the policies assigned to the entity and will set it equal to what is specified in the resource.\n\nIf set to `false`, this resource will simply ensure that the policies specified in the resource are present in the entity. When destroying the resource, the resource will ensure that the policies specified in the resource are removed.\n"
},
"namespace": {
"type": "string",
@@ -15300,7 +12429,7 @@
},
"exclusive": {
"type": "boolean",
- "description": "Defaults to `true`.\n"
+ "description": "Defaults to `true`.\n\nIf `true`, this resource will take exclusive control of the policies assigned to the entity and will set it equal to what is specified in the resource.\n\nIf set to `false`, this resource will simply ensure that the policies specified in the resource are present in the entity. When destroying the resource, the resource will ensure that the policies specified in the resource are removed.\n"
},
"namespace": {
"type": "string",
@@ -15332,7 +12461,7 @@
},
"exclusive": {
"type": "boolean",
- "description": "Defaults to `true`.\n"
+ "description": "Defaults to `true`.\n\nIf `true`, this resource will take exclusive control of the policies assigned to the entity and will set it equal to what is specified in the resource.\n\nIf set to `false`, this resource will simply ensure that the policies specified in the resource are present in the entity. When destroying the resource, the resource will ensure that the policies specified in the resource are removed.\n"
},
"namespace": {
"type": "string",
@@ -15351,7 +12480,7 @@
}
},
"vault:identity/group:Group": {
- "description": "Creates an Identity Group for Vault. The [Identity secrets engine](https://www.vaultproject.io/docs/secrets/identity/index.html) is the identity management solution for Vault.\n\nA group can contain multiple entities as its members. A group can also have subgroups. Policies set on the group is granted to all members of the group. During request time, when the token's entity ID is being evaluated for the policies that it has access to; along with the policies on the entity itself, policies that are inherited due to group memberships are also granted.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n### Internal Group\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst internal = new vault.identity.Group(\"internal\", {\n metadata: {\n version: \"2\",\n },\n policies: [\n \"dev\",\n \"test\",\n ],\n type: \"internal\",\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\ninternal = vault.identity.Group(\"internal\",\n metadata={\n \"version\": \"2\",\n },\n policies=[\n \"dev\",\n \"test\",\n ],\n type=\"internal\")\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @internal = new Vault.Identity.Group(\"internal\", new()\n {\n Metadata = \n {\n { \"version\", \"2\" },\n },\n Policies = new[]\n {\n \"dev\",\n \"test\",\n },\n Type = \"internal\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/identity\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := identity.NewGroup(ctx, \"internal\", \u0026identity.GroupArgs{\n\t\t\tMetadata: pulumi.StringMap{\n\t\t\t\t\"version\": pulumi.String(\"2\"),\n\t\t\t},\n\t\t\tPolicies: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"dev\"),\n\t\t\t\tpulumi.String(\"test\"),\n\t\t\t},\n\t\t\tType: pulumi.String(\"internal\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.identity.Group;\nimport com.pulumi.vault.identity.GroupArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var internal = new Group(\"internal\", GroupArgs.builder() \n .metadata(Map.of(\"version\", \"2\"))\n .policies( \n \"dev\",\n \"test\")\n .type(\"internal\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n internal:\n type: vault:identity:Group\n properties:\n metadata:\n version: 2\n policies:\n - dev\n - test\n type: internal\n```\n{{% /example %}}\n{{% example %}}\n### External Group\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst group = new vault.identity.Group(\"group\", {\n metadata: {\n version: \"1\",\n },\n policies: [\"test\"],\n type: \"external\",\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\ngroup = vault.identity.Group(\"group\",\n metadata={\n \"version\": \"1\",\n },\n policies=[\"test\"],\n type=\"external\")\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @group = new Vault.Identity.Group(\"group\", new()\n {\n Metadata = \n {\n { \"version\", \"1\" },\n },\n Policies = new[]\n {\n \"test\",\n },\n Type = \"external\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/identity\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := identity.NewGroup(ctx, \"group\", \u0026identity.GroupArgs{\n\t\t\tMetadata: pulumi.StringMap{\n\t\t\t\t\"version\": pulumi.String(\"1\"),\n\t\t\t},\n\t\t\tPolicies: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"test\"),\n\t\t\t},\n\t\t\tType: pulumi.String(\"external\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.identity.Group;\nimport com.pulumi.vault.identity.GroupArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var group = new Group(\"group\", GroupArgs.builder() \n .metadata(Map.of(\"version\", \"1\"))\n .policies(\"test\")\n .type(\"external\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n group:\n type: vault:identity:Group\n properties:\n metadata:\n version: 1\n policies:\n - test\n type: external\n```\n{{% /example %}}\n{{% /examples %}}\n## Caveats\n\nIt's important to note that Vault identity groups names are *case-insensitive*. For example the following resources would be equivalent.\nApplying this configuration would result in the provider failing to create one of the identity groups, since the resources share the same `name`.\n\nThis sort of pattern should be avoided:\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst internalIdentityGroup = new vault.identity.Group(\"internal\", {\n metadata: {\n version: \"2\",\n },\n policies: [\n \"dev\",\n \"test\",\n ],\n type: \"internal\",\n});\nconst internalGroup = new vault.identity.Group(\"Internal\", {\n metadata: {\n version: \"2\",\n },\n policies: [\n \"dev\",\n \"test\",\n ],\n type: \"internal\",\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\ninternal_identity_group_group = vault.identity.Group(\"internalIdentity/groupGroup\",\n metadata={\n \"version\": \"2\",\n },\n policies=[\n \"dev\",\n \"test\",\n ],\n type=\"internal\")\ninternal_group = vault.identity.Group(\"internalGroup\",\n metadata={\n \"version\": \"2\",\n },\n policies=[\n \"dev\",\n \"test\",\n ],\n type=\"internal\")\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var internalIdentity_groupGroup = new Vault.Identity.Group(\"internalIdentity/groupGroup\", new()\n {\n Metadata = \n {\n { \"version\", \"2\" },\n },\n Policies = new[]\n {\n \"dev\",\n \"test\",\n },\n Type = \"internal\",\n });\n\n var internalGroup = new Vault.Identity.Group(\"internalGroup\", new()\n {\n Metadata = \n {\n { \"version\", \"2\" },\n },\n Policies = new[]\n {\n \"dev\",\n \"test\",\n },\n Type = \"internal\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/identity\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := identity.NewGroup(ctx, \"internalIdentity/groupGroup\", \u0026identity.GroupArgs{\n\t\t\tMetadata: pulumi.StringMap{\n\t\t\t\t\"version\": pulumi.String(\"2\"),\n\t\t\t},\n\t\t\tPolicies: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"dev\"),\n\t\t\t\tpulumi.String(\"test\"),\n\t\t\t},\n\t\t\tType: pulumi.String(\"internal\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = identity.NewGroup(ctx, \"internalGroup\", \u0026identity.GroupArgs{\n\t\t\tMetadata: pulumi.StringMap{\n\t\t\t\t\"version\": pulumi.String(\"2\"),\n\t\t\t},\n\t\t\tPolicies: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"dev\"),\n\t\t\t\tpulumi.String(\"test\"),\n\t\t\t},\n\t\t\tType: pulumi.String(\"internal\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.identity.Group;\nimport com.pulumi.vault.identity.GroupArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var internalIdentity_groupGroup = new Group(\"internalIdentity/groupGroup\", GroupArgs.builder() \n .metadata(Map.of(\"version\", \"2\"))\n .policies( \n \"dev\",\n \"test\")\n .type(\"internal\")\n .build());\n\n var internalGroup = new Group(\"internalGroup\", GroupArgs.builder() \n .metadata(Map.of(\"version\", \"2\"))\n .policies( \n \"dev\",\n \"test\")\n .type(\"internal\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n internalIdentity/groupGroup:\n type: vault:identity:Group\n properties:\n metadata:\n version: 2\n policies:\n - dev\n - test\n type: internal\n internalGroup:\n type: vault:identity:Group\n properties:\n metadata:\n version: 2\n policies:\n - dev\n - test\n type: internal\n```\n\n\n## Import\n\nIdentity group can be imported using the `id`, e.g.\n\n```sh\n $ pulumi import vault:identity/group:Group test 'fcbf1efb-2b69-4209-bed8-811e3475dad3'\n```\n\n ",
+ "description": "Creates an Identity Group for Vault. The [Identity secrets engine](https://www.vaultproject.io/docs/secrets/identity/index.html) is the identity management solution for Vault.\n\nA group can contain multiple entities as its members. A group can also have subgroups. Policies set on the group is granted to all members of the group. During request time, when the token's entity ID is being evaluated for the policies that it has access to; along with the policies on the entity itself, policies that are inherited due to group memberships are also granted.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n### Internal Group\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst internal = new vault.identity.Group(\"internal\", {\n metadata: {\n version: \"2\",\n },\n policies: [\n \"dev\",\n \"test\",\n ],\n type: \"internal\",\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\ninternal = vault.identity.Group(\"internal\",\n metadata={\n \"version\": \"2\",\n },\n policies=[\n \"dev\",\n \"test\",\n ],\n type=\"internal\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @internal = new Vault.Identity.Group(\"internal\", new()\n {\n Metadata = \n {\n { \"version\", \"2\" },\n },\n Policies = new[]\n {\n \"dev\",\n \"test\",\n },\n Type = \"internal\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/identity\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := identity.NewGroup(ctx, \"internal\", \u0026identity.GroupArgs{\n\t\t\tMetadata: pulumi.StringMap{\n\t\t\t\t\"version\": pulumi.String(\"2\"),\n\t\t\t},\n\t\t\tPolicies: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"dev\"),\n\t\t\t\tpulumi.String(\"test\"),\n\t\t\t},\n\t\t\tType: pulumi.String(\"internal\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.identity.Group;\nimport com.pulumi.vault.identity.GroupArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var internal = new Group(\"internal\", GroupArgs.builder() \n .metadata(Map.of(\"version\", \"2\"))\n .policies( \n \"dev\",\n \"test\")\n .type(\"internal\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n internal:\n type: vault:identity:Group\n properties:\n metadata:\n version: '2'\n policies:\n - dev\n - test\n type: internal\n```\n{{% /example %}}\n{{% example %}}\n### External Group\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst group = new vault.identity.Group(\"group\", {\n metadata: {\n version: \"1\",\n },\n policies: [\"test\"],\n type: \"external\",\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\ngroup = vault.identity.Group(\"group\",\n metadata={\n \"version\": \"1\",\n },\n policies=[\"test\"],\n type=\"external\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @group = new Vault.Identity.Group(\"group\", new()\n {\n Metadata = \n {\n { \"version\", \"1\" },\n },\n Policies = new[]\n {\n \"test\",\n },\n Type = \"external\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/identity\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := identity.NewGroup(ctx, \"group\", \u0026identity.GroupArgs{\n\t\t\tMetadata: pulumi.StringMap{\n\t\t\t\t\"version\": pulumi.String(\"1\"),\n\t\t\t},\n\t\t\tPolicies: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"test\"),\n\t\t\t},\n\t\t\tType: pulumi.String(\"external\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.identity.Group;\nimport com.pulumi.vault.identity.GroupArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var group = new Group(\"group\", GroupArgs.builder() \n .metadata(Map.of(\"version\", \"1\"))\n .policies(\"test\")\n .type(\"external\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n group:\n type: vault:identity:Group\n properties:\n metadata:\n version: '1'\n policies:\n - test\n type: external\n```\n{{% /example %}}\n{{% /examples %}}\n## Caveats\n\nIt's important to note that Vault identity groups names are *case-insensitive*. For example the following resources would be equivalent.\nApplying this configuration would result in the provider failing to create one of the identity groups, since the resources share the same `name`.\n\nThis sort of pattern should be avoided:\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst internalIdentity_groupGroup = new vault.identity.Group(\"internalIdentity/groupGroup\", {\n metadata: {\n version: \"2\",\n },\n policies: [\n \"dev\",\n \"test\",\n ],\n type: \"internal\",\n});\nconst internalGroup = new vault.identity.Group(\"internalGroup\", {\n metadata: {\n version: \"2\",\n },\n policies: [\n \"dev\",\n \"test\",\n ],\n type: \"internal\",\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\ninternal_identity_group_group = vault.identity.Group(\"internalIdentity/groupGroup\",\n metadata={\n \"version\": \"2\",\n },\n policies=[\n \"dev\",\n \"test\",\n ],\n type=\"internal\")\ninternal_group = vault.identity.Group(\"internalGroup\",\n metadata={\n \"version\": \"2\",\n },\n policies=[\n \"dev\",\n \"test\",\n ],\n type=\"internal\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var internalIdentity_groupGroup = new Vault.Identity.Group(\"internalIdentity/groupGroup\", new()\n {\n Metadata = \n {\n { \"version\", \"2\" },\n },\n Policies = new[]\n {\n \"dev\",\n \"test\",\n },\n Type = \"internal\",\n });\n\n var internalGroup = new Vault.Identity.Group(\"internalGroup\", new()\n {\n Metadata = \n {\n { \"version\", \"2\" },\n },\n Policies = new[]\n {\n \"dev\",\n \"test\",\n },\n Type = \"internal\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/identity\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := identity.NewGroup(ctx, \"internalIdentity/groupGroup\", \u0026identity.GroupArgs{\n\t\t\tMetadata: pulumi.StringMap{\n\t\t\t\t\"version\": pulumi.String(\"2\"),\n\t\t\t},\n\t\t\tPolicies: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"dev\"),\n\t\t\t\tpulumi.String(\"test\"),\n\t\t\t},\n\t\t\tType: pulumi.String(\"internal\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = identity.NewGroup(ctx, \"internalGroup\", \u0026identity.GroupArgs{\n\t\t\tMetadata: pulumi.StringMap{\n\t\t\t\t\"version\": pulumi.String(\"2\"),\n\t\t\t},\n\t\t\tPolicies: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"dev\"),\n\t\t\t\tpulumi.String(\"test\"),\n\t\t\t},\n\t\t\tType: pulumi.String(\"internal\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.identity.Group;\nimport com.pulumi.vault.identity.GroupArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var internalIdentity_groupGroup = new Group(\"internalIdentity/groupGroup\", GroupArgs.builder() \n .metadata(Map.of(\"version\", \"2\"))\n .policies( \n \"dev\",\n \"test\")\n .type(\"internal\")\n .build());\n\n var internalGroup = new Group(\"internalGroup\", GroupArgs.builder() \n .metadata(Map.of(\"version\", \"2\"))\n .policies( \n \"dev\",\n \"test\")\n .type(\"internal\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n internalIdentity/groupGroup:\n type: vault:identity:Group\n properties:\n metadata:\n version: '2'\n policies:\n - dev\n - test\n type: internal\n internalGroup:\n type: vault:identity:Group\n properties:\n metadata:\n version: '2'\n policies:\n - dev\n - test\n type: internal\n```\n\n\n## Import\n\nIdentity group can be imported using the `id`, e.g.\n\n```sh\n $ pulumi import vault:identity/group:Group test 'fcbf1efb-2b69-4209-bed8-811e3475dad3'\n```\n ",
"properties": {
"externalMemberEntityIds": {
"type": "boolean",
@@ -15527,7 +12656,7 @@
}
},
"vault:identity/groupAlias:GroupAlias": {
- "description": "Creates an Identity Group Alias for Vault. The [Identity secrets engine](https://www.vaultproject.io/docs/secrets/identity/index.html) is the identity management solution for Vault.\n\nGroup aliases allows entity membership in external groups to be managed semi-automatically. External group serves as a mapping to a group that is outside of the identity store. External groups can have one (and only one) alias. This alias should map to a notion of group that is outside of the identity store. For example, groups in LDAP, and teams in GitHub. A username in LDAP, belonging to a group in LDAP, can get its entity ID added as a member of a group in Vault automatically during logins and token renewals. This works only if the group in Vault is an external group and has an alias that maps to the group in LDAP. If the user is removed from the group in LDAP, that change gets reflected in Vault only upon the subsequent login or renewal operation.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst group = new vault.identity.Group(\"group\", {\n type: \"external\",\n policies: [\"test\"],\n});\nconst github = new vault.AuthBackend(\"github\", {\n type: \"github\",\n path: \"github\",\n});\nconst group_alias = new vault.identity.GroupAlias(\"group-alias\", {\n name: \"Github_Team_Slug\",\n mountAccessor: github.accessor,\n canonicalId: group.id,\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\ngroup = vault.identity.Group(\"group\",\n type=\"external\",\n policies=[\"test\"])\ngithub = vault.AuthBackend(\"github\",\n type=\"github\",\n path=\"github\")\ngroup_alias = vault.identity.GroupAlias(\"group-alias\",\n name=\"Github_Team_Slug\",\n mount_accessor=github.accessor,\n canonical_id=group.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @group = new Vault.Identity.Group(\"group\", new()\n {\n Type = \"external\",\n Policies = new[]\n {\n \"test\",\n },\n });\n\n var github = new Vault.AuthBackend(\"github\", new()\n {\n Type = \"github\",\n Path = \"github\",\n });\n\n var group_alias = new Vault.Identity.GroupAlias(\"group-alias\", new()\n {\n Name = \"Github_Team_Slug\",\n MountAccessor = github.Accessor,\n CanonicalId = @group.Id,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault\"\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/identity\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tgroup, err := identity.NewGroup(ctx, \"group\", \u0026identity.GroupArgs{\n\t\t\tType: pulumi.String(\"external\"),\n\t\t\tPolicies: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"test\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tgithub, err := vault.NewAuthBackend(ctx, \"github\", \u0026vault.AuthBackendArgs{\n\t\t\tType: pulumi.String(\"github\"),\n\t\t\tPath: pulumi.String(\"github\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = identity.NewGroupAlias(ctx, \"group-alias\", \u0026identity.GroupAliasArgs{\n\t\t\tName: pulumi.String(\"Github_Team_Slug\"),\n\t\t\tMountAccessor: github.Accessor,\n\t\t\tCanonicalId: group.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.identity.Group;\nimport com.pulumi.vault.identity.GroupArgs;\nimport com.pulumi.vault.AuthBackend;\nimport com.pulumi.vault.AuthBackendArgs;\nimport com.pulumi.vault.identity.GroupAlias;\nimport com.pulumi.vault.identity.GroupAliasArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var group = new Group(\"group\", GroupArgs.builder() \n .type(\"external\")\n .policies(\"test\")\n .build());\n\n var github = new AuthBackend(\"github\", AuthBackendArgs.builder() \n .type(\"github\")\n .path(\"github\")\n .build());\n\n var group_alias = new GroupAlias(\"group-alias\", GroupAliasArgs.builder() \n .name(\"Github_Team_Slug\")\n .mountAccessor(github.accessor())\n .canonicalId(group.id())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n group:\n type: vault:identity:Group\n properties:\n type: external\n policies:\n - test\n github:\n type: vault:AuthBackend\n properties:\n type: github\n path: github\n group-alias:\n type: vault:identity:GroupAlias\n properties:\n name: Github_Team_Slug\n mountAccessor: ${github.accessor}\n canonicalId: ${group.id}\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nThe group alias can be imported with the group alias `id`, for example\n\n```sh\n $ pulumi import vault:identity/groupAlias:GroupAlias group-alias id\n```\n\n Group aliases can also be imported using the UUID of the alias record, e.g.\n\n```sh\n $ pulumi import vault:identity/groupAlias:GroupAlias alias_name 63104e20-88e4-11eb-8d04-cf7ac9d60157\n```\n\n ",
+ "description": "Creates an Identity Group Alias for Vault. The [Identity secrets engine](https://www.vaultproject.io/docs/secrets/identity/index.html) is the identity management solution for Vault.\n\nGroup aliases allows entity membership in external groups to be managed semi-automatically. External group serves as a mapping to a group that is outside of the identity store. External groups can have one (and only one) alias. This alias should map to a notion of group that is outside of the identity store. For example, groups in LDAP, and teams in GitHub. A username in LDAP, belonging to a group in LDAP, can get its entity ID added as a member of a group in Vault automatically during logins and token renewals. This works only if the group in Vault is an external group and has an alias that maps to the group in LDAP. If the user is removed from the group in LDAP, that change gets reflected in Vault only upon the subsequent login or renewal operation.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst group = new vault.identity.Group(\"group\", {\n type: \"external\",\n policies: [\"test\"],\n});\nconst github = new vault.AuthBackend(\"github\", {\n type: \"github\",\n path: \"github\",\n});\nconst group_alias = new vault.identity.GroupAlias(\"group-alias\", {\n name: \"Github_Team_Slug\",\n mountAccessor: github.accessor,\n canonicalId: group.id,\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\ngroup = vault.identity.Group(\"group\",\n type=\"external\",\n policies=[\"test\"])\ngithub = vault.AuthBackend(\"github\",\n type=\"github\",\n path=\"github\")\ngroup_alias = vault.identity.GroupAlias(\"group-alias\",\n name=\"Github_Team_Slug\",\n mount_accessor=github.accessor,\n canonical_id=group.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @group = new Vault.Identity.Group(\"group\", new()\n {\n Type = \"external\",\n Policies = new[]\n {\n \"test\",\n },\n });\n\n var github = new Vault.AuthBackend(\"github\", new()\n {\n Type = \"github\",\n Path = \"github\",\n });\n\n var group_alias = new Vault.Identity.GroupAlias(\"group-alias\", new()\n {\n Name = \"Github_Team_Slug\",\n MountAccessor = github.Accessor,\n CanonicalId = @group.Id,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault\"\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/identity\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tgroup, err := identity.NewGroup(ctx, \"group\", \u0026identity.GroupArgs{\n\t\t\tType: pulumi.String(\"external\"),\n\t\t\tPolicies: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"test\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tgithub, err := vault.NewAuthBackend(ctx, \"github\", \u0026vault.AuthBackendArgs{\n\t\t\tType: pulumi.String(\"github\"),\n\t\t\tPath: pulumi.String(\"github\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = identity.NewGroupAlias(ctx, \"group-alias\", \u0026identity.GroupAliasArgs{\n\t\t\tName: pulumi.String(\"Github_Team_Slug\"),\n\t\t\tMountAccessor: github.Accessor,\n\t\t\tCanonicalId: group.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.identity.Group;\nimport com.pulumi.vault.identity.GroupArgs;\nimport com.pulumi.vault.AuthBackend;\nimport com.pulumi.vault.AuthBackendArgs;\nimport com.pulumi.vault.identity.GroupAlias;\nimport com.pulumi.vault.identity.GroupAliasArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var group = new Group(\"group\", GroupArgs.builder() \n .type(\"external\")\n .policies(\"test\")\n .build());\n\n var github = new AuthBackend(\"github\", AuthBackendArgs.builder() \n .type(\"github\")\n .path(\"github\")\n .build());\n\n var group_alias = new GroupAlias(\"group-alias\", GroupAliasArgs.builder() \n .name(\"Github_Team_Slug\")\n .mountAccessor(github.accessor())\n .canonicalId(group.id())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n group:\n type: vault:identity:Group\n properties:\n type: external\n policies:\n - test\n github:\n type: vault:AuthBackend\n properties:\n type: github\n path: github\n group-alias:\n type: vault:identity:GroupAlias\n properties:\n name: Github_Team_Slug\n mountAccessor: ${github.accessor}\n canonicalId: ${group.id}\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nThe group alias can be imported with the group alias `id`, for example\n\n```sh\n $ pulumi import vault:identity/groupAlias:GroupAlias group-alias id\n```\n\n Group aliases can also be imported using the UUID of the alias record, e.g.\n\n```sh\n $ pulumi import vault:identity/groupAlias:GroupAlias alias_name 63104e20-88e4-11eb-8d04-cf7ac9d60157\n```\n\n ",
"properties": {
"canonicalId": {
"type": "string",
@@ -15600,11 +12729,11 @@
}
},
"vault:identity/groupMemberEntityIds:GroupMemberEntityIds": {
- "description": "Manages member entities for an Identity Group for Vault. The [Identity secrets engine](https://www.vaultproject.io/docs/secrets/identity/index.html) is the identity management solution for Vault.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n### Exclusive Member Entities\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst internal = new vault.identity.Group(\"internal\", {\n type: \"internal\",\n externalMemberEntityIds: true,\n metadata: {\n version: \"2\",\n },\n});\nconst user = new vault.identity.Entity(\"user\", {});\nconst members = new vault.identity.GroupMemberEntityIds(\"members\", {\n exclusive: true,\n memberEntityIds: [user.id],\n groupId: internal.id,\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\ninternal = vault.identity.Group(\"internal\",\n type=\"internal\",\n external_member_entity_ids=True,\n metadata={\n \"version\": \"2\",\n })\nuser = vault.identity.Entity(\"user\")\nmembers = vault.identity.GroupMemberEntityIds(\"members\",\n exclusive=True,\n member_entity_ids=[user.id],\n group_id=internal.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @internal = new Vault.Identity.Group(\"internal\", new()\n {\n Type = \"internal\",\n ExternalMemberEntityIds = true,\n Metadata = \n {\n { \"version\", \"2\" },\n },\n });\n\n var user = new Vault.Identity.Entity(\"user\");\n\n var members = new Vault.Identity.GroupMemberEntityIds(\"members\", new()\n {\n Exclusive = true,\n MemberEntityIds = new[]\n {\n user.Id,\n },\n GroupId = @internal.Id,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/identity\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tinternal, err := identity.NewGroup(ctx, \"internal\", \u0026identity.GroupArgs{\n\t\t\tType: pulumi.String(\"internal\"),\n\t\t\tExternalMemberEntityIds: pulumi.Bool(true),\n\t\t\tMetadata: pulumi.StringMap{\n\t\t\t\t\"version\": pulumi.String(\"2\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tuser, err := identity.NewEntity(ctx, \"user\", nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = identity.NewGroupMemberEntityIds(ctx, \"members\", \u0026identity.GroupMemberEntityIdsArgs{\n\t\t\tExclusive: pulumi.Bool(true),\n\t\t\tMemberEntityIds: pulumi.StringArray{\n\t\t\t\tuser.ID(),\n\t\t\t},\n\t\t\tGroupId: internal.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.identity.Group;\nimport com.pulumi.vault.identity.GroupArgs;\nimport com.pulumi.vault.identity.Entity;\nimport com.pulumi.vault.identity.GroupMemberEntityIds;\nimport com.pulumi.vault.identity.GroupMemberEntityIdsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var internal = new Group(\"internal\", GroupArgs.builder() \n .type(\"internal\")\n .externalMemberEntityIds(true)\n .metadata(Map.of(\"version\", \"2\"))\n .build());\n\n var user = new Entity(\"user\");\n\n var members = new GroupMemberEntityIds(\"members\", GroupMemberEntityIdsArgs.builder() \n .exclusive(true)\n .memberEntityIds(user.id())\n .groupId(internal.id())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n internal:\n type: vault:identity:Group\n properties:\n type: internal\n externalMemberEntityIds: true\n metadata:\n version: 2\n user:\n type: vault:identity:Entity\n members:\n type: vault:identity:GroupMemberEntityIds\n properties:\n exclusive: true\n memberEntityIds:\n - ${user.id}\n groupId: ${internal.id}\n```\n{{% /example %}}\n{{% example %}}\n### Non-exclusive Member Entities\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst internal = new vault.identity.Group(\"internal\", {\n type: \"internal\",\n externalMemberEntityIds: true,\n metadata: {\n version: \"2\",\n },\n});\nconst testUser = new vault.identity.Entity(\"testUser\", {});\nconst secondTestUser = new vault.identity.Entity(\"secondTestUser\", {});\nconst devUser = new vault.identity.Entity(\"devUser\", {});\nconst test = new vault.identity.GroupMemberEntityIds(\"test\", {\n memberEntityIds: [\n testUser.id,\n secondTestUser.id,\n ],\n exclusive: false,\n groupId: internal.id,\n});\nconst others = new vault.identity.GroupMemberEntityIds(\"others\", {\n memberEntityIds: [devUser.id],\n exclusive: false,\n groupId: internal.id,\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\ninternal = vault.identity.Group(\"internal\",\n type=\"internal\",\n external_member_entity_ids=True,\n metadata={\n \"version\": \"2\",\n })\ntest_user = vault.identity.Entity(\"testUser\")\nsecond_test_user = vault.identity.Entity(\"secondTestUser\")\ndev_user = vault.identity.Entity(\"devUser\")\ntest = vault.identity.GroupMemberEntityIds(\"test\",\n member_entity_ids=[\n test_user.id,\n second_test_user.id,\n ],\n exclusive=False,\n group_id=internal.id)\nothers = vault.identity.GroupMemberEntityIds(\"others\",\n member_entity_ids=[dev_user.id],\n exclusive=False,\n group_id=internal.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @internal = new Vault.Identity.Group(\"internal\", new()\n {\n Type = \"internal\",\n ExternalMemberEntityIds = true,\n Metadata = \n {\n { \"version\", \"2\" },\n },\n });\n\n var testUser = new Vault.Identity.Entity(\"testUser\");\n\n var secondTestUser = new Vault.Identity.Entity(\"secondTestUser\");\n\n var devUser = new Vault.Identity.Entity(\"devUser\");\n\n var test = new Vault.Identity.GroupMemberEntityIds(\"test\", new()\n {\n MemberEntityIds = new[]\n {\n testUser.Id,\n secondTestUser.Id,\n },\n Exclusive = false,\n GroupId = @internal.Id,\n });\n\n var others = new Vault.Identity.GroupMemberEntityIds(\"others\", new()\n {\n MemberEntityIds = new[]\n {\n devUser.Id,\n },\n Exclusive = false,\n GroupId = @internal.Id,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/identity\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tinternal, err := identity.NewGroup(ctx, \"internal\", \u0026identity.GroupArgs{\n\t\t\tType: pulumi.String(\"internal\"),\n\t\t\tExternalMemberEntityIds: pulumi.Bool(true),\n\t\t\tMetadata: pulumi.StringMap{\n\t\t\t\t\"version\": pulumi.String(\"2\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\ttestUser, err := identity.NewEntity(ctx, \"testUser\", nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tsecondTestUser, err := identity.NewEntity(ctx, \"secondTestUser\", nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdevUser, err := identity.NewEntity(ctx, \"devUser\", nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = identity.NewGroupMemberEntityIds(ctx, \"test\", \u0026identity.GroupMemberEntityIdsArgs{\n\t\t\tMemberEntityIds: pulumi.StringArray{\n\t\t\t\ttestUser.ID(),\n\t\t\t\tsecondTestUser.ID(),\n\t\t\t},\n\t\t\tExclusive: pulumi.Bool(false),\n\t\t\tGroupId: internal.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = identity.NewGroupMemberEntityIds(ctx, \"others\", \u0026identity.GroupMemberEntityIdsArgs{\n\t\t\tMemberEntityIds: pulumi.StringArray{\n\t\t\t\tdevUser.ID(),\n\t\t\t},\n\t\t\tExclusive: pulumi.Bool(false),\n\t\t\tGroupId: internal.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.identity.Group;\nimport com.pulumi.vault.identity.GroupArgs;\nimport com.pulumi.vault.identity.Entity;\nimport com.pulumi.vault.identity.GroupMemberEntityIds;\nimport com.pulumi.vault.identity.GroupMemberEntityIdsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var internal = new Group(\"internal\", GroupArgs.builder() \n .type(\"internal\")\n .externalMemberEntityIds(true)\n .metadata(Map.of(\"version\", \"2\"))\n .build());\n\n var testUser = new Entity(\"testUser\");\n\n var secondTestUser = new Entity(\"secondTestUser\");\n\n var devUser = new Entity(\"devUser\");\n\n var test = new GroupMemberEntityIds(\"test\", GroupMemberEntityIdsArgs.builder() \n .memberEntityIds( \n testUser.id(),\n secondTestUser.id())\n .exclusive(false)\n .groupId(internal.id())\n .build());\n\n var others = new GroupMemberEntityIds(\"others\", GroupMemberEntityIdsArgs.builder() \n .memberEntityIds(devUser.id())\n .exclusive(false)\n .groupId(internal.id())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n internal:\n type: vault:identity:Group\n properties:\n type: internal\n externalMemberEntityIds: true\n metadata:\n version: 2\n testUser:\n type: vault:identity:Entity\n secondTestUser:\n type: vault:identity:Entity\n devUser:\n type: vault:identity:Entity\n test:\n type: vault:identity:GroupMemberEntityIds\n properties:\n memberEntityIds:\n - ${testUser.id}\n - ${secondTestUser.id}\n exclusive: false\n groupId: ${internal.id}\n others:\n type: vault:identity:GroupMemberEntityIds\n properties:\n memberEntityIds:\n - ${devUser.id}\n exclusive: false\n groupId: ${internal.id}\n```\n{{% /example %}}\n{{% /examples %}}",
+ "description": "Manages member entities for an Identity Group for Vault. The [Identity secrets engine](https://www.vaultproject.io/docs/secrets/identity/index.html) is the identity management solution for Vault.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n### Exclusive Member Entities\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst internal = new vault.identity.Group(\"internal\", {\n type: \"internal\",\n externalMemberEntityIds: true,\n metadata: {\n version: \"2\",\n },\n});\nconst user = new vault.identity.Entity(\"user\", {});\nconst members = new vault.identity.GroupMemberEntityIds(\"members\", {\n exclusive: true,\n memberEntityIds: [user.id],\n groupId: internal.id,\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\ninternal = vault.identity.Group(\"internal\",\n type=\"internal\",\n external_member_entity_ids=True,\n metadata={\n \"version\": \"2\",\n })\nuser = vault.identity.Entity(\"user\")\nmembers = vault.identity.GroupMemberEntityIds(\"members\",\n exclusive=True,\n member_entity_ids=[user.id],\n group_id=internal.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @internal = new Vault.Identity.Group(\"internal\", new()\n {\n Type = \"internal\",\n ExternalMemberEntityIds = true,\n Metadata = \n {\n { \"version\", \"2\" },\n },\n });\n\n var user = new Vault.Identity.Entity(\"user\");\n\n var members = new Vault.Identity.GroupMemberEntityIds(\"members\", new()\n {\n Exclusive = true,\n MemberEntityIds = new[]\n {\n user.Id,\n },\n GroupId = @internal.Id,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/identity\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tinternal, err := identity.NewGroup(ctx, \"internal\", \u0026identity.GroupArgs{\n\t\t\tType: pulumi.String(\"internal\"),\n\t\t\tExternalMemberEntityIds: pulumi.Bool(true),\n\t\t\tMetadata: pulumi.StringMap{\n\t\t\t\t\"version\": pulumi.String(\"2\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tuser, err := identity.NewEntity(ctx, \"user\", nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = identity.NewGroupMemberEntityIds(ctx, \"members\", \u0026identity.GroupMemberEntityIdsArgs{\n\t\t\tExclusive: pulumi.Bool(true),\n\t\t\tMemberEntityIds: pulumi.StringArray{\n\t\t\t\tuser.ID(),\n\t\t\t},\n\t\t\tGroupId: internal.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.identity.Group;\nimport com.pulumi.vault.identity.GroupArgs;\nimport com.pulumi.vault.identity.Entity;\nimport com.pulumi.vault.identity.GroupMemberEntityIds;\nimport com.pulumi.vault.identity.GroupMemberEntityIdsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var internal = new Group(\"internal\", GroupArgs.builder() \n .type(\"internal\")\n .externalMemberEntityIds(true)\n .metadata(Map.of(\"version\", \"2\"))\n .build());\n\n var user = new Entity(\"user\");\n\n var members = new GroupMemberEntityIds(\"members\", GroupMemberEntityIdsArgs.builder() \n .exclusive(true)\n .memberEntityIds(user.id())\n .groupId(internal.id())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n internal:\n type: vault:identity:Group\n properties:\n type: internal\n externalMemberEntityIds: true\n metadata:\n version: '2'\n user:\n type: vault:identity:Entity\n members:\n type: vault:identity:GroupMemberEntityIds\n properties:\n exclusive: true\n memberEntityIds:\n - ${user.id}\n groupId: ${internal.id}\n```\n{{% /example %}}\n{{% example %}}\n### Non-exclusive Member Entities\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst internal = new vault.identity.Group(\"internal\", {\n type: \"internal\",\n externalMemberEntityIds: true,\n metadata: {\n version: \"2\",\n },\n});\nconst testUser = new vault.identity.Entity(\"testUser\", {});\nconst secondTestUser = new vault.identity.Entity(\"secondTestUser\", {});\nconst devUser = new vault.identity.Entity(\"devUser\", {});\nconst test = new vault.identity.GroupMemberEntityIds(\"test\", {\n memberEntityIds: [\n testUser.id,\n secondTestUser.id,\n ],\n exclusive: false,\n groupId: internal.id,\n});\nconst others = new vault.identity.GroupMemberEntityIds(\"others\", {\n memberEntityIds: [devUser.id],\n exclusive: false,\n groupId: internal.id,\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\ninternal = vault.identity.Group(\"internal\",\n type=\"internal\",\n external_member_entity_ids=True,\n metadata={\n \"version\": \"2\",\n })\ntest_user = vault.identity.Entity(\"testUser\")\nsecond_test_user = vault.identity.Entity(\"secondTestUser\")\ndev_user = vault.identity.Entity(\"devUser\")\ntest = vault.identity.GroupMemberEntityIds(\"test\",\n member_entity_ids=[\n test_user.id,\n second_test_user.id,\n ],\n exclusive=False,\n group_id=internal.id)\nothers = vault.identity.GroupMemberEntityIds(\"others\",\n member_entity_ids=[dev_user.id],\n exclusive=False,\n group_id=internal.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @internal = new Vault.Identity.Group(\"internal\", new()\n {\n Type = \"internal\",\n ExternalMemberEntityIds = true,\n Metadata = \n {\n { \"version\", \"2\" },\n },\n });\n\n var testUser = new Vault.Identity.Entity(\"testUser\");\n\n var secondTestUser = new Vault.Identity.Entity(\"secondTestUser\");\n\n var devUser = new Vault.Identity.Entity(\"devUser\");\n\n var test = new Vault.Identity.GroupMemberEntityIds(\"test\", new()\n {\n MemberEntityIds = new[]\n {\n testUser.Id,\n secondTestUser.Id,\n },\n Exclusive = false,\n GroupId = @internal.Id,\n });\n\n var others = new Vault.Identity.GroupMemberEntityIds(\"others\", new()\n {\n MemberEntityIds = new[]\n {\n devUser.Id,\n },\n Exclusive = false,\n GroupId = @internal.Id,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/identity\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tinternal, err := identity.NewGroup(ctx, \"internal\", \u0026identity.GroupArgs{\n\t\t\tType: pulumi.String(\"internal\"),\n\t\t\tExternalMemberEntityIds: pulumi.Bool(true),\n\t\t\tMetadata: pulumi.StringMap{\n\t\t\t\t\"version\": pulumi.String(\"2\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\ttestUser, err := identity.NewEntity(ctx, \"testUser\", nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tsecondTestUser, err := identity.NewEntity(ctx, \"secondTestUser\", nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdevUser, err := identity.NewEntity(ctx, \"devUser\", nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = identity.NewGroupMemberEntityIds(ctx, \"test\", \u0026identity.GroupMemberEntityIdsArgs{\n\t\t\tMemberEntityIds: pulumi.StringArray{\n\t\t\t\ttestUser.ID(),\n\t\t\t\tsecondTestUser.ID(),\n\t\t\t},\n\t\t\tExclusive: pulumi.Bool(false),\n\t\t\tGroupId: internal.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = identity.NewGroupMemberEntityIds(ctx, \"others\", \u0026identity.GroupMemberEntityIdsArgs{\n\t\t\tMemberEntityIds: pulumi.StringArray{\n\t\t\t\tdevUser.ID(),\n\t\t\t},\n\t\t\tExclusive: pulumi.Bool(false),\n\t\t\tGroupId: internal.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.identity.Group;\nimport com.pulumi.vault.identity.GroupArgs;\nimport com.pulumi.vault.identity.Entity;\nimport com.pulumi.vault.identity.GroupMemberEntityIds;\nimport com.pulumi.vault.identity.GroupMemberEntityIdsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var internal = new Group(\"internal\", GroupArgs.builder() \n .type(\"internal\")\n .externalMemberEntityIds(true)\n .metadata(Map.of(\"version\", \"2\"))\n .build());\n\n var testUser = new Entity(\"testUser\");\n\n var secondTestUser = new Entity(\"secondTestUser\");\n\n var devUser = new Entity(\"devUser\");\n\n var test = new GroupMemberEntityIds(\"test\", GroupMemberEntityIdsArgs.builder() \n .memberEntityIds( \n testUser.id(),\n secondTestUser.id())\n .exclusive(false)\n .groupId(internal.id())\n .build());\n\n var others = new GroupMemberEntityIds(\"others\", GroupMemberEntityIdsArgs.builder() \n .memberEntityIds(devUser.id())\n .exclusive(false)\n .groupId(internal.id())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n internal:\n type: vault:identity:Group\n properties:\n type: internal\n externalMemberEntityIds: true\n metadata:\n version: '2'\n testUser:\n type: vault:identity:Entity\n secondTestUser:\n type: vault:identity:Entity\n devUser:\n type: vault:identity:Entity\n test:\n type: vault:identity:GroupMemberEntityIds\n properties:\n memberEntityIds:\n - ${testUser.id}\n - ${secondTestUser.id}\n exclusive: false\n groupId: ${internal.id}\n others:\n type: vault:identity:GroupMemberEntityIds\n properties:\n memberEntityIds:\n - ${devUser.id}\n exclusive: false\n groupId: ${internal.id}\n```\n{{% /example %}}\n{{% /examples %}}",
"properties": {
"exclusive": {
"type": "boolean",
- "description": "Defaults to `true`.\n"
+ "description": "Defaults to `true`.\n\nIf `true`, this resource will take exclusive control of the member entities that belong to the group and will set it equal to what is specified in the resource.\n\nIf set to `false`, this resource will simply ensure that the member entities specified in the resource are present in the group. When destroying the resource, the resource will ensure that the member entities specified in the resource are removed.\n"
},
"groupId": {
"type": "string",
@@ -15634,7 +12763,7 @@
"inputProperties": {
"exclusive": {
"type": "boolean",
- "description": "Defaults to `true`.\n"
+ "description": "Defaults to `true`.\n\nIf `true`, this resource will take exclusive control of the member entities that belong to the group and will set it equal to what is specified in the resource.\n\nIf set to `false`, this resource will simply ensure that the member entities specified in the resource are present in the group. When destroying the resource, the resource will ensure that the member entities specified in the resource are removed.\n"
},
"groupId": {
"type": "string",
@@ -15662,7 +12791,7 @@
"properties": {
"exclusive": {
"type": "boolean",
- "description": "Defaults to `true`.\n"
+ "description": "Defaults to `true`.\n\nIf `true`, this resource will take exclusive control of the member entities that belong to the group and will set it equal to what is specified in the resource.\n\nIf set to `false`, this resource will simply ensure that the member entities specified in the resource are present in the group. When destroying the resource, the resource will ensure that the member entities specified in the resource are removed.\n"
},
"groupId": {
"type": "string",
@@ -15691,11 +12820,11 @@
}
},
"vault:identity/groupMemberGroupIds:GroupMemberGroupIds": {
- "description": "Manages member groups for an Identity Group for Vault. The\n[Identity secrets engine](https://www.vaultproject.io/docs/secrets/identity/index.html)\nis the identity management solution for Vault.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n### Exclusive Member Groups\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst internal = new vault.identity.Group(\"internal\", {\n type: \"internal\",\n externalMemberGroupIds: true,\n metadata: {\n version: \"2\",\n },\n});\nconst users = new vault.identity.Group(\"users\", {metadata: {\n version: \"2\",\n}});\nconst members = new vault.identity.GroupMemberGroupIds(\"members\", {\n exclusive: true,\n memberGroupIds: [users.id],\n groupId: internal.id,\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\ninternal = vault.identity.Group(\"internal\",\n type=\"internal\",\n external_member_group_ids=True,\n metadata={\n \"version\": \"2\",\n })\nusers = vault.identity.Group(\"users\", metadata={\n \"version\": \"2\",\n})\nmembers = vault.identity.GroupMemberGroupIds(\"members\",\n exclusive=True,\n member_group_ids=[users.id],\n group_id=internal.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @internal = new Vault.Identity.Group(\"internal\", new()\n {\n Type = \"internal\",\n ExternalMemberGroupIds = true,\n Metadata = \n {\n { \"version\", \"2\" },\n },\n });\n\n var users = new Vault.Identity.Group(\"users\", new()\n {\n Metadata = \n {\n { \"version\", \"2\" },\n },\n });\n\n var members = new Vault.Identity.GroupMemberGroupIds(\"members\", new()\n {\n Exclusive = true,\n MemberGroupIds = new[]\n {\n users.Id,\n },\n GroupId = @internal.Id,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/identity\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tinternal, err := identity.NewGroup(ctx, \"internal\", \u0026identity.GroupArgs{\n\t\t\tType: pulumi.String(\"internal\"),\n\t\t\tExternalMemberGroupIds: pulumi.Bool(true),\n\t\t\tMetadata: pulumi.StringMap{\n\t\t\t\t\"version\": pulumi.String(\"2\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tusers, err := identity.NewGroup(ctx, \"users\", \u0026identity.GroupArgs{\n\t\t\tMetadata: pulumi.StringMap{\n\t\t\t\t\"version\": pulumi.String(\"2\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = identity.NewGroupMemberGroupIds(ctx, \"members\", \u0026identity.GroupMemberGroupIdsArgs{\n\t\t\tExclusive: pulumi.Bool(true),\n\t\t\tMemberGroupIds: pulumi.StringArray{\n\t\t\t\tusers.ID(),\n\t\t\t},\n\t\t\tGroupId: internal.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.identity.Group;\nimport com.pulumi.vault.identity.GroupArgs;\nimport com.pulumi.vault.identity.GroupMemberGroupIds;\nimport com.pulumi.vault.identity.GroupMemberGroupIdsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var internal = new Group(\"internal\", GroupArgs.builder() \n .type(\"internal\")\n .externalMemberGroupIds(true)\n .metadata(Map.of(\"version\", \"2\"))\n .build());\n\n var users = new Group(\"users\", GroupArgs.builder() \n .metadata(Map.of(\"version\", \"2\"))\n .build());\n\n var members = new GroupMemberGroupIds(\"members\", GroupMemberGroupIdsArgs.builder() \n .exclusive(true)\n .memberGroupIds(users.id())\n .groupId(internal.id())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n internal:\n type: vault:identity:Group\n properties:\n type: internal\n externalMemberGroupIds: true\n metadata:\n version: 2\n users:\n type: vault:identity:Group\n properties:\n metadata:\n version: 2\n members:\n type: vault:identity:GroupMemberGroupIds\n properties:\n exclusive: true\n memberGroupIds:\n - ${users.id}\n groupId: ${internal.id}\n```\n{{% /example %}}\n{{% example %}}\n### Non-Exclusive Member Groups\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst internal = new vault.identity.Group(\"internal\", {\n type: \"internal\",\n externalMemberGroupIds: true,\n metadata: {\n version: \"2\",\n },\n});\nconst users = new vault.identity.Group(\"users\", {metadata: {\n version: \"2\",\n}});\nconst members = new vault.identity.GroupMemberGroupIds(\"members\", {\n exclusive: false,\n memberGroupIds: [users.id],\n groupId: internal.id,\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\ninternal = vault.identity.Group(\"internal\",\n type=\"internal\",\n external_member_group_ids=True,\n metadata={\n \"version\": \"2\",\n })\nusers = vault.identity.Group(\"users\", metadata={\n \"version\": \"2\",\n})\nmembers = vault.identity.GroupMemberGroupIds(\"members\",\n exclusive=False,\n member_group_ids=[users.id],\n group_id=internal.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @internal = new Vault.Identity.Group(\"internal\", new()\n {\n Type = \"internal\",\n ExternalMemberGroupIds = true,\n Metadata = \n {\n { \"version\", \"2\" },\n },\n });\n\n var users = new Vault.Identity.Group(\"users\", new()\n {\n Metadata = \n {\n { \"version\", \"2\" },\n },\n });\n\n var members = new Vault.Identity.GroupMemberGroupIds(\"members\", new()\n {\n Exclusive = false,\n MemberGroupIds = new[]\n {\n users.Id,\n },\n GroupId = @internal.Id,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/identity\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tinternal, err := identity.NewGroup(ctx, \"internal\", \u0026identity.GroupArgs{\n\t\t\tType: pulumi.String(\"internal\"),\n\t\t\tExternalMemberGroupIds: pulumi.Bool(true),\n\t\t\tMetadata: pulumi.StringMap{\n\t\t\t\t\"version\": pulumi.String(\"2\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tusers, err := identity.NewGroup(ctx, \"users\", \u0026identity.GroupArgs{\n\t\t\tMetadata: pulumi.StringMap{\n\t\t\t\t\"version\": pulumi.String(\"2\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = identity.NewGroupMemberGroupIds(ctx, \"members\", \u0026identity.GroupMemberGroupIdsArgs{\n\t\t\tExclusive: pulumi.Bool(false),\n\t\t\tMemberGroupIds: pulumi.StringArray{\n\t\t\t\tusers.ID(),\n\t\t\t},\n\t\t\tGroupId: internal.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.identity.Group;\nimport com.pulumi.vault.identity.GroupArgs;\nimport com.pulumi.vault.identity.GroupMemberGroupIds;\nimport com.pulumi.vault.identity.GroupMemberGroupIdsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var internal = new Group(\"internal\", GroupArgs.builder() \n .type(\"internal\")\n .externalMemberGroupIds(true)\n .metadata(Map.of(\"version\", \"2\"))\n .build());\n\n var users = new Group(\"users\", GroupArgs.builder() \n .metadata(Map.of(\"version\", \"2\"))\n .build());\n\n var members = new GroupMemberGroupIds(\"members\", GroupMemberGroupIdsArgs.builder() \n .exclusive(false)\n .memberGroupIds(users.id())\n .groupId(internal.id())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n internal:\n type: vault:identity:Group\n properties:\n type: internal\n externalMemberGroupIds: true\n metadata:\n version: 2\n users:\n type: vault:identity:Group\n properties:\n metadata:\n version: 2\n members:\n type: vault:identity:GroupMemberGroupIds\n properties:\n exclusive: false\n memberGroupIds:\n - ${users.id}\n groupId: ${internal.id}\n```\n{{% /example %}}\n{{% /examples %}}",
+ "description": "Manages member groups for an Identity Group for Vault. The\n[Identity secrets engine](https://www.vaultproject.io/docs/secrets/identity/index.html)\nis the identity management solution for Vault.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n### Exclusive Member Groups\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst internal = new vault.identity.Group(\"internal\", {\n type: \"internal\",\n externalMemberGroupIds: true,\n metadata: {\n version: \"2\",\n },\n});\nconst users = new vault.identity.Group(\"users\", {metadata: {\n version: \"2\",\n}});\nconst members = new vault.identity.GroupMemberGroupIds(\"members\", {\n exclusive: true,\n memberGroupIds: [users.id],\n groupId: internal.id,\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\ninternal = vault.identity.Group(\"internal\",\n type=\"internal\",\n external_member_group_ids=True,\n metadata={\n \"version\": \"2\",\n })\nusers = vault.identity.Group(\"users\", metadata={\n \"version\": \"2\",\n})\nmembers = vault.identity.GroupMemberGroupIds(\"members\",\n exclusive=True,\n member_group_ids=[users.id],\n group_id=internal.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @internal = new Vault.Identity.Group(\"internal\", new()\n {\n Type = \"internal\",\n ExternalMemberGroupIds = true,\n Metadata = \n {\n { \"version\", \"2\" },\n },\n });\n\n var users = new Vault.Identity.Group(\"users\", new()\n {\n Metadata = \n {\n { \"version\", \"2\" },\n },\n });\n\n var members = new Vault.Identity.GroupMemberGroupIds(\"members\", new()\n {\n Exclusive = true,\n MemberGroupIds = new[]\n {\n users.Id,\n },\n GroupId = @internal.Id,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/identity\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tinternal, err := identity.NewGroup(ctx, \"internal\", \u0026identity.GroupArgs{\n\t\t\tType: pulumi.String(\"internal\"),\n\t\t\tExternalMemberGroupIds: pulumi.Bool(true),\n\t\t\tMetadata: pulumi.StringMap{\n\t\t\t\t\"version\": pulumi.String(\"2\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tusers, err := identity.NewGroup(ctx, \"users\", \u0026identity.GroupArgs{\n\t\t\tMetadata: pulumi.StringMap{\n\t\t\t\t\"version\": pulumi.String(\"2\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = identity.NewGroupMemberGroupIds(ctx, \"members\", \u0026identity.GroupMemberGroupIdsArgs{\n\t\t\tExclusive: pulumi.Bool(true),\n\t\t\tMemberGroupIds: pulumi.StringArray{\n\t\t\t\tusers.ID(),\n\t\t\t},\n\t\t\tGroupId: internal.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.identity.Group;\nimport com.pulumi.vault.identity.GroupArgs;\nimport com.pulumi.vault.identity.GroupMemberGroupIds;\nimport com.pulumi.vault.identity.GroupMemberGroupIdsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var internal = new Group(\"internal\", GroupArgs.builder() \n .type(\"internal\")\n .externalMemberGroupIds(true)\n .metadata(Map.of(\"version\", \"2\"))\n .build());\n\n var users = new Group(\"users\", GroupArgs.builder() \n .metadata(Map.of(\"version\", \"2\"))\n .build());\n\n var members = new GroupMemberGroupIds(\"members\", GroupMemberGroupIdsArgs.builder() \n .exclusive(true)\n .memberGroupIds(users.id())\n .groupId(internal.id())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n internal:\n type: vault:identity:Group\n properties:\n type: internal\n externalMemberGroupIds: true\n metadata:\n version: '2'\n users:\n type: vault:identity:Group\n properties:\n metadata:\n version: '2'\n members:\n type: vault:identity:GroupMemberGroupIds\n properties:\n exclusive: true\n memberGroupIds:\n - ${users.id}\n groupId: ${internal.id}\n```\n{{% /example %}}\n{{% example %}}\n### Non-Exclusive Member Groups\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst internal = new vault.identity.Group(\"internal\", {\n type: \"internal\",\n externalMemberGroupIds: true,\n metadata: {\n version: \"2\",\n },\n});\nconst users = new vault.identity.Group(\"users\", {metadata: {\n version: \"2\",\n}});\nconst members = new vault.identity.GroupMemberGroupIds(\"members\", {\n exclusive: false,\n memberGroupIds: [users.id],\n groupId: internal.id,\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\ninternal = vault.identity.Group(\"internal\",\n type=\"internal\",\n external_member_group_ids=True,\n metadata={\n \"version\": \"2\",\n })\nusers = vault.identity.Group(\"users\", metadata={\n \"version\": \"2\",\n})\nmembers = vault.identity.GroupMemberGroupIds(\"members\",\n exclusive=False,\n member_group_ids=[users.id],\n group_id=internal.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @internal = new Vault.Identity.Group(\"internal\", new()\n {\n Type = \"internal\",\n ExternalMemberGroupIds = true,\n Metadata = \n {\n { \"version\", \"2\" },\n },\n });\n\n var users = new Vault.Identity.Group(\"users\", new()\n {\n Metadata = \n {\n { \"version\", \"2\" },\n },\n });\n\n var members = new Vault.Identity.GroupMemberGroupIds(\"members\", new()\n {\n Exclusive = false,\n MemberGroupIds = new[]\n {\n users.Id,\n },\n GroupId = @internal.Id,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/identity\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tinternal, err := identity.NewGroup(ctx, \"internal\", \u0026identity.GroupArgs{\n\t\t\tType: pulumi.String(\"internal\"),\n\t\t\tExternalMemberGroupIds: pulumi.Bool(true),\n\t\t\tMetadata: pulumi.StringMap{\n\t\t\t\t\"version\": pulumi.String(\"2\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tusers, err := identity.NewGroup(ctx, \"users\", \u0026identity.GroupArgs{\n\t\t\tMetadata: pulumi.StringMap{\n\t\t\t\t\"version\": pulumi.String(\"2\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = identity.NewGroupMemberGroupIds(ctx, \"members\", \u0026identity.GroupMemberGroupIdsArgs{\n\t\t\tExclusive: pulumi.Bool(false),\n\t\t\tMemberGroupIds: pulumi.StringArray{\n\t\t\t\tusers.ID(),\n\t\t\t},\n\t\t\tGroupId: internal.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.identity.Group;\nimport com.pulumi.vault.identity.GroupArgs;\nimport com.pulumi.vault.identity.GroupMemberGroupIds;\nimport com.pulumi.vault.identity.GroupMemberGroupIdsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var internal = new Group(\"internal\", GroupArgs.builder() \n .type(\"internal\")\n .externalMemberGroupIds(true)\n .metadata(Map.of(\"version\", \"2\"))\n .build());\n\n var users = new Group(\"users\", GroupArgs.builder() \n .metadata(Map.of(\"version\", \"2\"))\n .build());\n\n var members = new GroupMemberGroupIds(\"members\", GroupMemberGroupIdsArgs.builder() \n .exclusive(false)\n .memberGroupIds(users.id())\n .groupId(internal.id())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n internal:\n type: vault:identity:Group\n properties:\n type: internal\n externalMemberGroupIds: true\n metadata:\n version: '2'\n users:\n type: vault:identity:Group\n properties:\n metadata:\n version: '2'\n members:\n type: vault:identity:GroupMemberGroupIds\n properties:\n exclusive: false\n memberGroupIds:\n - ${users.id}\n groupId: ${internal.id}\n```\n{{% /example %}}\n{{% /examples %}}",
"properties": {
"exclusive": {
"type": "boolean",
- "description": "Defaults to `true`.\n"
+ "description": "Defaults to `true`.\n\nIf `true`, this resource will take exclusive control of the member groups that belong to the group and will set\nit equal to what is specified in the resource.\n\nIf set to `false`, this resource will simply ensure that the member groups specified in the resource are present\nin the group. When destroying the resource, the resource will ensure that the member groups specified in the resource\nare removed.\n"
},
"groupId": {
"type": "string",
@@ -15719,7 +12848,7 @@
"inputProperties": {
"exclusive": {
"type": "boolean",
- "description": "Defaults to `true`.\n"
+ "description": "Defaults to `true`.\n\nIf `true`, this resource will take exclusive control of the member groups that belong to the group and will set\nit equal to what is specified in the resource.\n\nIf set to `false`, this resource will simply ensure that the member groups specified in the resource are present\nin the group. When destroying the resource, the resource will ensure that the member groups specified in the resource\nare removed.\n"
},
"groupId": {
"type": "string",
@@ -15747,7 +12876,7 @@
"properties": {
"exclusive": {
"type": "boolean",
- "description": "Defaults to `true`.\n"
+ "description": "Defaults to `true`.\n\nIf `true`, this resource will take exclusive control of the member groups that belong to the group and will set\nit equal to what is specified in the resource.\n\nIf set to `false`, this resource will simply ensure that the member groups specified in the resource are present\nin the group. When destroying the resource, the resource will ensure that the member groups specified in the resource\nare removed.\n"
},
"groupId": {
"type": "string",
@@ -15771,11 +12900,11 @@
}
},
"vault:identity/groupPolicies:GroupPolicies": {
- "description": "Manages policies for an Identity Group for Vault. The [Identity secrets engine](https://www.vaultproject.io/docs/secrets/identity/index.html) is the identity management solution for Vault.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n### Exclusive Policies\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst internal = new vault.identity.Group(\"internal\", {\n type: \"internal\",\n externalPolicies: true,\n metadata: {\n version: \"2\",\n },\n});\nconst policies = new vault.identity.GroupPolicies(\"policies\", {\n policies: [\n \"default\",\n \"test\",\n ],\n exclusive: true,\n groupId: internal.id,\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\ninternal = vault.identity.Group(\"internal\",\n type=\"internal\",\n external_policies=True,\n metadata={\n \"version\": \"2\",\n })\npolicies = vault.identity.GroupPolicies(\"policies\",\n policies=[\n \"default\",\n \"test\",\n ],\n exclusive=True,\n group_id=internal.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @internal = new Vault.Identity.Group(\"internal\", new()\n {\n Type = \"internal\",\n ExternalPolicies = true,\n Metadata = \n {\n { \"version\", \"2\" },\n },\n });\n\n var policies = new Vault.Identity.GroupPolicies(\"policies\", new()\n {\n Policies = new[]\n {\n \"default\",\n \"test\",\n },\n Exclusive = true,\n GroupId = @internal.Id,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/identity\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tinternal, err := identity.NewGroup(ctx, \"internal\", \u0026identity.GroupArgs{\n\t\t\tType: pulumi.String(\"internal\"),\n\t\t\tExternalPolicies: pulumi.Bool(true),\n\t\t\tMetadata: pulumi.StringMap{\n\t\t\t\t\"version\": pulumi.String(\"2\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = identity.NewGroupPolicies(ctx, \"policies\", \u0026identity.GroupPoliciesArgs{\n\t\t\tPolicies: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"default\"),\n\t\t\t\tpulumi.String(\"test\"),\n\t\t\t},\n\t\t\tExclusive: pulumi.Bool(true),\n\t\t\tGroupId: internal.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.identity.Group;\nimport com.pulumi.vault.identity.GroupArgs;\nimport com.pulumi.vault.identity.GroupPolicies;\nimport com.pulumi.vault.identity.GroupPoliciesArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var internal = new Group(\"internal\", GroupArgs.builder() \n .type(\"internal\")\n .externalPolicies(true)\n .metadata(Map.of(\"version\", \"2\"))\n .build());\n\n var policies = new GroupPolicies(\"policies\", GroupPoliciesArgs.builder() \n .policies( \n \"default\",\n \"test\")\n .exclusive(true)\n .groupId(internal.id())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n internal:\n type: vault:identity:Group\n properties:\n type: internal\n externalPolicies: true\n metadata:\n version: 2\n policies:\n type: vault:identity:GroupPolicies\n properties:\n policies:\n - default\n - test\n exclusive: true\n groupId: ${internal.id}\n```\n{{% /example %}}\n{{% example %}}\n### Non-exclusive Policies\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst internal = new vault.identity.Group(\"internal\", {\n type: \"internal\",\n externalPolicies: true,\n metadata: {\n version: \"2\",\n },\n});\nconst _default = new vault.identity.GroupPolicies(\"default\", {\n policies: [\n \"default\",\n \"test\",\n ],\n exclusive: false,\n groupId: internal.id,\n});\nconst others = new vault.identity.GroupPolicies(\"others\", {\n policies: [\"others\"],\n exclusive: false,\n groupId: internal.id,\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\ninternal = vault.identity.Group(\"internal\",\n type=\"internal\",\n external_policies=True,\n metadata={\n \"version\": \"2\",\n })\ndefault = vault.identity.GroupPolicies(\"default\",\n policies=[\n \"default\",\n \"test\",\n ],\n exclusive=False,\n group_id=internal.id)\nothers = vault.identity.GroupPolicies(\"others\",\n policies=[\"others\"],\n exclusive=False,\n group_id=internal.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @internal = new Vault.Identity.Group(\"internal\", new()\n {\n Type = \"internal\",\n ExternalPolicies = true,\n Metadata = \n {\n { \"version\", \"2\" },\n },\n });\n\n var @default = new Vault.Identity.GroupPolicies(\"default\", new()\n {\n Policies = new[]\n {\n \"default\",\n \"test\",\n },\n Exclusive = false,\n GroupId = @internal.Id,\n });\n\n var others = new Vault.Identity.GroupPolicies(\"others\", new()\n {\n Policies = new[]\n {\n \"others\",\n },\n Exclusive = false,\n GroupId = @internal.Id,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/identity\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tinternal, err := identity.NewGroup(ctx, \"internal\", \u0026identity.GroupArgs{\n\t\t\tType: pulumi.String(\"internal\"),\n\t\t\tExternalPolicies: pulumi.Bool(true),\n\t\t\tMetadata: pulumi.StringMap{\n\t\t\t\t\"version\": pulumi.String(\"2\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = identity.NewGroupPolicies(ctx, \"default\", \u0026identity.GroupPoliciesArgs{\n\t\t\tPolicies: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"default\"),\n\t\t\t\tpulumi.String(\"test\"),\n\t\t\t},\n\t\t\tExclusive: pulumi.Bool(false),\n\t\t\tGroupId: internal.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = identity.NewGroupPolicies(ctx, \"others\", \u0026identity.GroupPoliciesArgs{\n\t\t\tPolicies: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"others\"),\n\t\t\t},\n\t\t\tExclusive: pulumi.Bool(false),\n\t\t\tGroupId: internal.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.identity.Group;\nimport com.pulumi.vault.identity.GroupArgs;\nimport com.pulumi.vault.identity.GroupPolicies;\nimport com.pulumi.vault.identity.GroupPoliciesArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var internal = new Group(\"internal\", GroupArgs.builder() \n .type(\"internal\")\n .externalPolicies(true)\n .metadata(Map.of(\"version\", \"2\"))\n .build());\n\n var default_ = new GroupPolicies(\"default\", GroupPoliciesArgs.builder() \n .policies( \n \"default\",\n \"test\")\n .exclusive(false)\n .groupId(internal.id())\n .build());\n\n var others = new GroupPolicies(\"others\", GroupPoliciesArgs.builder() \n .policies(\"others\")\n .exclusive(false)\n .groupId(internal.id())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n internal:\n type: vault:identity:Group\n properties:\n type: internal\n externalPolicies: true\n metadata:\n version: 2\n default:\n type: vault:identity:GroupPolicies\n properties:\n policies:\n - default\n - test\n exclusive: false\n groupId: ${internal.id}\n others:\n type: vault:identity:GroupPolicies\n properties:\n policies:\n - others\n exclusive: false\n groupId: ${internal.id}\n```\n{{% /example %}}\n{{% /examples %}}",
+ "description": "Manages policies for an Identity Group for Vault. The [Identity secrets engine](https://www.vaultproject.io/docs/secrets/identity/index.html) is the identity management solution for Vault.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n### Exclusive Policies\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst internal = new vault.identity.Group(\"internal\", {\n type: \"internal\",\n externalPolicies: true,\n metadata: {\n version: \"2\",\n },\n});\nconst policies = new vault.identity.GroupPolicies(\"policies\", {\n policies: [\n \"default\",\n \"test\",\n ],\n exclusive: true,\n groupId: internal.id,\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\ninternal = vault.identity.Group(\"internal\",\n type=\"internal\",\n external_policies=True,\n metadata={\n \"version\": \"2\",\n })\npolicies = vault.identity.GroupPolicies(\"policies\",\n policies=[\n \"default\",\n \"test\",\n ],\n exclusive=True,\n group_id=internal.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @internal = new Vault.Identity.Group(\"internal\", new()\n {\n Type = \"internal\",\n ExternalPolicies = true,\n Metadata = \n {\n { \"version\", \"2\" },\n },\n });\n\n var policies = new Vault.Identity.GroupPolicies(\"policies\", new()\n {\n Policies = new[]\n {\n \"default\",\n \"test\",\n },\n Exclusive = true,\n GroupId = @internal.Id,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/identity\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tinternal, err := identity.NewGroup(ctx, \"internal\", \u0026identity.GroupArgs{\n\t\t\tType: pulumi.String(\"internal\"),\n\t\t\tExternalPolicies: pulumi.Bool(true),\n\t\t\tMetadata: pulumi.StringMap{\n\t\t\t\t\"version\": pulumi.String(\"2\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = identity.NewGroupPolicies(ctx, \"policies\", \u0026identity.GroupPoliciesArgs{\n\t\t\tPolicies: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"default\"),\n\t\t\t\tpulumi.String(\"test\"),\n\t\t\t},\n\t\t\tExclusive: pulumi.Bool(true),\n\t\t\tGroupId: internal.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.identity.Group;\nimport com.pulumi.vault.identity.GroupArgs;\nimport com.pulumi.vault.identity.GroupPolicies;\nimport com.pulumi.vault.identity.GroupPoliciesArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var internal = new Group(\"internal\", GroupArgs.builder() \n .type(\"internal\")\n .externalPolicies(true)\n .metadata(Map.of(\"version\", \"2\"))\n .build());\n\n var policies = new GroupPolicies(\"policies\", GroupPoliciesArgs.builder() \n .policies( \n \"default\",\n \"test\")\n .exclusive(true)\n .groupId(internal.id())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n internal:\n type: vault:identity:Group\n properties:\n type: internal\n externalPolicies: true\n metadata:\n version: '2'\n policies:\n type: vault:identity:GroupPolicies\n properties:\n policies:\n - default\n - test\n exclusive: true\n groupId: ${internal.id}\n```\n{{% /example %}}\n{{% example %}}\n### Non-exclusive Policies\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst internal = new vault.identity.Group(\"internal\", {\n type: \"internal\",\n externalPolicies: true,\n metadata: {\n version: \"2\",\n },\n});\nconst _default = new vault.identity.GroupPolicies(\"default\", {\n policies: [\n \"default\",\n \"test\",\n ],\n exclusive: false,\n groupId: internal.id,\n});\nconst others = new vault.identity.GroupPolicies(\"others\", {\n policies: [\"others\"],\n exclusive: false,\n groupId: internal.id,\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\ninternal = vault.identity.Group(\"internal\",\n type=\"internal\",\n external_policies=True,\n metadata={\n \"version\": \"2\",\n })\ndefault = vault.identity.GroupPolicies(\"default\",\n policies=[\n \"default\",\n \"test\",\n ],\n exclusive=False,\n group_id=internal.id)\nothers = vault.identity.GroupPolicies(\"others\",\n policies=[\"others\"],\n exclusive=False,\n group_id=internal.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @internal = new Vault.Identity.Group(\"internal\", new()\n {\n Type = \"internal\",\n ExternalPolicies = true,\n Metadata = \n {\n { \"version\", \"2\" },\n },\n });\n\n var @default = new Vault.Identity.GroupPolicies(\"default\", new()\n {\n Policies = new[]\n {\n \"default\",\n \"test\",\n },\n Exclusive = false,\n GroupId = @internal.Id,\n });\n\n var others = new Vault.Identity.GroupPolicies(\"others\", new()\n {\n Policies = new[]\n {\n \"others\",\n },\n Exclusive = false,\n GroupId = @internal.Id,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/identity\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tinternal, err := identity.NewGroup(ctx, \"internal\", \u0026identity.GroupArgs{\n\t\t\tType: pulumi.String(\"internal\"),\n\t\t\tExternalPolicies: pulumi.Bool(true),\n\t\t\tMetadata: pulumi.StringMap{\n\t\t\t\t\"version\": pulumi.String(\"2\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = identity.NewGroupPolicies(ctx, \"default\", \u0026identity.GroupPoliciesArgs{\n\t\t\tPolicies: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"default\"),\n\t\t\t\tpulumi.String(\"test\"),\n\t\t\t},\n\t\t\tExclusive: pulumi.Bool(false),\n\t\t\tGroupId: internal.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = identity.NewGroupPolicies(ctx, \"others\", \u0026identity.GroupPoliciesArgs{\n\t\t\tPolicies: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"others\"),\n\t\t\t},\n\t\t\tExclusive: pulumi.Bool(false),\n\t\t\tGroupId: internal.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.identity.Group;\nimport com.pulumi.vault.identity.GroupArgs;\nimport com.pulumi.vault.identity.GroupPolicies;\nimport com.pulumi.vault.identity.GroupPoliciesArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var internal = new Group(\"internal\", GroupArgs.builder() \n .type(\"internal\")\n .externalPolicies(true)\n .metadata(Map.of(\"version\", \"2\"))\n .build());\n\n var default_ = new GroupPolicies(\"default\", GroupPoliciesArgs.builder() \n .policies( \n \"default\",\n \"test\")\n .exclusive(false)\n .groupId(internal.id())\n .build());\n\n var others = new GroupPolicies(\"others\", GroupPoliciesArgs.builder() \n .policies(\"others\")\n .exclusive(false)\n .groupId(internal.id())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n internal:\n type: vault:identity:Group\n properties:\n type: internal\n externalPolicies: true\n metadata:\n version: '2'\n default:\n type: vault:identity:GroupPolicies\n properties:\n policies:\n - default\n - test\n exclusive: false\n groupId: ${internal.id}\n others:\n type: vault:identity:GroupPolicies\n properties:\n policies:\n - others\n exclusive: false\n groupId: ${internal.id}\n```\n{{% /example %}}\n{{% /examples %}}",
"properties": {
"exclusive": {
"type": "boolean",
- "description": "Defaults to `true`.\n"
+ "description": "Defaults to `true`.\n\nIf `true`, this resource will take exclusive control of the policies assigned to the group and will set it equal to what is specified in the resource.\n\nIf set to `false`, this resource will simply ensure that the policies specified in the resource are present in the group. When destroying the resource, the resource will ensure that the policies specified in the resource are removed.\n"
},
"groupId": {
"type": "string",
@@ -15805,7 +12934,7 @@
"inputProperties": {
"exclusive": {
"type": "boolean",
- "description": "Defaults to `true`.\n"
+ "description": "Defaults to `true`.\n\nIf `true`, this resource will take exclusive control of the policies assigned to the group and will set it equal to what is specified in the resource.\n\nIf set to `false`, this resource will simply ensure that the policies specified in the resource are present in the group. When destroying the resource, the resource will ensure that the policies specified in the resource are removed.\n"
},
"groupId": {
"type": "string",
@@ -15833,7 +12962,7 @@
"properties": {
"exclusive": {
"type": "boolean",
- "description": "Defaults to `true`.\n"
+ "description": "Defaults to `true`.\n\nIf `true`, this resource will take exclusive control of the policies assigned to the group and will set it equal to what is specified in the resource.\n\nIf set to `false`, this resource will simply ensure that the policies specified in the resource are present in the group. When destroying the resource, the resource will ensure that the policies specified in the resource are removed.\n"
},
"groupId": {
"type": "string",
@@ -15860,7 +12989,7 @@
}
},
"vault:identity/mfaDuo:MfaDuo": {
- "description": "Resource for configuring the duo MFA method.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst example = new vault.identity.MfaDuo(\"example\", {\n apiHostname: \"api-xxxxxxxx.duosecurity.com\",\n integrationKey: \"secret-int-key\",\n secretKey: \"secret-key\",\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nexample = vault.identity.MfaDuo(\"example\",\n api_hostname=\"api-xxxxxxxx.duosecurity.com\",\n integration_key=\"secret-int-key\",\n secret_key=\"secret-key\")\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new Vault.Identity.MfaDuo(\"example\", new()\n {\n ApiHostname = \"api-xxxxxxxx.duosecurity.com\",\n IntegrationKey = \"secret-int-key\",\n SecretKey = \"secret-key\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/identity\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := identity.NewMfaDuo(ctx, \"example\", \u0026identity.MfaDuoArgs{\n\t\t\tApiHostname: pulumi.String(\"api-xxxxxxxx.duosecurity.com\"),\n\t\t\tIntegrationKey: pulumi.String(\"secret-int-key\"),\n\t\t\tSecretKey: pulumi.String(\"secret-key\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.identity.MfaDuo;\nimport com.pulumi.vault.identity.MfaDuoArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new MfaDuo(\"example\", MfaDuoArgs.builder() \n .apiHostname(\"api-xxxxxxxx.duosecurity.com\")\n .integrationKey(\"secret-int-key\")\n .secretKey(\"secret-key\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: vault:identity:MfaDuo\n properties:\n apiHostname: api-xxxxxxxx.duosecurity.com\n integrationKey: secret-int-key\n secretKey: secret-key\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nResource can be imported using its `uuid` field, e.g.\n\n```sh\n $ pulumi import vault:identity/mfaDuo:MfaDuo example 0d89c36a-4ff5-4d70-8749-bb6a5598aeec\n```\n\n ",
+ "description": "Resource for configuring the duo MFA method.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst example = new vault.identity.MfaDuo(\"example\", {\n apiHostname: \"api-xxxxxxxx.duosecurity.com\",\n integrationKey: \"secret-int-key\",\n secretKey: \"secret-key\",\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nexample = vault.identity.MfaDuo(\"example\",\n api_hostname=\"api-xxxxxxxx.duosecurity.com\",\n integration_key=\"secret-int-key\",\n secret_key=\"secret-key\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new Vault.Identity.MfaDuo(\"example\", new()\n {\n ApiHostname = \"api-xxxxxxxx.duosecurity.com\",\n IntegrationKey = \"secret-int-key\",\n SecretKey = \"secret-key\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/identity\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := identity.NewMfaDuo(ctx, \"example\", \u0026identity.MfaDuoArgs{\n\t\t\tApiHostname: pulumi.String(\"api-xxxxxxxx.duosecurity.com\"),\n\t\t\tIntegrationKey: pulumi.String(\"secret-int-key\"),\n\t\t\tSecretKey: pulumi.String(\"secret-key\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.identity.MfaDuo;\nimport com.pulumi.vault.identity.MfaDuoArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new MfaDuo(\"example\", MfaDuoArgs.builder() \n .apiHostname(\"api-xxxxxxxx.duosecurity.com\")\n .integrationKey(\"secret-int-key\")\n .secretKey(\"secret-key\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: vault:identity:MfaDuo\n properties:\n apiHostname: api-xxxxxxxx.duosecurity.com\n integrationKey: secret-int-key\n secretKey: secret-key\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nResource can be imported using its `uuid` field, e.g.\n\n```sh\n $ pulumi import vault:identity/mfaDuo:MfaDuo example 0d89c36a-4ff5-4d70-8749-bb6a5598aeec\n```\n ",
"properties": {
"apiHostname": {
"type": "string",
@@ -16038,7 +13167,7 @@
}
},
"vault:identity/mfaLoginEnforcement:MfaLoginEnforcement": {
- "description": "Resource for configuring MFA login-enforcement\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst exampleMfaDuo = new vault.identity.MfaDuo(\"exampleMfaDuo\", {\n secretKey: \"secret-key\",\n integrationKey: \"int-key\",\n apiHostname: \"foo.baz\",\n pushInfo: \"push-info\",\n});\nconst exampleMfaLoginEnforcement = new vault.identity.MfaLoginEnforcement(\"exampleMfaLoginEnforcement\", {mfaMethodIds: [exampleMfaDuo.methodId]});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nexample_mfa_duo = vault.identity.MfaDuo(\"exampleMfaDuo\",\n secret_key=\"secret-key\",\n integration_key=\"int-key\",\n api_hostname=\"foo.baz\",\n push_info=\"push-info\")\nexample_mfa_login_enforcement = vault.identity.MfaLoginEnforcement(\"exampleMfaLoginEnforcement\", mfa_method_ids=[example_mfa_duo.method_id])\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var exampleMfaDuo = new Vault.Identity.MfaDuo(\"exampleMfaDuo\", new()\n {\n SecretKey = \"secret-key\",\n IntegrationKey = \"int-key\",\n ApiHostname = \"foo.baz\",\n PushInfo = \"push-info\",\n });\n\n var exampleMfaLoginEnforcement = new Vault.Identity.MfaLoginEnforcement(\"exampleMfaLoginEnforcement\", new()\n {\n MfaMethodIds = new[]\n {\n exampleMfaDuo.MethodId,\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/identity\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texampleMfaDuo, err := identity.NewMfaDuo(ctx, \"exampleMfaDuo\", \u0026identity.MfaDuoArgs{\n\t\t\tSecretKey: pulumi.String(\"secret-key\"),\n\t\t\tIntegrationKey: pulumi.String(\"int-key\"),\n\t\t\tApiHostname: pulumi.String(\"foo.baz\"),\n\t\t\tPushInfo: pulumi.String(\"push-info\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = identity.NewMfaLoginEnforcement(ctx, \"exampleMfaLoginEnforcement\", \u0026identity.MfaLoginEnforcementArgs{\n\t\t\tMfaMethodIds: pulumi.StringArray{\n\t\t\t\texampleMfaDuo.MethodId,\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.identity.MfaDuo;\nimport com.pulumi.vault.identity.MfaDuoArgs;\nimport com.pulumi.vault.identity.MfaLoginEnforcement;\nimport com.pulumi.vault.identity.MfaLoginEnforcementArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var exampleMfaDuo = new MfaDuo(\"exampleMfaDuo\", MfaDuoArgs.builder() \n .secretKey(\"secret-key\")\n .integrationKey(\"int-key\")\n .apiHostname(\"foo.baz\")\n .pushInfo(\"push-info\")\n .build());\n\n var exampleMfaLoginEnforcement = new MfaLoginEnforcement(\"exampleMfaLoginEnforcement\", MfaLoginEnforcementArgs.builder() \n .mfaMethodIds(exampleMfaDuo.methodId())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n exampleMfaDuo:\n type: vault:identity:MfaDuo\n properties:\n secretKey: secret-key\n integrationKey: int-key\n apiHostname: foo.baz\n pushInfo: push-info\n exampleMfaLoginEnforcement:\n type: vault:identity:MfaLoginEnforcement\n properties:\n mfaMethodIds:\n - ${exampleMfaDuo.methodId}\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nResource can be imported using its `name` field, e.g.\n\n```sh\n $ pulumi import vault:identity/mfaLoginEnforcement:MfaLoginEnforcement example default\n```\n\n ",
+ "description": "Resource for configuring MFA login-enforcement\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst exampleMfaDuo = new vault.identity.MfaDuo(\"exampleMfaDuo\", {\n secretKey: \"secret-key\",\n integrationKey: \"int-key\",\n apiHostname: \"foo.baz\",\n pushInfo: \"push-info\",\n});\nconst exampleMfaLoginEnforcement = new vault.identity.MfaLoginEnforcement(\"exampleMfaLoginEnforcement\", {mfaMethodIds: [exampleMfaDuo.methodId]});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nexample_mfa_duo = vault.identity.MfaDuo(\"exampleMfaDuo\",\n secret_key=\"secret-key\",\n integration_key=\"int-key\",\n api_hostname=\"foo.baz\",\n push_info=\"push-info\")\nexample_mfa_login_enforcement = vault.identity.MfaLoginEnforcement(\"exampleMfaLoginEnforcement\", mfa_method_ids=[example_mfa_duo.method_id])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var exampleMfaDuo = new Vault.Identity.MfaDuo(\"exampleMfaDuo\", new()\n {\n SecretKey = \"secret-key\",\n IntegrationKey = \"int-key\",\n ApiHostname = \"foo.baz\",\n PushInfo = \"push-info\",\n });\n\n var exampleMfaLoginEnforcement = new Vault.Identity.MfaLoginEnforcement(\"exampleMfaLoginEnforcement\", new()\n {\n MfaMethodIds = new[]\n {\n exampleMfaDuo.MethodId,\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/identity\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texampleMfaDuo, err := identity.NewMfaDuo(ctx, \"exampleMfaDuo\", \u0026identity.MfaDuoArgs{\n\t\t\tSecretKey: pulumi.String(\"secret-key\"),\n\t\t\tIntegrationKey: pulumi.String(\"int-key\"),\n\t\t\tApiHostname: pulumi.String(\"foo.baz\"),\n\t\t\tPushInfo: pulumi.String(\"push-info\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = identity.NewMfaLoginEnforcement(ctx, \"exampleMfaLoginEnforcement\", \u0026identity.MfaLoginEnforcementArgs{\n\t\t\tMfaMethodIds: pulumi.StringArray{\n\t\t\t\texampleMfaDuo.MethodId,\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.identity.MfaDuo;\nimport com.pulumi.vault.identity.MfaDuoArgs;\nimport com.pulumi.vault.identity.MfaLoginEnforcement;\nimport com.pulumi.vault.identity.MfaLoginEnforcementArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var exampleMfaDuo = new MfaDuo(\"exampleMfaDuo\", MfaDuoArgs.builder() \n .secretKey(\"secret-key\")\n .integrationKey(\"int-key\")\n .apiHostname(\"foo.baz\")\n .pushInfo(\"push-info\")\n .build());\n\n var exampleMfaLoginEnforcement = new MfaLoginEnforcement(\"exampleMfaLoginEnforcement\", MfaLoginEnforcementArgs.builder() \n .mfaMethodIds(exampleMfaDuo.methodId())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n exampleMfaDuo:\n type: vault:identity:MfaDuo\n properties:\n secretKey: secret-key\n integrationKey: int-key\n apiHostname: foo.baz\n pushInfo: push-info\n exampleMfaLoginEnforcement:\n type: vault:identity:MfaLoginEnforcement\n properties:\n mfaMethodIds:\n - ${exampleMfaDuo.methodId}\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nResource can be imported using its `name` field, e.g.\n\n```sh\n $ pulumi import vault:identity/mfaLoginEnforcement:MfaLoginEnforcement example default\n```\n ",
"properties": {
"authMethodAccessors": {
"type": "array",
@@ -16219,7 +13348,7 @@
}
},
"vault:identity/mfaOkta:MfaOkta": {
- "description": "Resource for configuring the okta MFA method.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst example = new vault.identity.MfaOkta(\"example\", {\n apiToken: \"token1\",\n baseUrl: \"qux.baz.com\",\n orgName: \"org1\",\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nexample = vault.identity.MfaOkta(\"example\",\n api_token=\"token1\",\n base_url=\"qux.baz.com\",\n org_name=\"org1\")\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new Vault.Identity.MfaOkta(\"example\", new()\n {\n ApiToken = \"token1\",\n BaseUrl = \"qux.baz.com\",\n OrgName = \"org1\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/identity\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := identity.NewMfaOkta(ctx, \"example\", \u0026identity.MfaOktaArgs{\n\t\t\tApiToken: pulumi.String(\"token1\"),\n\t\t\tBaseUrl: pulumi.String(\"qux.baz.com\"),\n\t\t\tOrgName: pulumi.String(\"org1\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.identity.MfaOkta;\nimport com.pulumi.vault.identity.MfaOktaArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new MfaOkta(\"example\", MfaOktaArgs.builder() \n .apiToken(\"token1\")\n .baseUrl(\"qux.baz.com\")\n .orgName(\"org1\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: vault:identity:MfaOkta\n properties:\n apiToken: token1\n baseUrl: qux.baz.com\n orgName: org1\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nResource can be imported using its `uuid` field, e.g.\n\n```sh\n $ pulumi import vault:identity/mfaOkta:MfaOkta example 0d89c36a-4ff5-4d70-8749-bb6a5598aeec\n```\n\n ",
+ "description": "Resource for configuring the okta MFA method.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst example = new vault.identity.MfaOkta(\"example\", {\n apiToken: \"token1\",\n baseUrl: \"qux.baz.com\",\n orgName: \"org1\",\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nexample = vault.identity.MfaOkta(\"example\",\n api_token=\"token1\",\n base_url=\"qux.baz.com\",\n org_name=\"org1\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new Vault.Identity.MfaOkta(\"example\", new()\n {\n ApiToken = \"token1\",\n BaseUrl = \"qux.baz.com\",\n OrgName = \"org1\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/identity\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := identity.NewMfaOkta(ctx, \"example\", \u0026identity.MfaOktaArgs{\n\t\t\tApiToken: pulumi.String(\"token1\"),\n\t\t\tBaseUrl: pulumi.String(\"qux.baz.com\"),\n\t\t\tOrgName: pulumi.String(\"org1\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.identity.MfaOkta;\nimport com.pulumi.vault.identity.MfaOktaArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new MfaOkta(\"example\", MfaOktaArgs.builder() \n .apiToken(\"token1\")\n .baseUrl(\"qux.baz.com\")\n .orgName(\"org1\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: vault:identity:MfaOkta\n properties:\n apiToken: token1\n baseUrl: qux.baz.com\n orgName: org1\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nResource can be imported using its `uuid` field, e.g.\n\n```sh\n $ pulumi import vault:identity/mfaOkta:MfaOkta example 0d89c36a-4ff5-4d70-8749-bb6a5598aeec\n```\n ",
"properties": {
"apiToken": {
"type": "string",
@@ -16380,7 +13509,7 @@
}
},
"vault:identity/mfaPingid:MfaPingid": {
- "description": "Resource for configuring the pingid MFA method.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst example = new vault.identity.MfaPingid(\"example\", {\n settingsFileBase64: \"CnVzZV9iYXNlNjR[...]HBtCg==\",\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nexample = vault.identity.MfaPingid(\"example\", settings_file_base64=\"CnVzZV9iYXNlNjR[...]HBtCg==\")\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new Vault.Identity.MfaPingid(\"example\", new()\n {\n SettingsFileBase64 = \"CnVzZV9iYXNlNjR[...]HBtCg==\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/identity\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := identity.NewMfaPingid(ctx, \"example\", \u0026identity.MfaPingidArgs{\n\t\t\tSettingsFileBase64: pulumi.String(\"CnVzZV9iYXNlNjR[...]HBtCg==\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.identity.MfaPingid;\nimport com.pulumi.vault.identity.MfaPingidArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new MfaPingid(\"example\", MfaPingidArgs.builder() \n .settingsFileBase64(\"CnVzZV9iYXNlNjR[...]HBtCg==\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: vault:identity:MfaPingid\n properties:\n settingsFileBase64: CnVzZV9iYXNlNjR[...]HBtCg==\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nResource can be imported using its `uuid` field, e.g.\n\n```sh\n $ pulumi import vault:identity/mfaPingid:MfaPingid example 0d89c36a-4ff5-4d70-8749-bb6a5598aeec\n```\n\n ",
+ "description": "Resource for configuring the pingid MFA method.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst example = new vault.identity.MfaPingid(\"example\", {settingsFileBase64: \"CnVzZV9iYXNlNjR[...]HBtCg==\"});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nexample = vault.identity.MfaPingid(\"example\", settings_file_base64=\"CnVzZV9iYXNlNjR[...]HBtCg==\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new Vault.Identity.MfaPingid(\"example\", new()\n {\n SettingsFileBase64 = \"CnVzZV9iYXNlNjR[...]HBtCg==\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/identity\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := identity.NewMfaPingid(ctx, \"example\", \u0026identity.MfaPingidArgs{\n\t\t\tSettingsFileBase64: pulumi.String(\"CnVzZV9iYXNlNjR[...]HBtCg==\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.identity.MfaPingid;\nimport com.pulumi.vault.identity.MfaPingidArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new MfaPingid(\"example\", MfaPingidArgs.builder() \n .settingsFileBase64(\"CnVzZV9iYXNlNjR[...]HBtCg==\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: vault:identity:MfaPingid\n properties:\n settingsFileBase64: CnVzZV9iYXNlNjR[...]HBtCg==\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nResource can be imported using its `uuid` field, e.g.\n\n```sh\n $ pulumi import vault:identity/mfaPingid:MfaPingid example 0d89c36a-4ff5-4d70-8749-bb6a5598aeec\n```\n ",
"properties": {
"adminUrl": {
"type": "string",
@@ -16550,7 +13679,7 @@
}
},
"vault:identity/mfaTotp:MfaTotp": {
- "description": "Resource for configuring the totp MFA method.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst example = new vault.identity.MfaTotp(\"example\", {\n issuer: \"issuer1\",\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nexample = vault.identity.MfaTotp(\"example\", issuer=\"issuer1\")\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new Vault.Identity.MfaTotp(\"example\", new()\n {\n Issuer = \"issuer1\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/identity\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := identity.NewMfaTotp(ctx, \"example\", \u0026identity.MfaTotpArgs{\n\t\t\tIssuer: pulumi.String(\"issuer1\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.identity.MfaTotp;\nimport com.pulumi.vault.identity.MfaTotpArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new MfaTotp(\"example\", MfaTotpArgs.builder() \n .issuer(\"issuer1\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: vault:identity:MfaTotp\n properties:\n issuer: issuer1\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nResource can be imported using its `uuid` field, e.g.\n\n```sh\n $ pulumi import vault:identity/mfaTotp:MfaTotp example 0d89c36a-4ff5-4d70-8749-bb6a5598aeec\n```\n\n ",
+ "description": "Resource for configuring the totp MFA method.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst example = new vault.identity.MfaTotp(\"example\", {issuer: \"issuer1\"});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nexample = vault.identity.MfaTotp(\"example\", issuer=\"issuer1\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new Vault.Identity.MfaTotp(\"example\", new()\n {\n Issuer = \"issuer1\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/identity\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := identity.NewMfaTotp(ctx, \"example\", \u0026identity.MfaTotpArgs{\n\t\t\tIssuer: pulumi.String(\"issuer1\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.identity.MfaTotp;\nimport com.pulumi.vault.identity.MfaTotpArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new MfaTotp(\"example\", MfaTotpArgs.builder() \n .issuer(\"issuer1\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: vault:identity:MfaTotp\n properties:\n issuer: issuer1\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nResource can be imported using its `uuid` field, e.g.\n\n```sh\n $ pulumi import vault:identity/mfaTotp:MfaTotp example 0d89c36a-4ff5-4d70-8749-bb6a5598aeec\n```\n ",
"properties": {
"algorithm": {
"type": "string",
@@ -16743,7 +13872,7 @@
}
},
"vault:identity/oidc:Oidc": {
- "description": "Configure the [Identity Tokens Backend](https://www.vaultproject.io/docs/secrets/identity/index.html#identity-tokens).\n\nThe Identity secrets engine is the identity management solution for Vault. It internally maintains\nthe clients who are recognized by Vault.\n\n\u003e **NOTE:** Each Vault server may only have one Identity Tokens Backend configuration. Multiple configurations of the resource against the same Vault server will cause a perpetual difference.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst server = new vault.identity.Oidc(\"server\", {\n issuer: \"https://www.acme.com\",\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nserver = vault.identity.Oidc(\"server\", issuer=\"https://www.acme.com\")\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var server = new Vault.Identity.Oidc(\"server\", new()\n {\n Issuer = \"https://www.acme.com\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/identity\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := identity.NewOidc(ctx, \"server\", \u0026identity.OidcArgs{\n\t\t\tIssuer: pulumi.String(\"https://www.acme.com\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.identity.Oidc;\nimport com.pulumi.vault.identity.OidcArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var server = new Oidc(\"server\", OidcArgs.builder() \n .issuer(\"https://www.acme.com\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n server:\n type: vault:identity:Oidc\n properties:\n issuer: https://www.acme.com\n```\n{{% /example %}}\n{{% /examples %}}",
+ "description": "Configure the [Identity Tokens Backend](https://www.vaultproject.io/docs/secrets/identity/index.html#identity-tokens).\n\nThe Identity secrets engine is the identity management solution for Vault. It internally maintains\nthe clients who are recognized by Vault.\n\n\u003e **NOTE:** Each Vault server may only have one Identity Tokens Backend configuration. Multiple configurations of the resource against the same Vault server will cause a perpetual difference.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst server = new vault.identity.Oidc(\"server\", {issuer: \"https://www.acme.com\"});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nserver = vault.identity.Oidc(\"server\", issuer=\"https://www.acme.com\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var server = new Vault.Identity.Oidc(\"server\", new()\n {\n Issuer = \"https://www.acme.com\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/identity\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := identity.NewOidc(ctx, \"server\", \u0026identity.OidcArgs{\n\t\t\tIssuer: pulumi.String(\"https://www.acme.com\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.identity.Oidc;\nimport com.pulumi.vault.identity.OidcArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var server = new Oidc(\"server\", OidcArgs.builder() \n .issuer(\"https://www.acme.com\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n server:\n type: vault:identity:Oidc\n properties:\n issuer: https://www.acme.com\n```\n{{% /example %}}\n{{% /examples %}}",
"properties": {
"issuer": {
"type": "string",
@@ -16785,7 +13914,7 @@
}
},
"vault:identity/oidcAssignment:OidcAssignment": {
- "description": "Manages OIDC Assignments in a Vault server. See the [Vault documentation](https://www.vaultproject.io/api-docs/secret/identity/oidc-provider#create-or-update-an-assignment)\nfor more information.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst internal = new vault.identity.Group(\"internal\", {\n type: \"internal\",\n policies: [\n \"dev\",\n \"test\",\n ],\n});\nconst test = new vault.identity.Entity(\"test\", {policies: [\"test\"]});\nconst _default = new vault.identity.OidcAssignment(\"default\", {\n entityIds: [test.id],\n groupIds: [internal.id],\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\ninternal = vault.identity.Group(\"internal\",\n type=\"internal\",\n policies=[\n \"dev\",\n \"test\",\n ])\ntest = vault.identity.Entity(\"test\", policies=[\"test\"])\ndefault = vault.identity.OidcAssignment(\"default\",\n entity_ids=[test.id],\n group_ids=[internal.id])\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @internal = new Vault.Identity.Group(\"internal\", new()\n {\n Type = \"internal\",\n Policies = new[]\n {\n \"dev\",\n \"test\",\n },\n });\n\n var test = new Vault.Identity.Entity(\"test\", new()\n {\n Policies = new[]\n {\n \"test\",\n },\n });\n\n var @default = new Vault.Identity.OidcAssignment(\"default\", new()\n {\n EntityIds = new[]\n {\n test.Id,\n },\n GroupIds = new[]\n {\n @internal.Id,\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/identity\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tinternal, err := identity.NewGroup(ctx, \"internal\", \u0026identity.GroupArgs{\n\t\t\tType: pulumi.String(\"internal\"),\n\t\t\tPolicies: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"dev\"),\n\t\t\t\tpulumi.String(\"test\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\ttest, err := identity.NewEntity(ctx, \"test\", \u0026identity.EntityArgs{\n\t\t\tPolicies: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"test\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = identity.NewOidcAssignment(ctx, \"default\", \u0026identity.OidcAssignmentArgs{\n\t\t\tEntityIds: pulumi.StringArray{\n\t\t\t\ttest.ID(),\n\t\t\t},\n\t\t\tGroupIds: pulumi.StringArray{\n\t\t\t\tinternal.ID(),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.identity.Group;\nimport com.pulumi.vault.identity.GroupArgs;\nimport com.pulumi.vault.identity.Entity;\nimport com.pulumi.vault.identity.EntityArgs;\nimport com.pulumi.vault.identity.OidcAssignment;\nimport com.pulumi.vault.identity.OidcAssignmentArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var internal = new Group(\"internal\", GroupArgs.builder() \n .type(\"internal\")\n .policies( \n \"dev\",\n \"test\")\n .build());\n\n var test = new Entity(\"test\", EntityArgs.builder() \n .policies(\"test\")\n .build());\n\n var default_ = new OidcAssignment(\"default\", OidcAssignmentArgs.builder() \n .entityIds(test.id())\n .groupIds(internal.id())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n internal:\n type: vault:identity:Group\n properties:\n type: internal\n policies:\n - dev\n - test\n test:\n type: vault:identity:Entity\n properties:\n policies:\n - test\n default:\n type: vault:identity:OidcAssignment\n properties:\n entityIds:\n - ${test.id}\n groupIds:\n - ${internal.id}\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nOIDC Assignments can be imported using the `name`, e.g.\n\n```sh\n $ pulumi import vault:identity/oidcAssignment:OidcAssignment default assignment\n```\n\n ",
+ "description": "Manages OIDC Assignments in a Vault server. See the [Vault documentation](https://www.vaultproject.io/api-docs/secret/identity/oidc-provider#create-or-update-an-assignment)\nfor more information.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst internal = new vault.identity.Group(\"internal\", {\n type: \"internal\",\n policies: [\n \"dev\",\n \"test\",\n ],\n});\nconst test = new vault.identity.Entity(\"test\", {policies: [\"test\"]});\nconst _default = new vault.identity.OidcAssignment(\"default\", {\n entityIds: [test.id],\n groupIds: [internal.id],\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\ninternal = vault.identity.Group(\"internal\",\n type=\"internal\",\n policies=[\n \"dev\",\n \"test\",\n ])\ntest = vault.identity.Entity(\"test\", policies=[\"test\"])\ndefault = vault.identity.OidcAssignment(\"default\",\n entity_ids=[test.id],\n group_ids=[internal.id])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @internal = new Vault.Identity.Group(\"internal\", new()\n {\n Type = \"internal\",\n Policies = new[]\n {\n \"dev\",\n \"test\",\n },\n });\n\n var test = new Vault.Identity.Entity(\"test\", new()\n {\n Policies = new[]\n {\n \"test\",\n },\n });\n\n var @default = new Vault.Identity.OidcAssignment(\"default\", new()\n {\n EntityIds = new[]\n {\n test.Id,\n },\n GroupIds = new[]\n {\n @internal.Id,\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/identity\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tinternal, err := identity.NewGroup(ctx, \"internal\", \u0026identity.GroupArgs{\n\t\t\tType: pulumi.String(\"internal\"),\n\t\t\tPolicies: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"dev\"),\n\t\t\t\tpulumi.String(\"test\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\ttest, err := identity.NewEntity(ctx, \"test\", \u0026identity.EntityArgs{\n\t\t\tPolicies: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"test\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = identity.NewOidcAssignment(ctx, \"default\", \u0026identity.OidcAssignmentArgs{\n\t\t\tEntityIds: pulumi.StringArray{\n\t\t\t\ttest.ID(),\n\t\t\t},\n\t\t\tGroupIds: pulumi.StringArray{\n\t\t\t\tinternal.ID(),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.identity.Group;\nimport com.pulumi.vault.identity.GroupArgs;\nimport com.pulumi.vault.identity.Entity;\nimport com.pulumi.vault.identity.EntityArgs;\nimport com.pulumi.vault.identity.OidcAssignment;\nimport com.pulumi.vault.identity.OidcAssignmentArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var internal = new Group(\"internal\", GroupArgs.builder() \n .type(\"internal\")\n .policies( \n \"dev\",\n \"test\")\n .build());\n\n var test = new Entity(\"test\", EntityArgs.builder() \n .policies(\"test\")\n .build());\n\n var default_ = new OidcAssignment(\"default\", OidcAssignmentArgs.builder() \n .entityIds(test.id())\n .groupIds(internal.id())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n internal:\n type: vault:identity:Group\n properties:\n type: internal\n policies:\n - dev\n - test\n test:\n type: vault:identity:Entity\n properties:\n policies:\n - test\n default:\n type: vault:identity:OidcAssignment\n properties:\n entityIds:\n - ${test.id}\n groupIds:\n - ${internal.id}\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nOIDC Assignments can be imported using the `name`, e.g.\n\n```sh\n $ pulumi import vault:identity/oidcAssignment:OidcAssignment default assignment\n```\n ",
"properties": {
"entityIds": {
"type": "array",
@@ -16871,7 +14000,7 @@
}
},
"vault:identity/oidcClient:OidcClient": {
- "description": "Manages OIDC Clients in a Vault server. See the [Vault documentation](https://www.vaultproject.io/api-docs/secret/identity/oidc-provider#create-or-update-an-assignment)\nfor more information.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst testOidcAssignment = new vault.identity.OidcAssignment(\"testOidcAssignment\", {\n entityIds: [\"ascbascas-2231a-sdfaa\"],\n groupIds: [\"sajkdsad-32414-sfsada\"],\n});\nconst testOidcClient = new vault.identity.OidcClient(\"testOidcClient\", {\n redirectUris: [\n \"http://127.0.0.1:9200/v1/auth-methods/oidc:authenticate:callback\",\n \"http://127.0.0.1:8251/callback\",\n \"http://127.0.0.1:8080/callback\",\n ],\n assignments: [testOidcAssignment.name],\n idTokenTtl: 2400,\n accessTokenTtl: 7200,\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\ntest_oidc_assignment = vault.identity.OidcAssignment(\"testOidcAssignment\",\n entity_ids=[\"ascbascas-2231a-sdfaa\"],\n group_ids=[\"sajkdsad-32414-sfsada\"])\ntest_oidc_client = vault.identity.OidcClient(\"testOidcClient\",\n redirect_uris=[\n \"http://127.0.0.1:9200/v1/auth-methods/oidc:authenticate:callback\",\n \"http://127.0.0.1:8251/callback\",\n \"http://127.0.0.1:8080/callback\",\n ],\n assignments=[test_oidc_assignment.name],\n id_token_ttl=2400,\n access_token_ttl=7200)\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var testOidcAssignment = new Vault.Identity.OidcAssignment(\"testOidcAssignment\", new()\n {\n EntityIds = new[]\n {\n \"ascbascas-2231a-sdfaa\",\n },\n GroupIds = new[]\n {\n \"sajkdsad-32414-sfsada\",\n },\n });\n\n var testOidcClient = new Vault.Identity.OidcClient(\"testOidcClient\", new()\n {\n RedirectUris = new[]\n {\n \"http://127.0.0.1:9200/v1/auth-methods/oidc:authenticate:callback\",\n \"http://127.0.0.1:8251/callback\",\n \"http://127.0.0.1:8080/callback\",\n },\n Assignments = new[]\n {\n testOidcAssignment.Name,\n },\n IdTokenTtl = 2400,\n AccessTokenTtl = 7200,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/identity\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\ttestOidcAssignment, err := identity.NewOidcAssignment(ctx, \"testOidcAssignment\", \u0026identity.OidcAssignmentArgs{\n\t\t\tEntityIds: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"ascbascas-2231a-sdfaa\"),\n\t\t\t},\n\t\t\tGroupIds: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"sajkdsad-32414-sfsada\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = identity.NewOidcClient(ctx, \"testOidcClient\", \u0026identity.OidcClientArgs{\n\t\t\tRedirectUris: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"http://127.0.0.1:9200/v1/auth-methods/oidc:authenticate:callback\"),\n\t\t\t\tpulumi.String(\"http://127.0.0.1:8251/callback\"),\n\t\t\t\tpulumi.String(\"http://127.0.0.1:8080/callback\"),\n\t\t\t},\n\t\t\tAssignments: pulumi.StringArray{\n\t\t\t\ttestOidcAssignment.Name,\n\t\t\t},\n\t\t\tIdTokenTtl: pulumi.Int(2400),\n\t\t\tAccessTokenTtl: pulumi.Int(7200),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.identity.OidcAssignment;\nimport com.pulumi.vault.identity.OidcAssignmentArgs;\nimport com.pulumi.vault.identity.OidcClient;\nimport com.pulumi.vault.identity.OidcClientArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var testOidcAssignment = new OidcAssignment(\"testOidcAssignment\", OidcAssignmentArgs.builder() \n .entityIds(\"ascbascas-2231a-sdfaa\")\n .groupIds(\"sajkdsad-32414-sfsada\")\n .build());\n\n var testOidcClient = new OidcClient(\"testOidcClient\", OidcClientArgs.builder() \n .redirectUris( \n \"http://127.0.0.1:9200/v1/auth-methods/oidc:authenticate:callback\",\n \"http://127.0.0.1:8251/callback\",\n \"http://127.0.0.1:8080/callback\")\n .assignments(testOidcAssignment.name())\n .idTokenTtl(2400)\n .accessTokenTtl(7200)\n .build());\n\n }\n}\n```\n```yaml\nresources:\n testOidcAssignment:\n type: vault:identity:OidcAssignment\n properties:\n entityIds:\n - ascbascas-2231a-sdfaa\n groupIds:\n - sajkdsad-32414-sfsada\n testOidcClient:\n type: vault:identity:OidcClient\n properties:\n redirectUris:\n - http://127.0.0.1:9200/v1/auth-methods/oidc:authenticate:callback\n - http://127.0.0.1:8251/callback\n - http://127.0.0.1:8080/callback\n assignments:\n - ${testOidcAssignment.name}\n idTokenTtl: 2400\n accessTokenTtl: 7200\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nOIDC Clients can be imported using the `name`, e.g.\n\n```sh\n $ pulumi import vault:identity/oidcClient:OidcClient test my-app\n```\n\n ",
+ "description": "Manages OIDC Clients in a Vault server. See the [Vault documentation](https://www.vaultproject.io/api-docs/secret/identity/oidc-provider#create-or-update-an-assignment)\nfor more information.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst testOidcAssignment = new vault.identity.OidcAssignment(\"testOidcAssignment\", {\n entityIds: [\"ascbascas-2231a-sdfaa\"],\n groupIds: [\"sajkdsad-32414-sfsada\"],\n});\nconst testOidcClient = new vault.identity.OidcClient(\"testOidcClient\", {\n redirectUris: [\n \"http://127.0.0.1:9200/v1/auth-methods/oidc:authenticate:callback\",\n \"http://127.0.0.1:8251/callback\",\n \"http://127.0.0.1:8080/callback\",\n ],\n assignments: [testOidcAssignment.name],\n idTokenTtl: 2400,\n accessTokenTtl: 7200,\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\ntest_oidc_assignment = vault.identity.OidcAssignment(\"testOidcAssignment\",\n entity_ids=[\"ascbascas-2231a-sdfaa\"],\n group_ids=[\"sajkdsad-32414-sfsada\"])\ntest_oidc_client = vault.identity.OidcClient(\"testOidcClient\",\n redirect_uris=[\n \"http://127.0.0.1:9200/v1/auth-methods/oidc:authenticate:callback\",\n \"http://127.0.0.1:8251/callback\",\n \"http://127.0.0.1:8080/callback\",\n ],\n assignments=[test_oidc_assignment.name],\n id_token_ttl=2400,\n access_token_ttl=7200)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var testOidcAssignment = new Vault.Identity.OidcAssignment(\"testOidcAssignment\", new()\n {\n EntityIds = new[]\n {\n \"ascbascas-2231a-sdfaa\",\n },\n GroupIds = new[]\n {\n \"sajkdsad-32414-sfsada\",\n },\n });\n\n var testOidcClient = new Vault.Identity.OidcClient(\"testOidcClient\", new()\n {\n RedirectUris = new[]\n {\n \"http://127.0.0.1:9200/v1/auth-methods/oidc:authenticate:callback\",\n \"http://127.0.0.1:8251/callback\",\n \"http://127.0.0.1:8080/callback\",\n },\n Assignments = new[]\n {\n testOidcAssignment.Name,\n },\n IdTokenTtl = 2400,\n AccessTokenTtl = 7200,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/identity\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\ttestOidcAssignment, err := identity.NewOidcAssignment(ctx, \"testOidcAssignment\", \u0026identity.OidcAssignmentArgs{\n\t\t\tEntityIds: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"ascbascas-2231a-sdfaa\"),\n\t\t\t},\n\t\t\tGroupIds: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"sajkdsad-32414-sfsada\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = identity.NewOidcClient(ctx, \"testOidcClient\", \u0026identity.OidcClientArgs{\n\t\t\tRedirectUris: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"http://127.0.0.1:9200/v1/auth-methods/oidc:authenticate:callback\"),\n\t\t\t\tpulumi.String(\"http://127.0.0.1:8251/callback\"),\n\t\t\t\tpulumi.String(\"http://127.0.0.1:8080/callback\"),\n\t\t\t},\n\t\t\tAssignments: pulumi.StringArray{\n\t\t\t\ttestOidcAssignment.Name,\n\t\t\t},\n\t\t\tIdTokenTtl: pulumi.Int(2400),\n\t\t\tAccessTokenTtl: pulumi.Int(7200),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.identity.OidcAssignment;\nimport com.pulumi.vault.identity.OidcAssignmentArgs;\nimport com.pulumi.vault.identity.OidcClient;\nimport com.pulumi.vault.identity.OidcClientArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var testOidcAssignment = new OidcAssignment(\"testOidcAssignment\", OidcAssignmentArgs.builder() \n .entityIds(\"ascbascas-2231a-sdfaa\")\n .groupIds(\"sajkdsad-32414-sfsada\")\n .build());\n\n var testOidcClient = new OidcClient(\"testOidcClient\", OidcClientArgs.builder() \n .redirectUris( \n \"http://127.0.0.1:9200/v1/auth-methods/oidc:authenticate:callback\",\n \"http://127.0.0.1:8251/callback\",\n \"http://127.0.0.1:8080/callback\")\n .assignments(testOidcAssignment.name())\n .idTokenTtl(2400)\n .accessTokenTtl(7200)\n .build());\n\n }\n}\n```\n```yaml\nresources:\n testOidcAssignment:\n type: vault:identity:OidcAssignment\n properties:\n entityIds:\n - ascbascas-2231a-sdfaa\n groupIds:\n - sajkdsad-32414-sfsada\n testOidcClient:\n type: vault:identity:OidcClient\n properties:\n redirectUris:\n - http://127.0.0.1:9200/v1/auth-methods/oidc:authenticate:callback\n - http://127.0.0.1:8251/callback\n - http://127.0.0.1:8080/callback\n assignments:\n - ${testOidcAssignment.name}\n idTokenTtl: 2400\n accessTokenTtl: 7200\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nOIDC Clients can be imported using the `name`, e.g.\n\n```sh\n $ pulumi import vault:identity/oidcClient:OidcClient test my-app\n```\n ",
"properties": {
"accessTokenTtl": {
"type": "integer",
@@ -17031,7 +14160,7 @@
}
},
"vault:identity/oidcKey:OidcKey": {
- "description": "{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst key = new vault.identity.OidcKey(\"key\", {algorithm: \"RS256\"});\nconst roleOidcRole = new vault.identity.OidcRole(\"roleOidcRole\", {key: key.name});\nconst roleOidcKeyAllowedClientID = new vault.identity.OidcKeyAllowedClientID(\"roleOidcKeyAllowedClientID\", {\n keyName: key.name,\n allowedClientId: roleOidcRole.clientId,\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nkey = vault.identity.OidcKey(\"key\", algorithm=\"RS256\")\nrole_oidc_role = vault.identity.OidcRole(\"roleOidcRole\", key=key.name)\nrole_oidc_key_allowed_client_id = vault.identity.OidcKeyAllowedClientID(\"roleOidcKeyAllowedClientID\",\n key_name=key.name,\n allowed_client_id=role_oidc_role.client_id)\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var key = new Vault.Identity.OidcKey(\"key\", new()\n {\n Algorithm = \"RS256\",\n });\n\n var roleOidcRole = new Vault.Identity.OidcRole(\"roleOidcRole\", new()\n {\n Key = key.Name,\n });\n\n var roleOidcKeyAllowedClientID = new Vault.Identity.OidcKeyAllowedClientID(\"roleOidcKeyAllowedClientID\", new()\n {\n KeyName = key.Name,\n AllowedClientId = roleOidcRole.ClientId,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/identity\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tkey, err := identity.NewOidcKey(ctx, \"key\", \u0026identity.OidcKeyArgs{\n\t\t\tAlgorithm: pulumi.String(\"RS256\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\troleOidcRole, err := identity.NewOidcRole(ctx, \"roleOidcRole\", \u0026identity.OidcRoleArgs{\n\t\t\tKey: key.Name,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = identity.NewOidcKeyAllowedClientID(ctx, \"roleOidcKeyAllowedClientID\", \u0026identity.OidcKeyAllowedClientIDArgs{\n\t\t\tKeyName: key.Name,\n\t\t\tAllowedClientId: roleOidcRole.ClientId,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.identity.OidcKey;\nimport com.pulumi.vault.identity.OidcKeyArgs;\nimport com.pulumi.vault.identity.OidcRole;\nimport com.pulumi.vault.identity.OidcRoleArgs;\nimport com.pulumi.vault.identity.OidcKeyAllowedClientID;\nimport com.pulumi.vault.identity.OidcKeyAllowedClientIDArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var key = new OidcKey(\"key\", OidcKeyArgs.builder() \n .algorithm(\"RS256\")\n .build());\n\n var roleOidcRole = new OidcRole(\"roleOidcRole\", OidcRoleArgs.builder() \n .key(key.name())\n .build());\n\n var roleOidcKeyAllowedClientID = new OidcKeyAllowedClientID(\"roleOidcKeyAllowedClientID\", OidcKeyAllowedClientIDArgs.builder() \n .keyName(key.name())\n .allowedClientId(roleOidcRole.clientId())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n key:\n type: vault:identity:OidcKey\n properties:\n algorithm: RS256\n roleOidcRole:\n type: vault:identity:OidcRole\n properties:\n key: ${key.name}\n roleOidcKeyAllowedClientID:\n type: vault:identity:OidcKeyAllowedClientID\n properties:\n keyName: ${key.name}\n allowedClientId: ${roleOidcRole.clientId}\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nThe key can be imported with the key name, for example\n\n```sh\n $ pulumi import vault:identity/oidcKey:OidcKey key key\n```\n\n ",
+ "description": "{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst key = new vault.identity.OidcKey(\"key\", {algorithm: \"RS256\"});\nconst roleOidcRole = new vault.identity.OidcRole(\"roleOidcRole\", {key: key.name});\nconst roleOidcKeyAllowedClientID = new vault.identity.OidcKeyAllowedClientID(\"roleOidcKeyAllowedClientID\", {\n keyName: key.name,\n allowedClientId: roleOidcRole.clientId,\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nkey = vault.identity.OidcKey(\"key\", algorithm=\"RS256\")\nrole_oidc_role = vault.identity.OidcRole(\"roleOidcRole\", key=key.name)\nrole_oidc_key_allowed_client_id = vault.identity.OidcKeyAllowedClientID(\"roleOidcKeyAllowedClientID\",\n key_name=key.name,\n allowed_client_id=role_oidc_role.client_id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var key = new Vault.Identity.OidcKey(\"key\", new()\n {\n Algorithm = \"RS256\",\n });\n\n var roleOidcRole = new Vault.Identity.OidcRole(\"roleOidcRole\", new()\n {\n Key = key.Name,\n });\n\n var roleOidcKeyAllowedClientID = new Vault.Identity.OidcKeyAllowedClientID(\"roleOidcKeyAllowedClientID\", new()\n {\n KeyName = key.Name,\n AllowedClientId = roleOidcRole.ClientId,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/identity\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tkey, err := identity.NewOidcKey(ctx, \"key\", \u0026identity.OidcKeyArgs{\n\t\t\tAlgorithm: pulumi.String(\"RS256\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\troleOidcRole, err := identity.NewOidcRole(ctx, \"roleOidcRole\", \u0026identity.OidcRoleArgs{\n\t\t\tKey: key.Name,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = identity.NewOidcKeyAllowedClientID(ctx, \"roleOidcKeyAllowedClientID\", \u0026identity.OidcKeyAllowedClientIDArgs{\n\t\t\tKeyName: key.Name,\n\t\t\tAllowedClientId: roleOidcRole.ClientId,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.identity.OidcKey;\nimport com.pulumi.vault.identity.OidcKeyArgs;\nimport com.pulumi.vault.identity.OidcRole;\nimport com.pulumi.vault.identity.OidcRoleArgs;\nimport com.pulumi.vault.identity.OidcKeyAllowedClientID;\nimport com.pulumi.vault.identity.OidcKeyAllowedClientIDArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var key = new OidcKey(\"key\", OidcKeyArgs.builder() \n .algorithm(\"RS256\")\n .build());\n\n var roleOidcRole = new OidcRole(\"roleOidcRole\", OidcRoleArgs.builder() \n .key(key.name())\n .build());\n\n var roleOidcKeyAllowedClientID = new OidcKeyAllowedClientID(\"roleOidcKeyAllowedClientID\", OidcKeyAllowedClientIDArgs.builder() \n .keyName(key.name())\n .allowedClientId(roleOidcRole.clientId())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n key:\n type: vault:identity:OidcKey\n properties:\n algorithm: RS256\n roleOidcRole:\n type: vault:identity:OidcRole\n properties:\n key: ${key.name}\n roleOidcKeyAllowedClientID:\n type: vault:identity:OidcKeyAllowedClientID\n properties:\n keyName: ${key.name}\n allowedClientId: ${roleOidcRole.clientId}\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nThe key can be imported with the key name, for example:\n\n```sh\n $ pulumi import vault:identity/oidcKey:OidcKey key key\n```\n ",
"properties": {
"algorithm": {
"type": "string",
@@ -17042,7 +14171,7 @@
"items": {
"type": "string"
},
- "description": "Array of role client ids allowed to use this key for signing. If empty, no roles are allowed. If \"*\", all roles are\nallowed.\n"
+ "description": "Array of role client ID allowed to use this key for signing. If\nempty, no roles are allowed. If `[\"*\"]`, all roles are allowed.\n"
},
"name": {
"type": "string",
@@ -17075,7 +14204,7 @@
"items": {
"type": "string"
},
- "description": "Array of role client ids allowed to use this key for signing. If empty, no roles are allowed. If \"*\", all roles are\nallowed.\n"
+ "description": "Array of role client ID allowed to use this key for signing. If\nempty, no roles are allowed. If `[\"*\"]`, all roles are allowed.\n"
},
"name": {
"type": "string",
@@ -17108,7 +14237,7 @@
"items": {
"type": "string"
},
- "description": "Array of role client ids allowed to use this key for signing. If empty, no roles are allowed. If \"*\", all roles are\nallowed.\n"
+ "description": "Array of role client ID allowed to use this key for signing. If\nempty, no roles are allowed. If `[\"*\"]`, all roles are allowed.\n"
},
"name": {
"type": "string",
@@ -17133,7 +14262,7 @@
}
},
"vault:identity/oidcKeyAllowedClientID:OidcKeyAllowedClientID": {
- "description": "{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst key = new vault.identity.OidcKey(\"key\", {algorithm: \"RS256\"});\nconst roleOidcRole = new vault.identity.OidcRole(\"roleOidcRole\", {key: key.name});\nconst roleOidcKeyAllowedClientID = new vault.identity.OidcKeyAllowedClientID(\"roleOidcKeyAllowedClientID\", {\n keyName: key.name,\n allowedClientId: roleOidcRole.clientId,\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nkey = vault.identity.OidcKey(\"key\", algorithm=\"RS256\")\nrole_oidc_role = vault.identity.OidcRole(\"roleOidcRole\", key=key.name)\nrole_oidc_key_allowed_client_id = vault.identity.OidcKeyAllowedClientID(\"roleOidcKeyAllowedClientID\",\n key_name=key.name,\n allowed_client_id=role_oidc_role.client_id)\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var key = new Vault.Identity.OidcKey(\"key\", new()\n {\n Algorithm = \"RS256\",\n });\n\n var roleOidcRole = new Vault.Identity.OidcRole(\"roleOidcRole\", new()\n {\n Key = key.Name,\n });\n\n var roleOidcKeyAllowedClientID = new Vault.Identity.OidcKeyAllowedClientID(\"roleOidcKeyAllowedClientID\", new()\n {\n KeyName = key.Name,\n AllowedClientId = roleOidcRole.ClientId,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/identity\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tkey, err := identity.NewOidcKey(ctx, \"key\", \u0026identity.OidcKeyArgs{\n\t\t\tAlgorithm: pulumi.String(\"RS256\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\troleOidcRole, err := identity.NewOidcRole(ctx, \"roleOidcRole\", \u0026identity.OidcRoleArgs{\n\t\t\tKey: key.Name,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = identity.NewOidcKeyAllowedClientID(ctx, \"roleOidcKeyAllowedClientID\", \u0026identity.OidcKeyAllowedClientIDArgs{\n\t\t\tKeyName: key.Name,\n\t\t\tAllowedClientId: roleOidcRole.ClientId,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.identity.OidcKey;\nimport com.pulumi.vault.identity.OidcKeyArgs;\nimport com.pulumi.vault.identity.OidcRole;\nimport com.pulumi.vault.identity.OidcRoleArgs;\nimport com.pulumi.vault.identity.OidcKeyAllowedClientID;\nimport com.pulumi.vault.identity.OidcKeyAllowedClientIDArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var key = new OidcKey(\"key\", OidcKeyArgs.builder() \n .algorithm(\"RS256\")\n .build());\n\n var roleOidcRole = new OidcRole(\"roleOidcRole\", OidcRoleArgs.builder() \n .key(key.name())\n .build());\n\n var roleOidcKeyAllowedClientID = new OidcKeyAllowedClientID(\"roleOidcKeyAllowedClientID\", OidcKeyAllowedClientIDArgs.builder() \n .keyName(key.name())\n .allowedClientId(roleOidcRole.clientId())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n key:\n type: vault:identity:OidcKey\n properties:\n algorithm: RS256\n roleOidcRole:\n type: vault:identity:OidcRole\n properties:\n key: ${key.name}\n roleOidcKeyAllowedClientID:\n type: vault:identity:OidcKeyAllowedClientID\n properties:\n keyName: ${key.name}\n allowedClientId: ${roleOidcRole.clientId}\n```\n{{% /example %}}\n{{% /examples %}}",
+ "description": "{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst key = new vault.identity.OidcKey(\"key\", {algorithm: \"RS256\"});\nconst roleOidcRole = new vault.identity.OidcRole(\"roleOidcRole\", {key: key.name});\nconst roleOidcKeyAllowedClientID = new vault.identity.OidcKeyAllowedClientID(\"roleOidcKeyAllowedClientID\", {\n keyName: key.name,\n allowedClientId: roleOidcRole.clientId,\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nkey = vault.identity.OidcKey(\"key\", algorithm=\"RS256\")\nrole_oidc_role = vault.identity.OidcRole(\"roleOidcRole\", key=key.name)\nrole_oidc_key_allowed_client_id = vault.identity.OidcKeyAllowedClientID(\"roleOidcKeyAllowedClientID\",\n key_name=key.name,\n allowed_client_id=role_oidc_role.client_id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var key = new Vault.Identity.OidcKey(\"key\", new()\n {\n Algorithm = \"RS256\",\n });\n\n var roleOidcRole = new Vault.Identity.OidcRole(\"roleOidcRole\", new()\n {\n Key = key.Name,\n });\n\n var roleOidcKeyAllowedClientID = new Vault.Identity.OidcKeyAllowedClientID(\"roleOidcKeyAllowedClientID\", new()\n {\n KeyName = key.Name,\n AllowedClientId = roleOidcRole.ClientId,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/identity\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tkey, err := identity.NewOidcKey(ctx, \"key\", \u0026identity.OidcKeyArgs{\n\t\t\tAlgorithm: pulumi.String(\"RS256\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\troleOidcRole, err := identity.NewOidcRole(ctx, \"roleOidcRole\", \u0026identity.OidcRoleArgs{\n\t\t\tKey: key.Name,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = identity.NewOidcKeyAllowedClientID(ctx, \"roleOidcKeyAllowedClientID\", \u0026identity.OidcKeyAllowedClientIDArgs{\n\t\t\tKeyName: key.Name,\n\t\t\tAllowedClientId: roleOidcRole.ClientId,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.identity.OidcKey;\nimport com.pulumi.vault.identity.OidcKeyArgs;\nimport com.pulumi.vault.identity.OidcRole;\nimport com.pulumi.vault.identity.OidcRoleArgs;\nimport com.pulumi.vault.identity.OidcKeyAllowedClientID;\nimport com.pulumi.vault.identity.OidcKeyAllowedClientIDArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var key = new OidcKey(\"key\", OidcKeyArgs.builder() \n .algorithm(\"RS256\")\n .build());\n\n var roleOidcRole = new OidcRole(\"roleOidcRole\", OidcRoleArgs.builder() \n .key(key.name())\n .build());\n\n var roleOidcKeyAllowedClientID = new OidcKeyAllowedClientID(\"roleOidcKeyAllowedClientID\", OidcKeyAllowedClientIDArgs.builder() \n .keyName(key.name())\n .allowedClientId(roleOidcRole.clientId())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n key:\n type: vault:identity:OidcKey\n properties:\n algorithm: RS256\n roleOidcRole:\n type: vault:identity:OidcRole\n properties:\n key: ${key.name}\n roleOidcKeyAllowedClientID:\n type: vault:identity:OidcKeyAllowedClientID\n properties:\n keyName: ${key.name}\n allowedClientId: ${roleOidcRole.clientId}\n```\n{{% /example %}}\n{{% /examples %}}",
"properties": {
"allowedClientId": {
"type": "string",
@@ -17196,7 +14325,7 @@
}
},
"vault:identity/oidcProvider:OidcProvider": {
- "description": "Manages OIDC Providers in a Vault server. See the [Vault documentation](https://www.vaultproject.io/api-docs/secret/identity/oidc-provider#create-or-update-an-assignment)\nfor more information.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst testOidcKey = new vault.identity.OidcKey(\"testOidcKey\", {\n allowedClientIds: [\"*\"],\n rotationPeriod: 3600,\n verificationTtl: 3600,\n});\nconst testOidcAssignment = new vault.identity.OidcAssignment(\"testOidcAssignment\", {\n entityIds: [\"fake-ascbascas-2231a-sdfaa\"],\n groupIds: [\"fake-sajkdsad-32414-sfsada\"],\n});\nconst testOidcClient = new vault.identity.OidcClient(\"testOidcClient\", {\n key: testOidcKey.name,\n redirectUris: [\n \"http://127.0.0.1:9200/v1/auth-methods/oidc:authenticate:callback\",\n \"http://127.0.0.1:8251/callback\",\n \"http://127.0.0.1:8080/callback\",\n ],\n assignments: [testOidcAssignment.name],\n idTokenTtl: 2400,\n accessTokenTtl: 7200,\n});\nconst testOidcScope = new vault.identity.OidcScope(\"testOidcScope\", {\n template: JSON.stringify({\n groups: \"{{identity.entity.groups.names}}\",\n }),\n description: \"Groups scope.\",\n});\nconst testOidcProvider = new vault.identity.OidcProvider(\"testOidcProvider\", {\n httpsEnabled: false,\n issuerHost: \"127.0.0.1:8200\",\n allowedClientIds: [testOidcClient.clientId],\n scopesSupporteds: [testOidcScope.name],\n});\n```\n```python\nimport pulumi\nimport json\nimport pulumi_vault as vault\n\ntest_oidc_key = vault.identity.OidcKey(\"testOidcKey\",\n allowed_client_ids=[\"*\"],\n rotation_period=3600,\n verification_ttl=3600)\ntest_oidc_assignment = vault.identity.OidcAssignment(\"testOidcAssignment\",\n entity_ids=[\"fake-ascbascas-2231a-sdfaa\"],\n group_ids=[\"fake-sajkdsad-32414-sfsada\"])\ntest_oidc_client = vault.identity.OidcClient(\"testOidcClient\",\n key=test_oidc_key.name,\n redirect_uris=[\n \"http://127.0.0.1:9200/v1/auth-methods/oidc:authenticate:callback\",\n \"http://127.0.0.1:8251/callback\",\n \"http://127.0.0.1:8080/callback\",\n ],\n assignments=[test_oidc_assignment.name],\n id_token_ttl=2400,\n access_token_ttl=7200)\ntest_oidc_scope = vault.identity.OidcScope(\"testOidcScope\",\n template=json.dumps({\n \"groups\": \"{{identity.entity.groups.names}}\",\n }),\n description=\"Groups scope.\")\ntest_oidc_provider = vault.identity.OidcProvider(\"testOidcProvider\",\n https_enabled=False,\n issuer_host=\"127.0.0.1:8200\",\n allowed_client_ids=[test_oidc_client.client_id],\n scopes_supporteds=[test_oidc_scope.name])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Text.Json;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var testOidcKey = new Vault.Identity.OidcKey(\"testOidcKey\", new()\n {\n AllowedClientIds = new[]\n {\n \"*\",\n },\n RotationPeriod = 3600,\n VerificationTtl = 3600,\n });\n\n var testOidcAssignment = new Vault.Identity.OidcAssignment(\"testOidcAssignment\", new()\n {\n EntityIds = new[]\n {\n \"fake-ascbascas-2231a-sdfaa\",\n },\n GroupIds = new[]\n {\n \"fake-sajkdsad-32414-sfsada\",\n },\n });\n\n var testOidcClient = new Vault.Identity.OidcClient(\"testOidcClient\", new()\n {\n Key = testOidcKey.Name,\n RedirectUris = new[]\n {\n \"http://127.0.0.1:9200/v1/auth-methods/oidc:authenticate:callback\",\n \"http://127.0.0.1:8251/callback\",\n \"http://127.0.0.1:8080/callback\",\n },\n Assignments = new[]\n {\n testOidcAssignment.Name,\n },\n IdTokenTtl = 2400,\n AccessTokenTtl = 7200,\n });\n\n var testOidcScope = new Vault.Identity.OidcScope(\"testOidcScope\", new()\n {\n Template = JsonSerializer.Serialize(new Dictionary\u003cstring, object?\u003e\n {\n [\"groups\"] = \"{{identity.entity.groups.names}}\",\n }),\n Description = \"Groups scope.\",\n });\n\n var testOidcProvider = new Vault.Identity.OidcProvider(\"testOidcProvider\", new()\n {\n HttpsEnabled = false,\n IssuerHost = \"127.0.0.1:8200\",\n AllowedClientIds = new[]\n {\n testOidcClient.ClientId,\n },\n ScopesSupporteds = new[]\n {\n testOidcScope.Name,\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"encoding/json\"\n\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/identity\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\ttestOidcKey, err := identity.NewOidcKey(ctx, \"testOidcKey\", \u0026identity.OidcKeyArgs{\n\t\t\tAllowedClientIds: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"*\"),\n\t\t\t},\n\t\t\tRotationPeriod: pulumi.Int(3600),\n\t\t\tVerificationTtl: pulumi.Int(3600),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\ttestOidcAssignment, err := identity.NewOidcAssignment(ctx, \"testOidcAssignment\", \u0026identity.OidcAssignmentArgs{\n\t\t\tEntityIds: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"fake-ascbascas-2231a-sdfaa\"),\n\t\t\t},\n\t\t\tGroupIds: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"fake-sajkdsad-32414-sfsada\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\ttestOidcClient, err := identity.NewOidcClient(ctx, \"testOidcClient\", \u0026identity.OidcClientArgs{\n\t\t\tKey: testOidcKey.Name,\n\t\t\tRedirectUris: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"http://127.0.0.1:9200/v1/auth-methods/oidc:authenticate:callback\"),\n\t\t\t\tpulumi.String(\"http://127.0.0.1:8251/callback\"),\n\t\t\t\tpulumi.String(\"http://127.0.0.1:8080/callback\"),\n\t\t\t},\n\t\t\tAssignments: pulumi.StringArray{\n\t\t\t\ttestOidcAssignment.Name,\n\t\t\t},\n\t\t\tIdTokenTtl: pulumi.Int(2400),\n\t\t\tAccessTokenTtl: pulumi.Int(7200),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\ttmpJSON0, err := json.Marshal(map[string]interface{}{\n\t\t\t\"groups\": \"{{identity.entity.groups.names}}\",\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tjson0 := string(tmpJSON0)\n\t\ttestOidcScope, err := identity.NewOidcScope(ctx, \"testOidcScope\", \u0026identity.OidcScopeArgs{\n\t\t\tTemplate: pulumi.String(json0),\n\t\t\tDescription: pulumi.String(\"Groups scope.\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = identity.NewOidcProvider(ctx, \"testOidcProvider\", \u0026identity.OidcProviderArgs{\n\t\t\tHttpsEnabled: pulumi.Bool(false),\n\t\t\tIssuerHost: pulumi.String(\"127.0.0.1:8200\"),\n\t\t\tAllowedClientIds: pulumi.StringArray{\n\t\t\t\ttestOidcClient.ClientId,\n\t\t\t},\n\t\t\tScopesSupporteds: pulumi.StringArray{\n\t\t\t\ttestOidcScope.Name,\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.identity.OidcKey;\nimport com.pulumi.vault.identity.OidcKeyArgs;\nimport com.pulumi.vault.identity.OidcAssignment;\nimport com.pulumi.vault.identity.OidcAssignmentArgs;\nimport com.pulumi.vault.identity.OidcClient;\nimport com.pulumi.vault.identity.OidcClientArgs;\nimport com.pulumi.vault.identity.OidcScope;\nimport com.pulumi.vault.identity.OidcScopeArgs;\nimport com.pulumi.vault.identity.OidcProvider;\nimport com.pulumi.vault.identity.OidcProviderArgs;\nimport static com.pulumi.codegen.internal.Serialization.*;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var testOidcKey = new OidcKey(\"testOidcKey\", OidcKeyArgs.builder() \n .allowedClientIds(\"*\")\n .rotationPeriod(3600)\n .verificationTtl(3600)\n .build());\n\n var testOidcAssignment = new OidcAssignment(\"testOidcAssignment\", OidcAssignmentArgs.builder() \n .entityIds(\"fake-ascbascas-2231a-sdfaa\")\n .groupIds(\"fake-sajkdsad-32414-sfsada\")\n .build());\n\n var testOidcClient = new OidcClient(\"testOidcClient\", OidcClientArgs.builder() \n .key(testOidcKey.name())\n .redirectUris( \n \"http://127.0.0.1:9200/v1/auth-methods/oidc:authenticate:callback\",\n \"http://127.0.0.1:8251/callback\",\n \"http://127.0.0.1:8080/callback\")\n .assignments(testOidcAssignment.name())\n .idTokenTtl(2400)\n .accessTokenTtl(7200)\n .build());\n\n var testOidcScope = new OidcScope(\"testOidcScope\", OidcScopeArgs.builder() \n .template(serializeJson(\n jsonObject(\n jsonProperty(\"groups\", \"{{identity.entity.groups.names}}\")\n )))\n .description(\"Groups scope.\")\n .build());\n\n var testOidcProvider = new OidcProvider(\"testOidcProvider\", OidcProviderArgs.builder() \n .httpsEnabled(false)\n .issuerHost(\"127.0.0.1:8200\")\n .allowedClientIds(testOidcClient.clientId())\n .scopesSupporteds(testOidcScope.name())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n testOidcKey:\n type: vault:identity:OidcKey\n properties:\n allowedClientIds:\n - '*'\n rotationPeriod: 3600\n verificationTtl: 3600\n testOidcAssignment:\n type: vault:identity:OidcAssignment\n properties:\n entityIds:\n - fake-ascbascas-2231a-sdfaa\n groupIds:\n - fake-sajkdsad-32414-sfsada\n testOidcClient:\n type: vault:identity:OidcClient\n properties:\n key: ${testOidcKey.name}\n redirectUris:\n - http://127.0.0.1:9200/v1/auth-methods/oidc:authenticate:callback\n - http://127.0.0.1:8251/callback\n - http://127.0.0.1:8080/callback\n assignments:\n - ${testOidcAssignment.name}\n idTokenTtl: 2400\n accessTokenTtl: 7200\n testOidcScope:\n type: vault:identity:OidcScope\n properties:\n template:\n Fn::ToJSON:\n groups: '{{identity.entity.groups.names}}'\n description: Groups scope.\n testOidcProvider:\n type: vault:identity:OidcProvider\n properties:\n httpsEnabled: false\n issuerHost: 127.0.0.1:8200\n allowedClientIds:\n - ${testOidcClient.clientId}\n scopesSupporteds:\n - ${testOidcScope.name}\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nOIDC Providers can be imported using the `name`, e.g.\n\n```sh\n $ pulumi import vault:identity/oidcProvider:OidcProvider test my-provider\n```\n\n ",
+ "description": "Manages OIDC Providers in a Vault server. See the [Vault documentation](https://www.vaultproject.io/api-docs/secret/identity/oidc-provider#create-or-update-an-assignment)\nfor more information.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst testOidcKey = new vault.identity.OidcKey(\"testOidcKey\", {\n allowedClientIds: [\"*\"],\n rotationPeriod: 3600,\n verificationTtl: 3600,\n});\nconst testOidcAssignment = new vault.identity.OidcAssignment(\"testOidcAssignment\", {\n entityIds: [\"fake-ascbascas-2231a-sdfaa\"],\n groupIds: [\"fake-sajkdsad-32414-sfsada\"],\n});\nconst testOidcClient = new vault.identity.OidcClient(\"testOidcClient\", {\n key: testOidcKey.name,\n redirectUris: [\n \"http://127.0.0.1:9200/v1/auth-methods/oidc:authenticate:callback\",\n \"http://127.0.0.1:8251/callback\",\n \"http://127.0.0.1:8080/callback\",\n ],\n assignments: [testOidcAssignment.name],\n idTokenTtl: 2400,\n accessTokenTtl: 7200,\n});\nconst testOidcScope = new vault.identity.OidcScope(\"testOidcScope\", {\n template: JSON.stringify({\n groups: \"{{identity.entity.groups.names}}\",\n }),\n description: \"Groups scope.\",\n});\nconst testOidcProvider = new vault.identity.OidcProvider(\"testOidcProvider\", {\n httpsEnabled: false,\n issuerHost: \"127.0.0.1:8200\",\n allowedClientIds: [testOidcClient.clientId],\n scopesSupporteds: [testOidcScope.name],\n});\n```\n```python\nimport pulumi\nimport json\nimport pulumi_vault as vault\n\ntest_oidc_key = vault.identity.OidcKey(\"testOidcKey\",\n allowed_client_ids=[\"*\"],\n rotation_period=3600,\n verification_ttl=3600)\ntest_oidc_assignment = vault.identity.OidcAssignment(\"testOidcAssignment\",\n entity_ids=[\"fake-ascbascas-2231a-sdfaa\"],\n group_ids=[\"fake-sajkdsad-32414-sfsada\"])\ntest_oidc_client = vault.identity.OidcClient(\"testOidcClient\",\n key=test_oidc_key.name,\n redirect_uris=[\n \"http://127.0.0.1:9200/v1/auth-methods/oidc:authenticate:callback\",\n \"http://127.0.0.1:8251/callback\",\n \"http://127.0.0.1:8080/callback\",\n ],\n assignments=[test_oidc_assignment.name],\n id_token_ttl=2400,\n access_token_ttl=7200)\ntest_oidc_scope = vault.identity.OidcScope(\"testOidcScope\",\n template=json.dumps({\n \"groups\": \"{{identity.entity.groups.names}}\",\n }),\n description=\"Groups scope.\")\ntest_oidc_provider = vault.identity.OidcProvider(\"testOidcProvider\",\n https_enabled=False,\n issuer_host=\"127.0.0.1:8200\",\n allowed_client_ids=[test_oidc_client.client_id],\n scopes_supporteds=[test_oidc_scope.name])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text.Json;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var testOidcKey = new Vault.Identity.OidcKey(\"testOidcKey\", new()\n {\n AllowedClientIds = new[]\n {\n \"*\",\n },\n RotationPeriod = 3600,\n VerificationTtl = 3600,\n });\n\n var testOidcAssignment = new Vault.Identity.OidcAssignment(\"testOidcAssignment\", new()\n {\n EntityIds = new[]\n {\n \"fake-ascbascas-2231a-sdfaa\",\n },\n GroupIds = new[]\n {\n \"fake-sajkdsad-32414-sfsada\",\n },\n });\n\n var testOidcClient = new Vault.Identity.OidcClient(\"testOidcClient\", new()\n {\n Key = testOidcKey.Name,\n RedirectUris = new[]\n {\n \"http://127.0.0.1:9200/v1/auth-methods/oidc:authenticate:callback\",\n \"http://127.0.0.1:8251/callback\",\n \"http://127.0.0.1:8080/callback\",\n },\n Assignments = new[]\n {\n testOidcAssignment.Name,\n },\n IdTokenTtl = 2400,\n AccessTokenTtl = 7200,\n });\n\n var testOidcScope = new Vault.Identity.OidcScope(\"testOidcScope\", new()\n {\n Template = JsonSerializer.Serialize(new Dictionary\u003cstring, object?\u003e\n {\n [\"groups\"] = \"{{identity.entity.groups.names}}\",\n }),\n Description = \"Groups scope.\",\n });\n\n var testOidcProvider = new Vault.Identity.OidcProvider(\"testOidcProvider\", new()\n {\n HttpsEnabled = false,\n IssuerHost = \"127.0.0.1:8200\",\n AllowedClientIds = new[]\n {\n testOidcClient.ClientId,\n },\n ScopesSupporteds = new[]\n {\n testOidcScope.Name,\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"encoding/json\"\n\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/identity\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\ttestOidcKey, err := identity.NewOidcKey(ctx, \"testOidcKey\", \u0026identity.OidcKeyArgs{\n\t\t\tAllowedClientIds: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"*\"),\n\t\t\t},\n\t\t\tRotationPeriod: pulumi.Int(3600),\n\t\t\tVerificationTtl: pulumi.Int(3600),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\ttestOidcAssignment, err := identity.NewOidcAssignment(ctx, \"testOidcAssignment\", \u0026identity.OidcAssignmentArgs{\n\t\t\tEntityIds: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"fake-ascbascas-2231a-sdfaa\"),\n\t\t\t},\n\t\t\tGroupIds: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"fake-sajkdsad-32414-sfsada\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\ttestOidcClient, err := identity.NewOidcClient(ctx, \"testOidcClient\", \u0026identity.OidcClientArgs{\n\t\t\tKey: testOidcKey.Name,\n\t\t\tRedirectUris: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"http://127.0.0.1:9200/v1/auth-methods/oidc:authenticate:callback\"),\n\t\t\t\tpulumi.String(\"http://127.0.0.1:8251/callback\"),\n\t\t\t\tpulumi.String(\"http://127.0.0.1:8080/callback\"),\n\t\t\t},\n\t\t\tAssignments: pulumi.StringArray{\n\t\t\t\ttestOidcAssignment.Name,\n\t\t\t},\n\t\t\tIdTokenTtl: pulumi.Int(2400),\n\t\t\tAccessTokenTtl: pulumi.Int(7200),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\ttmpJSON0, err := json.Marshal(map[string]interface{}{\n\t\t\t\"groups\": \"{{identity.entity.groups.names}}\",\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tjson0 := string(tmpJSON0)\n\t\ttestOidcScope, err := identity.NewOidcScope(ctx, \"testOidcScope\", \u0026identity.OidcScopeArgs{\n\t\t\tTemplate: pulumi.String(json0),\n\t\t\tDescription: pulumi.String(\"Groups scope.\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = identity.NewOidcProvider(ctx, \"testOidcProvider\", \u0026identity.OidcProviderArgs{\n\t\t\tHttpsEnabled: pulumi.Bool(false),\n\t\t\tIssuerHost: pulumi.String(\"127.0.0.1:8200\"),\n\t\t\tAllowedClientIds: pulumi.StringArray{\n\t\t\t\ttestOidcClient.ClientId,\n\t\t\t},\n\t\t\tScopesSupporteds: pulumi.StringArray{\n\t\t\t\ttestOidcScope.Name,\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.identity.OidcKey;\nimport com.pulumi.vault.identity.OidcKeyArgs;\nimport com.pulumi.vault.identity.OidcAssignment;\nimport com.pulumi.vault.identity.OidcAssignmentArgs;\nimport com.pulumi.vault.identity.OidcClient;\nimport com.pulumi.vault.identity.OidcClientArgs;\nimport com.pulumi.vault.identity.OidcScope;\nimport com.pulumi.vault.identity.OidcScopeArgs;\nimport com.pulumi.vault.identity.OidcProvider;\nimport com.pulumi.vault.identity.OidcProviderArgs;\nimport static com.pulumi.codegen.internal.Serialization.*;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var testOidcKey = new OidcKey(\"testOidcKey\", OidcKeyArgs.builder() \n .allowedClientIds(\"*\")\n .rotationPeriod(3600)\n .verificationTtl(3600)\n .build());\n\n var testOidcAssignment = new OidcAssignment(\"testOidcAssignment\", OidcAssignmentArgs.builder() \n .entityIds(\"fake-ascbascas-2231a-sdfaa\")\n .groupIds(\"fake-sajkdsad-32414-sfsada\")\n .build());\n\n var testOidcClient = new OidcClient(\"testOidcClient\", OidcClientArgs.builder() \n .key(testOidcKey.name())\n .redirectUris( \n \"http://127.0.0.1:9200/v1/auth-methods/oidc:authenticate:callback\",\n \"http://127.0.0.1:8251/callback\",\n \"http://127.0.0.1:8080/callback\")\n .assignments(testOidcAssignment.name())\n .idTokenTtl(2400)\n .accessTokenTtl(7200)\n .build());\n\n var testOidcScope = new OidcScope(\"testOidcScope\", OidcScopeArgs.builder() \n .template(serializeJson(\n jsonObject(\n jsonProperty(\"groups\", \"{{identity.entity.groups.names}}\")\n )))\n .description(\"Groups scope.\")\n .build());\n\n var testOidcProvider = new OidcProvider(\"testOidcProvider\", OidcProviderArgs.builder() \n .httpsEnabled(false)\n .issuerHost(\"127.0.0.1:8200\")\n .allowedClientIds(testOidcClient.clientId())\n .scopesSupporteds(testOidcScope.name())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n testOidcKey:\n type: vault:identity:OidcKey\n properties:\n allowedClientIds:\n - '*'\n rotationPeriod: 3600\n verificationTtl: 3600\n testOidcAssignment:\n type: vault:identity:OidcAssignment\n properties:\n entityIds:\n - fake-ascbascas-2231a-sdfaa\n groupIds:\n - fake-sajkdsad-32414-sfsada\n testOidcClient:\n type: vault:identity:OidcClient\n properties:\n key: ${testOidcKey.name}\n redirectUris:\n - http://127.0.0.1:9200/v1/auth-methods/oidc:authenticate:callback\n - http://127.0.0.1:8251/callback\n - http://127.0.0.1:8080/callback\n assignments:\n - ${testOidcAssignment.name}\n idTokenTtl: 2400\n accessTokenTtl: 7200\n testOidcScope:\n type: vault:identity:OidcScope\n properties:\n template:\n fn::toJSON:\n groups: '{{identity.entity.groups.names}}'\n description: Groups scope.\n testOidcProvider:\n type: vault:identity:OidcProvider\n properties:\n httpsEnabled: false\n issuerHost: 127.0.0.1:8200\n allowedClientIds:\n - ${testOidcClient.clientId}\n scopesSupporteds:\n - ${testOidcScope.name}\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nOIDC Providers can be imported using the `name`, e.g.\n\n```sh\n $ pulumi import vault:identity/oidcProvider:OidcProvider test my-provider\n```\n ",
"properties": {
"allowedClientIds": {
"type": "array",
@@ -17315,7 +14444,7 @@
}
},
"vault:identity/oidcRole:OidcRole": {
- "description": "{{% examples %}}\n## Example Usage\n{{% example %}}\n\nYou need to create a role with a named key.\nAt creation time, the key can be created independently of the role. However, the key must\nexist before the role can be used to issue tokens. You must also configure the key with the\nrole's Client ID to allow the role to use the key.\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst config = new pulumi.Config();\nconst key = config.get(\"key\") || \"key\";\nconst role = new vault.identity.OidcRole(\"role\", {key: key});\nconst keyOidcKey = new vault.identity.OidcKey(\"keyOidcKey\", {\n algorithm: \"RS256\",\n allowedClientIds: [role.clientId],\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nconfig = pulumi.Config()\nkey = config.get(\"key\")\nif key is None:\n key = \"key\"\nrole = vault.identity.OidcRole(\"role\", key=key)\nkey_oidc_key = vault.identity.OidcKey(\"keyOidcKey\",\n algorithm=\"RS256\",\n allowed_client_ids=[role.client_id])\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var key = config.Get(\"key\") ?? \"key\";\n var role = new Vault.Identity.OidcRole(\"role\", new()\n {\n Key = key,\n });\n\n var keyOidcKey = new Vault.Identity.OidcKey(\"keyOidcKey\", new()\n {\n Algorithm = \"RS256\",\n AllowedClientIds = new[]\n {\n role.ClientId,\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/identity\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tkey := \"key\"\n\t\tif param := cfg.Get(\"key\"); param != \"\" {\n\t\t\tkey = param\n\t\t}\n\t\trole, err := identity.NewOidcRole(ctx, \"role\", \u0026identity.OidcRoleArgs{\n\t\t\tKey: pulumi.String(key),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = identity.NewOidcKey(ctx, \"keyOidcKey\", \u0026identity.OidcKeyArgs{\n\t\t\tAlgorithm: pulumi.String(\"RS256\"),\n\t\t\tAllowedClientIds: pulumi.StringArray{\n\t\t\t\trole.ClientId,\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.identity.OidcRole;\nimport com.pulumi.vault.identity.OidcRoleArgs;\nimport com.pulumi.vault.identity.OidcKey;\nimport com.pulumi.vault.identity.OidcKeyArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var key = config.get(\"key\").orElse(\"key\");\n var role = new OidcRole(\"role\", OidcRoleArgs.builder() \n .key(key)\n .build());\n\n var keyOidcKey = new OidcKey(\"keyOidcKey\", OidcKeyArgs.builder() \n .algorithm(\"RS256\")\n .allowedClientIds(role.clientId())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n key:\n type: string\n default: key\nresources:\n keyOidcKey:\n type: vault:identity:OidcKey\n properties:\n algorithm: RS256\n allowedClientIds:\n - ${role.clientId}\n role:\n type: vault:identity:OidcRole\n properties:\n key: ${key}\n```\n\nIf you want to create the key first before creating the role, you can use a separate\nresource to configure the allowed Client ID on\nthe key.\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst key = new vault.identity.OidcKey(\"key\", {algorithm: \"RS256\"});\nconst roleOidcRole = new vault.identity.OidcRole(\"roleOidcRole\", {key: key.name});\nconst roleOidcKeyAllowedClientID = new vault.identity.OidcKeyAllowedClientID(\"roleOidcKeyAllowedClientID\", {\n keyName: key.name,\n allowedClientId: roleOidcRole.clientId,\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nkey = vault.identity.OidcKey(\"key\", algorithm=\"RS256\")\nrole_oidc_role = vault.identity.OidcRole(\"roleOidcRole\", key=key.name)\nrole_oidc_key_allowed_client_id = vault.identity.OidcKeyAllowedClientID(\"roleOidcKeyAllowedClientID\",\n key_name=key.name,\n allowed_client_id=role_oidc_role.client_id)\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var key = new Vault.Identity.OidcKey(\"key\", new()\n {\n Algorithm = \"RS256\",\n });\n\n var roleOidcRole = new Vault.Identity.OidcRole(\"roleOidcRole\", new()\n {\n Key = key.Name,\n });\n\n var roleOidcKeyAllowedClientID = new Vault.Identity.OidcKeyAllowedClientID(\"roleOidcKeyAllowedClientID\", new()\n {\n KeyName = key.Name,\n AllowedClientId = roleOidcRole.ClientId,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/identity\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tkey, err := identity.NewOidcKey(ctx, \"key\", \u0026identity.OidcKeyArgs{\n\t\t\tAlgorithm: pulumi.String(\"RS256\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\troleOidcRole, err := identity.NewOidcRole(ctx, \"roleOidcRole\", \u0026identity.OidcRoleArgs{\n\t\t\tKey: key.Name,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = identity.NewOidcKeyAllowedClientID(ctx, \"roleOidcKeyAllowedClientID\", \u0026identity.OidcKeyAllowedClientIDArgs{\n\t\t\tKeyName: key.Name,\n\t\t\tAllowedClientId: roleOidcRole.ClientId,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.identity.OidcKey;\nimport com.pulumi.vault.identity.OidcKeyArgs;\nimport com.pulumi.vault.identity.OidcRole;\nimport com.pulumi.vault.identity.OidcRoleArgs;\nimport com.pulumi.vault.identity.OidcKeyAllowedClientID;\nimport com.pulumi.vault.identity.OidcKeyAllowedClientIDArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var key = new OidcKey(\"key\", OidcKeyArgs.builder() \n .algorithm(\"RS256\")\n .build());\n\n var roleOidcRole = new OidcRole(\"roleOidcRole\", OidcRoleArgs.builder() \n .key(key.name())\n .build());\n\n var roleOidcKeyAllowedClientID = new OidcKeyAllowedClientID(\"roleOidcKeyAllowedClientID\", OidcKeyAllowedClientIDArgs.builder() \n .keyName(key.name())\n .allowedClientId(roleOidcRole.clientId())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n key:\n type: vault:identity:OidcKey\n properties:\n algorithm: RS256\n roleOidcRole:\n type: vault:identity:OidcRole\n properties:\n key: ${key.name}\n roleOidcKeyAllowedClientID:\n type: vault:identity:OidcKeyAllowedClientID\n properties:\n keyName: ${key.name}\n allowedClientId: ${roleOidcRole.clientId}\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nThe key can be imported with the role name, for example\n\n```sh\n $ pulumi import vault:identity/oidcRole:OidcRole role role\n```\n\n ",
+ "description": "{{% examples %}}\n## Example Usage\n{{% example %}}\n\nYou need to create a role with a named key.\nAt creation time, the key can be created independently of the role. However, the key must\nexist before the role can be used to issue tokens. You must also configure the key with the\nrole's Client ID to allow the role to use the key.\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst config = new pulumi.Config();\nconst key = config.get(\"key\") || \"key\";\nconst role = new vault.identity.OidcRole(\"role\", {key: key});\nconst keyOidcKey = new vault.identity.OidcKey(\"keyOidcKey\", {\n algorithm: \"RS256\",\n allowedClientIds: [role.clientId],\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nconfig = pulumi.Config()\nkey = config.get(\"key\")\nif key is None:\n key = \"key\"\nrole = vault.identity.OidcRole(\"role\", key=key)\nkey_oidc_key = vault.identity.OidcKey(\"keyOidcKey\",\n algorithm=\"RS256\",\n allowed_client_ids=[role.client_id])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var key = config.Get(\"key\") ?? \"key\";\n var role = new Vault.Identity.OidcRole(\"role\", new()\n {\n Key = key,\n });\n\n var keyOidcKey = new Vault.Identity.OidcKey(\"keyOidcKey\", new()\n {\n Algorithm = \"RS256\",\n AllowedClientIds = new[]\n {\n role.ClientId,\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/identity\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tkey := \"key\"\n\t\tif param := cfg.Get(\"key\"); param != \"\" {\n\t\t\tkey = param\n\t\t}\n\t\trole, err := identity.NewOidcRole(ctx, \"role\", \u0026identity.OidcRoleArgs{\n\t\t\tKey: pulumi.String(key),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = identity.NewOidcKey(ctx, \"keyOidcKey\", \u0026identity.OidcKeyArgs{\n\t\t\tAlgorithm: pulumi.String(\"RS256\"),\n\t\t\tAllowedClientIds: pulumi.StringArray{\n\t\t\t\trole.ClientId,\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.identity.OidcRole;\nimport com.pulumi.vault.identity.OidcRoleArgs;\nimport com.pulumi.vault.identity.OidcKey;\nimport com.pulumi.vault.identity.OidcKeyArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var key = config.get(\"key\").orElse(\"key\");\n var role = new OidcRole(\"role\", OidcRoleArgs.builder() \n .key(key)\n .build());\n\n var keyOidcKey = new OidcKey(\"keyOidcKey\", OidcKeyArgs.builder() \n .algorithm(\"RS256\")\n .allowedClientIds(role.clientId())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n key:\n type: string\n default: key\nresources:\n keyOidcKey:\n type: vault:identity:OidcKey\n properties:\n algorithm: RS256\n allowedClientIds:\n - ${role.clientId}\n role:\n type: vault:identity:OidcRole\n properties:\n key: ${key}\n```\n\nIf you want to create the key first before creating the role, you can use a separate\nresource to configure the allowed Client ID on\nthe key.\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst key = new vault.identity.OidcKey(\"key\", {algorithm: \"RS256\"});\nconst roleOidcRole = new vault.identity.OidcRole(\"roleOidcRole\", {key: key.name});\nconst roleOidcKeyAllowedClientID = new vault.identity.OidcKeyAllowedClientID(\"roleOidcKeyAllowedClientID\", {\n keyName: key.name,\n allowedClientId: roleOidcRole.clientId,\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nkey = vault.identity.OidcKey(\"key\", algorithm=\"RS256\")\nrole_oidc_role = vault.identity.OidcRole(\"roleOidcRole\", key=key.name)\nrole_oidc_key_allowed_client_id = vault.identity.OidcKeyAllowedClientID(\"roleOidcKeyAllowedClientID\",\n key_name=key.name,\n allowed_client_id=role_oidc_role.client_id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var key = new Vault.Identity.OidcKey(\"key\", new()\n {\n Algorithm = \"RS256\",\n });\n\n var roleOidcRole = new Vault.Identity.OidcRole(\"roleOidcRole\", new()\n {\n Key = key.Name,\n });\n\n var roleOidcKeyAllowedClientID = new Vault.Identity.OidcKeyAllowedClientID(\"roleOidcKeyAllowedClientID\", new()\n {\n KeyName = key.Name,\n AllowedClientId = roleOidcRole.ClientId,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/identity\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tkey, err := identity.NewOidcKey(ctx, \"key\", \u0026identity.OidcKeyArgs{\n\t\t\tAlgorithm: pulumi.String(\"RS256\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\troleOidcRole, err := identity.NewOidcRole(ctx, \"roleOidcRole\", \u0026identity.OidcRoleArgs{\n\t\t\tKey: key.Name,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = identity.NewOidcKeyAllowedClientID(ctx, \"roleOidcKeyAllowedClientID\", \u0026identity.OidcKeyAllowedClientIDArgs{\n\t\t\tKeyName: key.Name,\n\t\t\tAllowedClientId: roleOidcRole.ClientId,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.identity.OidcKey;\nimport com.pulumi.vault.identity.OidcKeyArgs;\nimport com.pulumi.vault.identity.OidcRole;\nimport com.pulumi.vault.identity.OidcRoleArgs;\nimport com.pulumi.vault.identity.OidcKeyAllowedClientID;\nimport com.pulumi.vault.identity.OidcKeyAllowedClientIDArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var key = new OidcKey(\"key\", OidcKeyArgs.builder() \n .algorithm(\"RS256\")\n .build());\n\n var roleOidcRole = new OidcRole(\"roleOidcRole\", OidcRoleArgs.builder() \n .key(key.name())\n .build());\n\n var roleOidcKeyAllowedClientID = new OidcKeyAllowedClientID(\"roleOidcKeyAllowedClientID\", OidcKeyAllowedClientIDArgs.builder() \n .keyName(key.name())\n .allowedClientId(roleOidcRole.clientId())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n key:\n type: vault:identity:OidcKey\n properties:\n algorithm: RS256\n roleOidcRole:\n type: vault:identity:OidcRole\n properties:\n key: ${key.name}\n roleOidcKeyAllowedClientID:\n type: vault:identity:OidcKeyAllowedClientID\n properties:\n keyName: ${key.name}\n allowedClientId: ${roleOidcRole.clientId}\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nThe key can be imported with the role name, for example:\n\n```sh\n $ pulumi import vault:identity/oidcRole:OidcRole role role\n```\n ",
"properties": {
"clientId": {
"type": "string",
@@ -17414,7 +14543,7 @@
}
},
"vault:identity/oidcScope:OidcScope": {
- "description": "Manages OIDC Scopes in a Vault server. See the [Vault documentation](https://www.vaultproject.io/api-docs/secret/identity/oidc-provider#create-or-update-a-scope)\nfor more information.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst groups = new vault.identity.OidcScope(\"groups\", {\n description: \"Vault OIDC Groups Scope\",\n template: \"{\\\"groups\\\":{{identity.entity.groups.names}}}\",\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\ngroups = vault.identity.OidcScope(\"groups\",\n description=\"Vault OIDC Groups Scope\",\n template=\"{\\\"groups\\\":{{identity.entity.groups.names}}}\")\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var groups = new Vault.Identity.OidcScope(\"groups\", new()\n {\n Description = \"Vault OIDC Groups Scope\",\n Template = \"{\\\"groups\\\":{{identity.entity.groups.names}}}\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/identity\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := identity.NewOidcScope(ctx, \"groups\", \u0026identity.OidcScopeArgs{\n\t\t\tDescription: pulumi.String(\"Vault OIDC Groups Scope\"),\n\t\t\tTemplate: pulumi.String(\"{\\\"groups\\\":{{identity.entity.groups.names}}}\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.identity.OidcScope;\nimport com.pulumi.vault.identity.OidcScopeArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var groups = new OidcScope(\"groups\", OidcScopeArgs.builder() \n .description(\"Vault OIDC Groups Scope\")\n .template(\"{\\\"groups\\\":{{identity.entity.groups.names}}}\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n groups:\n type: vault:identity:OidcScope\n properties:\n description: Vault OIDC Groups Scope\n template: '{\"groups\":{{identity.entity.groups.names}}}'\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nOIDC Scopes can be imported using the `name`, e.g.\n\n```sh\n $ pulumi import vault:identity/oidcScope:OidcScope groups groups\n```\n\n ",
+ "description": "Manages OIDC Scopes in a Vault server. See the [Vault documentation](https://www.vaultproject.io/api-docs/secret/identity/oidc-provider#create-or-update-a-scope)\nfor more information.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst groups = new vault.identity.OidcScope(\"groups\", {\n description: \"Vault OIDC Groups Scope\",\n template: \"{\\\"groups\\\":{{identity.entity.groups.names}}}\",\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\ngroups = vault.identity.OidcScope(\"groups\",\n description=\"Vault OIDC Groups Scope\",\n template=\"{\\\"groups\\\":{{identity.entity.groups.names}}}\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var groups = new Vault.Identity.OidcScope(\"groups\", new()\n {\n Description = \"Vault OIDC Groups Scope\",\n Template = \"{\\\"groups\\\":{{identity.entity.groups.names}}}\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/identity\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := identity.NewOidcScope(ctx, \"groups\", \u0026identity.OidcScopeArgs{\n\t\t\tDescription: pulumi.String(\"Vault OIDC Groups Scope\"),\n\t\t\tTemplate: pulumi.String(\"{\\\"groups\\\":{{identity.entity.groups.names}}}\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.identity.OidcScope;\nimport com.pulumi.vault.identity.OidcScopeArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var groups = new OidcScope(\"groups\", OidcScopeArgs.builder() \n .description(\"Vault OIDC Groups Scope\")\n .template(\"{\\\"groups\\\":{{identity.entity.groups.names}}}\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n groups:\n type: vault:identity:OidcScope\n properties:\n description: Vault OIDC Groups Scope\n template: '{\"groups\":{{identity.entity.groups.names}}}'\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nOIDC Scopes can be imported using the `name`, e.g.\n\n```sh\n $ pulumi import vault:identity/oidcScope:OidcScope groups groups\n```\n ",
"properties": {
"description": {
"type": "string",
@@ -17482,7 +14611,7 @@
}
},
"vault:index/audit:Audit": {
- "description": "{{% examples %}}\n## Example Usage\n{{% example %}}\n### File Audit Device)\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst test = new vault.Audit(\"test\", {\n options: {\n file_path: \"C:/temp/audit.txt\",\n },\n type: \"file\",\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\ntest = vault.Audit(\"test\",\n options={\n \"file_path\": \"C:/temp/audit.txt\",\n },\n type=\"file\")\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var test = new Vault.Audit(\"test\", new()\n {\n Options = \n {\n { \"file_path\", \"C:/temp/audit.txt\" },\n },\n Type = \"file\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := vault.NewAudit(ctx, \"test\", \u0026vault.AuditArgs{\n\t\t\tOptions: pulumi.StringMap{\n\t\t\t\t\"file_path\": pulumi.String(\"C:/temp/audit.txt\"),\n\t\t\t},\n\t\t\tType: pulumi.String(\"file\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.Audit;\nimport com.pulumi.vault.AuditArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var test = new Audit(\"test\", AuditArgs.builder() \n .options(Map.of(\"file_path\", \"C:/temp/audit.txt\"))\n .type(\"file\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n test:\n type: vault:Audit\n properties:\n options:\n file_path: C:/temp/audit.txt\n type: file\n```\n\n{{% /example %}}\n{{% example %}}\n### Socket Audit Device)\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst test = new vault.Audit(\"test\", {\n local: false,\n options: {\n address: \"127.0.0.1:8000\",\n description: \"application x socket\",\n socket_type: \"tcp\",\n },\n path: \"app_socket\",\n type: \"socket\",\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\ntest = vault.Audit(\"test\",\n local=False,\n options={\n \"address\": \"127.0.0.1:8000\",\n \"description\": \"application x socket\",\n \"socket_type\": \"tcp\",\n },\n path=\"app_socket\",\n type=\"socket\")\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var test = new Vault.Audit(\"test\", new()\n {\n Local = false,\n Options = \n {\n { \"address\", \"127.0.0.1:8000\" },\n { \"description\", \"application x socket\" },\n { \"socket_type\", \"tcp\" },\n },\n Path = \"app_socket\",\n Type = \"socket\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := vault.NewAudit(ctx, \"test\", \u0026vault.AuditArgs{\n\t\t\tLocal: pulumi.Bool(false),\n\t\t\tOptions: pulumi.StringMap{\n\t\t\t\t\"address\": pulumi.String(\"127.0.0.1:8000\"),\n\t\t\t\t\"description\": pulumi.String(\"application x socket\"),\n\t\t\t\t\"socket_type\": pulumi.String(\"tcp\"),\n\t\t\t},\n\t\t\tPath: pulumi.String(\"app_socket\"),\n\t\t\tType: pulumi.String(\"socket\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.Audit;\nimport com.pulumi.vault.AuditArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var test = new Audit(\"test\", AuditArgs.builder() \n .local(false)\n .options(Map.ofEntries(\n Map.entry(\"address\", \"127.0.0.1:8000\"),\n Map.entry(\"description\", \"application x socket\"),\n Map.entry(\"socket_type\", \"tcp\")\n ))\n .path(\"app_socket\")\n .type(\"socket\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n test:\n type: vault:Audit\n properties:\n local: false\n options:\n address: 127.0.0.1:8000\n description: application x socket\n socket_type: tcp\n path: app_socket\n type: socket\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nAudit devices can be imported using the `path`, e.g.\n\n```sh\n $ pulumi import vault:index/audit:Audit test syslog\n```\n\n ",
+ "description": "{{% examples %}}\n## Example Usage\n{{% example %}}\n### File Audit Device)\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst test = new vault.Audit(\"test\", {\n options: {\n file_path: \"C:/temp/audit.txt\",\n },\n type: \"file\",\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\ntest = vault.Audit(\"test\",\n options={\n \"file_path\": \"C:/temp/audit.txt\",\n },\n type=\"file\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var test = new Vault.Audit(\"test\", new()\n {\n Options = \n {\n { \"file_path\", \"C:/temp/audit.txt\" },\n },\n Type = \"file\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := vault.NewAudit(ctx, \"test\", \u0026vault.AuditArgs{\n\t\t\tOptions: pulumi.StringMap{\n\t\t\t\t\"file_path\": pulumi.String(\"C:/temp/audit.txt\"),\n\t\t\t},\n\t\t\tType: pulumi.String(\"file\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.Audit;\nimport com.pulumi.vault.AuditArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var test = new Audit(\"test\", AuditArgs.builder() \n .options(Map.of(\"file_path\", \"C:/temp/audit.txt\"))\n .type(\"file\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n test:\n type: vault:Audit\n properties:\n options:\n file_path: C:/temp/audit.txt\n type: file\n```\n\n{{% /example %}}\n{{% example %}}\n### Socket Audit Device)\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst test = new vault.Audit(\"test\", {\n local: false,\n options: {\n address: \"127.0.0.1:8000\",\n description: \"application x socket\",\n socket_type: \"tcp\",\n },\n path: \"app_socket\",\n type: \"socket\",\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\ntest = vault.Audit(\"test\",\n local=False,\n options={\n \"address\": \"127.0.0.1:8000\",\n \"description\": \"application x socket\",\n \"socket_type\": \"tcp\",\n },\n path=\"app_socket\",\n type=\"socket\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var test = new Vault.Audit(\"test\", new()\n {\n Local = false,\n Options = \n {\n { \"address\", \"127.0.0.1:8000\" },\n { \"description\", \"application x socket\" },\n { \"socket_type\", \"tcp\" },\n },\n Path = \"app_socket\",\n Type = \"socket\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := vault.NewAudit(ctx, \"test\", \u0026vault.AuditArgs{\n\t\t\tLocal: pulumi.Bool(false),\n\t\t\tOptions: pulumi.StringMap{\n\t\t\t\t\"address\": pulumi.String(\"127.0.0.1:8000\"),\n\t\t\t\t\"description\": pulumi.String(\"application x socket\"),\n\t\t\t\t\"socket_type\": pulumi.String(\"tcp\"),\n\t\t\t},\n\t\t\tPath: pulumi.String(\"app_socket\"),\n\t\t\tType: pulumi.String(\"socket\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.Audit;\nimport com.pulumi.vault.AuditArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var test = new Audit(\"test\", AuditArgs.builder() \n .local(false)\n .options(Map.ofEntries(\n Map.entry(\"address\", \"127.0.0.1:8000\"),\n Map.entry(\"description\", \"application x socket\"),\n Map.entry(\"socket_type\", \"tcp\")\n ))\n .path(\"app_socket\")\n .type(\"socket\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n test:\n type: vault:Audit\n properties:\n local: false\n options:\n address: 127.0.0.1:8000\n description: application x socket\n socket_type: tcp\n path: app_socket\n type: socket\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nAudit devices can be imported using the `path`, e.g.\n\n```sh\n $ pulumi import vault:index/audit:Audit test syslog\n```\n ",
"properties": {
"description": {
"type": "string",
@@ -17501,7 +14630,7 @@
"additionalProperties": {
"type": "string"
},
- "description": "Configuration options to pass to the audit device itself.\n"
+ "description": "Configuration options to pass to the audit device itself.\n\nFor a reference of the device types and their options, consult the [Vault documentation.](https://www.vaultproject.io/docs/audit/index.html)\n"
},
"path": {
"type": "string",
@@ -17538,7 +14667,7 @@
"additionalProperties": {
"type": "string"
},
- "description": "Configuration options to pass to the audit device itself.\n",
+ "description": "Configuration options to pass to the audit device itself.\n\nFor a reference of the device types and their options, consult the [Vault documentation.](https://www.vaultproject.io/docs/audit/index.html)\n",
"willReplaceOnChanges": true
},
"path": {
@@ -17579,7 +14708,7 @@
"additionalProperties": {
"type": "string"
},
- "description": "Configuration options to pass to the audit device itself.\n",
+ "description": "Configuration options to pass to the audit device itself.\n\nFor a reference of the device types and their options, consult the [Vault documentation.](https://www.vaultproject.io/docs/audit/index.html)\n",
"willReplaceOnChanges": true
},
"path": {
@@ -17597,7 +14726,7 @@
}
},
"vault:index/auditRequestHeader:AuditRequestHeader": {
- "description": "Manages additional request headers that appear in audited requests.\n\n\u003e **Note**\nBecause of the way the [sys/config/auditing/request-headers API](https://www.vaultproject.io/api-docs/system/config-auditing)\nis implemented in Vault, this resource will manage existing audited headers with\nmatching names without requiring import.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst xForwardedFor = new vault.AuditRequestHeader(\"x_forwarded_for\", {\n hmac: false,\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nx_forwarded_for = vault.AuditRequestHeader(\"xForwardedFor\", hmac=False)\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var xForwardedFor = new Vault.AuditRequestHeader(\"xForwardedFor\", new()\n {\n Hmac = false,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := vault.NewAuditRequestHeader(ctx, \"xForwardedFor\", \u0026vault.AuditRequestHeaderArgs{\n\t\t\tHmac: pulumi.Bool(false),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.AuditRequestHeader;\nimport com.pulumi.vault.AuditRequestHeaderArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var xForwardedFor = new AuditRequestHeader(\"xForwardedFor\", AuditRequestHeaderArgs.builder() \n .hmac(false)\n .build());\n\n }\n}\n```\n```yaml\nresources:\n xForwardedFor:\n type: vault:AuditRequestHeader\n properties:\n hmac: false\n```\n{{% /example %}}\n{{% /examples %}}",
+ "description": "Manages additional request headers that appear in audited requests.\n\n\u003e **Note**\nBecause of the way the [sys/config/auditing/request-headers API](https://www.vaultproject.io/api-docs/system/config-auditing)\nis implemented in Vault, this resource will manage existing audited headers with\nmatching names without requiring import.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst xForwardedFor = new vault.AuditRequestHeader(\"xForwardedFor\", {hmac: false});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nx_forwarded_for = vault.AuditRequestHeader(\"xForwardedFor\", hmac=False)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var xForwardedFor = new Vault.AuditRequestHeader(\"xForwardedFor\", new()\n {\n Hmac = false,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := vault.NewAuditRequestHeader(ctx, \"xForwardedFor\", \u0026vault.AuditRequestHeaderArgs{\n\t\t\tHmac: pulumi.Bool(false),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.AuditRequestHeader;\nimport com.pulumi.vault.AuditRequestHeaderArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var xForwardedFor = new AuditRequestHeader(\"xForwardedFor\", AuditRequestHeaderArgs.builder() \n .hmac(false)\n .build());\n\n }\n}\n```\n```yaml\nresources:\n xForwardedFor:\n type: vault:AuditRequestHeader\n properties:\n hmac: false\n```\n{{% /example %}}\n{{% /examples %}}",
"properties": {
"hmac": {
"type": "boolean",
@@ -17653,7 +14782,7 @@
}
},
"vault:index/authBackend:AuthBackend": {
- "description": "\n\n\n## Import\n\nAuth methods can be imported using the `path`, e.g.\n\n```sh\n $ pulumi import vault:index/authBackend:AuthBackend example github\n```\n\n ",
+ "description": "\n\n\n## Import\n\nAuth methods can be imported using the `path`, e.g.\n\n```sh\n $ pulumi import vault:index/authBackend:AuthBackend example github\n```\n ",
"properties": {
"accessor": {
"type": "string",
@@ -17681,7 +14810,7 @@
},
"tune": {
"$ref": "#/types/vault:index/AuthBackendTune:AuthBackendTune",
- "description": "Extra configuration block. Structure is documented below.\n"
+ "description": "Extra configuration block. Structure is documented below.\n\nThe `tune` block is used to tune the auth backend:\n"
},
"type": {
"type": "string",
@@ -17719,7 +14848,7 @@
},
"tune": {
"$ref": "#/types/vault:index/AuthBackendTune:AuthBackendTune",
- "description": "Extra configuration block. Structure is documented below.\n"
+ "description": "Extra configuration block. Structure is documented below.\n\nThe `tune` block is used to tune the auth backend:\n"
},
"type": {
"type": "string",
@@ -17761,7 +14890,7 @@
},
"tune": {
"$ref": "#/types/vault:index/AuthBackendTune:AuthBackendTune",
- "description": "Extra configuration block. Structure is documented below.\n"
+ "description": "Extra configuration block. Structure is documented below.\n\nThe `tune` block is used to tune the auth backend:\n"
},
"type": {
"type": "string",
@@ -17773,7 +14902,7 @@
}
},
"vault:index/certAuthBackendRole:CertAuthBackendRole": {
- "description": "Provides a resource to create a role in an [Cert auth backend within Vault](https://www.vaultproject.io/docs/auth/cert.html).\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as fs from \"fs\";\nimport * as vault from \"@pulumi/vault\";\n\nconst certAuthBackend = new vault.AuthBackend(\"certAuthBackend\", {\n path: \"cert\",\n type: \"cert\",\n});\nconst certCertAuthBackendRole = new vault.CertAuthBackendRole(\"certCertAuthBackendRole\", {\n certificate: fs.readFileSync(\"/path/to/certs/ca-cert.pem\"),\n backend: certAuthBackend.path,\n allowedNames: [\n \"foo.example.org\",\n \"baz.example.org\",\n ],\n tokenTtl: 300,\n tokenMaxTtl: 600,\n tokenPolicies: [\"foo\"],\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\ncert_auth_backend = vault.AuthBackend(\"certAuthBackend\",\n path=\"cert\",\n type=\"cert\")\ncert_cert_auth_backend_role = vault.CertAuthBackendRole(\"certCertAuthBackendRole\",\n certificate=(lambda path: open(path).read())(\"/path/to/certs/ca-cert.pem\"),\n backend=cert_auth_backend.path,\n allowed_names=[\n \"foo.example.org\",\n \"baz.example.org\",\n ],\n token_ttl=300,\n token_max_ttl=600,\n token_policies=[\"foo\"])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.IO;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var certAuthBackend = new Vault.AuthBackend(\"certAuthBackend\", new()\n {\n Path = \"cert\",\n Type = \"cert\",\n });\n\n var certCertAuthBackendRole = new Vault.CertAuthBackendRole(\"certCertAuthBackendRole\", new()\n {\n Certificate = File.ReadAllText(\"/path/to/certs/ca-cert.pem\"),\n Backend = certAuthBackend.Path,\n AllowedNames = new[]\n {\n \"foo.example.org\",\n \"baz.example.org\",\n },\n TokenTtl = 300,\n TokenMaxTtl = 600,\n TokenPolicies = new[]\n {\n \"foo\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"io/ioutil\"\n\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc readFileOrPanic(path string) pulumi.StringPtrInput {\n\tdata, err := ioutil.ReadFile(path)\n\tif err != nil {\n\t\tpanic(err.Error())\n\t}\n\treturn pulumi.String(string(data))\n}\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcertAuthBackend, err := vault.NewAuthBackend(ctx, \"certAuthBackend\", \u0026vault.AuthBackendArgs{\n\t\t\tPath: pulumi.String(\"cert\"),\n\t\t\tType: pulumi.String(\"cert\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = vault.NewCertAuthBackendRole(ctx, \"certCertAuthBackendRole\", \u0026vault.CertAuthBackendRoleArgs{\n\t\t\tCertificate: readFileOrPanic(\"/path/to/certs/ca-cert.pem\"),\n\t\t\tBackend: certAuthBackend.Path,\n\t\t\tAllowedNames: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"foo.example.org\"),\n\t\t\t\tpulumi.String(\"baz.example.org\"),\n\t\t\t},\n\t\t\tTokenTtl: pulumi.Int(300),\n\t\t\tTokenMaxTtl: pulumi.Int(600),\n\t\t\tTokenPolicies: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"foo\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.AuthBackend;\nimport com.pulumi.vault.AuthBackendArgs;\nimport com.pulumi.vault.CertAuthBackendRole;\nimport com.pulumi.vault.CertAuthBackendRoleArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var certAuthBackend = new AuthBackend(\"certAuthBackend\", AuthBackendArgs.builder() \n .path(\"cert\")\n .type(\"cert\")\n .build());\n\n var certCertAuthBackendRole = new CertAuthBackendRole(\"certCertAuthBackendRole\", CertAuthBackendRoleArgs.builder() \n .certificate(Files.readString(Paths.get(\"/path/to/certs/ca-cert.pem\")))\n .backend(certAuthBackend.path())\n .allowedNames( \n \"foo.example.org\",\n \"baz.example.org\")\n .tokenTtl(300)\n .tokenMaxTtl(600)\n .tokenPolicies(\"foo\")\n .build());\n\n }\n}\n```\n{{% /example %}}\n{{% /examples %}}",
+ "description": "Provides a resource to create a role in an [Cert auth backend within Vault](https://www.vaultproject.io/docs/auth/cert.html).\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as fs from \"fs\";\nimport * as vault from \"@pulumi/vault\";\n\nconst certAuthBackend = new vault.AuthBackend(\"certAuthBackend\", {\n path: \"cert\",\n type: \"cert\",\n});\nconst certCertAuthBackendRole = new vault.CertAuthBackendRole(\"certCertAuthBackendRole\", {\n certificate: fs.readFileSync(\"/path/to/certs/ca-cert.pem\"),\n backend: certAuthBackend.path,\n allowedNames: [\n \"foo.example.org\",\n \"baz.example.org\",\n ],\n tokenTtl: 300,\n tokenMaxTtl: 600,\n tokenPolicies: [\"foo\"],\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\ncert_auth_backend = vault.AuthBackend(\"certAuthBackend\",\n path=\"cert\",\n type=\"cert\")\ncert_cert_auth_backend_role = vault.CertAuthBackendRole(\"certCertAuthBackendRole\",\n certificate=(lambda path: open(path).read())(\"/path/to/certs/ca-cert.pem\"),\n backend=cert_auth_backend.path,\n allowed_names=[\n \"foo.example.org\",\n \"baz.example.org\",\n ],\n token_ttl=300,\n token_max_ttl=600,\n token_policies=[\"foo\"])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.IO;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var certAuthBackend = new Vault.AuthBackend(\"certAuthBackend\", new()\n {\n Path = \"cert\",\n Type = \"cert\",\n });\n\n var certCertAuthBackendRole = new Vault.CertAuthBackendRole(\"certCertAuthBackendRole\", new()\n {\n Certificate = File.ReadAllText(\"/path/to/certs/ca-cert.pem\"),\n Backend = certAuthBackend.Path,\n AllowedNames = new[]\n {\n \"foo.example.org\",\n \"baz.example.org\",\n },\n TokenTtl = 300,\n TokenMaxTtl = 600,\n TokenPolicies = new[]\n {\n \"foo\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"os\"\n\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc readFileOrPanic(path string) pulumi.StringPtrInput {\n\tdata, err := os.ReadFile(path)\n\tif err != nil {\n\t\tpanic(err.Error())\n\t}\n\treturn pulumi.String(string(data))\n}\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcertAuthBackend, err := vault.NewAuthBackend(ctx, \"certAuthBackend\", \u0026vault.AuthBackendArgs{\n\t\t\tPath: pulumi.String(\"cert\"),\n\t\t\tType: pulumi.String(\"cert\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = vault.NewCertAuthBackendRole(ctx, \"certCertAuthBackendRole\", \u0026vault.CertAuthBackendRoleArgs{\n\t\t\tCertificate: readFileOrPanic(\"/path/to/certs/ca-cert.pem\"),\n\t\t\tBackend: certAuthBackend.Path,\n\t\t\tAllowedNames: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"foo.example.org\"),\n\t\t\t\tpulumi.String(\"baz.example.org\"),\n\t\t\t},\n\t\t\tTokenTtl: pulumi.Int(300),\n\t\t\tTokenMaxTtl: pulumi.Int(600),\n\t\t\tTokenPolicies: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"foo\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.AuthBackend;\nimport com.pulumi.vault.AuthBackendArgs;\nimport com.pulumi.vault.CertAuthBackendRole;\nimport com.pulumi.vault.CertAuthBackendRoleArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var certAuthBackend = new AuthBackend(\"certAuthBackend\", AuthBackendArgs.builder() \n .path(\"cert\")\n .type(\"cert\")\n .build());\n\n var certCertAuthBackendRole = new CertAuthBackendRole(\"certCertAuthBackendRole\", CertAuthBackendRoleArgs.builder() \n .certificate(Files.readString(Paths.get(\"/path/to/certs/ca-cert.pem\")))\n .backend(certAuthBackend.path())\n .allowedNames( \n \"foo.example.org\",\n \"baz.example.org\")\n .tokenTtl(300)\n .tokenMaxTtl(600)\n .tokenPolicies(\"foo\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n certAuthBackend:\n type: vault:AuthBackend\n properties:\n path: cert\n type: cert\n certCertAuthBackendRole:\n type: vault:CertAuthBackendRole\n properties:\n certificate:\n fn::readFile: /path/to/certs/ca-cert.pem\n backend: ${certAuthBackend.path}\n allowedNames:\n - foo.example.org\n - baz.example.org\n tokenTtl: 300\n tokenMaxTtl: 600\n tokenPolicies:\n - foo\n```\n{{% /example %}}\n{{% /examples %}}",
"properties": {
"allowedCommonNames": {
"type": "array",
@@ -17844,12 +14973,35 @@
"type": "string",
"description": "The namespace to provision the resource in.\nThe value should not contain leading or trailing forward slashes.\nThe `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault#namespace).\n*Available only for Vault Enterprise*.\n"
},
+ "ocspCaCertificates": {
+ "type": "string",
+ "description": "Any additional CA certificates\nneeded to verify OCSP responses. Provided as base64 encoded PEM data.\nRequires Vault version 1.13+.\n"
+ },
+ "ocspEnabled": {
+ "type": "boolean",
+ "description": "If enabled, validate certificates'\nrevocation status using OCSP. Requires Vault version 1.13+.\n"
+ },
+ "ocspFailOpen": {
+ "type": "boolean",
+ "description": "If true and an OCSP response cannot\nbe fetched or is of an unknown status, the login will proceed as if the\ncertificate has not been revoked.\nRequires Vault version 1.13+.\n"
+ },
+ "ocspQueryAllServers": {
+ "type": "boolean",
+ "description": "If set to true, rather than\naccepting the first successful OCSP response, query all servers and consider\nthe certificate valid only if all servers agree.\nRequires Vault version 1.13+.\n"
+ },
+ "ocspServersOverrides": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": ": A comma-separated list of OCSP\nserver addresses. If unset, the OCSP server is determined from the\nAuthorityInformationAccess extension on the certificate being inspected.\nRequires Vault version 1.13+.\n"
+ },
"requiredExtensions": {
"type": "array",
"items": {
"type": "string"
},
- "description": "TLS extensions required on client certificates\n"
+ "description": "TLS extensions required on\nclient certificates\n"
},
"tokenBoundCidrs": {
"type": "array",
@@ -17891,7 +15043,7 @@
},
"tokenType": {
"type": "string",
- "description": "The type of token that should be generated. Can be `service`,\n`batch`, or `default` to use the mount's tuned default (which unless changed will be\n`service` tokens). For token store roles, there are two additional possibilities:\n`default-service` and `default-batch` which specify the type to return unless the client\nrequests a different type at generation time.\n"
+ "description": "The type of token that should be generated. Can be `service`,\n`batch`, or `default` to use the mount's tuned default (which unless changed will be\n`service` tokens). For token store roles, there are two additional possibilities:\n`default-service` and `default-batch` which specify the type to return unless the client\nrequests a different type at generation time.\n\nFor more details on the usage of each argument consult the [Vault Cert API documentation](https://www.vaultproject.io/api-docs/auth/cert).\n"
}
},
"required": [
@@ -17904,6 +15056,9 @@
"certificate",
"displayName",
"name",
+ "ocspEnabled",
+ "ocspFailOpen",
+ "ocspQueryAllServers",
"requiredExtensions"
],
"inputProperties": {
@@ -17980,12 +15135,35 @@
"description": "The namespace to provision the resource in.\nThe value should not contain leading or trailing forward slashes.\nThe `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault#namespace).\n*Available only for Vault Enterprise*.\n",
"willReplaceOnChanges": true
},
+ "ocspCaCertificates": {
+ "type": "string",
+ "description": "Any additional CA certificates\nneeded to verify OCSP responses. Provided as base64 encoded PEM data.\nRequires Vault version 1.13+.\n"
+ },
+ "ocspEnabled": {
+ "type": "boolean",
+ "description": "If enabled, validate certificates'\nrevocation status using OCSP. Requires Vault version 1.13+.\n"
+ },
+ "ocspFailOpen": {
+ "type": "boolean",
+ "description": "If true and an OCSP response cannot\nbe fetched or is of an unknown status, the login will proceed as if the\ncertificate has not been revoked.\nRequires Vault version 1.13+.\n"
+ },
+ "ocspQueryAllServers": {
+ "type": "boolean",
+ "description": "If set to true, rather than\naccepting the first successful OCSP response, query all servers and consider\nthe certificate valid only if all servers agree.\nRequires Vault version 1.13+.\n"
+ },
+ "ocspServersOverrides": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": ": A comma-separated list of OCSP\nserver addresses. If unset, the OCSP server is determined from the\nAuthorityInformationAccess extension on the certificate being inspected.\nRequires Vault version 1.13+.\n"
+ },
"requiredExtensions": {
"type": "array",
"items": {
"type": "string"
},
- "description": "TLS extensions required on client certificates\n"
+ "description": "TLS extensions required on\nclient certificates\n"
},
"tokenBoundCidrs": {
"type": "array",
@@ -18027,7 +15205,7 @@
},
"tokenType": {
"type": "string",
- "description": "The type of token that should be generated. Can be `service`,\n`batch`, or `default` to use the mount's tuned default (which unless changed will be\n`service` tokens). For token store roles, there are two additional possibilities:\n`default-service` and `default-batch` which specify the type to return unless the client\nrequests a different type at generation time.\n"
+ "description": "The type of token that should be generated. Can be `service`,\n`batch`, or `default` to use the mount's tuned default (which unless changed will be\n`service` tokens). For token store roles, there are two additional possibilities:\n`default-service` and `default-batch` which specify the type to return unless the client\nrequests a different type at generation time.\n\nFor more details on the usage of each argument consult the [Vault Cert API documentation](https://www.vaultproject.io/api-docs/auth/cert).\n"
}
},
"requiredInputs": [
@@ -18109,12 +15287,35 @@
"description": "The namespace to provision the resource in.\nThe value should not contain leading or trailing forward slashes.\nThe `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault#namespace).\n*Available only for Vault Enterprise*.\n",
"willReplaceOnChanges": true
},
+ "ocspCaCertificates": {
+ "type": "string",
+ "description": "Any additional CA certificates\nneeded to verify OCSP responses. Provided as base64 encoded PEM data.\nRequires Vault version 1.13+.\n"
+ },
+ "ocspEnabled": {
+ "type": "boolean",
+ "description": "If enabled, validate certificates'\nrevocation status using OCSP. Requires Vault version 1.13+.\n"
+ },
+ "ocspFailOpen": {
+ "type": "boolean",
+ "description": "If true and an OCSP response cannot\nbe fetched or is of an unknown status, the login will proceed as if the\ncertificate has not been revoked.\nRequires Vault version 1.13+.\n"
+ },
+ "ocspQueryAllServers": {
+ "type": "boolean",
+ "description": "If set to true, rather than\naccepting the first successful OCSP response, query all servers and consider\nthe certificate valid only if all servers agree.\nRequires Vault version 1.13+.\n"
+ },
+ "ocspServersOverrides": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": ": A comma-separated list of OCSP\nserver addresses. If unset, the OCSP server is determined from the\nAuthorityInformationAccess extension on the certificate being inspected.\nRequires Vault version 1.13+.\n"
+ },
"requiredExtensions": {
"type": "array",
"items": {
"type": "string"
},
- "description": "TLS extensions required on client certificates\n"
+ "description": "TLS extensions required on\nclient certificates\n"
},
"tokenBoundCidrs": {
"type": "array",
@@ -18156,14 +15357,14 @@
},
"tokenType": {
"type": "string",
- "description": "The type of token that should be generated. Can be `service`,\n`batch`, or `default` to use the mount's tuned default (which unless changed will be\n`service` tokens). For token store roles, there are two additional possibilities:\n`default-service` and `default-batch` which specify the type to return unless the client\nrequests a different type at generation time.\n"
+ "description": "The type of token that should be generated. Can be `service`,\n`batch`, or `default` to use the mount's tuned default (which unless changed will be\n`service` tokens). For token store roles, there are two additional possibilities:\n`default-service` and `default-batch` which specify the type to return unless the client\nrequests a different type at generation time.\n\nFor more details on the usage of each argument consult the [Vault Cert API documentation](https://www.vaultproject.io/api-docs/auth/cert).\n"
}
},
"type": "object"
}
},
"vault:index/egpPolicy:EgpPolicy": {
- "description": "Provides a resource to manage Endpoint Governing Policy (EGP) via [Sentinel](https://www.vaultproject.io/docs/enterprise/sentinel/index.html).\n\n**Note** this feature is available only with Vault Enterprise.\n\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst allow_all = new vault.EgpPolicy(\"allow-all\", {\n enforcementLevel: \"soft-mandatory\",\n paths: [\"*\"],\n policy: `main = rule {\n true\n}\n`,\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nallow_all = vault.EgpPolicy(\"allow-all\",\n enforcement_level=\"soft-mandatory\",\n paths=[\"*\"],\n policy=\"\"\"main = rule {\n true\n}\n\n\"\"\")\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var allow_all = new Vault.EgpPolicy(\"allow-all\", new()\n {\n EnforcementLevel = \"soft-mandatory\",\n Paths = new[]\n {\n \"*\",\n },\n Policy = @\"main = rule {\n true\n}\n\n\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := vault.NewEgpPolicy(ctx, \"allow-all\", \u0026vault.EgpPolicyArgs{\n\t\t\tEnforcementLevel: pulumi.String(\"soft-mandatory\"),\n\t\t\tPaths: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"*\"),\n\t\t\t},\n\t\t\tPolicy: pulumi.String(\"main = rule {\\n true\\n}\\n\\n\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.EgpPolicy;\nimport com.pulumi.vault.EgpPolicyArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var allow_all = new EgpPolicy(\"allow-all\", EgpPolicyArgs.builder() \n .enforcementLevel(\"soft-mandatory\")\n .paths(\"*\")\n .policy(\"\"\"\nmain = rule {\n true\n}\n\n \"\"\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n allow-all:\n type: vault:EgpPolicy\n properties:\n enforcementLevel: soft-mandatory\n paths:\n - '*'\n policy: |+\n main = rule {\n true\n }\n```\n{{% /example %}}\n{{% /examples %}}",
+ "description": "Provides a resource to manage Endpoint Governing Policy (EGP) via [Sentinel](https://www.vaultproject.io/docs/enterprise/sentinel/index.html).\n\n**Note** this feature is available only with Vault Enterprise.\n\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst allow_all = new vault.EgpPolicy(\"allow-all\", {\n enforcementLevel: \"soft-mandatory\",\n paths: [\"*\"],\n policy: `main = rule {\n true\n}\n\n`,\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nallow_all = vault.EgpPolicy(\"allow-all\",\n enforcement_level=\"soft-mandatory\",\n paths=[\"*\"],\n policy=\"\"\"main = rule {\n true\n}\n\n\"\"\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var allow_all = new Vault.EgpPolicy(\"allow-all\", new()\n {\n EnforcementLevel = \"soft-mandatory\",\n Paths = new[]\n {\n \"*\",\n },\n Policy = @\"main = rule {\n true\n}\n\n\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := vault.NewEgpPolicy(ctx, \"allow-all\", \u0026vault.EgpPolicyArgs{\n\t\t\tEnforcementLevel: pulumi.String(\"soft-mandatory\"),\n\t\t\tPaths: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"*\"),\n\t\t\t},\n\t\t\tPolicy: pulumi.String(\"main = rule {\\n true\\n}\\n\\n\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.EgpPolicy;\nimport com.pulumi.vault.EgpPolicyArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var allow_all = new EgpPolicy(\"allow-all\", EgpPolicyArgs.builder() \n .enforcementLevel(\"soft-mandatory\")\n .paths(\"*\")\n .policy(\"\"\"\nmain = rule {\n true\n}\n\n \"\"\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n allow-all:\n type: vault:EgpPolicy\n properties:\n enforcementLevel: soft-mandatory\n paths:\n - '*'\n policy: |+\n main = rule {\n true\n }\n```\n{{% /example %}}\n{{% /examples %}}",
"properties": {
"enforcementLevel": {
"type": "string",
@@ -18260,7 +15461,7 @@
}
},
"vault:index/mfaDuo:MfaDuo": {
- "description": "Provides a resource to manage [Duo MFA](https://www.vaultproject.io/docs/enterprise/mfa/mfa-duo.html).\n\n**Note** this feature is available only with Vault Enterprise.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst userpass = new vault.AuthBackend(\"userpass\", {\n type: \"userpass\",\n path: \"userpass\",\n});\nconst myDuo = new vault.MfaDuo(\"myDuo\", {\n mountAccessor: userpass.accessor,\n secretKey: \"8C7THtrIigh2rPZQMbguugt8IUftWhMRCOBzbuyz\",\n integrationKey: \"BIACEUEAXI20BNWTEYXT\",\n apiHostname: \"api-2b5c39f5.duosecurity.com\",\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nuserpass = vault.AuthBackend(\"userpass\",\n type=\"userpass\",\n path=\"userpass\")\nmy_duo = vault.MfaDuo(\"myDuo\",\n mount_accessor=userpass.accessor,\n secret_key=\"8C7THtrIigh2rPZQMbguugt8IUftWhMRCOBzbuyz\",\n integration_key=\"BIACEUEAXI20BNWTEYXT\",\n api_hostname=\"api-2b5c39f5.duosecurity.com\")\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var userpass = new Vault.AuthBackend(\"userpass\", new()\n {\n Type = \"userpass\",\n Path = \"userpass\",\n });\n\n var myDuo = new Vault.MfaDuo(\"myDuo\", new()\n {\n MountAccessor = userpass.Accessor,\n SecretKey = \"8C7THtrIigh2rPZQMbguugt8IUftWhMRCOBzbuyz\",\n IntegrationKey = \"BIACEUEAXI20BNWTEYXT\",\n ApiHostname = \"api-2b5c39f5.duosecurity.com\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tuserpass, err := vault.NewAuthBackend(ctx, \"userpass\", \u0026vault.AuthBackendArgs{\n\t\t\tType: pulumi.String(\"userpass\"),\n\t\t\tPath: pulumi.String(\"userpass\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = vault.NewMfaDuo(ctx, \"myDuo\", \u0026vault.MfaDuoArgs{\n\t\t\tMountAccessor: userpass.Accessor,\n\t\t\tSecretKey: pulumi.String(\"8C7THtrIigh2rPZQMbguugt8IUftWhMRCOBzbuyz\"),\n\t\t\tIntegrationKey: pulumi.String(\"BIACEUEAXI20BNWTEYXT\"),\n\t\t\tApiHostname: pulumi.String(\"api-2b5c39f5.duosecurity.com\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.AuthBackend;\nimport com.pulumi.vault.AuthBackendArgs;\nimport com.pulumi.vault.MfaDuo;\nimport com.pulumi.vault.MfaDuoArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var userpass = new AuthBackend(\"userpass\", AuthBackendArgs.builder() \n .type(\"userpass\")\n .path(\"userpass\")\n .build());\n\n var myDuo = new MfaDuo(\"myDuo\", MfaDuoArgs.builder() \n .mountAccessor(userpass.accessor())\n .secretKey(\"8C7THtrIigh2rPZQMbguugt8IUftWhMRCOBzbuyz\")\n .integrationKey(\"BIACEUEAXI20BNWTEYXT\")\n .apiHostname(\"api-2b5c39f5.duosecurity.com\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n userpass:\n type: vault:AuthBackend\n properties:\n type: userpass\n path: userpass\n myDuo:\n type: vault:MfaDuo\n properties:\n mountAccessor: ${userpass.accessor}\n secretKey: 8C7THtrIigh2rPZQMbguugt8IUftWhMRCOBzbuyz\n integrationKey: BIACEUEAXI20BNWTEYXT\n apiHostname: api-2b5c39f5.duosecurity.com\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nMounts can be imported using the `path`, e.g.\n\n```sh\n $ pulumi import vault:index/mfaDuo:MfaDuo my_duo my_duo\n```\n\n ",
+ "description": "Provides a resource to manage [Duo MFA](https://www.vaultproject.io/docs/enterprise/mfa/mfa-duo.html).\n\n**Note** this feature is available only with Vault Enterprise.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst userpass = new vault.AuthBackend(\"userpass\", {\n type: \"userpass\",\n path: \"userpass\",\n});\nconst myDuo = new vault.MfaDuo(\"myDuo\", {\n mountAccessor: userpass.accessor,\n secretKey: \"8C7THtrIigh2rPZQMbguugt8IUftWhMRCOBzbuyz\",\n integrationKey: \"BIACEUEAXI20BNWTEYXT\",\n apiHostname: \"api-2b5c39f5.duosecurity.com\",\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nuserpass = vault.AuthBackend(\"userpass\",\n type=\"userpass\",\n path=\"userpass\")\nmy_duo = vault.MfaDuo(\"myDuo\",\n mount_accessor=userpass.accessor,\n secret_key=\"8C7THtrIigh2rPZQMbguugt8IUftWhMRCOBzbuyz\",\n integration_key=\"BIACEUEAXI20BNWTEYXT\",\n api_hostname=\"api-2b5c39f5.duosecurity.com\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var userpass = new Vault.AuthBackend(\"userpass\", new()\n {\n Type = \"userpass\",\n Path = \"userpass\",\n });\n\n var myDuo = new Vault.MfaDuo(\"myDuo\", new()\n {\n MountAccessor = userpass.Accessor,\n SecretKey = \"8C7THtrIigh2rPZQMbguugt8IUftWhMRCOBzbuyz\",\n IntegrationKey = \"BIACEUEAXI20BNWTEYXT\",\n ApiHostname = \"api-2b5c39f5.duosecurity.com\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tuserpass, err := vault.NewAuthBackend(ctx, \"userpass\", \u0026vault.AuthBackendArgs{\n\t\t\tType: pulumi.String(\"userpass\"),\n\t\t\tPath: pulumi.String(\"userpass\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = vault.NewMfaDuo(ctx, \"myDuo\", \u0026vault.MfaDuoArgs{\n\t\t\tMountAccessor: userpass.Accessor,\n\t\t\tSecretKey: pulumi.String(\"8C7THtrIigh2rPZQMbguugt8IUftWhMRCOBzbuyz\"),\n\t\t\tIntegrationKey: pulumi.String(\"BIACEUEAXI20BNWTEYXT\"),\n\t\t\tApiHostname: pulumi.String(\"api-2b5c39f5.duosecurity.com\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.AuthBackend;\nimport com.pulumi.vault.AuthBackendArgs;\nimport com.pulumi.vault.MfaDuo;\nimport com.pulumi.vault.MfaDuoArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var userpass = new AuthBackend(\"userpass\", AuthBackendArgs.builder() \n .type(\"userpass\")\n .path(\"userpass\")\n .build());\n\n var myDuo = new MfaDuo(\"myDuo\", MfaDuoArgs.builder() \n .mountAccessor(userpass.accessor())\n .secretKey(\"8C7THtrIigh2rPZQMbguugt8IUftWhMRCOBzbuyz\")\n .integrationKey(\"BIACEUEAXI20BNWTEYXT\")\n .apiHostname(\"api-2b5c39f5.duosecurity.com\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n userpass:\n type: vault:AuthBackend\n properties:\n type: userpass\n path: userpass\n myDuo:\n type: vault:MfaDuo\n properties:\n mountAccessor: ${userpass.accessor}\n secretKey: 8C7THtrIigh2rPZQMbguugt8IUftWhMRCOBzbuyz\n integrationKey: BIACEUEAXI20BNWTEYXT\n apiHostname: api-2b5c39f5.duosecurity.com\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nMounts can be imported using the `path`, e.g.\n\n```sh\n $ pulumi import vault:index/mfaDuo:MfaDuo my_duo my_duo\n```\n ",
"properties": {
"apiHostname": {
"type": "string",
@@ -18390,7 +15591,7 @@
}
},
"vault:index/mfaOkta:MfaOkta": {
- "description": "Provides a resource to manage [Okta MFA](https://www.vaultproject.io/docs/enterprise/mfa/mfa-okta).\n\n**Note** this feature is available only with Vault Enterprise.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst userpass = new vault.AuthBackend(\"userpass\", {\n type: \"userpass\",\n path: \"userpass\",\n});\nconst myOkta = new vault.MfaOkta(\"myOkta\", {\n mountAccessor: userpass.accessor,\n usernameFormat: \"user@example.com\",\n orgName: \"hashicorp\",\n apiToken: \"eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9\",\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nuserpass = vault.AuthBackend(\"userpass\",\n type=\"userpass\",\n path=\"userpass\")\nmy_okta = vault.MfaOkta(\"myOkta\",\n mount_accessor=userpass.accessor,\n username_format=\"user@example.com\",\n org_name=\"hashicorp\",\n api_token=\"eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9\")\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var userpass = new Vault.AuthBackend(\"userpass\", new()\n {\n Type = \"userpass\",\n Path = \"userpass\",\n });\n\n var myOkta = new Vault.MfaOkta(\"myOkta\", new()\n {\n MountAccessor = userpass.Accessor,\n UsernameFormat = \"user@example.com\",\n OrgName = \"hashicorp\",\n ApiToken = \"eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tuserpass, err := vault.NewAuthBackend(ctx, \"userpass\", \u0026vault.AuthBackendArgs{\n\t\t\tType: pulumi.String(\"userpass\"),\n\t\t\tPath: pulumi.String(\"userpass\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = vault.NewMfaOkta(ctx, \"myOkta\", \u0026vault.MfaOktaArgs{\n\t\t\tMountAccessor: userpass.Accessor,\n\t\t\tUsernameFormat: pulumi.String(\"user@example.com\"),\n\t\t\tOrgName: pulumi.String(\"hashicorp\"),\n\t\t\tApiToken: pulumi.String(\"eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.AuthBackend;\nimport com.pulumi.vault.AuthBackendArgs;\nimport com.pulumi.vault.MfaOkta;\nimport com.pulumi.vault.MfaOktaArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var userpass = new AuthBackend(\"userpass\", AuthBackendArgs.builder() \n .type(\"userpass\")\n .path(\"userpass\")\n .build());\n\n var myOkta = new MfaOkta(\"myOkta\", MfaOktaArgs.builder() \n .mountAccessor(userpass.accessor())\n .usernameFormat(\"user@example.com\")\n .orgName(\"hashicorp\")\n .apiToken(\"eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n userpass:\n type: vault:AuthBackend\n properties:\n type: userpass\n path: userpass\n myOkta:\n type: vault:MfaOkta\n properties:\n mountAccessor: ${userpass.accessor}\n usernameFormat: user@example.com\n orgName: hashicorp\n apiToken: eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nMounts can be imported using the `path`, e.g.\n\n```sh\n $ pulumi import vault:index/mfaOkta:MfaOkta my_okta my_okta\n```\n\n ",
+ "description": "Provides a resource to manage [Okta MFA](https://www.vaultproject.io/docs/enterprise/mfa/mfa-okta).\n\n**Note** this feature is available only with Vault Enterprise.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst userpass = new vault.AuthBackend(\"userpass\", {\n type: \"userpass\",\n path: \"userpass\",\n});\nconst myOkta = new vault.MfaOkta(\"myOkta\", {\n mountAccessor: userpass.accessor,\n usernameFormat: \"user@example.com\",\n orgName: \"hashicorp\",\n apiToken: \"eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9\",\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nuserpass = vault.AuthBackend(\"userpass\",\n type=\"userpass\",\n path=\"userpass\")\nmy_okta = vault.MfaOkta(\"myOkta\",\n mount_accessor=userpass.accessor,\n username_format=\"user@example.com\",\n org_name=\"hashicorp\",\n api_token=\"eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var userpass = new Vault.AuthBackend(\"userpass\", new()\n {\n Type = \"userpass\",\n Path = \"userpass\",\n });\n\n var myOkta = new Vault.MfaOkta(\"myOkta\", new()\n {\n MountAccessor = userpass.Accessor,\n UsernameFormat = \"user@example.com\",\n OrgName = \"hashicorp\",\n ApiToken = \"eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tuserpass, err := vault.NewAuthBackend(ctx, \"userpass\", \u0026vault.AuthBackendArgs{\n\t\t\tType: pulumi.String(\"userpass\"),\n\t\t\tPath: pulumi.String(\"userpass\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = vault.NewMfaOkta(ctx, \"myOkta\", \u0026vault.MfaOktaArgs{\n\t\t\tMountAccessor: userpass.Accessor,\n\t\t\tUsernameFormat: pulumi.String(\"user@example.com\"),\n\t\t\tOrgName: pulumi.String(\"hashicorp\"),\n\t\t\tApiToken: pulumi.String(\"eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.AuthBackend;\nimport com.pulumi.vault.AuthBackendArgs;\nimport com.pulumi.vault.MfaOkta;\nimport com.pulumi.vault.MfaOktaArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var userpass = new AuthBackend(\"userpass\", AuthBackendArgs.builder() \n .type(\"userpass\")\n .path(\"userpass\")\n .build());\n\n var myOkta = new MfaOkta(\"myOkta\", MfaOktaArgs.builder() \n .mountAccessor(userpass.accessor())\n .usernameFormat(\"user@example.com\")\n .orgName(\"hashicorp\")\n .apiToken(\"eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n userpass:\n type: vault:AuthBackend\n properties:\n type: userpass\n path: userpass\n myOkta:\n type: vault:MfaOkta\n properties:\n mountAccessor: ${userpass.accessor}\n usernameFormat: user@example.com\n orgName: hashicorp\n apiToken: eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nMounts can be imported using the `path`, e.g.\n\n```sh\n $ pulumi import vault:index/mfaOkta:MfaOkta my_okta my_okta\n```\n ",
"properties": {
"apiToken": {
"type": "string",
@@ -18529,19 +15730,19 @@
}
},
"vault:index/mfaPingid:MfaPingid": {
- "description": "Provides a resource to manage [PingID MFA](https://www.vaultproject.io/docs/enterprise/mfa/mfa-pingid).\n\n**Note** this feature is available only with Vault Enterprise.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst config = new pulumi.Config();\nconst settingsFile = config.requireObject(\"settingsFile\");\nconst userpass = new vault.AuthBackend(\"userpass\", {\n type: \"userpass\",\n path: \"userpass\",\n});\nconst myPingid = new vault.MfaPingid(\"myPingid\", {\n mountAccessor: userpass.accessor,\n usernameFormat: \"user@example.com\",\n settingsFileBase64: settingsFile,\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nconfig = pulumi.Config()\nsettings_file = config.require_object(\"settingsFile\")\nuserpass = vault.AuthBackend(\"userpass\",\n type=\"userpass\",\n path=\"userpass\")\nmy_pingid = vault.MfaPingid(\"myPingid\",\n mount_accessor=userpass.accessor,\n username_format=\"user@example.com\",\n settings_file_base64=settings_file)\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var settingsFile = config.RequireObject\u003cdynamic\u003e(\"settingsFile\");\n var userpass = new Vault.AuthBackend(\"userpass\", new()\n {\n Type = \"userpass\",\n Path = \"userpass\",\n });\n\n var myPingid = new Vault.MfaPingid(\"myPingid\", new()\n {\n MountAccessor = userpass.Accessor,\n UsernameFormat = \"user@example.com\",\n SettingsFileBase64 = settingsFile,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tsettingsFile := cfg.RequireObject(\"settingsFile\")\n\t\tuserpass, err := vault.NewAuthBackend(ctx, \"userpass\", \u0026vault.AuthBackendArgs{\n\t\t\tType: pulumi.String(\"userpass\"),\n\t\t\tPath: pulumi.String(\"userpass\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = vault.NewMfaPingid(ctx, \"myPingid\", \u0026vault.MfaPingidArgs{\n\t\t\tMountAccessor: userpass.Accessor,\n\t\t\tUsernameFormat: pulumi.String(\"user@example.com\"),\n\t\t\tSettingsFileBase64: pulumi.Any(settingsFile),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.AuthBackend;\nimport com.pulumi.vault.AuthBackendArgs;\nimport com.pulumi.vault.MfaPingid;\nimport com.pulumi.vault.MfaPingidArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var settingsFile = config.get(\"settingsFile\");\n var userpass = new AuthBackend(\"userpass\", AuthBackendArgs.builder() \n .type(\"userpass\")\n .path(\"userpass\")\n .build());\n\n var myPingid = new MfaPingid(\"myPingid\", MfaPingidArgs.builder() \n .mountAccessor(userpass.accessor())\n .usernameFormat(\"user@example.com\")\n .settingsFileBase64(settingsFile)\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n settingsFile:\n type: dynamic\nresources:\n userpass:\n type: vault:AuthBackend\n properties:\n type: userpass\n path: userpass\n myPingid:\n type: vault:MfaPingid\n properties:\n mountAccessor: ${userpass.accessor}\n usernameFormat: user@example.com\n settingsFileBase64: ${settingsFile}\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nMounts can be imported using the `path`, e.g.\n\n```sh\n $ pulumi import vault:index/mfaPingid:MfaPingid my_pingid my_pingid\n```\n\n ",
+ "description": "Provides a resource to manage [PingID MFA](https://www.vaultproject.io/docs/enterprise/mfa/mfa-pingid).\n\n**Note** this feature is available only with Vault Enterprise.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst config = new pulumi.Config();\nconst settingsFile = config.requireObject(\"settingsFile\");\nconst userpass = new vault.AuthBackend(\"userpass\", {\n type: \"userpass\",\n path: \"userpass\",\n});\nconst myPingid = new vault.MfaPingid(\"myPingid\", {\n mountAccessor: userpass.accessor,\n usernameFormat: \"user@example.com\",\n settingsFileBase64: settingsFile,\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nconfig = pulumi.Config()\nsettings_file = config.require_object(\"settingsFile\")\nuserpass = vault.AuthBackend(\"userpass\",\n type=\"userpass\",\n path=\"userpass\")\nmy_pingid = vault.MfaPingid(\"myPingid\",\n mount_accessor=userpass.accessor,\n username_format=\"user@example.com\",\n settings_file_base64=settings_file)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var settingsFile = config.RequireObject\u003cdynamic\u003e(\"settingsFile\");\n var userpass = new Vault.AuthBackend(\"userpass\", new()\n {\n Type = \"userpass\",\n Path = \"userpass\",\n });\n\n var myPingid = new Vault.MfaPingid(\"myPingid\", new()\n {\n MountAccessor = userpass.Accessor,\n UsernameFormat = \"user@example.com\",\n SettingsFileBase64 = settingsFile,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tsettingsFile := cfg.RequireObject(\"settingsFile\")\n\t\tuserpass, err := vault.NewAuthBackend(ctx, \"userpass\", \u0026vault.AuthBackendArgs{\n\t\t\tType: pulumi.String(\"userpass\"),\n\t\t\tPath: pulumi.String(\"userpass\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = vault.NewMfaPingid(ctx, \"myPingid\", \u0026vault.MfaPingidArgs{\n\t\t\tMountAccessor: userpass.Accessor,\n\t\t\tUsernameFormat: pulumi.String(\"user@example.com\"),\n\t\t\tSettingsFileBase64: pulumi.Any(settingsFile),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.AuthBackend;\nimport com.pulumi.vault.AuthBackendArgs;\nimport com.pulumi.vault.MfaPingid;\nimport com.pulumi.vault.MfaPingidArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var settingsFile = config.get(\"settingsFile\");\n var userpass = new AuthBackend(\"userpass\", AuthBackendArgs.builder() \n .type(\"userpass\")\n .path(\"userpass\")\n .build());\n\n var myPingid = new MfaPingid(\"myPingid\", MfaPingidArgs.builder() \n .mountAccessor(userpass.accessor())\n .usernameFormat(\"user@example.com\")\n .settingsFileBase64(settingsFile)\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n settingsFile:\n type: dynamic\nresources:\n userpass:\n type: vault:AuthBackend\n properties:\n type: userpass\n path: userpass\n myPingid:\n type: vault:MfaPingid\n properties:\n mountAccessor: ${userpass.accessor}\n usernameFormat: user@example.com\n settingsFileBase64: ${settingsFile}\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nMounts can be imported using the `path`, e.g.\n\n```sh\n $ pulumi import vault:index/mfaPingid:MfaPingid my_pingid my_pingid\n```\n ",
"properties": {
"adminUrl": {
"type": "string",
- "description": "Admin URL computed by Vault.\n"
+ "description": "`(string)` – Admin URL computed by Vault\n"
},
"authenticatorUrl": {
"type": "string",
- "description": "Authenticator URL computed by Vault.\n"
+ "description": "`(string)` – Authenticator URL computed by Vault\n"
},
"idpUrl": {
"type": "string",
- "description": "IDP URL computed by Vault.\n"
+ "description": "`(string)` – IDP URL computed by Vault\n"
},
"mountAccessor": {
"type": "string",
@@ -18557,11 +15758,11 @@
},
"namespaceId": {
"type": "string",
- "description": "Namespace ID computed by Vault.\n"
+ "description": "`(string)` – Namespace ID computed by Vault\n"
},
"orgAlias": {
"type": "string",
- "description": "Org Alias computed by Vault.\n"
+ "description": "`(string)` – Org Alias computed by Vault\n"
},
"settingsFileBase64": {
"type": "string",
@@ -18569,11 +15770,11 @@
},
"type": {
"type": "string",
- "description": "Type of configuration computed by Vault.\n"
+ "description": "`(string)` – Type of configuration computed by Vault\n"
},
"useSignature": {
"type": "boolean",
- "description": "If set, enables use of PingID signature. Computed by Vault\n"
+ "description": "`(string)` – If set to true, enables use of PingID signature. Computed by Vault\n"
},
"usernameFormat": {
"type": "string",
@@ -18628,15 +15829,15 @@
"properties": {
"adminUrl": {
"type": "string",
- "description": "Admin URL computed by Vault.\n"
+ "description": "`(string)` – Admin URL computed by Vault\n"
},
"authenticatorUrl": {
"type": "string",
- "description": "Authenticator URL computed by Vault.\n"
+ "description": "`(string)` – Authenticator URL computed by Vault\n"
},
"idpUrl": {
"type": "string",
- "description": "IDP URL computed by Vault.\n"
+ "description": "`(string)` – IDP URL computed by Vault\n"
},
"mountAccessor": {
"type": "string",
@@ -18655,11 +15856,11 @@
},
"namespaceId": {
"type": "string",
- "description": "Namespace ID computed by Vault.\n"
+ "description": "`(string)` – Namespace ID computed by Vault\n"
},
"orgAlias": {
"type": "string",
- "description": "Org Alias computed by Vault.\n"
+ "description": "`(string)` – Org Alias computed by Vault\n"
},
"settingsFileBase64": {
"type": "string",
@@ -18668,11 +15869,11 @@
},
"type": {
"type": "string",
- "description": "Type of configuration computed by Vault.\n"
+ "description": "`(string)` – Type of configuration computed by Vault\n"
},
"useSignature": {
"type": "boolean",
- "description": "If set, enables use of PingID signature. Computed by Vault\n"
+ "description": "`(string)` – If set to true, enables use of PingID signature. Computed by Vault\n"
},
"usernameFormat": {
"type": "string",
@@ -18684,7 +15885,7 @@
}
},
"vault:index/mfaTotp:MfaTotp": {
- "description": "Provides a resource to manage [TOTP MFA](https://www.vaultproject.io/docs/enterprise/mfa/mfa-totp).\n\n**Note** this feature is available only with Vault Enterprise.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst myTotp = new vault.MfaTotp(\"my_totp\", {\n algorithm: \"SHA256\",\n digits: 8,\n issuer: \"hashicorp\",\n keySize: 20,\n period: 60,\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nmy_totp = vault.MfaTotp(\"myTotp\",\n algorithm=\"SHA256\",\n digits=8,\n issuer=\"hashicorp\",\n key_size=20,\n period=60)\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var myTotp = new Vault.MfaTotp(\"myTotp\", new()\n {\n Algorithm = \"SHA256\",\n Digits = 8,\n Issuer = \"hashicorp\",\n KeySize = 20,\n Period = 60,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := vault.NewMfaTotp(ctx, \"myTotp\", \u0026vault.MfaTotpArgs{\n\t\t\tAlgorithm: pulumi.String(\"SHA256\"),\n\t\t\tDigits: pulumi.Int(8),\n\t\t\tIssuer: pulumi.String(\"hashicorp\"),\n\t\t\tKeySize: pulumi.Int(20),\n\t\t\tPeriod: pulumi.Int(60),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.MfaTotp;\nimport com.pulumi.vault.MfaTotpArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var myTotp = new MfaTotp(\"myTotp\", MfaTotpArgs.builder() \n .algorithm(\"SHA256\")\n .digits(8)\n .issuer(\"hashicorp\")\n .keySize(20)\n .period(60)\n .build());\n\n }\n}\n```\n```yaml\nresources:\n myTotp:\n type: vault:MfaTotp\n properties:\n algorithm: SHA256\n digits: 8\n issuer: hashicorp\n keySize: 20\n period: 60\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nMounts can be imported using the `path`, e.g.\n\n```sh\n $ pulumi import vault:index/mfaTotp:MfaTotp my_totp my_totp\n```\n\n ",
+ "description": "Provides a resource to manage [TOTP MFA](https://www.vaultproject.io/docs/enterprise/mfa/mfa-totp).\n\n**Note** this feature is available only with Vault Enterprise.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst myTotp = new vault.MfaTotp(\"myTotp\", {\n algorithm: \"SHA256\",\n digits: 8,\n issuer: \"hashicorp\",\n keySize: 20,\n period: 60,\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nmy_totp = vault.MfaTotp(\"myTotp\",\n algorithm=\"SHA256\",\n digits=8,\n issuer=\"hashicorp\",\n key_size=20,\n period=60)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var myTotp = new Vault.MfaTotp(\"myTotp\", new()\n {\n Algorithm = \"SHA256\",\n Digits = 8,\n Issuer = \"hashicorp\",\n KeySize = 20,\n Period = 60,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := vault.NewMfaTotp(ctx, \"myTotp\", \u0026vault.MfaTotpArgs{\n\t\t\tAlgorithm: pulumi.String(\"SHA256\"),\n\t\t\tDigits: pulumi.Int(8),\n\t\t\tIssuer: pulumi.String(\"hashicorp\"),\n\t\t\tKeySize: pulumi.Int(20),\n\t\t\tPeriod: pulumi.Int(60),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.MfaTotp;\nimport com.pulumi.vault.MfaTotpArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var myTotp = new MfaTotp(\"myTotp\", MfaTotpArgs.builder() \n .algorithm(\"SHA256\")\n .digits(8)\n .issuer(\"hashicorp\")\n .keySize(20)\n .period(60)\n .build());\n\n }\n}\n```\n```yaml\nresources:\n myTotp:\n type: vault:MfaTotp\n properties:\n algorithm: SHA256\n digits: 8\n issuer: hashicorp\n keySize: 20\n period: 60\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nMounts can be imported using the `path`, e.g.\n\n```sh\n $ pulumi import vault:index/mfaTotp:MfaTotp my_totp my_totp\n```\n ",
"properties": {
"algorithm": {
"type": "string",
@@ -18830,7 +16031,7 @@
}
},
"vault:index/mount:Mount": {
- "description": "{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst example = new vault.Mount(\"example\", {\n description: \"This is an example mount\",\n path: \"dummy\",\n type: \"generic\",\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nexample = vault.Mount(\"example\",\n description=\"This is an example mount\",\n path=\"dummy\",\n type=\"generic\")\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new Vault.Mount(\"example\", new()\n {\n Description = \"This is an example mount\",\n Path = \"dummy\",\n Type = \"generic\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := vault.NewMount(ctx, \"example\", \u0026vault.MountArgs{\n\t\t\tDescription: pulumi.String(\"This is an example mount\"),\n\t\t\tPath: pulumi.String(\"dummy\"),\n\t\t\tType: pulumi.String(\"generic\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.Mount;\nimport com.pulumi.vault.MountArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new Mount(\"example\", MountArgs.builder() \n .description(\"This is an example mount\")\n .path(\"dummy\")\n .type(\"generic\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: vault:Mount\n properties:\n description: This is an example mount\n path: dummy\n type: generic\n```\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst kvv2_example = new vault.Mount(\"kvv2-example\", {\n description: \"This is an example KV Version 2 secret engine mount\",\n options: {\n type: \"kv-v2\",\n version: \"2\",\n },\n path: \"version2-example\",\n type: \"kv-v2\",\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nkvv2_example = vault.Mount(\"kvv2-example\",\n description=\"This is an example KV Version 2 secret engine mount\",\n options={\n \"type\": \"kv-v2\",\n \"version\": \"2\",\n },\n path=\"version2-example\",\n type=\"kv-v2\")\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var kvv2_example = new Vault.Mount(\"kvv2-example\", new()\n {\n Description = \"This is an example KV Version 2 secret engine mount\",\n Options = \n {\n { \"type\", \"kv-v2\" },\n { \"version\", \"2\" },\n },\n Path = \"version2-example\",\n Type = \"kv-v2\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := vault.NewMount(ctx, \"kvv2-example\", \u0026vault.MountArgs{\n\t\t\tDescription: pulumi.String(\"This is an example KV Version 2 secret engine mount\"),\n\t\t\tOptions: pulumi.AnyMap{\n\t\t\t\t\"type\": pulumi.Any(\"kv-v2\"),\n\t\t\t\t\"version\": pulumi.Any(\"2\"),\n\t\t\t},\n\t\t\tPath: pulumi.String(\"version2-example\"),\n\t\t\tType: pulumi.String(\"kv-v2\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.Mount;\nimport com.pulumi.vault.MountArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var kvv2_example = new Mount(\"kvv2-example\", MountArgs.builder() \n .description(\"This is an example KV Version 2 secret engine mount\")\n .options(Map.ofEntries(\n Map.entry(\"type\", \"kv-v2\"),\n Map.entry(\"version\", \"2\")\n ))\n .path(\"version2-example\")\n .type(\"kv-v2\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n kvv2-example:\n type: vault:Mount\n properties:\n description: This is an example KV Version 2 secret engine mount\n options:\n type: kv-v2\n version: 2\n path: version2-example\n type: kv-v2\n```\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst transit_example = new vault.Mount(\"transit-example\", {\n description: \"This is an example transit secret engine mount\",\n options: {\n convergent_encryption: false,\n },\n path: \"transit-example\",\n type: \"transit\",\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\ntransit_example = vault.Mount(\"transit-example\",\n description=\"This is an example transit secret engine mount\",\n options={\n \"convergent_encryption\": False,\n },\n path=\"transit-example\",\n type=\"transit\")\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var transit_example = new Vault.Mount(\"transit-example\", new()\n {\n Description = \"This is an example transit secret engine mount\",\n Options = \n {\n { \"convergent_encryption\", false },\n },\n Path = \"transit-example\",\n Type = \"transit\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := vault.NewMount(ctx, \"transit-example\", \u0026vault.MountArgs{\n\t\t\tDescription: pulumi.String(\"This is an example transit secret engine mount\"),\n\t\t\tOptions: pulumi.AnyMap{\n\t\t\t\t\"convergent_encryption\": pulumi.Any(false),\n\t\t\t},\n\t\t\tPath: pulumi.String(\"transit-example\"),\n\t\t\tType: pulumi.String(\"transit\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.Mount;\nimport com.pulumi.vault.MountArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var transit_example = new Mount(\"transit-example\", MountArgs.builder() \n .description(\"This is an example transit secret engine mount\")\n .options(Map.of(\"convergent_encryption\", false))\n .path(\"transit-example\")\n .type(\"transit\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n transit-example:\n type: vault:Mount\n properties:\n description: This is an example transit secret engine mount\n options:\n convergent_encryption: false\n path: transit-example\n type: transit\n```\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst pki_example = new vault.Mount(\"pki-example\", {\n defaultLeaseTtlSeconds: 3600,\n description: \"This is an example PKI mount\",\n maxLeaseTtlSeconds: 86400,\n path: \"pki-example\",\n type: \"pki\",\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\npki_example = vault.Mount(\"pki-example\",\n default_lease_ttl_seconds=3600,\n description=\"This is an example PKI mount\",\n max_lease_ttl_seconds=86400,\n path=\"pki-example\",\n type=\"pki\")\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var pki_example = new Vault.Mount(\"pki-example\", new()\n {\n DefaultLeaseTtlSeconds = 3600,\n Description = \"This is an example PKI mount\",\n MaxLeaseTtlSeconds = 86400,\n Path = \"pki-example\",\n Type = \"pki\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := vault.NewMount(ctx, \"pki-example\", \u0026vault.MountArgs{\n\t\t\tDefaultLeaseTtlSeconds: pulumi.Int(3600),\n\t\t\tDescription: pulumi.String(\"This is an example PKI mount\"),\n\t\t\tMaxLeaseTtlSeconds: pulumi.Int(86400),\n\t\t\tPath: pulumi.String(\"pki-example\"),\n\t\t\tType: pulumi.String(\"pki\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.Mount;\nimport com.pulumi.vault.MountArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var pki_example = new Mount(\"pki-example\", MountArgs.builder() \n .defaultLeaseTtlSeconds(3600)\n .description(\"This is an example PKI mount\")\n .maxLeaseTtlSeconds(86400)\n .path(\"pki-example\")\n .type(\"pki\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n pki-example:\n type: vault:Mount\n properties:\n defaultLeaseTtlSeconds: 3600\n description: This is an example PKI mount\n maxLeaseTtlSeconds: 86400\n path: pki-example\n type: pki\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nMounts can be imported using the `path`, e.g.\n\n```sh\n $ pulumi import vault:index/mount:Mount example dummy\n```\n\n ",
+ "description": "{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst example = new vault.Mount(\"example\", {\n description: \"This is an example mount\",\n path: \"dummy\",\n type: \"generic\",\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nexample = vault.Mount(\"example\",\n description=\"This is an example mount\",\n path=\"dummy\",\n type=\"generic\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new Vault.Mount(\"example\", new()\n {\n Description = \"This is an example mount\",\n Path = \"dummy\",\n Type = \"generic\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := vault.NewMount(ctx, \"example\", \u0026vault.MountArgs{\n\t\t\tDescription: pulumi.String(\"This is an example mount\"),\n\t\t\tPath: pulumi.String(\"dummy\"),\n\t\t\tType: pulumi.String(\"generic\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.Mount;\nimport com.pulumi.vault.MountArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new Mount(\"example\", MountArgs.builder() \n .description(\"This is an example mount\")\n .path(\"dummy\")\n .type(\"generic\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: vault:Mount\n properties:\n description: This is an example mount\n path: dummy\n type: generic\n```\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst kvv2_example = new vault.Mount(\"kvv2-example\", {\n description: \"This is an example KV Version 2 secret engine mount\",\n options: {\n type: \"kv-v2\",\n version: \"2\",\n },\n path: \"version2-example\",\n type: \"kv-v2\",\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nkvv2_example = vault.Mount(\"kvv2-example\",\n description=\"This is an example KV Version 2 secret engine mount\",\n options={\n \"type\": \"kv-v2\",\n \"version\": \"2\",\n },\n path=\"version2-example\",\n type=\"kv-v2\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var kvv2_example = new Vault.Mount(\"kvv2-example\", new()\n {\n Description = \"This is an example KV Version 2 secret engine mount\",\n Options = \n {\n { \"type\", \"kv-v2\" },\n { \"version\", \"2\" },\n },\n Path = \"version2-example\",\n Type = \"kv-v2\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := vault.NewMount(ctx, \"kvv2-example\", \u0026vault.MountArgs{\n\t\t\tDescription: pulumi.String(\"This is an example KV Version 2 secret engine mount\"),\n\t\t\tOptions: pulumi.Map{\n\t\t\t\t\"type\": pulumi.Any(\"kv-v2\"),\n\t\t\t\t\"version\": pulumi.Any(\"2\"),\n\t\t\t},\n\t\t\tPath: pulumi.String(\"version2-example\"),\n\t\t\tType: pulumi.String(\"kv-v2\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.Mount;\nimport com.pulumi.vault.MountArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var kvv2_example = new Mount(\"kvv2-example\", MountArgs.builder() \n .description(\"This is an example KV Version 2 secret engine mount\")\n .options(Map.ofEntries(\n Map.entry(\"type\", \"kv-v2\"),\n Map.entry(\"version\", \"2\")\n ))\n .path(\"version2-example\")\n .type(\"kv-v2\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n kvv2-example:\n type: vault:Mount\n properties:\n description: This is an example KV Version 2 secret engine mount\n options:\n type: kv-v2\n version: '2'\n path: version2-example\n type: kv-v2\n```\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst transit_example = new vault.Mount(\"transit-example\", {\n description: \"This is an example transit secret engine mount\",\n options: {\n convergent_encryption: false,\n },\n path: \"transit-example\",\n type: \"transit\",\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\ntransit_example = vault.Mount(\"transit-example\",\n description=\"This is an example transit secret engine mount\",\n options={\n \"convergent_encryption\": False,\n },\n path=\"transit-example\",\n type=\"transit\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var transit_example = new Vault.Mount(\"transit-example\", new()\n {\n Description = \"This is an example transit secret engine mount\",\n Options = \n {\n { \"convergent_encryption\", false },\n },\n Path = \"transit-example\",\n Type = \"transit\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := vault.NewMount(ctx, \"transit-example\", \u0026vault.MountArgs{\n\t\t\tDescription: pulumi.String(\"This is an example transit secret engine mount\"),\n\t\t\tOptions: pulumi.Map{\n\t\t\t\t\"convergent_encryption\": pulumi.Any(false),\n\t\t\t},\n\t\t\tPath: pulumi.String(\"transit-example\"),\n\t\t\tType: pulumi.String(\"transit\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.Mount;\nimport com.pulumi.vault.MountArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var transit_example = new Mount(\"transit-example\", MountArgs.builder() \n .description(\"This is an example transit secret engine mount\")\n .options(Map.of(\"convergent_encryption\", false))\n .path(\"transit-example\")\n .type(\"transit\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n transit-example:\n type: vault:Mount\n properties:\n description: This is an example transit secret engine mount\n options:\n convergent_encryption: false\n path: transit-example\n type: transit\n```\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst pki_example = new vault.Mount(\"pki-example\", {\n defaultLeaseTtlSeconds: 3600,\n description: \"This is an example PKI mount\",\n maxLeaseTtlSeconds: 86400,\n path: \"pki-example\",\n type: \"pki\",\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\npki_example = vault.Mount(\"pki-example\",\n default_lease_ttl_seconds=3600,\n description=\"This is an example PKI mount\",\n max_lease_ttl_seconds=86400,\n path=\"pki-example\",\n type=\"pki\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var pki_example = new Vault.Mount(\"pki-example\", new()\n {\n DefaultLeaseTtlSeconds = 3600,\n Description = \"This is an example PKI mount\",\n MaxLeaseTtlSeconds = 86400,\n Path = \"pki-example\",\n Type = \"pki\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := vault.NewMount(ctx, \"pki-example\", \u0026vault.MountArgs{\n\t\t\tDefaultLeaseTtlSeconds: pulumi.Int(3600),\n\t\t\tDescription: pulumi.String(\"This is an example PKI mount\"),\n\t\t\tMaxLeaseTtlSeconds: pulumi.Int(86400),\n\t\t\tPath: pulumi.String(\"pki-example\"),\n\t\t\tType: pulumi.String(\"pki\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.Mount;\nimport com.pulumi.vault.MountArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var pki_example = new Mount(\"pki-example\", MountArgs.builder() \n .defaultLeaseTtlSeconds(3600)\n .description(\"This is an example PKI mount\")\n .maxLeaseTtlSeconds(86400)\n .path(\"pki-example\")\n .type(\"pki\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n pki-example:\n type: vault:Mount\n properties:\n defaultLeaseTtlSeconds: 3600\n description: This is an example PKI mount\n maxLeaseTtlSeconds: 86400\n path: pki-example\n type: pki\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nMounts can be imported using the `path`, e.g.\n\n```sh\n $ pulumi import vault:index/mount:Mount example dummy\n```\n ",
"properties": {
"accessor": {
"type": "string",
@@ -19071,6 +16272,13 @@
"vault:index/namespace:Namespace": {
"description": "\n\n\n## Import\n\nNamespaces can be imported using its `name` as accessor id\n\n```sh\n $ pulumi import vault:index/namespace:Namespace example \u003cname\u003e\n```\n\n If the declared resource is imported and intends to support namespaces using a provider alias, then the name is relative to the namespace path. hcl provider \"vault\" {\n\n # Configuration options\n\n namespace = \"example\"\n\n alias\n\n\n\n = \"example\" } resource \"vault_namespace\" \"example2\" {\n\n provider = vault.example\n\n path\n\n\n\n = \"example2\" }\n\n```sh\n $ pulumi import vault:index/namespace:Namespace example2 example2\n```\n\n $ terraform state show vault_namespace.example2 vault_namespace.example2resource \"vault_namespace\" \"example2\" {\n\n\n\n id\n\n\n\n\n\n\n\n\n\n = \"example/example2/\"\n\n\n\n namespace_id = \u003cknown after import\u003e\n\n\n\n path\n\n\n\n\n\n\n\n = \"example2\"\n\n\n\n path_fq\n\n\n\n\n\n= \"example2\" } ",
"properties": {
+ "customMetadata": {
+ "type": "object",
+ "additionalProperties": {
+ "$ref": "pulumi.json#/Any"
+ },
+ "description": "Custom metadata describing this namespace. Value type\nis `map[string]string`. Requires Vault version 1.12+.\n"
+ },
"namespace": {
"type": "string",
"description": "The namespace to provision the resource in.\nThe value should not contain leading or trailing forward slashes.\nThe `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault#namespace).\n*Available only for Vault Enterprise*.\n",
@@ -19094,11 +16302,19 @@
}
},
"required": [
+ "customMetadata",
"namespaceId",
"path",
"pathFq"
],
"inputProperties": {
+ "customMetadata": {
+ "type": "object",
+ "additionalProperties": {
+ "$ref": "pulumi.json#/Any"
+ },
+ "description": "Custom metadata describing this namespace. Value type\nis `map[string]string`. Requires Vault version 1.12+.\n"
+ },
"namespace": {
"type": "string",
"description": "The namespace to provision the resource in.\nThe value should not contain leading or trailing forward slashes.\nThe `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault#namespace).\n*Available only for Vault Enterprise*.\n",
@@ -19125,6 +16341,13 @@
"stateInputs": {
"description": "Input properties used for looking up and filtering Namespace resources.\n",
"properties": {
+ "customMetadata": {
+ "type": "object",
+ "additionalProperties": {
+ "$ref": "pulumi.json#/Any"
+ },
+ "description": "Custom metadata describing this namespace. Value type\nis `map[string]string`. Requires Vault version 1.12+.\n"
+ },
"namespace": {
"type": "string",
"description": "The namespace to provision the resource in.\nThe value should not contain leading or trailing forward slashes.\nThe `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault#namespace).\n*Available only for Vault Enterprise*.\n",
@@ -19153,7 +16376,7 @@
}
},
"vault:index/nomadSecretBackend:NomadSecretBackend": {
- "description": "{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst config = new vault.NomadSecretBackend(\"config\", {\n address: \"https://127.0.0.1:4646\",\n backend: \"nomad\",\n defaultLeaseTtlSeconds: 3600,\n description: \"test description\",\n maxLeaseTtlSeconds: 7200,\n maxTtl: 240,\n token: \"ae20ceaa-...\",\n ttl: 120,\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nconfig = vault.NomadSecretBackend(\"config\",\n address=\"https://127.0.0.1:4646\",\n backend=\"nomad\",\n default_lease_ttl_seconds=3600,\n description=\"test description\",\n max_lease_ttl_seconds=7200,\n max_ttl=240,\n token=\"ae20ceaa-...\",\n ttl=120)\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Vault.NomadSecretBackend(\"config\", new()\n {\n Address = \"https://127.0.0.1:4646\",\n Backend = \"nomad\",\n DefaultLeaseTtlSeconds = 3600,\n Description = \"test description\",\n MaxLeaseTtlSeconds = 7200,\n MaxTtl = 240,\n Token = \"ae20ceaa-...\",\n Ttl = 120,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := vault.NewNomadSecretBackend(ctx, \"config\", \u0026vault.NomadSecretBackendArgs{\n\t\t\tAddress: pulumi.String(\"https://127.0.0.1:4646\"),\n\t\t\tBackend: pulumi.String(\"nomad\"),\n\t\t\tDefaultLeaseTtlSeconds: pulumi.Int(3600),\n\t\t\tDescription: pulumi.String(\"test description\"),\n\t\t\tMaxLeaseTtlSeconds: pulumi.Int(7200),\n\t\t\tMaxTtl: pulumi.Int(240),\n\t\t\tToken: pulumi.String(\"ae20ceaa-...\"),\n\t\t\tTtl: pulumi.Int(120),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.NomadSecretBackend;\nimport com.pulumi.vault.NomadSecretBackendArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var config = new NomadSecretBackend(\"config\", NomadSecretBackendArgs.builder() \n .address(\"https://127.0.0.1:4646\")\n .backend(\"nomad\")\n .defaultLeaseTtlSeconds(\"3600\")\n .description(\"test description\")\n .maxLeaseTtlSeconds(\"7200\")\n .maxTtl(\"240\")\n .token(\"ae20ceaa-...\")\n .ttl(\"120\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n config:\n type: vault:NomadSecretBackend\n properties:\n address: https://127.0.0.1:4646\n backend: nomad\n defaultLeaseTtlSeconds: 3600\n description: test description\n maxLeaseTtlSeconds: 7200\n maxTtl: 240\n token: ae20ceaa-...\n ttl: 120\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nNomad secret backend can be imported using the `backend`, e.g.\n\n```sh\n $ pulumi import vault:index/nomadSecretBackend:NomadSecretBackend nomad nomad\n```\n\n ",
+ "description": "{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst config = new vault.NomadSecretBackend(\"config\", {\n address: \"https://127.0.0.1:4646\",\n backend: \"nomad\",\n defaultLeaseTtlSeconds: 3600,\n description: \"test description\",\n maxLeaseTtlSeconds: 7200,\n maxTtl: 240,\n token: \"ae20ceaa-...\",\n ttl: 120,\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nconfig = vault.NomadSecretBackend(\"config\",\n address=\"https://127.0.0.1:4646\",\n backend=\"nomad\",\n default_lease_ttl_seconds=3600,\n description=\"test description\",\n max_lease_ttl_seconds=7200,\n max_ttl=240,\n token=\"ae20ceaa-...\",\n ttl=120)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Vault.NomadSecretBackend(\"config\", new()\n {\n Address = \"https://127.0.0.1:4646\",\n Backend = \"nomad\",\n DefaultLeaseTtlSeconds = 3600,\n Description = \"test description\",\n MaxLeaseTtlSeconds = 7200,\n MaxTtl = 240,\n Token = \"ae20ceaa-...\",\n Ttl = 120,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := vault.NewNomadSecretBackend(ctx, \"config\", \u0026vault.NomadSecretBackendArgs{\n\t\t\tAddress: pulumi.String(\"https://127.0.0.1:4646\"),\n\t\t\tBackend: pulumi.String(\"nomad\"),\n\t\t\tDefaultLeaseTtlSeconds: pulumi.Int(3600),\n\t\t\tDescription: pulumi.String(\"test description\"),\n\t\t\tMaxLeaseTtlSeconds: pulumi.Int(7200),\n\t\t\tMaxTtl: pulumi.Int(240),\n\t\t\tToken: pulumi.String(\"ae20ceaa-...\"),\n\t\t\tTtl: pulumi.Int(120),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.NomadSecretBackend;\nimport com.pulumi.vault.NomadSecretBackendArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var config = new NomadSecretBackend(\"config\", NomadSecretBackendArgs.builder() \n .address(\"https://127.0.0.1:4646\")\n .backend(\"nomad\")\n .defaultLeaseTtlSeconds(\"3600\")\n .description(\"test description\")\n .maxLeaseTtlSeconds(\"7200\")\n .maxTtl(\"240\")\n .token(\"ae20ceaa-...\")\n .ttl(\"120\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n config:\n type: vault:NomadSecretBackend\n properties:\n address: https://127.0.0.1:4646\n backend: nomad\n defaultLeaseTtlSeconds: '3600'\n description: test description\n maxLeaseTtlSeconds: '7200'\n maxTtl: '240'\n token: ae20ceaa-...\n ttl: '120'\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nNomad secret backend can be imported using the `backend`, e.g.\n\n```sh\n $ pulumi import vault:index/nomadSecretBackend:NomadSecretBackend nomad nomad\n```\n ",
"properties": {
"address": {
"type": "string",
@@ -19364,7 +16587,7 @@
}
},
"vault:index/nomadSecretRole:NomadSecretRole": {
- "description": "{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst config = new vault.NomadSecretBackend(\"config\", {\n backend: \"nomad\",\n description: \"test description\",\n defaultLeaseTtlSeconds: 3600,\n maxLeaseTtlSeconds: 7200,\n address: \"https://127.0.0.1:4646\",\n token: \"ae20ceaa-...\",\n});\nconst test = new vault.NomadSecretRole(\"test\", {\n backend: config.backend,\n role: \"test\",\n type: \"client\",\n policies: [\"readonly\"],\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nconfig = vault.NomadSecretBackend(\"config\",\n backend=\"nomad\",\n description=\"test description\",\n default_lease_ttl_seconds=3600,\n max_lease_ttl_seconds=7200,\n address=\"https://127.0.0.1:4646\",\n token=\"ae20ceaa-...\")\ntest = vault.NomadSecretRole(\"test\",\n backend=config.backend,\n role=\"test\",\n type=\"client\",\n policies=[\"readonly\"])\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Vault.NomadSecretBackend(\"config\", new()\n {\n Backend = \"nomad\",\n Description = \"test description\",\n DefaultLeaseTtlSeconds = 3600,\n MaxLeaseTtlSeconds = 7200,\n Address = \"https://127.0.0.1:4646\",\n Token = \"ae20ceaa-...\",\n });\n\n var test = new Vault.NomadSecretRole(\"test\", new()\n {\n Backend = config.Backend,\n Role = \"test\",\n Type = \"client\",\n Policies = new[]\n {\n \"readonly\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tconfig, err := vault.NewNomadSecretBackend(ctx, \"config\", \u0026vault.NomadSecretBackendArgs{\n\t\t\tBackend: pulumi.String(\"nomad\"),\n\t\t\tDescription: pulumi.String(\"test description\"),\n\t\t\tDefaultLeaseTtlSeconds: pulumi.Int(3600),\n\t\t\tMaxLeaseTtlSeconds: pulumi.Int(7200),\n\t\t\tAddress: pulumi.String(\"https://127.0.0.1:4646\"),\n\t\t\tToken: pulumi.String(\"ae20ceaa-...\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = vault.NewNomadSecretRole(ctx, \"test\", \u0026vault.NomadSecretRoleArgs{\n\t\t\tBackend: config.Backend,\n\t\t\tRole: pulumi.String(\"test\"),\n\t\t\tType: pulumi.String(\"client\"),\n\t\t\tPolicies: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"readonly\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.NomadSecretBackend;\nimport com.pulumi.vault.NomadSecretBackendArgs;\nimport com.pulumi.vault.NomadSecretRole;\nimport com.pulumi.vault.NomadSecretRoleArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var config = new NomadSecretBackend(\"config\", NomadSecretBackendArgs.builder() \n .backend(\"nomad\")\n .description(\"test description\")\n .defaultLeaseTtlSeconds(\"3600\")\n .maxLeaseTtlSeconds(\"7200\")\n .address(\"https://127.0.0.1:4646\")\n .token(\"ae20ceaa-...\")\n .build());\n\n var test = new NomadSecretRole(\"test\", NomadSecretRoleArgs.builder() \n .backend(config.backend())\n .role(\"test\")\n .type(\"client\")\n .policies(\"readonly\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n config:\n type: vault:NomadSecretBackend\n properties:\n backend: nomad\n description: test description\n defaultLeaseTtlSeconds: 3600\n maxLeaseTtlSeconds: 7200\n address: https://127.0.0.1:4646\n token: ae20ceaa-...\n test:\n type: vault:NomadSecretRole\n properties:\n backend: ${config.backend}\n role: test\n type: client\n policies:\n - readonly\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nNomad secret role can be imported using the `backend`, e.g.\n\n```sh\n $ pulumi import vault:index/nomadSecretRole:NomadSecretRole bob nomad/role/bob\n```\n\n ",
+ "description": "{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst config = new vault.NomadSecretBackend(\"config\", {\n backend: \"nomad\",\n description: \"test description\",\n defaultLeaseTtlSeconds: 3600,\n maxLeaseTtlSeconds: 7200,\n address: \"https://127.0.0.1:4646\",\n token: \"ae20ceaa-...\",\n});\nconst test = new vault.NomadSecretRole(\"test\", {\n backend: config.backend,\n role: \"test\",\n type: \"client\",\n policies: [\"readonly\"],\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nconfig = vault.NomadSecretBackend(\"config\",\n backend=\"nomad\",\n description=\"test description\",\n default_lease_ttl_seconds=3600,\n max_lease_ttl_seconds=7200,\n address=\"https://127.0.0.1:4646\",\n token=\"ae20ceaa-...\")\ntest = vault.NomadSecretRole(\"test\",\n backend=config.backend,\n role=\"test\",\n type=\"client\",\n policies=[\"readonly\"])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Vault.NomadSecretBackend(\"config\", new()\n {\n Backend = \"nomad\",\n Description = \"test description\",\n DefaultLeaseTtlSeconds = 3600,\n MaxLeaseTtlSeconds = 7200,\n Address = \"https://127.0.0.1:4646\",\n Token = \"ae20ceaa-...\",\n });\n\n var test = new Vault.NomadSecretRole(\"test\", new()\n {\n Backend = config.Backend,\n Role = \"test\",\n Type = \"client\",\n Policies = new[]\n {\n \"readonly\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tconfig, err := vault.NewNomadSecretBackend(ctx, \"config\", \u0026vault.NomadSecretBackendArgs{\n\t\t\tBackend: pulumi.String(\"nomad\"),\n\t\t\tDescription: pulumi.String(\"test description\"),\n\t\t\tDefaultLeaseTtlSeconds: pulumi.Int(3600),\n\t\t\tMaxLeaseTtlSeconds: pulumi.Int(7200),\n\t\t\tAddress: pulumi.String(\"https://127.0.0.1:4646\"),\n\t\t\tToken: pulumi.String(\"ae20ceaa-...\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = vault.NewNomadSecretRole(ctx, \"test\", \u0026vault.NomadSecretRoleArgs{\n\t\t\tBackend: config.Backend,\n\t\t\tRole: pulumi.String(\"test\"),\n\t\t\tType: pulumi.String(\"client\"),\n\t\t\tPolicies: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"readonly\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.NomadSecretBackend;\nimport com.pulumi.vault.NomadSecretBackendArgs;\nimport com.pulumi.vault.NomadSecretRole;\nimport com.pulumi.vault.NomadSecretRoleArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var config = new NomadSecretBackend(\"config\", NomadSecretBackendArgs.builder() \n .backend(\"nomad\")\n .description(\"test description\")\n .defaultLeaseTtlSeconds(\"3600\")\n .maxLeaseTtlSeconds(\"7200\")\n .address(\"https://127.0.0.1:4646\")\n .token(\"ae20ceaa-...\")\n .build());\n\n var test = new NomadSecretRole(\"test\", NomadSecretRoleArgs.builder() \n .backend(config.backend())\n .role(\"test\")\n .type(\"client\")\n .policies(\"readonly\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n config:\n type: vault:NomadSecretBackend\n properties:\n backend: nomad\n description: test description\n defaultLeaseTtlSeconds: '3600'\n maxLeaseTtlSeconds: '7200'\n address: https://127.0.0.1:4646\n token: ae20ceaa-...\n test:\n type: vault:NomadSecretRole\n properties:\n backend: ${config.backend}\n role: test\n type: client\n policies:\n - readonly\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nNomad secret role can be imported using the `backend`, e.g.\n\n```sh\n $ pulumi import vault:index/nomadSecretRole:NomadSecretRole bob nomad/role/bob\n```\n ",
"properties": {
"backend": {
"type": "string",
@@ -19475,7 +16698,7 @@
}
},
"vault:index/passwordPolicy:PasswordPolicy": {
- "description": "Provides a resource to manage Password Policies \n\n**Note** this feature is available only Vault 1.5+ \n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst alphanumeric = new vault.PasswordPolicy(\"alphanumeric\", {\n policy: ` length = 20\n rule \"charset\" {\n charset = \"abcdefghijklmnopqrstuvwxyz0123456789\"\n }\n `,\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nalphanumeric = vault.PasswordPolicy(\"alphanumeric\", policy=\"\"\" length = 20\n rule \"charset\" {\n charset = \"abcdefghijklmnopqrstuvwxyz0123456789\"\n }\n \n\"\"\")\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var alphanumeric = new Vault.PasswordPolicy(\"alphanumeric\", new()\n {\n Policy = @\" length = 20\n rule \"\"charset\"\" {\n charset = \"\"abcdefghijklmnopqrstuvwxyz0123456789\"\"\n }\n \n\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := vault.NewPasswordPolicy(ctx, \"alphanumeric\", \u0026vault.PasswordPolicyArgs{\n\t\t\tPolicy: pulumi.String(\" length = 20\\n rule \\\"charset\\\" {\\n charset = \\\"abcdefghijklmnopqrstuvwxyz0123456789\\\"\\n }\\n \\n\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.PasswordPolicy;\nimport com.pulumi.vault.PasswordPolicyArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var alphanumeric = new PasswordPolicy(\"alphanumeric\", PasswordPolicyArgs.builder() \n .policy(\"\"\"\n length = 20\n rule \"charset\" {\n charset = \"abcdefghijklmnopqrstuvwxyz0123456789\"\n }\n \n \"\"\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n alphanumeric:\n type: vault:PasswordPolicy\n properties:\n policy: \" length = 20\\n rule \\\"charset\\\" {\\n charset = \\\"abcdefghijklmnopqrstuvwxyz0123456789\\\"\\n }\\n \\n\"\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nPassword policies can be imported using the `name`, e.g.\n\n```sh\n $ pulumi import vault:index/passwordPolicy:PasswordPolicy alphanumeric alphanumeric\n```\n\n ",
+ "description": "Provides a resource to manage Password Policies \n\n**Note** this feature is available only Vault 1.5+ \n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst alphanumeric = new vault.PasswordPolicy(\"alphanumeric\", {policy: ` length = 20\n rule \"charset\" {\n charset = \"abcdefghijklmnopqrstuvwxyz0123456789\"\n }\n \n`});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nalphanumeric = vault.PasswordPolicy(\"alphanumeric\", policy=\"\"\" length = 20\n rule \"charset\" {\n charset = \"abcdefghijklmnopqrstuvwxyz0123456789\"\n }\n \n\"\"\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var alphanumeric = new Vault.PasswordPolicy(\"alphanumeric\", new()\n {\n Policy = @\" length = 20\n rule \"\"charset\"\" {\n charset = \"\"abcdefghijklmnopqrstuvwxyz0123456789\"\"\n }\n \n\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := vault.NewPasswordPolicy(ctx, \"alphanumeric\", \u0026vault.PasswordPolicyArgs{\n\t\t\tPolicy: pulumi.String(` length = 20\n rule \"charset\" {\n charset = \"abcdefghijklmnopqrstuvwxyz0123456789\"\n }\n \n`),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.PasswordPolicy;\nimport com.pulumi.vault.PasswordPolicyArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var alphanumeric = new PasswordPolicy(\"alphanumeric\", PasswordPolicyArgs.builder() \n .policy(\"\"\"\n length = 20\n rule \"charset\" {\n charset = \"abcdefghijklmnopqrstuvwxyz0123456789\"\n }\n \n \"\"\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n alphanumeric:\n type: vault:PasswordPolicy\n properties:\n policy: \" length = 20\\n rule \\\"charset\\\" {\\n charset = \\\"abcdefghijklmnopqrstuvwxyz0123456789\\\"\\n }\\n \\n\"\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nPassword policies can be imported using the `name`, e.g.\n\n```sh\n $ pulumi import vault:index/passwordPolicy:PasswordPolicy alphanumeric alphanumeric\n```\n ",
"properties": {
"name": {
"type": "string",
@@ -19535,7 +16758,7 @@
}
},
"vault:index/policy:Policy": {
- "description": "\n\n\n## Import\n\nPolicies can be imported using the `name`, e.g.\n\n```sh\n $ pulumi import vault:index/policy:Policy example dev-team\n```\n\n ",
+ "description": "\n\n\n## Import\n\nPolicies can be imported using the `name`, e.g.\n\n```sh\n $ pulumi import vault:index/policy:Policy example dev-team\n```\n ",
"properties": {
"name": {
"type": "string",
@@ -19610,7 +16833,7 @@
}
},
"vault:index/quotaLeaseCount:QuotaLeaseCount": {
- "description": "Manage lease count quotas which enforce the number of leases that can be created.\nA lease count quota can be created at the root level or defined on a namespace or mount by\nspecifying a path when creating the quota.\n\nSee [Vault's Documentation](https://www.vaultproject.io/docs/enterprise/lease-count-quotas) for more\ninformation. \n\n**Note** this feature is available only with Vault Enterprise.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst global = new vault.QuotaLeaseCount(\"global\", {\n maxLeases: 100,\n path: \"\",\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nglobal_ = vault.QuotaLeaseCount(\"global\",\n max_leases=100,\n path=\"\")\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @global = new Vault.QuotaLeaseCount(\"global\", new()\n {\n MaxLeases = 100,\n Path = \"\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := vault.NewQuotaLeaseCount(ctx, \"global\", \u0026vault.QuotaLeaseCountArgs{\n\t\t\tMaxLeases: pulumi.Int(100),\n\t\t\tPath: pulumi.String(\"\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.QuotaLeaseCount;\nimport com.pulumi.vault.QuotaLeaseCountArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var global = new QuotaLeaseCount(\"global\", QuotaLeaseCountArgs.builder() \n .maxLeases(100)\n .path(\"\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n global:\n type: vault:QuotaLeaseCount\n properties:\n maxLeases: 100\n path:\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nLease count quotas can be imported using their names\n\n```sh\n $ pulumi import vault:index/quotaLeaseCount:QuotaLeaseCount global global\n```\n\n ",
+ "description": "Manage lease count quotas which enforce the number of leases that can be created.\nA lease count quota can be created at the root level or defined on a namespace or mount by\nspecifying a path when creating the quota.\n\nSee [Vault's Documentation](https://www.vaultproject.io/docs/enterprise/lease-count-quotas) for more\ninformation. \n\n**Note** this feature is available only with Vault Enterprise.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst global = new vault.QuotaLeaseCount(\"global\", {\n maxLeases: 100,\n path: \"\",\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nglobal_ = vault.QuotaLeaseCount(\"global\",\n max_leases=100,\n path=\"\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @global = new Vault.QuotaLeaseCount(\"global\", new()\n {\n MaxLeases = 100,\n Path = \"\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := vault.NewQuotaLeaseCount(ctx, \"global\", \u0026vault.QuotaLeaseCountArgs{\n\t\t\tMaxLeases: pulumi.Int(100),\n\t\t\tPath: pulumi.String(\"\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.QuotaLeaseCount;\nimport com.pulumi.vault.QuotaLeaseCountArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var global = new QuotaLeaseCount(\"global\", QuotaLeaseCountArgs.builder() \n .maxLeases(100)\n .path(\"\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n global:\n type: vault:QuotaLeaseCount\n properties:\n maxLeases: 100\n path:\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nLease count quotas can be imported using their names\n\n```sh\n $ pulumi import vault:index/quotaLeaseCount:QuotaLeaseCount global global\n```\n ",
"properties": {
"maxLeases": {
"type": "integer",
@@ -19694,7 +16917,7 @@
}
},
"vault:index/quotaRateLimit:QuotaRateLimit": {
- "description": "Manage rate limit quotas which enforce API rate limiting using a token bucket algorithm.\nA rate limit quota can be created at the root level or defined on a namespace or mount by\nspecifying a path when creating the quota.\n\nSee [Vault's Documentation](https://www.vaultproject.io/docs/concepts/resource-quotas) for more\ninformation.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst global = new vault.QuotaRateLimit(\"global\", {\n path: \"\",\n rate: 100,\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nglobal_ = vault.QuotaRateLimit(\"global\",\n path=\"\",\n rate=100)\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @global = new Vault.QuotaRateLimit(\"global\", new()\n {\n Path = \"\",\n Rate = 100,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := vault.NewQuotaRateLimit(ctx, \"global\", \u0026vault.QuotaRateLimitArgs{\n\t\t\tPath: pulumi.String(\"\"),\n\t\t\tRate: pulumi.Float64(100),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.QuotaRateLimit;\nimport com.pulumi.vault.QuotaRateLimitArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var global = new QuotaRateLimit(\"global\", QuotaRateLimitArgs.builder() \n .path(\"\")\n .rate(100)\n .build());\n\n }\n}\n```\n```yaml\nresources:\n global:\n type: vault:QuotaRateLimit\n properties:\n path:\n rate: 100\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nRate limit quotas can be imported using their names\n\n```sh\n $ pulumi import vault:index/quotaRateLimit:QuotaRateLimit global global\n```\n\n ",
+ "description": "Manage rate limit quotas which enforce API rate limiting using a token bucket algorithm.\nA rate limit quota can be created at the root level or defined on a namespace or mount by\nspecifying a path when creating the quota.\n\nSee [Vault's Documentation](https://www.vaultproject.io/docs/concepts/resource-quotas) for more\ninformation.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst global = new vault.QuotaRateLimit(\"global\", {\n path: \"\",\n rate: 100,\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nglobal_ = vault.QuotaRateLimit(\"global\",\n path=\"\",\n rate=100)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @global = new Vault.QuotaRateLimit(\"global\", new()\n {\n Path = \"\",\n Rate = 100,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := vault.NewQuotaRateLimit(ctx, \"global\", \u0026vault.QuotaRateLimitArgs{\n\t\t\tPath: pulumi.String(\"\"),\n\t\t\tRate: pulumi.Float64(100),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.QuotaRateLimit;\nimport com.pulumi.vault.QuotaRateLimitArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var global = new QuotaRateLimit(\"global\", QuotaRateLimitArgs.builder() \n .path(\"\")\n .rate(100)\n .build());\n\n }\n}\n```\n```yaml\nresources:\n global:\n type: vault:QuotaRateLimit\n properties:\n path:\n rate: 100\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nRate limit quotas can be imported using their names\n\n```sh\n $ pulumi import vault:index/quotaRateLimit:QuotaRateLimit global global\n```\n ",
"properties": {
"blockInterval": {
"type": "integer",
@@ -19805,7 +17028,7 @@
}
},
"vault:index/raftAutopilot:RaftAutopilot": {
- "description": "Autopilot enables automated workflows for managing Raft clusters. The \ncurrent feature set includes 3 main features: Server Stabilization, Dead \nServer Cleanup and State API. **These three features are introduced in \nVault 1.7.**\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst autopilot = new vault.RaftAutopilot(\"autopilot\", {\n cleanupDeadServers: true,\n deadServerLastContactThreshold: \"24h0m0s\",\n lastContactThreshold: \"10s\",\n maxTrailingLogs: 1000,\n minQuorum: 3,\n serverStabilizationTime: \"10s\",\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nautopilot = vault.RaftAutopilot(\"autopilot\",\n cleanup_dead_servers=True,\n dead_server_last_contact_threshold=\"24h0m0s\",\n last_contact_threshold=\"10s\",\n max_trailing_logs=1000,\n min_quorum=3,\n server_stabilization_time=\"10s\")\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var autopilot = new Vault.RaftAutopilot(\"autopilot\", new()\n {\n CleanupDeadServers = true,\n DeadServerLastContactThreshold = \"24h0m0s\",\n LastContactThreshold = \"10s\",\n MaxTrailingLogs = 1000,\n MinQuorum = 3,\n ServerStabilizationTime = \"10s\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := vault.NewRaftAutopilot(ctx, \"autopilot\", \u0026vault.RaftAutopilotArgs{\n\t\t\tCleanupDeadServers: pulumi.Bool(true),\n\t\t\tDeadServerLastContactThreshold: pulumi.String(\"24h0m0s\"),\n\t\t\tLastContactThreshold: pulumi.String(\"10s\"),\n\t\t\tMaxTrailingLogs: pulumi.Int(1000),\n\t\t\tMinQuorum: pulumi.Int(3),\n\t\t\tServerStabilizationTime: pulumi.String(\"10s\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.RaftAutopilot;\nimport com.pulumi.vault.RaftAutopilotArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var autopilot = new RaftAutopilot(\"autopilot\", RaftAutopilotArgs.builder() \n .cleanupDeadServers(true)\n .deadServerLastContactThreshold(\"24h0m0s\")\n .lastContactThreshold(\"10s\")\n .maxTrailingLogs(1000)\n .minQuorum(3)\n .serverStabilizationTime(\"10s\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n autopilot:\n type: vault:RaftAutopilot\n properties:\n cleanupDeadServers: true\n deadServerLastContactThreshold: 24h0m0s\n lastContactThreshold: 10s\n maxTrailingLogs: 1000\n minQuorum: 3\n serverStabilizationTime: 10s\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nRaft Autopilot config can be imported using the ID, e.g.\n\n```sh\n $ pulumi import vault:index/raftAutopilot:RaftAutopilot autopilot sys/storage/raft/autopilot/configuration\n```\n\n ",
+ "description": "Autopilot enables automated workflows for managing Raft clusters. The \ncurrent feature set includes 3 main features: Server Stabilization, Dead \nServer Cleanup and State API. **These three features are introduced in \nVault 1.7.**\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst autopilot = new vault.RaftAutopilot(\"autopilot\", {\n cleanupDeadServers: true,\n deadServerLastContactThreshold: \"24h0m0s\",\n lastContactThreshold: \"10s\",\n maxTrailingLogs: 1000,\n minQuorum: 3,\n serverStabilizationTime: \"10s\",\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nautopilot = vault.RaftAutopilot(\"autopilot\",\n cleanup_dead_servers=True,\n dead_server_last_contact_threshold=\"24h0m0s\",\n last_contact_threshold=\"10s\",\n max_trailing_logs=1000,\n min_quorum=3,\n server_stabilization_time=\"10s\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var autopilot = new Vault.RaftAutopilot(\"autopilot\", new()\n {\n CleanupDeadServers = true,\n DeadServerLastContactThreshold = \"24h0m0s\",\n LastContactThreshold = \"10s\",\n MaxTrailingLogs = 1000,\n MinQuorum = 3,\n ServerStabilizationTime = \"10s\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := vault.NewRaftAutopilot(ctx, \"autopilot\", \u0026vault.RaftAutopilotArgs{\n\t\t\tCleanupDeadServers: pulumi.Bool(true),\n\t\t\tDeadServerLastContactThreshold: pulumi.String(\"24h0m0s\"),\n\t\t\tLastContactThreshold: pulumi.String(\"10s\"),\n\t\t\tMaxTrailingLogs: pulumi.Int(1000),\n\t\t\tMinQuorum: pulumi.Int(3),\n\t\t\tServerStabilizationTime: pulumi.String(\"10s\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.RaftAutopilot;\nimport com.pulumi.vault.RaftAutopilotArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var autopilot = new RaftAutopilot(\"autopilot\", RaftAutopilotArgs.builder() \n .cleanupDeadServers(true)\n .deadServerLastContactThreshold(\"24h0m0s\")\n .lastContactThreshold(\"10s\")\n .maxTrailingLogs(1000)\n .minQuorum(3)\n .serverStabilizationTime(\"10s\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n autopilot:\n type: vault:RaftAutopilot\n properties:\n cleanupDeadServers: true\n deadServerLastContactThreshold: 24h0m0s\n lastContactThreshold: 10s\n maxTrailingLogs: 1000\n minQuorum: 3\n serverStabilizationTime: 10s\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nRaft Autopilot config can be imported using the ID, e.g.\n\n```sh\n $ pulumi import vault:index/raftAutopilot:RaftAutopilot autopilot sys/storage/raft/autopilot/configuration\n```\n ",
"properties": {
"cleanupDeadServers": {
"type": "boolean",
@@ -19916,7 +17139,7 @@
}
},
"vault:index/raftSnapshotAgentConfig:RaftSnapshotAgentConfig": {
- "description": "{{% examples %}}\n## Example Usage\n{{% example %}}\n### Local Storage\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst localBackups = new vault.RaftSnapshotAgentConfig(\"local_backups\", {\n intervalSeconds: 86400, // 24h\n // Storage Type Configuration\n localMaxSpace: 10000000,\n pathPrefix: \"/opt/vault/snapshots/\",\n retain: 7,\n storageType: \"local\",\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nlocal_backups = vault.RaftSnapshotAgentConfig(\"localBackups\",\n interval_seconds=86400,\n local_max_space=10000000,\n path_prefix=\"/opt/vault/snapshots/\",\n retain=7,\n storage_type=\"local\")\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var localBackups = new Vault.RaftSnapshotAgentConfig(\"localBackups\", new()\n {\n IntervalSeconds = 86400,\n LocalMaxSpace = 10000000,\n PathPrefix = \"/opt/vault/snapshots/\",\n Retain = 7,\n StorageType = \"local\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := vault.NewRaftSnapshotAgentConfig(ctx, \"localBackups\", \u0026vault.RaftSnapshotAgentConfigArgs{\n\t\t\tIntervalSeconds: pulumi.Int(86400),\n\t\t\tLocalMaxSpace: pulumi.Int(10000000),\n\t\t\tPathPrefix: pulumi.String(\"/opt/vault/snapshots/\"),\n\t\t\tRetain: pulumi.Int(7),\n\t\t\tStorageType: pulumi.String(\"local\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.RaftSnapshotAgentConfig;\nimport com.pulumi.vault.RaftSnapshotAgentConfigArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var localBackups = new RaftSnapshotAgentConfig(\"localBackups\", RaftSnapshotAgentConfigArgs.builder() \n .intervalSeconds(86400)\n .localMaxSpace(10000000)\n .pathPrefix(\"/opt/vault/snapshots/\")\n .retain(7)\n .storageType(\"local\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n localBackups:\n type: vault:RaftSnapshotAgentConfig\n properties:\n intervalSeconds: 86400\n # 24h\n # // Storage Type Configuration\n localMaxSpace: 1e+07\n pathPrefix: /opt/vault/snapshots/\n retain: 7\n storageType: local\n```\n{{% /example %}}\n{{% example %}}\n### AWS S3\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws from \"@pulumi/aws\";\nimport * as vault from \"@pulumi/vault\";\n\nconst config = new pulumi.Config();\nconst awsAccessKeyId = config.requireObject(\"awsAccessKeyId\");\nconst awsSecretAccessKey = config.requireObject(\"awsSecretAccessKey\");\nconst current = aws.getRegion({});\nconst s3Backups = new vault.RaftSnapshotAgentConfig(\"s3Backups\", {\n intervalSeconds: 86400,\n retain: 7,\n pathPrefix: \"/path/in/bucket\",\n storageType: \"aws-s3\",\n awsS3Bucket: \"my-bucket\",\n awsS3Region: current.then(current =\u003e current.name),\n awsAccessKeyId: awsAccessKeyId,\n awsSecretAccessKey: awsSecretAccessKey,\n awsS3EnableKms: true,\n});\n```\n```python\nimport pulumi\nimport pulumi_aws as aws\nimport pulumi_vault as vault\n\nconfig = pulumi.Config()\naws_access_key_id = config.require_object(\"awsAccessKeyId\")\naws_secret_access_key = config.require_object(\"awsSecretAccessKey\")\ncurrent = aws.get_region()\ns3_backups = vault.RaftSnapshotAgentConfig(\"s3Backups\",\n interval_seconds=86400,\n retain=7,\n path_prefix=\"/path/in/bucket\",\n storage_type=\"aws-s3\",\n aws_s3_bucket=\"my-bucket\",\n aws_s3_region=current.name,\n aws_access_key_id=aws_access_key_id,\n aws_secret_access_key=aws_secret_access_key,\n aws_s3_enable_kms=True)\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Aws = Pulumi.Aws;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var awsAccessKeyId = config.RequireObject\u003cdynamic\u003e(\"awsAccessKeyId\");\n var awsSecretAccessKey = config.RequireObject\u003cdynamic\u003e(\"awsSecretAccessKey\");\n var current = Aws.GetRegion.Invoke();\n\n var s3Backups = new Vault.RaftSnapshotAgentConfig(\"s3Backups\", new()\n {\n IntervalSeconds = 86400,\n Retain = 7,\n PathPrefix = \"/path/in/bucket\",\n StorageType = \"aws-s3\",\n AwsS3Bucket = \"my-bucket\",\n AwsS3Region = current.Apply(getRegionResult =\u003e getRegionResult.Name),\n AwsAccessKeyId = awsAccessKeyId,\n AwsSecretAccessKey = awsSecretAccessKey,\n AwsS3EnableKms = true,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws/sdk/v5/go/aws\"\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tawsAccessKeyId := cfg.RequireObject(\"awsAccessKeyId\")\n\t\tawsSecretAccessKey := cfg.RequireObject(\"awsSecretAccessKey\")\n\t\tcurrent, err := aws.GetRegion(ctx, nil, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = vault.NewRaftSnapshotAgentConfig(ctx, \"s3Backups\", \u0026vault.RaftSnapshotAgentConfigArgs{\n\t\t\tIntervalSeconds: pulumi.Int(86400),\n\t\t\tRetain: pulumi.Int(7),\n\t\t\tPathPrefix: pulumi.String(\"/path/in/bucket\"),\n\t\t\tStorageType: pulumi.String(\"aws-s3\"),\n\t\t\tAwsS3Bucket: pulumi.String(\"my-bucket\"),\n\t\t\tAwsS3Region: pulumi.String(current.Name),\n\t\t\tAwsAccessKeyId: pulumi.Any(awsAccessKeyId),\n\t\t\tAwsSecretAccessKey: pulumi.Any(awsSecretAccessKey),\n\t\t\tAwsS3EnableKms: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.aws.AwsFunctions;\nimport com.pulumi.aws.inputs.GetRegionArgs;\nimport com.pulumi.vault.RaftSnapshotAgentConfig;\nimport com.pulumi.vault.RaftSnapshotAgentConfigArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var awsAccessKeyId = config.get(\"awsAccessKeyId\");\n final var awsSecretAccessKey = config.get(\"awsSecretAccessKey\");\n final var current = AwsFunctions.getRegion();\n\n var s3Backups = new RaftSnapshotAgentConfig(\"s3Backups\", RaftSnapshotAgentConfigArgs.builder() \n .intervalSeconds(86400)\n .retain(7)\n .pathPrefix(\"/path/in/bucket\")\n .storageType(\"aws-s3\")\n .awsS3Bucket(\"my-bucket\")\n .awsS3Region(current.applyValue(getRegionResult -\u003e getRegionResult.name()))\n .awsAccessKeyId(awsAccessKeyId)\n .awsSecretAccessKey(awsSecretAccessKey)\n .awsS3EnableKms(true)\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n awsAccessKeyId:\n type: dynamic\n awsSecretAccessKey:\n type: dynamic\nresources:\n s3Backups:\n type: vault:RaftSnapshotAgentConfig\n properties:\n intervalSeconds: 86400\n # 24h\n retain: 7\n pathPrefix: /path/in/bucket\n storageType: aws-s3\n # Storage Type Configuration\n awsS3Bucket: my-bucket\n awsS3Region: ${current.name}\n awsAccessKeyId: ${awsAccessKeyId}\n awsSecretAccessKey: ${awsSecretAccessKey}\n awsS3EnableKms: true\nvariables:\n current:\n Fn::Invoke:\n Function: aws:getRegion\n Arguments: {}\n```\n{{% /example %}}\n{{% example %}}\n### Azure BLOB\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst config = new pulumi.Config();\nconst azureAccountName = config.requireObject(\"azureAccountName\");\nconst azureAccountKey = config.requireObject(\"azureAccountKey\");\nconst azureBackups = new vault.RaftSnapshotAgentConfig(\"azureBackups\", {\n intervalSeconds: 86400,\n retain: 7,\n pathPrefix: \"/\",\n storageType: \"azure-blob\",\n azureContainerName: \"vault-blob\",\n azureAccountName: azureAccountName,\n azureAccountKey: azureAccountKey,\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nconfig = pulumi.Config()\nazure_account_name = config.require_object(\"azureAccountName\")\nazure_account_key = config.require_object(\"azureAccountKey\")\nazure_backups = vault.RaftSnapshotAgentConfig(\"azureBackups\",\n interval_seconds=86400,\n retain=7,\n path_prefix=\"/\",\n storage_type=\"azure-blob\",\n azure_container_name=\"vault-blob\",\n azure_account_name=azure_account_name,\n azure_account_key=azure_account_key)\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var azureAccountName = config.RequireObject\u003cdynamic\u003e(\"azureAccountName\");\n var azureAccountKey = config.RequireObject\u003cdynamic\u003e(\"azureAccountKey\");\n var azureBackups = new Vault.RaftSnapshotAgentConfig(\"azureBackups\", new()\n {\n IntervalSeconds = 86400,\n Retain = 7,\n PathPrefix = \"/\",\n StorageType = \"azure-blob\",\n AzureContainerName = \"vault-blob\",\n AzureAccountName = azureAccountName,\n AzureAccountKey = azureAccountKey,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tazureAccountName := cfg.RequireObject(\"azureAccountName\")\n\t\tazureAccountKey := cfg.RequireObject(\"azureAccountKey\")\n\t\t_, err := vault.NewRaftSnapshotAgentConfig(ctx, \"azureBackups\", \u0026vault.RaftSnapshotAgentConfigArgs{\n\t\t\tIntervalSeconds: pulumi.Int(86400),\n\t\t\tRetain: pulumi.Int(7),\n\t\t\tPathPrefix: pulumi.String(\"/\"),\n\t\t\tStorageType: pulumi.String(\"azure-blob\"),\n\t\t\tAzureContainerName: pulumi.String(\"vault-blob\"),\n\t\t\tAzureAccountName: pulumi.Any(azureAccountName),\n\t\t\tAzureAccountKey: pulumi.Any(azureAccountKey),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.RaftSnapshotAgentConfig;\nimport com.pulumi.vault.RaftSnapshotAgentConfigArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var azureAccountName = config.get(\"azureAccountName\");\n final var azureAccountKey = config.get(\"azureAccountKey\");\n var azureBackups = new RaftSnapshotAgentConfig(\"azureBackups\", RaftSnapshotAgentConfigArgs.builder() \n .intervalSeconds(86400)\n .retain(7)\n .pathPrefix(\"/\")\n .storageType(\"azure-blob\")\n .azureContainerName(\"vault-blob\")\n .azureAccountName(azureAccountName)\n .azureAccountKey(azureAccountKey)\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n azureAccountName:\n type: dynamic\n azureAccountKey:\n type: dynamic\nresources:\n azureBackups:\n type: vault:RaftSnapshotAgentConfig\n properties:\n intervalSeconds: 86400\n # 24h\n retain: 7\n pathPrefix: /\n storageType: azure-blob\n # Storage Type Configuration\n azureContainerName: vault-blob\n azureAccountName: ${azureAccountName}\n azureAccountKey: ${azureAccountKey}\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nRaft Snapshot Agent Configurations can be imported using the `name`, e.g.\n\n```sh\n $ pulumi import vault:index/raftSnapshotAgentConfig:RaftSnapshotAgentConfig local local\n```\n\n ",
+ "description": "{{% examples %}}\n## Example Usage\n{{% example %}}\n### Local Storage\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst localBackups = new vault.RaftSnapshotAgentConfig(\"localBackups\", {\n intervalSeconds: 86400,\n localMaxSpace: 10000000,\n pathPrefix: \"/opt/vault/snapshots/\",\n retain: 7,\n storageType: \"local\",\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nlocal_backups = vault.RaftSnapshotAgentConfig(\"localBackups\",\n interval_seconds=86400,\n local_max_space=10000000,\n path_prefix=\"/opt/vault/snapshots/\",\n retain=7,\n storage_type=\"local\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var localBackups = new Vault.RaftSnapshotAgentConfig(\"localBackups\", new()\n {\n IntervalSeconds = 86400,\n LocalMaxSpace = 10000000,\n PathPrefix = \"/opt/vault/snapshots/\",\n Retain = 7,\n StorageType = \"local\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := vault.NewRaftSnapshotAgentConfig(ctx, \"localBackups\", \u0026vault.RaftSnapshotAgentConfigArgs{\n\t\t\tIntervalSeconds: pulumi.Int(86400),\n\t\t\tLocalMaxSpace: pulumi.Int(10000000),\n\t\t\tPathPrefix: pulumi.String(\"/opt/vault/snapshots/\"),\n\t\t\tRetain: pulumi.Int(7),\n\t\t\tStorageType: pulumi.String(\"local\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.RaftSnapshotAgentConfig;\nimport com.pulumi.vault.RaftSnapshotAgentConfigArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var localBackups = new RaftSnapshotAgentConfig(\"localBackups\", RaftSnapshotAgentConfigArgs.builder() \n .intervalSeconds(86400)\n .localMaxSpace(10000000)\n .pathPrefix(\"/opt/vault/snapshots/\")\n .retain(7)\n .storageType(\"local\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n localBackups:\n type: vault:RaftSnapshotAgentConfig\n properties:\n intervalSeconds: 86400\n # 24h\n # // Storage Type Configuration\n localMaxSpace: 1e+07\n pathPrefix: /opt/vault/snapshots/\n retain: 7\n storageType: local\n```\n{{% /example %}}\n{{% example %}}\n### AWS S3\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws from \"@pulumi/aws\";\nimport * as vault from \"@pulumi/vault\";\n\nconst config = new pulumi.Config();\nconst awsAccessKeyId = config.requireObject(\"awsAccessKeyId\");\nconst awsSecretAccessKey = config.requireObject(\"awsSecretAccessKey\");\nconst current = aws.getRegion({});\nconst s3Backups = new vault.RaftSnapshotAgentConfig(\"s3Backups\", {\n intervalSeconds: 86400,\n retain: 7,\n pathPrefix: \"/path/in/bucket\",\n storageType: \"aws-s3\",\n awsS3Bucket: \"my-bucket\",\n awsS3Region: current.then(current =\u003e current.name),\n awsAccessKeyId: awsAccessKeyId,\n awsSecretAccessKey: awsSecretAccessKey,\n awsS3EnableKms: true,\n});\n```\n```python\nimport pulumi\nimport pulumi_aws as aws\nimport pulumi_vault as vault\n\nconfig = pulumi.Config()\naws_access_key_id = config.require_object(\"awsAccessKeyId\")\naws_secret_access_key = config.require_object(\"awsSecretAccessKey\")\ncurrent = aws.get_region()\ns3_backups = vault.RaftSnapshotAgentConfig(\"s3Backups\",\n interval_seconds=86400,\n retain=7,\n path_prefix=\"/path/in/bucket\",\n storage_type=\"aws-s3\",\n aws_s3_bucket=\"my-bucket\",\n aws_s3_region=current.name,\n aws_access_key_id=aws_access_key_id,\n aws_secret_access_key=aws_secret_access_key,\n aws_s3_enable_kms=True)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Aws = Pulumi.Aws;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var awsAccessKeyId = config.RequireObject\u003cdynamic\u003e(\"awsAccessKeyId\");\n var awsSecretAccessKey = config.RequireObject\u003cdynamic\u003e(\"awsSecretAccessKey\");\n var current = Aws.GetRegion.Invoke();\n\n var s3Backups = new Vault.RaftSnapshotAgentConfig(\"s3Backups\", new()\n {\n IntervalSeconds = 86400,\n Retain = 7,\n PathPrefix = \"/path/in/bucket\",\n StorageType = \"aws-s3\",\n AwsS3Bucket = \"my-bucket\",\n AwsS3Region = current.Apply(getRegionResult =\u003e getRegionResult.Name),\n AwsAccessKeyId = awsAccessKeyId,\n AwsSecretAccessKey = awsSecretAccessKey,\n AwsS3EnableKms = true,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws/sdk/v5/go/aws\"\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tawsAccessKeyId := cfg.RequireObject(\"awsAccessKeyId\")\n\t\tawsSecretAccessKey := cfg.RequireObject(\"awsSecretAccessKey\")\n\t\tcurrent, err := aws.GetRegion(ctx, nil, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = vault.NewRaftSnapshotAgentConfig(ctx, \"s3Backups\", \u0026vault.RaftSnapshotAgentConfigArgs{\n\t\t\tIntervalSeconds: pulumi.Int(86400),\n\t\t\tRetain: pulumi.Int(7),\n\t\t\tPathPrefix: pulumi.String(\"/path/in/bucket\"),\n\t\t\tStorageType: pulumi.String(\"aws-s3\"),\n\t\t\tAwsS3Bucket: pulumi.String(\"my-bucket\"),\n\t\t\tAwsS3Region: *pulumi.String(current.Name),\n\t\t\tAwsAccessKeyId: pulumi.Any(awsAccessKeyId),\n\t\t\tAwsSecretAccessKey: pulumi.Any(awsSecretAccessKey),\n\t\t\tAwsS3EnableKms: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.aws.AwsFunctions;\nimport com.pulumi.aws.inputs.GetRegionArgs;\nimport com.pulumi.vault.RaftSnapshotAgentConfig;\nimport com.pulumi.vault.RaftSnapshotAgentConfigArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var awsAccessKeyId = config.get(\"awsAccessKeyId\");\n final var awsSecretAccessKey = config.get(\"awsSecretAccessKey\");\n final var current = AwsFunctions.getRegion();\n\n var s3Backups = new RaftSnapshotAgentConfig(\"s3Backups\", RaftSnapshotAgentConfigArgs.builder() \n .intervalSeconds(86400)\n .retain(7)\n .pathPrefix(\"/path/in/bucket\")\n .storageType(\"aws-s3\")\n .awsS3Bucket(\"my-bucket\")\n .awsS3Region(current.applyValue(getRegionResult -\u003e getRegionResult.name()))\n .awsAccessKeyId(awsAccessKeyId)\n .awsSecretAccessKey(awsSecretAccessKey)\n .awsS3EnableKms(true)\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n awsAccessKeyId:\n type: dynamic\n awsSecretAccessKey:\n type: dynamic\nresources:\n s3Backups:\n type: vault:RaftSnapshotAgentConfig\n properties:\n intervalSeconds: 86400\n # 24h\n retain: 7\n pathPrefix: /path/in/bucket\n storageType: aws-s3\n # Storage Type Configuration\n awsS3Bucket: my-bucket\n awsS3Region: ${current.name}\n awsAccessKeyId: ${awsAccessKeyId}\n awsSecretAccessKey: ${awsSecretAccessKey}\n awsS3EnableKms: true\nvariables:\n current:\n fn::invoke:\n Function: aws:getRegion\n Arguments: {}\n```\n{{% /example %}}\n{{% example %}}\n### Azure BLOB\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst config = new pulumi.Config();\nconst azureAccountName = config.requireObject(\"azureAccountName\");\nconst azureAccountKey = config.requireObject(\"azureAccountKey\");\nconst azureBackups = new vault.RaftSnapshotAgentConfig(\"azureBackups\", {\n intervalSeconds: 86400,\n retain: 7,\n pathPrefix: \"/\",\n storageType: \"azure-blob\",\n azureContainerName: \"vault-blob\",\n azureAccountName: azureAccountName,\n azureAccountKey: azureAccountKey,\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nconfig = pulumi.Config()\nazure_account_name = config.require_object(\"azureAccountName\")\nazure_account_key = config.require_object(\"azureAccountKey\")\nazure_backups = vault.RaftSnapshotAgentConfig(\"azureBackups\",\n interval_seconds=86400,\n retain=7,\n path_prefix=\"/\",\n storage_type=\"azure-blob\",\n azure_container_name=\"vault-blob\",\n azure_account_name=azure_account_name,\n azure_account_key=azure_account_key)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var azureAccountName = config.RequireObject\u003cdynamic\u003e(\"azureAccountName\");\n var azureAccountKey = config.RequireObject\u003cdynamic\u003e(\"azureAccountKey\");\n var azureBackups = new Vault.RaftSnapshotAgentConfig(\"azureBackups\", new()\n {\n IntervalSeconds = 86400,\n Retain = 7,\n PathPrefix = \"/\",\n StorageType = \"azure-blob\",\n AzureContainerName = \"vault-blob\",\n AzureAccountName = azureAccountName,\n AzureAccountKey = azureAccountKey,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tazureAccountName := cfg.RequireObject(\"azureAccountName\")\n\t\tazureAccountKey := cfg.RequireObject(\"azureAccountKey\")\n\t\t_, err := vault.NewRaftSnapshotAgentConfig(ctx, \"azureBackups\", \u0026vault.RaftSnapshotAgentConfigArgs{\n\t\t\tIntervalSeconds: pulumi.Int(86400),\n\t\t\tRetain: pulumi.Int(7),\n\t\t\tPathPrefix: pulumi.String(\"/\"),\n\t\t\tStorageType: pulumi.String(\"azure-blob\"),\n\t\t\tAzureContainerName: pulumi.String(\"vault-blob\"),\n\t\t\tAzureAccountName: pulumi.Any(azureAccountName),\n\t\t\tAzureAccountKey: pulumi.Any(azureAccountKey),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.RaftSnapshotAgentConfig;\nimport com.pulumi.vault.RaftSnapshotAgentConfigArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var azureAccountName = config.get(\"azureAccountName\");\n final var azureAccountKey = config.get(\"azureAccountKey\");\n var azureBackups = new RaftSnapshotAgentConfig(\"azureBackups\", RaftSnapshotAgentConfigArgs.builder() \n .intervalSeconds(86400)\n .retain(7)\n .pathPrefix(\"/\")\n .storageType(\"azure-blob\")\n .azureContainerName(\"vault-blob\")\n .azureAccountName(azureAccountName)\n .azureAccountKey(azureAccountKey)\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n azureAccountName:\n type: dynamic\n azureAccountKey:\n type: dynamic\nresources:\n azureBackups:\n type: vault:RaftSnapshotAgentConfig\n properties:\n intervalSeconds: 86400\n # 24h\n retain: 7\n pathPrefix: /\n storageType: azure-blob\n # Storage Type Configuration\n azureContainerName: vault-blob\n azureAccountName: ${azureAccountName}\n azureAccountKey: ${azureAccountKey}\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nRaft Snapshot Agent Configurations can be imported using the `name`, e.g.\n\n```sh\n $ pulumi import vault:index/raftSnapshotAgentConfig:RaftSnapshotAgentConfig local local\n```\n ",
"properties": {
"awsAccessKeyId": {
"type": "string",
@@ -20000,7 +17223,7 @@
},
"googleServiceAccountKey": {
"type": "string",
- "description": "Google service account key in JSON format. \nThe raw value looks like this:\n"
+ "description": "Google service account key in JSON format. \nThe raw value looks like this:\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\n```\n```python\nimport pulumi\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n }\n}\n```\n```yaml\n{}\n```\n"
},
"intervalSeconds": {
"type": "integer",
@@ -20120,7 +17343,7 @@
},
"googleServiceAccountKey": {
"type": "string",
- "description": "Google service account key in JSON format. \nThe raw value looks like this:\n"
+ "description": "Google service account key in JSON format. \nThe raw value looks like this:\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\n```\n```python\nimport pulumi\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n }\n}\n```\n```yaml\n{}\n```\n"
},
"intervalSeconds": {
"type": "integer",
@@ -20244,7 +17467,7 @@
},
"googleServiceAccountKey": {
"type": "string",
- "description": "Google service account key in JSON format. \nThe raw value looks like this:\n"
+ "description": "Google service account key in JSON format. \nThe raw value looks like this:\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\n```\n```python\nimport pulumi\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n }\n}\n```\n```yaml\n{}\n```\n"
},
"intervalSeconds": {
"type": "integer",
@@ -20282,7 +17505,7 @@
}
},
"vault:index/rgpPolicy:RgpPolicy": {
- "description": "Provides a resource to manage Role Governing Policy (RGP) via [Sentinel](https://www.vaultproject.io/docs/enterprise/sentinel/index.html).\n\n**Note** this feature is available only with Vault Enterprise.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst allow_all = new vault.RgpPolicy(\"allow-all\", {\n enforcementLevel: \"soft-mandatory\",\n policy: `main = rule {\n true\n}\n`,\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nallow_all = vault.RgpPolicy(\"allow-all\",\n enforcement_level=\"soft-mandatory\",\n policy=\"\"\"main = rule {\n true\n}\n\n\"\"\")\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var allow_all = new Vault.RgpPolicy(\"allow-all\", new()\n {\n EnforcementLevel = \"soft-mandatory\",\n Policy = @\"main = rule {\n true\n}\n\n\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := vault.NewRgpPolicy(ctx, \"allow-all\", \u0026vault.RgpPolicyArgs{\n\t\t\tEnforcementLevel: pulumi.String(\"soft-mandatory\"),\n\t\t\tPolicy: pulumi.String(\"main = rule {\\n true\\n}\\n\\n\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.RgpPolicy;\nimport com.pulumi.vault.RgpPolicyArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var allow_all = new RgpPolicy(\"allow-all\", RgpPolicyArgs.builder() \n .enforcementLevel(\"soft-mandatory\")\n .policy(\"\"\"\nmain = rule {\n true\n}\n\n \"\"\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n allow-all:\n type: vault:RgpPolicy\n properties:\n enforcementLevel: soft-mandatory\n policy: |+\n main = rule {\n true\n }\n```\n{{% /example %}}\n{{% /examples %}}",
+ "description": "Provides a resource to manage Role Governing Policy (RGP) via [Sentinel](https://www.vaultproject.io/docs/enterprise/sentinel/index.html).\n\n**Note** this feature is available only with Vault Enterprise.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst allow_all = new vault.RgpPolicy(\"allow-all\", {\n enforcementLevel: \"soft-mandatory\",\n policy: `main = rule {\n true\n}\n\n`,\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nallow_all = vault.RgpPolicy(\"allow-all\",\n enforcement_level=\"soft-mandatory\",\n policy=\"\"\"main = rule {\n true\n}\n\n\"\"\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var allow_all = new Vault.RgpPolicy(\"allow-all\", new()\n {\n EnforcementLevel = \"soft-mandatory\",\n Policy = @\"main = rule {\n true\n}\n\n\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := vault.NewRgpPolicy(ctx, \"allow-all\", \u0026vault.RgpPolicyArgs{\n\t\t\tEnforcementLevel: pulumi.String(\"soft-mandatory\"),\n\t\t\tPolicy: pulumi.String(\"main = rule {\\n true\\n}\\n\\n\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.RgpPolicy;\nimport com.pulumi.vault.RgpPolicyArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var allow_all = new RgpPolicy(\"allow-all\", RgpPolicyArgs.builder() \n .enforcementLevel(\"soft-mandatory\")\n .policy(\"\"\"\nmain = rule {\n true\n}\n\n \"\"\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n allow-all:\n type: vault:RgpPolicy\n properties:\n enforcementLevel: soft-mandatory\n policy: |+\n main = rule {\n true\n }\n```\n{{% /example %}}\n{{% /examples %}}",
"properties": {
"enforcementLevel": {
"type": "string",
@@ -20356,7 +17579,7 @@
}
},
"vault:index/token:Token": {
- "description": "{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst example = new vault.Token(\"example\", {\n metadata: {\n purpose: \"service-account\",\n },\n policies: [\n \"policy1\",\n \"policy2\",\n ],\n renewIncrement: 86400,\n renewMinLease: 43200,\n renewable: true,\n roleName: \"app\",\n ttl: \"24h\",\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nexample = vault.Token(\"example\",\n metadata={\n \"purpose\": \"service-account\",\n },\n policies=[\n \"policy1\",\n \"policy2\",\n ],\n renew_increment=86400,\n renew_min_lease=43200,\n renewable=True,\n role_name=\"app\",\n ttl=\"24h\")\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new Vault.Token(\"example\", new()\n {\n Metadata = \n {\n { \"purpose\", \"service-account\" },\n },\n Policies = new[]\n {\n \"policy1\",\n \"policy2\",\n },\n RenewIncrement = 86400,\n RenewMinLease = 43200,\n Renewable = true,\n RoleName = \"app\",\n Ttl = \"24h\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := vault.NewToken(ctx, \"example\", \u0026vault.TokenArgs{\n\t\t\tMetadata: pulumi.StringMap{\n\t\t\t\t\"purpose\": pulumi.String(\"service-account\"),\n\t\t\t},\n\t\t\tPolicies: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"policy1\"),\n\t\t\t\tpulumi.String(\"policy2\"),\n\t\t\t},\n\t\t\tRenewIncrement: pulumi.Int(86400),\n\t\t\tRenewMinLease: pulumi.Int(43200),\n\t\t\tRenewable: pulumi.Bool(true),\n\t\t\tRoleName: pulumi.String(\"app\"),\n\t\t\tTtl: pulumi.String(\"24h\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.Token;\nimport com.pulumi.vault.TokenArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new Token(\"example\", TokenArgs.builder() \n .metadata(Map.of(\"purpose\", \"service-account\"))\n .policies( \n \"policy1\",\n \"policy2\")\n .renewIncrement(86400)\n .renewMinLease(43200)\n .renewable(true)\n .roleName(\"app\")\n .ttl(\"24h\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: vault:Token\n properties:\n metadata:\n purpose: service-account\n policies:\n - policy1\n - policy2\n renewIncrement: 86400\n renewMinLease: 43200\n renewable: true\n roleName: app\n ttl: 24h\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nTokens can be imported using its `id` as accessor id, e.g.\n\n```sh\n $ pulumi import vault:index/token:Token example \u003caccessor_id\u003e\n```\n\n ",
+ "description": "{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst example = new vault.Token(\"example\", {\n metadata: {\n purpose: \"service-account\",\n },\n policies: [\n \"policy1\",\n \"policy2\",\n ],\n renewIncrement: 86400,\n renewMinLease: 43200,\n renewable: true,\n roleName: \"app\",\n ttl: \"24h\",\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nexample = vault.Token(\"example\",\n metadata={\n \"purpose\": \"service-account\",\n },\n policies=[\n \"policy1\",\n \"policy2\",\n ],\n renew_increment=86400,\n renew_min_lease=43200,\n renewable=True,\n role_name=\"app\",\n ttl=\"24h\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new Vault.Token(\"example\", new()\n {\n Metadata = \n {\n { \"purpose\", \"service-account\" },\n },\n Policies = new[]\n {\n \"policy1\",\n \"policy2\",\n },\n RenewIncrement = 86400,\n RenewMinLease = 43200,\n Renewable = true,\n RoleName = \"app\",\n Ttl = \"24h\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := vault.NewToken(ctx, \"example\", \u0026vault.TokenArgs{\n\t\t\tMetadata: pulumi.StringMap{\n\t\t\t\t\"purpose\": pulumi.String(\"service-account\"),\n\t\t\t},\n\t\t\tPolicies: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"policy1\"),\n\t\t\t\tpulumi.String(\"policy2\"),\n\t\t\t},\n\t\t\tRenewIncrement: pulumi.Int(86400),\n\t\t\tRenewMinLease: pulumi.Int(43200),\n\t\t\tRenewable: pulumi.Bool(true),\n\t\t\tRoleName: pulumi.String(\"app\"),\n\t\t\tTtl: pulumi.String(\"24h\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.Token;\nimport com.pulumi.vault.TokenArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new Token(\"example\", TokenArgs.builder() \n .metadata(Map.of(\"purpose\", \"service-account\"))\n .policies( \n \"policy1\",\n \"policy2\")\n .renewIncrement(86400)\n .renewMinLease(43200)\n .renewable(true)\n .roleName(\"app\")\n .ttl(\"24h\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: vault:Token\n properties:\n metadata:\n purpose: service-account\n policies:\n - policy1\n - policy2\n renewIncrement: 86400\n renewMinLease: 43200\n renewable: true\n roleName: app\n ttl: 24h\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nTokens can be imported using its `id` as accessor id, e.g.\n\n```sh\n $ pulumi import vault:index/token:Token example \u003caccessor_id\u003e\n```\n ",
"properties": {
"clientToken": {
"type": "string",
@@ -20647,7 +17870,7 @@
}
},
"vault:jwt/authBackend:AuthBackend": {
- "description": "Provides a resource for managing an\n[JWT auth backend within Vault](https://www.vaultproject.io/docs/auth/jwt.html).\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\nManage JWT auth backend:\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst example = new vault.jwt.AuthBackend(\"example\", {\n boundIssuer: \"https://myco.auth0.com/\",\n description: \"Demonstration of the Terraform JWT auth backend\",\n oidcDiscoveryUrl: \"https://myco.auth0.com/\",\n path: \"jwt\",\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nexample = vault.jwt.AuthBackend(\"example\",\n bound_issuer=\"https://myco.auth0.com/\",\n description=\"Demonstration of the Terraform JWT auth backend\",\n oidc_discovery_url=\"https://myco.auth0.com/\",\n path=\"jwt\")\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new Vault.Jwt.AuthBackend(\"example\", new()\n {\n BoundIssuer = \"https://myco.auth0.com/\",\n Description = \"Demonstration of the Terraform JWT auth backend\",\n OidcDiscoveryUrl = \"https://myco.auth0.com/\",\n Path = \"jwt\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/jwt\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := jwt.NewAuthBackend(ctx, \"example\", \u0026jwt.AuthBackendArgs{\n\t\t\tBoundIssuer: pulumi.String(\"https://myco.auth0.com/\"),\n\t\t\tDescription: pulumi.String(\"Demonstration of the Terraform JWT auth backend\"),\n\t\t\tOidcDiscoveryUrl: pulumi.String(\"https://myco.auth0.com/\"),\n\t\t\tPath: pulumi.String(\"jwt\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.jwt.AuthBackend;\nimport com.pulumi.vault.jwt.AuthBackendArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new AuthBackend(\"example\", AuthBackendArgs.builder() \n .boundIssuer(\"https://myco.auth0.com/\")\n .description(\"Demonstration of the Terraform JWT auth backend\")\n .oidcDiscoveryUrl(\"https://myco.auth0.com/\")\n .path(\"jwt\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: vault:jwt:AuthBackend\n properties:\n boundIssuer: https://myco.auth0.com/\n description: Demonstration of the Terraform JWT auth backend\n oidcDiscoveryUrl: https://myco.auth0.com/\n path: jwt\n```\n\nManage OIDC auth backend:\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst example = new vault.jwt.AuthBackend(\"example\", {\n boundIssuer: \"https://myco.auth0.com/\",\n description: \"Demonstration of the Terraform JWT auth backend\",\n oidcClientId: \"1234567890\",\n oidcClientSecret: \"secret123456\",\n oidcDiscoveryUrl: \"https://myco.auth0.com/\",\n path: \"oidc\",\n tune: {\n listingVisibility: \"unauth\",\n },\n type: \"oidc\",\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nexample = vault.jwt.AuthBackend(\"example\",\n bound_issuer=\"https://myco.auth0.com/\",\n description=\"Demonstration of the Terraform JWT auth backend\",\n oidc_client_id=\"1234567890\",\n oidc_client_secret=\"secret123456\",\n oidc_discovery_url=\"https://myco.auth0.com/\",\n path=\"oidc\",\n tune=vault.jwt.AuthBackendTuneArgs(\n listing_visibility=\"unauth\",\n ),\n type=\"oidc\")\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new Vault.Jwt.AuthBackend(\"example\", new()\n {\n BoundIssuer = \"https://myco.auth0.com/\",\n Description = \"Demonstration of the Terraform JWT auth backend\",\n OidcClientId = \"1234567890\",\n OidcClientSecret = \"secret123456\",\n OidcDiscoveryUrl = \"https://myco.auth0.com/\",\n Path = \"oidc\",\n Tune = new Vault.Jwt.Inputs.AuthBackendTuneArgs\n {\n ListingVisibility = \"unauth\",\n },\n Type = \"oidc\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/jwt\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := jwt.NewAuthBackend(ctx, \"example\", \u0026jwt.AuthBackendArgs{\n\t\t\tBoundIssuer: pulumi.String(\"https://myco.auth0.com/\"),\n\t\t\tDescription: pulumi.String(\"Demonstration of the Terraform JWT auth backend\"),\n\t\t\tOidcClientId: pulumi.String(\"1234567890\"),\n\t\t\tOidcClientSecret: pulumi.String(\"secret123456\"),\n\t\t\tOidcDiscoveryUrl: pulumi.String(\"https://myco.auth0.com/\"),\n\t\t\tPath: pulumi.String(\"oidc\"),\n\t\t\tTune: \u0026jwt.AuthBackendTuneArgs{\n\t\t\t\tListingVisibility: pulumi.String(\"unauth\"),\n\t\t\t},\n\t\t\tType: pulumi.String(\"oidc\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.jwt.AuthBackend;\nimport com.pulumi.vault.jwt.AuthBackendArgs;\nimport com.pulumi.vault.jwt.inputs.AuthBackendTuneArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new AuthBackend(\"example\", AuthBackendArgs.builder() \n .boundIssuer(\"https://myco.auth0.com/\")\n .description(\"Demonstration of the Terraform JWT auth backend\")\n .oidcClientId(\"1234567890\")\n .oidcClientSecret(\"secret123456\")\n .oidcDiscoveryUrl(\"https://myco.auth0.com/\")\n .path(\"oidc\")\n .tune(AuthBackendTuneArgs.builder()\n .listingVisibility(\"unauth\")\n .build())\n .type(\"oidc\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: vault:jwt:AuthBackend\n properties:\n boundIssuer: https://myco.auth0.com/\n description: Demonstration of the Terraform JWT auth backend\n oidcClientId: 1234567890\n oidcClientSecret: secret123456\n oidcDiscoveryUrl: https://myco.auth0.com/\n path: oidc\n tune:\n listingVisibility: unauth\n type: oidc\n```\n\nConfiguring the auth backend with a `provider_config:\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst gsuite = new vault.jwt.AuthBackend(\"gsuite\", {\n description: \"OIDC backend\",\n oidcDiscoveryUrl: \"https://accounts.google.com\",\n path: \"oidc\",\n providerConfig: {\n fetch_groups: true,\n fetch_user_info: true,\n groups_recurse_max_depth: 1,\n provider: \"gsuite\",\n },\n type: \"oidc\",\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\ngsuite = vault.jwt.AuthBackend(\"gsuite\",\n description=\"OIDC backend\",\n oidc_discovery_url=\"https://accounts.google.com\",\n path=\"oidc\",\n provider_config={\n \"fetch_groups\": \"true\",\n \"fetch_user_info\": \"true\",\n \"groups_recurse_max_depth\": \"1\",\n \"provider\": \"gsuite\",\n },\n type=\"oidc\")\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var gsuite = new Vault.Jwt.AuthBackend(\"gsuite\", new()\n {\n Description = \"OIDC backend\",\n OidcDiscoveryUrl = \"https://accounts.google.com\",\n Path = \"oidc\",\n ProviderConfig = \n {\n { \"fetch_groups\", \"true\" },\n { \"fetch_user_info\", \"true\" },\n { \"groups_recurse_max_depth\", \"1\" },\n { \"provider\", \"gsuite\" },\n },\n Type = \"oidc\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/jwt\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := jwt.NewAuthBackend(ctx, \"gsuite\", \u0026jwt.AuthBackendArgs{\n\t\t\tDescription: pulumi.String(\"OIDC backend\"),\n\t\t\tOidcDiscoveryUrl: pulumi.String(\"https://accounts.google.com\"),\n\t\t\tPath: pulumi.String(\"oidc\"),\n\t\t\tProviderConfig: pulumi.StringMap{\n\t\t\t\t\"fetch_groups\": pulumi.String(\"true\"),\n\t\t\t\t\"fetch_user_info\": pulumi.String(\"true\"),\n\t\t\t\t\"groups_recurse_max_depth\": pulumi.String(\"1\"),\n\t\t\t\t\"provider\": pulumi.String(\"gsuite\"),\n\t\t\t},\n\t\t\tType: pulumi.String(\"oidc\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.jwt.AuthBackend;\nimport com.pulumi.vault.jwt.AuthBackendArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var gsuite = new AuthBackend(\"gsuite\", AuthBackendArgs.builder() \n .description(\"OIDC backend\")\n .oidcDiscoveryUrl(\"https://accounts.google.com\")\n .path(\"oidc\")\n .providerConfig(Map.ofEntries(\n Map.entry(\"fetch_groups\", true),\n Map.entry(\"fetch_user_info\", true),\n Map.entry(\"groups_recurse_max_depth\", 1),\n Map.entry(\"provider\", \"gsuite\")\n ))\n .type(\"oidc\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n gsuite:\n type: vault:jwt:AuthBackend\n properties:\n description: OIDC backend\n oidcDiscoveryUrl: https://accounts.google.com\n path: oidc\n providerConfig:\n fetch_groups: true\n fetch_user_info: true\n groups_recurse_max_depth: 1\n provider: gsuite\n type: oidc\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nJWT auth backend can be imported using the `path`, e.g.\n\n```sh\n $ pulumi import vault:jwt/authBackend:AuthBackend oidc oidc\n```\n\n or\n\n```sh\n $ pulumi import vault:jwt/authBackend:AuthBackend jwt jwt\n```\n\n ",
+ "description": "Provides a resource for managing an\n[JWT auth backend within Vault](https://www.vaultproject.io/docs/auth/jwt.html).\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\nManage JWT auth backend:\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst example = new vault.jwt.AuthBackend(\"example\", {\n boundIssuer: \"https://myco.auth0.com/\",\n description: \"Demonstration of the Terraform JWT auth backend\",\n oidcDiscoveryUrl: \"https://myco.auth0.com/\",\n path: \"jwt\",\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nexample = vault.jwt.AuthBackend(\"example\",\n bound_issuer=\"https://myco.auth0.com/\",\n description=\"Demonstration of the Terraform JWT auth backend\",\n oidc_discovery_url=\"https://myco.auth0.com/\",\n path=\"jwt\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new Vault.Jwt.AuthBackend(\"example\", new()\n {\n BoundIssuer = \"https://myco.auth0.com/\",\n Description = \"Demonstration of the Terraform JWT auth backend\",\n OidcDiscoveryUrl = \"https://myco.auth0.com/\",\n Path = \"jwt\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/jwt\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := jwt.NewAuthBackend(ctx, \"example\", \u0026jwt.AuthBackendArgs{\n\t\t\tBoundIssuer: pulumi.String(\"https://myco.auth0.com/\"),\n\t\t\tDescription: pulumi.String(\"Demonstration of the Terraform JWT auth backend\"),\n\t\t\tOidcDiscoveryUrl: pulumi.String(\"https://myco.auth0.com/\"),\n\t\t\tPath: pulumi.String(\"jwt\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.jwt.AuthBackend;\nimport com.pulumi.vault.jwt.AuthBackendArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new AuthBackend(\"example\", AuthBackendArgs.builder() \n .boundIssuer(\"https://myco.auth0.com/\")\n .description(\"Demonstration of the Terraform JWT auth backend\")\n .oidcDiscoveryUrl(\"https://myco.auth0.com/\")\n .path(\"jwt\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: vault:jwt:AuthBackend\n properties:\n boundIssuer: https://myco.auth0.com/\n description: Demonstration of the Terraform JWT auth backend\n oidcDiscoveryUrl: https://myco.auth0.com/\n path: jwt\n```\n\nManage OIDC auth backend:\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst example = new vault.jwt.AuthBackend(\"example\", {\n boundIssuer: \"https://myco.auth0.com/\",\n description: \"Demonstration of the Terraform JWT auth backend\",\n oidcClientId: \"1234567890\",\n oidcClientSecret: \"secret123456\",\n oidcDiscoveryUrl: \"https://myco.auth0.com/\",\n path: \"oidc\",\n tune: {\n listingVisibility: \"unauth\",\n },\n type: \"oidc\",\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nexample = vault.jwt.AuthBackend(\"example\",\n bound_issuer=\"https://myco.auth0.com/\",\n description=\"Demonstration of the Terraform JWT auth backend\",\n oidc_client_id=\"1234567890\",\n oidc_client_secret=\"secret123456\",\n oidc_discovery_url=\"https://myco.auth0.com/\",\n path=\"oidc\",\n tune=vault.jwt.AuthBackendTuneArgs(\n listing_visibility=\"unauth\",\n ),\n type=\"oidc\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new Vault.Jwt.AuthBackend(\"example\", new()\n {\n BoundIssuer = \"https://myco.auth0.com/\",\n Description = \"Demonstration of the Terraform JWT auth backend\",\n OidcClientId = \"1234567890\",\n OidcClientSecret = \"secret123456\",\n OidcDiscoveryUrl = \"https://myco.auth0.com/\",\n Path = \"oidc\",\n Tune = new Vault.Jwt.Inputs.AuthBackendTuneArgs\n {\n ListingVisibility = \"unauth\",\n },\n Type = \"oidc\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/jwt\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := jwt.NewAuthBackend(ctx, \"example\", \u0026jwt.AuthBackendArgs{\n\t\t\tBoundIssuer: pulumi.String(\"https://myco.auth0.com/\"),\n\t\t\tDescription: pulumi.String(\"Demonstration of the Terraform JWT auth backend\"),\n\t\t\tOidcClientId: pulumi.String(\"1234567890\"),\n\t\t\tOidcClientSecret: pulumi.String(\"secret123456\"),\n\t\t\tOidcDiscoveryUrl: pulumi.String(\"https://myco.auth0.com/\"),\n\t\t\tPath: pulumi.String(\"oidc\"),\n\t\t\tTune: \u0026jwt.AuthBackendTuneArgs{\n\t\t\t\tListingVisibility: pulumi.String(\"unauth\"),\n\t\t\t},\n\t\t\tType: pulumi.String(\"oidc\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.jwt.AuthBackend;\nimport com.pulumi.vault.jwt.AuthBackendArgs;\nimport com.pulumi.vault.jwt.inputs.AuthBackendTuneArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new AuthBackend(\"example\", AuthBackendArgs.builder() \n .boundIssuer(\"https://myco.auth0.com/\")\n .description(\"Demonstration of the Terraform JWT auth backend\")\n .oidcClientId(\"1234567890\")\n .oidcClientSecret(\"secret123456\")\n .oidcDiscoveryUrl(\"https://myco.auth0.com/\")\n .path(\"oidc\")\n .tune(AuthBackendTuneArgs.builder()\n .listingVisibility(\"unauth\")\n .build())\n .type(\"oidc\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: vault:jwt:AuthBackend\n properties:\n boundIssuer: https://myco.auth0.com/\n description: Demonstration of the Terraform JWT auth backend\n oidcClientId: '1234567890'\n oidcClientSecret: secret123456\n oidcDiscoveryUrl: https://myco.auth0.com/\n path: oidc\n tune:\n listingVisibility: unauth\n type: oidc\n```\n\nConfiguring the auth backend with a `provider_config:\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst gsuite = new vault.jwt.AuthBackend(\"gsuite\", {\n description: \"OIDC backend\",\n oidcDiscoveryUrl: \"https://accounts.google.com\",\n path: \"oidc\",\n providerConfig: {\n fetch_groups: \"true\",\n fetch_user_info: \"true\",\n groups_recurse_max_depth: \"1\",\n provider: \"gsuite\",\n },\n type: \"oidc\",\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\ngsuite = vault.jwt.AuthBackend(\"gsuite\",\n description=\"OIDC backend\",\n oidc_discovery_url=\"https://accounts.google.com\",\n path=\"oidc\",\n provider_config={\n \"fetch_groups\": \"true\",\n \"fetch_user_info\": \"true\",\n \"groups_recurse_max_depth\": \"1\",\n \"provider\": \"gsuite\",\n },\n type=\"oidc\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var gsuite = new Vault.Jwt.AuthBackend(\"gsuite\", new()\n {\n Description = \"OIDC backend\",\n OidcDiscoveryUrl = \"https://accounts.google.com\",\n Path = \"oidc\",\n ProviderConfig = \n {\n { \"fetch_groups\", \"true\" },\n { \"fetch_user_info\", \"true\" },\n { \"groups_recurse_max_depth\", \"1\" },\n { \"provider\", \"gsuite\" },\n },\n Type = \"oidc\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/jwt\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := jwt.NewAuthBackend(ctx, \"gsuite\", \u0026jwt.AuthBackendArgs{\n\t\t\tDescription: pulumi.String(\"OIDC backend\"),\n\t\t\tOidcDiscoveryUrl: pulumi.String(\"https://accounts.google.com\"),\n\t\t\tPath: pulumi.String(\"oidc\"),\n\t\t\tProviderConfig: pulumi.StringMap{\n\t\t\t\t\"fetch_groups\": pulumi.String(\"true\"),\n\t\t\t\t\"fetch_user_info\": pulumi.String(\"true\"),\n\t\t\t\t\"groups_recurse_max_depth\": pulumi.String(\"1\"),\n\t\t\t\t\"provider\": pulumi.String(\"gsuite\"),\n\t\t\t},\n\t\t\tType: pulumi.String(\"oidc\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.jwt.AuthBackend;\nimport com.pulumi.vault.jwt.AuthBackendArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var gsuite = new AuthBackend(\"gsuite\", AuthBackendArgs.builder() \n .description(\"OIDC backend\")\n .oidcDiscoveryUrl(\"https://accounts.google.com\")\n .path(\"oidc\")\n .providerConfig(Map.ofEntries(\n Map.entry(\"fetch_groups\", true),\n Map.entry(\"fetch_user_info\", true),\n Map.entry(\"groups_recurse_max_depth\", 1),\n Map.entry(\"provider\", \"gsuite\")\n ))\n .type(\"oidc\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n gsuite:\n type: vault:jwt:AuthBackend\n properties:\n description: OIDC backend\n oidcDiscoveryUrl: https://accounts.google.com\n path: oidc\n providerConfig:\n fetch_groups: true\n fetch_user_info: true\n groups_recurse_max_depth: 1\n provider: gsuite\n type: oidc\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nJWT auth backend can be imported using the `path`, e.g.\n\n```sh\n $ pulumi import vault:jwt/authBackend:AuthBackend oidc oidc\n```\n or\n\n```sh\n $ pulumi import vault:jwt/authBackend:AuthBackend jwt jwt\n```\n ",
"properties": {
"accessor": {
"type": "string",
@@ -20701,7 +17924,7 @@
},
"namespaceInState": {
"type": "boolean",
- "description": "Pass namespace in the OIDC state parameter instead of as a separate query parameter. With this setting, the allowed redirect URL(s) in Vault and on the provider side should not contain a namespace query parameter. This means only one redirect URL entry needs to be maintained on the OIDC provider side for all vault namespaces that will be authenticating against it. Defaults to true for new configs\n"
+ "description": "Pass namespace in the OIDC state parameter instead of as a separate query parameter. With this setting, the allowed redirect URL(s) in Vault and on the provider side should not contain a namespace query parameter. This means only one redirect URL entry needs to be maintained on the OIDC provider side for all vault namespaces that will be authenticating against it. Defaults to true for new configs\n\n* tune - (Optional) Extra configuration block. Structure is documented below.\n\nThe `tune` block is used to tune the auth backend:\n"
},
"oidcClientId": {
"type": "string",
@@ -20805,7 +18028,7 @@
},
"namespaceInState": {
"type": "boolean",
- "description": "Pass namespace in the OIDC state parameter instead of as a separate query parameter. With this setting, the allowed redirect URL(s) in Vault and on the provider side should not contain a namespace query parameter. This means only one redirect URL entry needs to be maintained on the OIDC provider side for all vault namespaces that will be authenticating against it. Defaults to true for new configs\n"
+ "description": "Pass namespace in the OIDC state parameter instead of as a separate query parameter. With this setting, the allowed redirect URL(s) in Vault and on the provider side should not contain a namespace query parameter. This means only one redirect URL entry needs to be maintained on the OIDC provider side for all vault namespaces that will be authenticating against it. Defaults to true for new configs\n\n* tune - (Optional) Extra configuration block. Structure is documented below.\n\nThe `tune` block is used to tune the auth backend:\n"
},
"oidcClientId": {
"type": "string",
@@ -20912,7 +18135,7 @@
},
"namespaceInState": {
"type": "boolean",
- "description": "Pass namespace in the OIDC state parameter instead of as a separate query parameter. With this setting, the allowed redirect URL(s) in Vault and on the provider side should not contain a namespace query parameter. This means only one redirect URL entry needs to be maintained on the OIDC provider side for all vault namespaces that will be authenticating against it. Defaults to true for new configs\n"
+ "description": "Pass namespace in the OIDC state parameter instead of as a separate query parameter. With this setting, the allowed redirect URL(s) in Vault and on the provider side should not contain a namespace query parameter. This means only one redirect URL entry needs to be maintained on the OIDC provider side for all vault namespaces that will be authenticating against it. Defaults to true for new configs\n\n* tune - (Optional) Extra configuration block. Structure is documented below.\n\nThe `tune` block is used to tune the auth backend:\n"
},
"oidcClientId": {
"type": "string",
@@ -20966,7 +18189,7 @@
}
},
"vault:jwt/authBackendRole:AuthBackendRole": {
- "description": "Manages an JWT/OIDC auth backend role in a Vault server. See the [Vault\ndocumentation](https://www.vaultproject.io/docs/auth/jwt.html) for more\ninformation.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\nRole for JWT backend:\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst jwt = new vault.jwt.AuthBackend(\"jwt\", {path: \"jwt\"});\nconst example = new vault.jwt.AuthBackendRole(\"example\", {\n backend: jwt.path,\n roleName: \"test-role\",\n tokenPolicies: [\n \"default\",\n \"dev\",\n \"prod\",\n ],\n boundAudiences: [\"https://myco.test\"],\n boundClaims: {\n color: \"red,green,blue\",\n },\n userClaim: \"https://vault/user\",\n roleType: \"jwt\",\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\njwt = vault.jwt.AuthBackend(\"jwt\", path=\"jwt\")\nexample = vault.jwt.AuthBackendRole(\"example\",\n backend=jwt.path,\n role_name=\"test-role\",\n token_policies=[\n \"default\",\n \"dev\",\n \"prod\",\n ],\n bound_audiences=[\"https://myco.test\"],\n bound_claims={\n \"color\": \"red,green,blue\",\n },\n user_claim=\"https://vault/user\",\n role_type=\"jwt\")\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var jwt = new Vault.Jwt.AuthBackend(\"jwt\", new()\n {\n Path = \"jwt\",\n });\n\n var example = new Vault.Jwt.AuthBackendRole(\"example\", new()\n {\n Backend = jwt.Path,\n RoleName = \"test-role\",\n TokenPolicies = new[]\n {\n \"default\",\n \"dev\",\n \"prod\",\n },\n BoundAudiences = new[]\n {\n \"https://myco.test\",\n },\n BoundClaims = \n {\n { \"color\", \"red,green,blue\" },\n },\n UserClaim = \"https://vault/user\",\n RoleType = \"jwt\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/jwt\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tjwt, err := jwt.NewAuthBackend(ctx, \"jwt\", \u0026jwt.AuthBackendArgs{\n\t\t\tPath: pulumi.String(\"jwt\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = jwt.NewAuthBackendRole(ctx, \"example\", \u0026jwt.AuthBackendRoleArgs{\n\t\t\tBackend: jwt.Path,\n\t\t\tRoleName: pulumi.String(\"test-role\"),\n\t\t\tTokenPolicies: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"default\"),\n\t\t\t\tpulumi.String(\"dev\"),\n\t\t\t\tpulumi.String(\"prod\"),\n\t\t\t},\n\t\t\tBoundAudiences: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"https://myco.test\"),\n\t\t\t},\n\t\t\tBoundClaims: pulumi.AnyMap{\n\t\t\t\t\"color\": pulumi.Any(\"red,green,blue\"),\n\t\t\t},\n\t\t\tUserClaim: pulumi.String(\"https://vault/user\"),\n\t\t\tRoleType: pulumi.String(\"jwt\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.jwt.AuthBackend;\nimport com.pulumi.vault.jwt.AuthBackendArgs;\nimport com.pulumi.vault.jwt.AuthBackendRole;\nimport com.pulumi.vault.jwt.AuthBackendRoleArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var jwt = new AuthBackend(\"jwt\", AuthBackendArgs.builder() \n .path(\"jwt\")\n .build());\n\n var example = new AuthBackendRole(\"example\", AuthBackendRoleArgs.builder() \n .backend(jwt.path())\n .roleName(\"test-role\")\n .tokenPolicies( \n \"default\",\n \"dev\",\n \"prod\")\n .boundAudiences(\"https://myco.test\")\n .boundClaims(Map.of(\"color\", \"red,green,blue\"))\n .userClaim(\"https://vault/user\")\n .roleType(\"jwt\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n jwt:\n type: vault:jwt:AuthBackend\n properties:\n path: jwt\n example:\n type: vault:jwt:AuthBackendRole\n properties:\n backend: ${jwt.path}\n roleName: test-role\n tokenPolicies:\n - default\n - dev\n - prod\n boundAudiences:\n - https://myco.test\n boundClaims:\n color: red,green,blue\n userClaim: https://vault/user\n roleType: jwt\n```\n\nRole for OIDC backend:\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst oidc = new vault.jwt.AuthBackend(\"oidc\", {\n path: \"oidc\",\n defaultRole: \"test-role\",\n});\nconst example = new vault.jwt.AuthBackendRole(\"example\", {\n backend: oidc.path,\n roleName: \"test-role\",\n tokenPolicies: [\n \"default\",\n \"dev\",\n \"prod\",\n ],\n userClaim: \"https://vault/user\",\n roleType: \"oidc\",\n allowedRedirectUris: [\"http://localhost:8200/ui/vault/auth/oidc/oidc/callback\"],\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\noidc = vault.jwt.AuthBackend(\"oidc\",\n path=\"oidc\",\n default_role=\"test-role\")\nexample = vault.jwt.AuthBackendRole(\"example\",\n backend=oidc.path,\n role_name=\"test-role\",\n token_policies=[\n \"default\",\n \"dev\",\n \"prod\",\n ],\n user_claim=\"https://vault/user\",\n role_type=\"oidc\",\n allowed_redirect_uris=[\"http://localhost:8200/ui/vault/auth/oidc/oidc/callback\"])\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var oidc = new Vault.Jwt.AuthBackend(\"oidc\", new()\n {\n Path = \"oidc\",\n DefaultRole = \"test-role\",\n });\n\n var example = new Vault.Jwt.AuthBackendRole(\"example\", new()\n {\n Backend = oidc.Path,\n RoleName = \"test-role\",\n TokenPolicies = new[]\n {\n \"default\",\n \"dev\",\n \"prod\",\n },\n UserClaim = \"https://vault/user\",\n RoleType = \"oidc\",\n AllowedRedirectUris = new[]\n {\n \"http://localhost:8200/ui/vault/auth/oidc/oidc/callback\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/jwt\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\toidc, err := jwt.NewAuthBackend(ctx, \"oidc\", \u0026jwt.AuthBackendArgs{\n\t\t\tPath: pulumi.String(\"oidc\"),\n\t\t\tDefaultRole: pulumi.String(\"test-role\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = jwt.NewAuthBackendRole(ctx, \"example\", \u0026jwt.AuthBackendRoleArgs{\n\t\t\tBackend: oidc.Path,\n\t\t\tRoleName: pulumi.String(\"test-role\"),\n\t\t\tTokenPolicies: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"default\"),\n\t\t\t\tpulumi.String(\"dev\"),\n\t\t\t\tpulumi.String(\"prod\"),\n\t\t\t},\n\t\t\tUserClaim: pulumi.String(\"https://vault/user\"),\n\t\t\tRoleType: pulumi.String(\"oidc\"),\n\t\t\tAllowedRedirectUris: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"http://localhost:8200/ui/vault/auth/oidc/oidc/callback\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.jwt.AuthBackend;\nimport com.pulumi.vault.jwt.AuthBackendArgs;\nimport com.pulumi.vault.jwt.AuthBackendRole;\nimport com.pulumi.vault.jwt.AuthBackendRoleArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var oidc = new AuthBackend(\"oidc\", AuthBackendArgs.builder() \n .path(\"oidc\")\n .defaultRole(\"test-role\")\n .build());\n\n var example = new AuthBackendRole(\"example\", AuthBackendRoleArgs.builder() \n .backend(oidc.path())\n .roleName(\"test-role\")\n .tokenPolicies( \n \"default\",\n \"dev\",\n \"prod\")\n .userClaim(\"https://vault/user\")\n .roleType(\"oidc\")\n .allowedRedirectUris(\"http://localhost:8200/ui/vault/auth/oidc/oidc/callback\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n oidc:\n type: vault:jwt:AuthBackend\n properties:\n path: oidc\n defaultRole: test-role\n example:\n type: vault:jwt:AuthBackendRole\n properties:\n backend: ${oidc.path}\n roleName: test-role\n tokenPolicies:\n - default\n - dev\n - prod\n userClaim: https://vault/user\n roleType: oidc\n allowedRedirectUris:\n - http://localhost:8200/ui/vault/auth/oidc/oidc/callback\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nJWT authentication backend roles can be imported using the `path`, e.g.\n\n```sh\n $ pulumi import vault:jwt/authBackendRole:AuthBackendRole example auth/jwt/role/test-role\n```\n\n ",
+ "description": "Manages an JWT/OIDC auth backend role in a Vault server. See the [Vault\ndocumentation](https://www.vaultproject.io/docs/auth/jwt.html) for more\ninformation.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\nRole for JWT backend:\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst jwt = new vault.jwt.AuthBackend(\"jwt\", {path: \"jwt\"});\nconst example = new vault.jwt.AuthBackendRole(\"example\", {\n backend: jwt.path,\n roleName: \"test-role\",\n tokenPolicies: [\n \"default\",\n \"dev\",\n \"prod\",\n ],\n boundAudiences: [\"https://myco.test\"],\n boundClaims: {\n color: \"red,green,blue\",\n },\n userClaim: \"https://vault/user\",\n roleType: \"jwt\",\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\njwt = vault.jwt.AuthBackend(\"jwt\", path=\"jwt\")\nexample = vault.jwt.AuthBackendRole(\"example\",\n backend=jwt.path,\n role_name=\"test-role\",\n token_policies=[\n \"default\",\n \"dev\",\n \"prod\",\n ],\n bound_audiences=[\"https://myco.test\"],\n bound_claims={\n \"color\": \"red,green,blue\",\n },\n user_claim=\"https://vault/user\",\n role_type=\"jwt\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var jwt = new Vault.Jwt.AuthBackend(\"jwt\", new()\n {\n Path = \"jwt\",\n });\n\n var example = new Vault.Jwt.AuthBackendRole(\"example\", new()\n {\n Backend = jwt.Path,\n RoleName = \"test-role\",\n TokenPolicies = new[]\n {\n \"default\",\n \"dev\",\n \"prod\",\n },\n BoundAudiences = new[]\n {\n \"https://myco.test\",\n },\n BoundClaims = \n {\n { \"color\", \"red,green,blue\" },\n },\n UserClaim = \"https://vault/user\",\n RoleType = \"jwt\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/jwt\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tjwt, err := jwt.NewAuthBackend(ctx, \"jwt\", \u0026jwt.AuthBackendArgs{\n\t\t\tPath: pulumi.String(\"jwt\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = jwt.NewAuthBackendRole(ctx, \"example\", \u0026jwt.AuthBackendRoleArgs{\n\t\t\tBackend: jwt.Path,\n\t\t\tRoleName: pulumi.String(\"test-role\"),\n\t\t\tTokenPolicies: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"default\"),\n\t\t\t\tpulumi.String(\"dev\"),\n\t\t\t\tpulumi.String(\"prod\"),\n\t\t\t},\n\t\t\tBoundAudiences: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"https://myco.test\"),\n\t\t\t},\n\t\t\tBoundClaims: pulumi.Map{\n\t\t\t\t\"color\": pulumi.Any(\"red,green,blue\"),\n\t\t\t},\n\t\t\tUserClaim: pulumi.String(\"https://vault/user\"),\n\t\t\tRoleType: pulumi.String(\"jwt\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.jwt.AuthBackend;\nimport com.pulumi.vault.jwt.AuthBackendArgs;\nimport com.pulumi.vault.jwt.AuthBackendRole;\nimport com.pulumi.vault.jwt.AuthBackendRoleArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var jwt = new AuthBackend(\"jwt\", AuthBackendArgs.builder() \n .path(\"jwt\")\n .build());\n\n var example = new AuthBackendRole(\"example\", AuthBackendRoleArgs.builder() \n .backend(jwt.path())\n .roleName(\"test-role\")\n .tokenPolicies( \n \"default\",\n \"dev\",\n \"prod\")\n .boundAudiences(\"https://myco.test\")\n .boundClaims(Map.of(\"color\", \"red,green,blue\"))\n .userClaim(\"https://vault/user\")\n .roleType(\"jwt\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n jwt:\n type: vault:jwt:AuthBackend\n properties:\n path: jwt\n example:\n type: vault:jwt:AuthBackendRole\n properties:\n backend: ${jwt.path}\n roleName: test-role\n tokenPolicies:\n - default\n - dev\n - prod\n boundAudiences:\n - https://myco.test\n boundClaims:\n color: red,green,blue\n userClaim: https://vault/user\n roleType: jwt\n```\n\nRole for OIDC backend:\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst oidc = new vault.jwt.AuthBackend(\"oidc\", {\n path: \"oidc\",\n defaultRole: \"test-role\",\n});\nconst example = new vault.jwt.AuthBackendRole(\"example\", {\n backend: oidc.path,\n roleName: \"test-role\",\n tokenPolicies: [\n \"default\",\n \"dev\",\n \"prod\",\n ],\n userClaim: \"https://vault/user\",\n roleType: \"oidc\",\n allowedRedirectUris: [\"http://localhost:8200/ui/vault/auth/oidc/oidc/callback\"],\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\noidc = vault.jwt.AuthBackend(\"oidc\",\n path=\"oidc\",\n default_role=\"test-role\")\nexample = vault.jwt.AuthBackendRole(\"example\",\n backend=oidc.path,\n role_name=\"test-role\",\n token_policies=[\n \"default\",\n \"dev\",\n \"prod\",\n ],\n user_claim=\"https://vault/user\",\n role_type=\"oidc\",\n allowed_redirect_uris=[\"http://localhost:8200/ui/vault/auth/oidc/oidc/callback\"])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var oidc = new Vault.Jwt.AuthBackend(\"oidc\", new()\n {\n Path = \"oidc\",\n DefaultRole = \"test-role\",\n });\n\n var example = new Vault.Jwt.AuthBackendRole(\"example\", new()\n {\n Backend = oidc.Path,\n RoleName = \"test-role\",\n TokenPolicies = new[]\n {\n \"default\",\n \"dev\",\n \"prod\",\n },\n UserClaim = \"https://vault/user\",\n RoleType = \"oidc\",\n AllowedRedirectUris = new[]\n {\n \"http://localhost:8200/ui/vault/auth/oidc/oidc/callback\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/jwt\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\toidc, err := jwt.NewAuthBackend(ctx, \"oidc\", \u0026jwt.AuthBackendArgs{\n\t\t\tPath: pulumi.String(\"oidc\"),\n\t\t\tDefaultRole: pulumi.String(\"test-role\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = jwt.NewAuthBackendRole(ctx, \"example\", \u0026jwt.AuthBackendRoleArgs{\n\t\t\tBackend: oidc.Path,\n\t\t\tRoleName: pulumi.String(\"test-role\"),\n\t\t\tTokenPolicies: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"default\"),\n\t\t\t\tpulumi.String(\"dev\"),\n\t\t\t\tpulumi.String(\"prod\"),\n\t\t\t},\n\t\t\tUserClaim: pulumi.String(\"https://vault/user\"),\n\t\t\tRoleType: pulumi.String(\"oidc\"),\n\t\t\tAllowedRedirectUris: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"http://localhost:8200/ui/vault/auth/oidc/oidc/callback\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.jwt.AuthBackend;\nimport com.pulumi.vault.jwt.AuthBackendArgs;\nimport com.pulumi.vault.jwt.AuthBackendRole;\nimport com.pulumi.vault.jwt.AuthBackendRoleArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var oidc = new AuthBackend(\"oidc\", AuthBackendArgs.builder() \n .path(\"oidc\")\n .defaultRole(\"test-role\")\n .build());\n\n var example = new AuthBackendRole(\"example\", AuthBackendRoleArgs.builder() \n .backend(oidc.path())\n .roleName(\"test-role\")\n .tokenPolicies( \n \"default\",\n \"dev\",\n \"prod\")\n .userClaim(\"https://vault/user\")\n .roleType(\"oidc\")\n .allowedRedirectUris(\"http://localhost:8200/ui/vault/auth/oidc/oidc/callback\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n oidc:\n type: vault:jwt:AuthBackend\n properties:\n path: oidc\n defaultRole: test-role\n example:\n type: vault:jwt:AuthBackendRole\n properties:\n backend: ${oidc.path}\n roleName: test-role\n tokenPolicies:\n - default\n - dev\n - prod\n userClaim: https://vault/user\n roleType: oidc\n allowedRedirectUris:\n - http://localhost:8200/ui/vault/auth/oidc/oidc/callback\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nJWT authentication backend roles can be imported using the `path`, e.g.\n\n```sh\n $ pulumi import vault:jwt/authBackendRole:AuthBackendRole example auth/jwt/role/test-role\n```\n ",
"properties": {
"allowedRedirectUris": {
"type": "array",
@@ -21408,7 +18631,7 @@
}
},
"vault:kmip/secretBackend:SecretBackend": {
- "description": "Manages KMIP Secret backends in a Vault server. This feature requires\nVault Enterprise. See the [Vault documentation](https://www.vaultproject.io/docs/secrets/kmip)\nfor more information.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst defaultSecretBackend = new vault.kmip.SecretBackend(\"default\", {\n defaultTlsClientKeyBits: 4096,\n defaultTlsClientKeyType: \"rsa\",\n defaultTlsClientTtl: 86400,\n description: \"Vault KMIP backend\",\n listenAddrs: [\n \"127.0.0.1:5696\",\n \"127.0.0.1:8080\",\n ],\n path: \"kmip\",\n tlsCaKeyBits: 4096,\n tlsCaKeyType: \"rsa\",\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\ndefault = vault.kmip.SecretBackend(\"default\",\n default_tls_client_key_bits=4096,\n default_tls_client_key_type=\"rsa\",\n default_tls_client_ttl=86400,\n description=\"Vault KMIP backend\",\n listen_addrs=[\n \"127.0.0.1:5696\",\n \"127.0.0.1:8080\",\n ],\n path=\"kmip\",\n tls_ca_key_bits=4096,\n tls_ca_key_type=\"rsa\")\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @default = new Vault.Kmip.SecretBackend(\"default\", new()\n {\n DefaultTlsClientKeyBits = 4096,\n DefaultTlsClientKeyType = \"rsa\",\n DefaultTlsClientTtl = 86400,\n Description = \"Vault KMIP backend\",\n ListenAddrs = new[]\n {\n \"127.0.0.1:5696\",\n \"127.0.0.1:8080\",\n },\n Path = \"kmip\",\n TlsCaKeyBits = 4096,\n TlsCaKeyType = \"rsa\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/kmip\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := kmip.NewSecretBackend(ctx, \"default\", \u0026kmip.SecretBackendArgs{\n\t\t\tDefaultTlsClientKeyBits: pulumi.Int(4096),\n\t\t\tDefaultTlsClientKeyType: pulumi.String(\"rsa\"),\n\t\t\tDefaultTlsClientTtl: pulumi.Int(86400),\n\t\t\tDescription: pulumi.String(\"Vault KMIP backend\"),\n\t\t\tListenAddrs: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"127.0.0.1:5696\"),\n\t\t\t\tpulumi.String(\"127.0.0.1:8080\"),\n\t\t\t},\n\t\t\tPath: pulumi.String(\"kmip\"),\n\t\t\tTlsCaKeyBits: pulumi.Int(4096),\n\t\t\tTlsCaKeyType: pulumi.String(\"rsa\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.kmip.SecretBackend;\nimport com.pulumi.vault.kmip.SecretBackendArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var default_ = new SecretBackend(\"default\", SecretBackendArgs.builder() \n .defaultTlsClientKeyBits(4096)\n .defaultTlsClientKeyType(\"rsa\")\n .defaultTlsClientTtl(86400)\n .description(\"Vault KMIP backend\")\n .listenAddrs( \n \"127.0.0.1:5696\",\n \"127.0.0.1:8080\")\n .path(\"kmip\")\n .tlsCaKeyBits(4096)\n .tlsCaKeyType(\"rsa\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n default:\n type: vault:kmip:SecretBackend\n properties:\n defaultTlsClientKeyBits: 4096\n defaultTlsClientKeyType: rsa\n defaultTlsClientTtl: 86400\n description: Vault KMIP backend\n listenAddrs:\n - 127.0.0.1:5696\n - 127.0.0.1:8080\n path: kmip\n tlsCaKeyBits: 4096\n tlsCaKeyType: rsa\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nKMIP Secret backend can be imported using the `path`, e.g.\n\n```sh\n $ pulumi import vault:kmip/secretBackend:SecretBackend default kmip\n```\n\n ",
+ "description": "Manages KMIP Secret backends in a Vault server. This feature requires\nVault Enterprise. See the [Vault documentation](https://www.vaultproject.io/docs/secrets/kmip)\nfor more information.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst _default = new vault.kmip.SecretBackend(\"default\", {\n defaultTlsClientKeyBits: 4096,\n defaultTlsClientKeyType: \"rsa\",\n defaultTlsClientTtl: 86400,\n description: \"Vault KMIP backend\",\n listenAddrs: [\n \"127.0.0.1:5696\",\n \"127.0.0.1:8080\",\n ],\n path: \"kmip\",\n tlsCaKeyBits: 4096,\n tlsCaKeyType: \"rsa\",\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\ndefault = vault.kmip.SecretBackend(\"default\",\n default_tls_client_key_bits=4096,\n default_tls_client_key_type=\"rsa\",\n default_tls_client_ttl=86400,\n description=\"Vault KMIP backend\",\n listen_addrs=[\n \"127.0.0.1:5696\",\n \"127.0.0.1:8080\",\n ],\n path=\"kmip\",\n tls_ca_key_bits=4096,\n tls_ca_key_type=\"rsa\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @default = new Vault.Kmip.SecretBackend(\"default\", new()\n {\n DefaultTlsClientKeyBits = 4096,\n DefaultTlsClientKeyType = \"rsa\",\n DefaultTlsClientTtl = 86400,\n Description = \"Vault KMIP backend\",\n ListenAddrs = new[]\n {\n \"127.0.0.1:5696\",\n \"127.0.0.1:8080\",\n },\n Path = \"kmip\",\n TlsCaKeyBits = 4096,\n TlsCaKeyType = \"rsa\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/kmip\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := kmip.NewSecretBackend(ctx, \"default\", \u0026kmip.SecretBackendArgs{\n\t\t\tDefaultTlsClientKeyBits: pulumi.Int(4096),\n\t\t\tDefaultTlsClientKeyType: pulumi.String(\"rsa\"),\n\t\t\tDefaultTlsClientTtl: pulumi.Int(86400),\n\t\t\tDescription: pulumi.String(\"Vault KMIP backend\"),\n\t\t\tListenAddrs: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"127.0.0.1:5696\"),\n\t\t\t\tpulumi.String(\"127.0.0.1:8080\"),\n\t\t\t},\n\t\t\tPath: pulumi.String(\"kmip\"),\n\t\t\tTlsCaKeyBits: pulumi.Int(4096),\n\t\t\tTlsCaKeyType: pulumi.String(\"rsa\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.kmip.SecretBackend;\nimport com.pulumi.vault.kmip.SecretBackendArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var default_ = new SecretBackend(\"default\", SecretBackendArgs.builder() \n .defaultTlsClientKeyBits(4096)\n .defaultTlsClientKeyType(\"rsa\")\n .defaultTlsClientTtl(86400)\n .description(\"Vault KMIP backend\")\n .listenAddrs( \n \"127.0.0.1:5696\",\n \"127.0.0.1:8080\")\n .path(\"kmip\")\n .tlsCaKeyBits(4096)\n .tlsCaKeyType(\"rsa\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n default:\n type: vault:kmip:SecretBackend\n properties:\n defaultTlsClientKeyBits: 4096\n defaultTlsClientKeyType: rsa\n defaultTlsClientTtl: 86400\n description: Vault KMIP backend\n listenAddrs:\n - 127.0.0.1:5696\n - 127.0.0.1:8080\n path: kmip\n tlsCaKeyBits: 4096\n tlsCaKeyType: rsa\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nKMIP Secret backend can be imported using the `path`, e.g.\n\n```sh\n $ pulumi import vault:kmip/secretBackend:SecretBackend default kmip\n```\n ",
"properties": {
"defaultTlsClientKeyBits": {
"type": "integer",
@@ -21621,7 +18844,7 @@
}
},
"vault:kmip/secretRole:SecretRole": {
- "description": "Manages KMIP Secret roles in a Vault server. This feature requires\nVault Enterprise. See the [Vault documentation](https://www.vaultproject.io/docs/secrets/kmip)\nfor more information.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst _default = new vault.kmip.SecretBackend(\"default\", {\n path: \"kmip\",\n description: \"Vault KMIP backend\",\n});\nconst dev = new vault.kmip.SecretScope(\"dev\", {\n path: _default.path,\n scope: \"dev\",\n force: true,\n});\nconst admin = new vault.kmip.SecretRole(\"admin\", {\n path: dev.path,\n scope: dev.scope,\n role: \"admin\",\n tlsClientKeyType: \"ec\",\n tlsClientKeyBits: 256,\n operationActivate: true,\n operationGet: true,\n operationGetAttributes: true,\n operationCreate: true,\n operationDestroy: true,\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\ndefault = vault.kmip.SecretBackend(\"default\",\n path=\"kmip\",\n description=\"Vault KMIP backend\")\ndev = vault.kmip.SecretScope(\"dev\",\n path=default.path,\n scope=\"dev\",\n force=True)\nadmin = vault.kmip.SecretRole(\"admin\",\n path=dev.path,\n scope=dev.scope,\n role=\"admin\",\n tls_client_key_type=\"ec\",\n tls_client_key_bits=256,\n operation_activate=True,\n operation_get=True,\n operation_get_attributes=True,\n operation_create=True,\n operation_destroy=True)\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @default = new Vault.Kmip.SecretBackend(\"default\", new()\n {\n Path = \"kmip\",\n Description = \"Vault KMIP backend\",\n });\n\n var dev = new Vault.Kmip.SecretScope(\"dev\", new()\n {\n Path = @default.Path,\n Scope = \"dev\",\n Force = true,\n });\n\n var admin = new Vault.Kmip.SecretRole(\"admin\", new()\n {\n Path = dev.Path,\n Scope = dev.Scope,\n Role = \"admin\",\n TlsClientKeyType = \"ec\",\n TlsClientKeyBits = 256,\n OperationActivate = true,\n OperationGet = true,\n OperationGetAttributes = true,\n OperationCreate = true,\n OperationDestroy = true,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/kmip\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := kmip.NewSecretBackend(ctx, \"default\", \u0026kmip.SecretBackendArgs{\n\t\t\tPath: pulumi.String(\"kmip\"),\n\t\t\tDescription: pulumi.String(\"Vault KMIP backend\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdev, err := kmip.NewSecretScope(ctx, \"dev\", \u0026kmip.SecretScopeArgs{\n\t\t\tPath: _default.Path,\n\t\t\tScope: pulumi.String(\"dev\"),\n\t\t\tForce: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = kmip.NewSecretRole(ctx, \"admin\", \u0026kmip.SecretRoleArgs{\n\t\t\tPath: dev.Path,\n\t\t\tScope: dev.Scope,\n\t\t\tRole: pulumi.String(\"admin\"),\n\t\t\tTlsClientKeyType: pulumi.String(\"ec\"),\n\t\t\tTlsClientKeyBits: pulumi.Int(256),\n\t\t\tOperationActivate: pulumi.Bool(true),\n\t\t\tOperationGet: pulumi.Bool(true),\n\t\t\tOperationGetAttributes: pulumi.Bool(true),\n\t\t\tOperationCreate: pulumi.Bool(true),\n\t\t\tOperationDestroy: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.kmip.SecretBackend;\nimport com.pulumi.vault.kmip.SecretBackendArgs;\nimport com.pulumi.vault.kmip.SecretScope;\nimport com.pulumi.vault.kmip.SecretScopeArgs;\nimport com.pulumi.vault.kmip.SecretRole;\nimport com.pulumi.vault.kmip.SecretRoleArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var default_ = new SecretBackend(\"default\", SecretBackendArgs.builder() \n .path(\"kmip\")\n .description(\"Vault KMIP backend\")\n .build());\n\n var dev = new SecretScope(\"dev\", SecretScopeArgs.builder() \n .path(default_.path())\n .scope(\"dev\")\n .force(true)\n .build());\n\n var admin = new SecretRole(\"admin\", SecretRoleArgs.builder() \n .path(dev.path())\n .scope(dev.scope())\n .role(\"admin\")\n .tlsClientKeyType(\"ec\")\n .tlsClientKeyBits(256)\n .operationActivate(true)\n .operationGet(true)\n .operationGetAttributes(true)\n .operationCreate(true)\n .operationDestroy(true)\n .build());\n\n }\n}\n```\n```yaml\nresources:\n default:\n type: vault:kmip:SecretBackend\n properties:\n path: kmip\n description: Vault KMIP backend\n dev:\n type: vault:kmip:SecretScope\n properties:\n path: ${default.path}\n scope: dev\n force: true\n admin:\n type: vault:kmip:SecretRole\n properties:\n path: ${dev.path}\n scope: ${dev.scope}\n role: admin\n tlsClientKeyType: ec\n tlsClientKeyBits: 256\n operationActivate: true\n operationGet: true\n operationGetAttributes: true\n operationCreate: true\n operationDestroy: true\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nKMIP Secret role can be imported using the `path`, e.g.\n\n```sh\n $ pulumi import vault:kmip/secretRole:SecretRole admin kmip\n```\n\n ",
+ "description": "Manages KMIP Secret roles in a Vault server. This feature requires\nVault Enterprise. See the [Vault documentation](https://www.vaultproject.io/docs/secrets/kmip)\nfor more information.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst _default = new vault.kmip.SecretBackend(\"default\", {\n path: \"kmip\",\n description: \"Vault KMIP backend\",\n});\nconst dev = new vault.kmip.SecretScope(\"dev\", {\n path: _default.path,\n scope: \"dev\",\n force: true,\n});\nconst admin = new vault.kmip.SecretRole(\"admin\", {\n path: dev.path,\n scope: dev.scope,\n role: \"admin\",\n tlsClientKeyType: \"ec\",\n tlsClientKeyBits: 256,\n operationActivate: true,\n operationGet: true,\n operationGetAttributes: true,\n operationCreate: true,\n operationDestroy: true,\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\ndefault = vault.kmip.SecretBackend(\"default\",\n path=\"kmip\",\n description=\"Vault KMIP backend\")\ndev = vault.kmip.SecretScope(\"dev\",\n path=default.path,\n scope=\"dev\",\n force=True)\nadmin = vault.kmip.SecretRole(\"admin\",\n path=dev.path,\n scope=dev.scope,\n role=\"admin\",\n tls_client_key_type=\"ec\",\n tls_client_key_bits=256,\n operation_activate=True,\n operation_get=True,\n operation_get_attributes=True,\n operation_create=True,\n operation_destroy=True)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @default = new Vault.Kmip.SecretBackend(\"default\", new()\n {\n Path = \"kmip\",\n Description = \"Vault KMIP backend\",\n });\n\n var dev = new Vault.Kmip.SecretScope(\"dev\", new()\n {\n Path = @default.Path,\n Scope = \"dev\",\n Force = true,\n });\n\n var admin = new Vault.Kmip.SecretRole(\"admin\", new()\n {\n Path = dev.Path,\n Scope = dev.Scope,\n Role = \"admin\",\n TlsClientKeyType = \"ec\",\n TlsClientKeyBits = 256,\n OperationActivate = true,\n OperationGet = true,\n OperationGetAttributes = true,\n OperationCreate = true,\n OperationDestroy = true,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/kmip\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := kmip.NewSecretBackend(ctx, \"default\", \u0026kmip.SecretBackendArgs{\n\t\t\tPath: pulumi.String(\"kmip\"),\n\t\t\tDescription: pulumi.String(\"Vault KMIP backend\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdev, err := kmip.NewSecretScope(ctx, \"dev\", \u0026kmip.SecretScopeArgs{\n\t\t\tPath: _default.Path,\n\t\t\tScope: pulumi.String(\"dev\"),\n\t\t\tForce: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = kmip.NewSecretRole(ctx, \"admin\", \u0026kmip.SecretRoleArgs{\n\t\t\tPath: dev.Path,\n\t\t\tScope: dev.Scope,\n\t\t\tRole: pulumi.String(\"admin\"),\n\t\t\tTlsClientKeyType: pulumi.String(\"ec\"),\n\t\t\tTlsClientKeyBits: pulumi.Int(256),\n\t\t\tOperationActivate: pulumi.Bool(true),\n\t\t\tOperationGet: pulumi.Bool(true),\n\t\t\tOperationGetAttributes: pulumi.Bool(true),\n\t\t\tOperationCreate: pulumi.Bool(true),\n\t\t\tOperationDestroy: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.kmip.SecretBackend;\nimport com.pulumi.vault.kmip.SecretBackendArgs;\nimport com.pulumi.vault.kmip.SecretScope;\nimport com.pulumi.vault.kmip.SecretScopeArgs;\nimport com.pulumi.vault.kmip.SecretRole;\nimport com.pulumi.vault.kmip.SecretRoleArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var default_ = new SecretBackend(\"default\", SecretBackendArgs.builder() \n .path(\"kmip\")\n .description(\"Vault KMIP backend\")\n .build());\n\n var dev = new SecretScope(\"dev\", SecretScopeArgs.builder() \n .path(default_.path())\n .scope(\"dev\")\n .force(true)\n .build());\n\n var admin = new SecretRole(\"admin\", SecretRoleArgs.builder() \n .path(dev.path())\n .scope(dev.scope())\n .role(\"admin\")\n .tlsClientKeyType(\"ec\")\n .tlsClientKeyBits(256)\n .operationActivate(true)\n .operationGet(true)\n .operationGetAttributes(true)\n .operationCreate(true)\n .operationDestroy(true)\n .build());\n\n }\n}\n```\n```yaml\nresources:\n default:\n type: vault:kmip:SecretBackend\n properties:\n path: kmip\n description: Vault KMIP backend\n dev:\n type: vault:kmip:SecretScope\n properties:\n path: ${default.path}\n scope: dev\n force: true\n admin:\n type: vault:kmip:SecretRole\n properties:\n path: ${dev.path}\n scope: ${dev.scope}\n role: admin\n tlsClientKeyType: ec\n tlsClientKeyBits: 256\n operationActivate: true\n operationGet: true\n operationGetAttributes: true\n operationCreate: true\n operationDestroy: true\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nKMIP Secret role can be imported using the `path`, e.g.\n\n```sh\n $ pulumi import vault:kmip/secretRole:SecretRole admin kmip\n```\n ",
"properties": {
"namespace": {
"type": "string",
@@ -21916,7 +19139,7 @@
}
},
"vault:kmip/secretScope:SecretScope": {
- "description": "Manages KMIP Secret Scopes in a Vault server. This feature requires\nVault Enterprise. See the [Vault documentation](https://www.vaultproject.io/docs/secrets/kmip)\nfor more information.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst _default = new vault.kmip.SecretBackend(\"default\", {\n path: \"kmip\",\n description: \"Vault KMIP backend\",\n});\nconst dev = new vault.kmip.SecretScope(\"dev\", {\n path: _default.path,\n scope: \"dev\",\n force: true,\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\ndefault = vault.kmip.SecretBackend(\"default\",\n path=\"kmip\",\n description=\"Vault KMIP backend\")\ndev = vault.kmip.SecretScope(\"dev\",\n path=default.path,\n scope=\"dev\",\n force=True)\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @default = new Vault.Kmip.SecretBackend(\"default\", new()\n {\n Path = \"kmip\",\n Description = \"Vault KMIP backend\",\n });\n\n var dev = new Vault.Kmip.SecretScope(\"dev\", new()\n {\n Path = @default.Path,\n Scope = \"dev\",\n Force = true,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/kmip\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := kmip.NewSecretBackend(ctx, \"default\", \u0026kmip.SecretBackendArgs{\n\t\t\tPath: pulumi.String(\"kmip\"),\n\t\t\tDescription: pulumi.String(\"Vault KMIP backend\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = kmip.NewSecretScope(ctx, \"dev\", \u0026kmip.SecretScopeArgs{\n\t\t\tPath: _default.Path,\n\t\t\tScope: pulumi.String(\"dev\"),\n\t\t\tForce: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.kmip.SecretBackend;\nimport com.pulumi.vault.kmip.SecretBackendArgs;\nimport com.pulumi.vault.kmip.SecretScope;\nimport com.pulumi.vault.kmip.SecretScopeArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var default_ = new SecretBackend(\"default\", SecretBackendArgs.builder() \n .path(\"kmip\")\n .description(\"Vault KMIP backend\")\n .build());\n\n var dev = new SecretScope(\"dev\", SecretScopeArgs.builder() \n .path(default_.path())\n .scope(\"dev\")\n .force(true)\n .build());\n\n }\n}\n```\n```yaml\nresources:\n default:\n type: vault:kmip:SecretBackend\n properties:\n path: kmip\n description: Vault KMIP backend\n dev:\n type: vault:kmip:SecretScope\n properties:\n path: ${default.path}\n scope: dev\n force: true\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nKMIP Secret scope can be imported using the `path`, e.g.\n\n```sh\n $ pulumi import vault:kmip/secretScope:SecretScope dev kmip\n```\n\n ",
+ "description": "Manages KMIP Secret Scopes in a Vault server. This feature requires\nVault Enterprise. See the [Vault documentation](https://www.vaultproject.io/docs/secrets/kmip)\nfor more information.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst _default = new vault.kmip.SecretBackend(\"default\", {\n path: \"kmip\",\n description: \"Vault KMIP backend\",\n});\nconst dev = new vault.kmip.SecretScope(\"dev\", {\n path: _default.path,\n scope: \"dev\",\n force: true,\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\ndefault = vault.kmip.SecretBackend(\"default\",\n path=\"kmip\",\n description=\"Vault KMIP backend\")\ndev = vault.kmip.SecretScope(\"dev\",\n path=default.path,\n scope=\"dev\",\n force=True)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @default = new Vault.Kmip.SecretBackend(\"default\", new()\n {\n Path = \"kmip\",\n Description = \"Vault KMIP backend\",\n });\n\n var dev = new Vault.Kmip.SecretScope(\"dev\", new()\n {\n Path = @default.Path,\n Scope = \"dev\",\n Force = true,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/kmip\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := kmip.NewSecretBackend(ctx, \"default\", \u0026kmip.SecretBackendArgs{\n\t\t\tPath: pulumi.String(\"kmip\"),\n\t\t\tDescription: pulumi.String(\"Vault KMIP backend\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = kmip.NewSecretScope(ctx, \"dev\", \u0026kmip.SecretScopeArgs{\n\t\t\tPath: _default.Path,\n\t\t\tScope: pulumi.String(\"dev\"),\n\t\t\tForce: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.kmip.SecretBackend;\nimport com.pulumi.vault.kmip.SecretBackendArgs;\nimport com.pulumi.vault.kmip.SecretScope;\nimport com.pulumi.vault.kmip.SecretScopeArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var default_ = new SecretBackend(\"default\", SecretBackendArgs.builder() \n .path(\"kmip\")\n .description(\"Vault KMIP backend\")\n .build());\n\n var dev = new SecretScope(\"dev\", SecretScopeArgs.builder() \n .path(default_.path())\n .scope(\"dev\")\n .force(true)\n .build());\n\n }\n}\n```\n```yaml\nresources:\n default:\n type: vault:kmip:SecretBackend\n properties:\n path: kmip\n description: Vault KMIP backend\n dev:\n type: vault:kmip:SecretScope\n properties:\n path: ${default.path}\n scope: dev\n force: true\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nKMIP Secret scope can be imported using the `path`, e.g.\n\n```sh\n $ pulumi import vault:kmip/secretScope:SecretScope dev kmip\n```\n ",
"properties": {
"force": {
"type": "boolean",
@@ -21989,7 +19212,7 @@
}
},
"vault:kubernetes/authBackendConfig:AuthBackendConfig": {
- "description": "Manages an Kubernetes auth backend config in a Vault server. See the [Vault\ndocumentation](https://www.vaultproject.io/docs/auth/kubernetes.html) for more\ninformation.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst kubernetes = new vault.AuthBackend(\"kubernetes\", {type: \"kubernetes\"});\nconst example = new vault.kubernetes.AuthBackendConfig(\"example\", {\n backend: kubernetes.path,\n kubernetesHost: \"http://example.com:443\",\n kubernetesCaCert: `-----BEGIN CERTIFICATE-----\nexample\n-----END CERTIFICATE-----`,\n tokenReviewerJwt: \"ZXhhbXBsZQo=\",\n issuer: \"api\",\n disableIssValidation: true,\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nkubernetes = vault.AuthBackend(\"kubernetes\", type=\"kubernetes\")\nexample = vault.kubernetes.AuthBackendConfig(\"example\",\n backend=kubernetes.path,\n kubernetes_host=\"http://example.com:443\",\n kubernetes_ca_cert=\"\"\"-----BEGIN CERTIFICATE-----\nexample\n-----END CERTIFICATE-----\"\"\",\n token_reviewer_jwt=\"ZXhhbXBsZQo=\",\n issuer=\"api\",\n disable_iss_validation=True)\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var kubernetes = new Vault.AuthBackend(\"kubernetes\", new()\n {\n Type = \"kubernetes\",\n });\n\n var example = new Vault.Kubernetes.AuthBackendConfig(\"example\", new()\n {\n Backend = kubernetes.Path,\n KubernetesHost = \"http://example.com:443\",\n KubernetesCaCert = @\"-----BEGIN CERTIFICATE-----\nexample\n-----END CERTIFICATE-----\",\n TokenReviewerJwt = \"ZXhhbXBsZQo=\",\n Issuer = \"api\",\n DisableIssValidation = true,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault\"\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/kubernetes\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tkubernetes, err := vault.NewAuthBackend(ctx, \"kubernetes\", \u0026vault.AuthBackendArgs{\n\t\t\tType: pulumi.String(\"kubernetes\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = kubernetes.NewAuthBackendConfig(ctx, \"example\", \u0026kubernetes.AuthBackendConfigArgs{\n\t\t\tBackend: kubernetes.Path,\n\t\t\tKubernetesHost: pulumi.String(\"http://example.com:443\"),\n\t\t\tKubernetesCaCert: pulumi.String(\"-----BEGIN CERTIFICATE-----\\nexample\\n-----END CERTIFICATE-----\"),\n\t\t\tTokenReviewerJwt: pulumi.String(\"ZXhhbXBsZQo=\"),\n\t\t\tIssuer: pulumi.String(\"api\"),\n\t\t\tDisableIssValidation: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.AuthBackend;\nimport com.pulumi.vault.AuthBackendArgs;\nimport com.pulumi.vault.kubernetes.AuthBackendConfig;\nimport com.pulumi.vault.kubernetes.AuthBackendConfigArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var kubernetes = new AuthBackend(\"kubernetes\", AuthBackendArgs.builder() \n .type(\"kubernetes\")\n .build());\n\n var example = new AuthBackendConfig(\"example\", AuthBackendConfigArgs.builder() \n .backend(kubernetes.path())\n .kubernetesHost(\"http://example.com:443\")\n .kubernetesCaCert(\"\"\"\n-----BEGIN CERTIFICATE-----\nexample\n-----END CERTIFICATE----- \"\"\")\n .tokenReviewerJwt(\"ZXhhbXBsZQo=\")\n .issuer(\"api\")\n .disableIssValidation(\"true\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n kubernetes:\n type: vault:AuthBackend\n properties:\n type: kubernetes\n example:\n type: vault:kubernetes:AuthBackendConfig\n properties:\n backend: ${kubernetes.path}\n kubernetesHost: http://example.com:443\n kubernetesCaCert: |-\n -----BEGIN CERTIFICATE-----\n example\n -----END CERTIFICATE-----\n tokenReviewerJwt: ZXhhbXBsZQo=\n issuer: api\n disableIssValidation: true\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nKubernetes authentication backend can be imported using the `path`, e.g.\n\n```sh\n $ pulumi import vault:kubernetes/authBackendConfig:AuthBackendConfig config auth/kubernetes/config\n```\n\n ",
+ "description": "Manages an Kubernetes auth backend config in a Vault server. See the [Vault\ndocumentation](https://www.vaultproject.io/docs/auth/kubernetes.html) for more\ninformation.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst kubernetes = new vault.AuthBackend(\"kubernetes\", {type: \"kubernetes\"});\nconst example = new vault.kubernetes.AuthBackendConfig(\"example\", {\n backend: kubernetes.path,\n kubernetesHost: \"http://example.com:443\",\n kubernetesCaCert: `-----BEGIN CERTIFICATE-----\nexample\n-----END CERTIFICATE-----`,\n tokenReviewerJwt: \"ZXhhbXBsZQo=\",\n issuer: \"api\",\n disableIssValidation: true,\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nkubernetes = vault.AuthBackend(\"kubernetes\", type=\"kubernetes\")\nexample = vault.kubernetes.AuthBackendConfig(\"example\",\n backend=kubernetes.path,\n kubernetes_host=\"http://example.com:443\",\n kubernetes_ca_cert=\"\"\"-----BEGIN CERTIFICATE-----\nexample\n-----END CERTIFICATE-----\"\"\",\n token_reviewer_jwt=\"ZXhhbXBsZQo=\",\n issuer=\"api\",\n disable_iss_validation=True)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var kubernetes = new Vault.AuthBackend(\"kubernetes\", new()\n {\n Type = \"kubernetes\",\n });\n\n var example = new Vault.Kubernetes.AuthBackendConfig(\"example\", new()\n {\n Backend = kubernetes.Path,\n KubernetesHost = \"http://example.com:443\",\n KubernetesCaCert = @\"-----BEGIN CERTIFICATE-----\nexample\n-----END CERTIFICATE-----\",\n TokenReviewerJwt = \"ZXhhbXBsZQo=\",\n Issuer = \"api\",\n DisableIssValidation = true,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault\"\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/kubernetes\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tkubernetes, err := vault.NewAuthBackend(ctx, \"kubernetes\", \u0026vault.AuthBackendArgs{\n\t\t\tType: pulumi.String(\"kubernetes\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = kubernetes.NewAuthBackendConfig(ctx, \"example\", \u0026kubernetes.AuthBackendConfigArgs{\n\t\t\tBackend: kubernetes.Path,\n\t\t\tKubernetesHost: pulumi.String(\"http://example.com:443\"),\n\t\t\tKubernetesCaCert: pulumi.String(\"-----BEGIN CERTIFICATE-----\\nexample\\n-----END CERTIFICATE-----\"),\n\t\t\tTokenReviewerJwt: pulumi.String(\"ZXhhbXBsZQo=\"),\n\t\t\tIssuer: pulumi.String(\"api\"),\n\t\t\tDisableIssValidation: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.AuthBackend;\nimport com.pulumi.vault.AuthBackendArgs;\nimport com.pulumi.vault.kubernetes.AuthBackendConfig;\nimport com.pulumi.vault.kubernetes.AuthBackendConfigArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var kubernetes = new AuthBackend(\"kubernetes\", AuthBackendArgs.builder() \n .type(\"kubernetes\")\n .build());\n\n var example = new AuthBackendConfig(\"example\", AuthBackendConfigArgs.builder() \n .backend(kubernetes.path())\n .kubernetesHost(\"http://example.com:443\")\n .kubernetesCaCert(\"\"\"\n-----BEGIN CERTIFICATE-----\nexample\n-----END CERTIFICATE----- \"\"\")\n .tokenReviewerJwt(\"ZXhhbXBsZQo=\")\n .issuer(\"api\")\n .disableIssValidation(\"true\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n kubernetes:\n type: vault:AuthBackend\n properties:\n type: kubernetes\n example:\n type: vault:kubernetes:AuthBackendConfig\n properties:\n backend: ${kubernetes.path}\n kubernetesHost: http://example.com:443\n kubernetesCaCert: |-\n -----BEGIN CERTIFICATE-----\n example\n -----END CERTIFICATE-----\n tokenReviewerJwt: ZXhhbXBsZQo=\n issuer: api\n disableIssValidation: 'true'\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nKubernetes authentication backend can be imported using the `path`, e.g.\n\n```sh\n $ pulumi import vault:kubernetes/authBackendConfig:AuthBackendConfig config auth/kubernetes/config\n```\n ",
"properties": {
"backend": {
"type": "string",
@@ -22135,7 +19358,7 @@
}
},
"vault:kubernetes/authBackendRole:AuthBackendRole": {
- "description": "Manages an Kubernetes auth backend role in a Vault server. See the [Vault\ndocumentation](https://www.vaultproject.io/docs/auth/kubernetes.html) for more\ninformation.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst kubernetes = new vault.AuthBackend(\"kubernetes\", {type: \"kubernetes\"});\nconst example = new vault.kubernetes.AuthBackendRole(\"example\", {\n backend: kubernetes.path,\n roleName: \"example-role\",\n boundServiceAccountNames: [\"example\"],\n boundServiceAccountNamespaces: [\"example\"],\n tokenTtl: 3600,\n tokenPolicies: [\n \"default\",\n \"dev\",\n \"prod\",\n ],\n audience: \"vault\",\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nkubernetes = vault.AuthBackend(\"kubernetes\", type=\"kubernetes\")\nexample = vault.kubernetes.AuthBackendRole(\"example\",\n backend=kubernetes.path,\n role_name=\"example-role\",\n bound_service_account_names=[\"example\"],\n bound_service_account_namespaces=[\"example\"],\n token_ttl=3600,\n token_policies=[\n \"default\",\n \"dev\",\n \"prod\",\n ],\n audience=\"vault\")\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var kubernetes = new Vault.AuthBackend(\"kubernetes\", new()\n {\n Type = \"kubernetes\",\n });\n\n var example = new Vault.Kubernetes.AuthBackendRole(\"example\", new()\n {\n Backend = kubernetes.Path,\n RoleName = \"example-role\",\n BoundServiceAccountNames = new[]\n {\n \"example\",\n },\n BoundServiceAccountNamespaces = new[]\n {\n \"example\",\n },\n TokenTtl = 3600,\n TokenPolicies = new[]\n {\n \"default\",\n \"dev\",\n \"prod\",\n },\n Audience = \"vault\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault\"\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/kubernetes\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tkubernetes, err := vault.NewAuthBackend(ctx, \"kubernetes\", \u0026vault.AuthBackendArgs{\n\t\t\tType: pulumi.String(\"kubernetes\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = kubernetes.NewAuthBackendRole(ctx, \"example\", \u0026kubernetes.AuthBackendRoleArgs{\n\t\t\tBackend: kubernetes.Path,\n\t\t\tRoleName: pulumi.String(\"example-role\"),\n\t\t\tBoundServiceAccountNames: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"example\"),\n\t\t\t},\n\t\t\tBoundServiceAccountNamespaces: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"example\"),\n\t\t\t},\n\t\t\tTokenTtl: pulumi.Int(3600),\n\t\t\tTokenPolicies: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"default\"),\n\t\t\t\tpulumi.String(\"dev\"),\n\t\t\t\tpulumi.String(\"prod\"),\n\t\t\t},\n\t\t\tAudience: pulumi.String(\"vault\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.AuthBackend;\nimport com.pulumi.vault.AuthBackendArgs;\nimport com.pulumi.vault.kubernetes.AuthBackendRole;\nimport com.pulumi.vault.kubernetes.AuthBackendRoleArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var kubernetes = new AuthBackend(\"kubernetes\", AuthBackendArgs.builder() \n .type(\"kubernetes\")\n .build());\n\n var example = new AuthBackendRole(\"example\", AuthBackendRoleArgs.builder() \n .backend(kubernetes.path())\n .roleName(\"example-role\")\n .boundServiceAccountNames(\"example\")\n .boundServiceAccountNamespaces(\"example\")\n .tokenTtl(3600)\n .tokenPolicies( \n \"default\",\n \"dev\",\n \"prod\")\n .audience(\"vault\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n kubernetes:\n type: vault:AuthBackend\n properties:\n type: kubernetes\n example:\n type: vault:kubernetes:AuthBackendRole\n properties:\n backend: ${kubernetes.path}\n roleName: example-role\n boundServiceAccountNames:\n - example\n boundServiceAccountNamespaces:\n - example\n tokenTtl: 3600\n tokenPolicies:\n - default\n - dev\n - prod\n audience: vault\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nKubernetes auth backend role can be imported using the `path`, e.g.\n\n```sh\n $ pulumi import vault:kubernetes/authBackendRole:AuthBackendRole foo auth/kubernetes/role/foo\n```\n\n ",
+ "description": "Manages an Kubernetes auth backend role in a Vault server. See the [Vault\ndocumentation](https://www.vaultproject.io/docs/auth/kubernetes.html) for more\ninformation.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst kubernetes = new vault.AuthBackend(\"kubernetes\", {type: \"kubernetes\"});\nconst example = new vault.kubernetes.AuthBackendRole(\"example\", {\n backend: kubernetes.path,\n roleName: \"example-role\",\n boundServiceAccountNames: [\"example\"],\n boundServiceAccountNamespaces: [\"example\"],\n tokenTtl: 3600,\n tokenPolicies: [\n \"default\",\n \"dev\",\n \"prod\",\n ],\n audience: \"vault\",\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nkubernetes = vault.AuthBackend(\"kubernetes\", type=\"kubernetes\")\nexample = vault.kubernetes.AuthBackendRole(\"example\",\n backend=kubernetes.path,\n role_name=\"example-role\",\n bound_service_account_names=[\"example\"],\n bound_service_account_namespaces=[\"example\"],\n token_ttl=3600,\n token_policies=[\n \"default\",\n \"dev\",\n \"prod\",\n ],\n audience=\"vault\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var kubernetes = new Vault.AuthBackend(\"kubernetes\", new()\n {\n Type = \"kubernetes\",\n });\n\n var example = new Vault.Kubernetes.AuthBackendRole(\"example\", new()\n {\n Backend = kubernetes.Path,\n RoleName = \"example-role\",\n BoundServiceAccountNames = new[]\n {\n \"example\",\n },\n BoundServiceAccountNamespaces = new[]\n {\n \"example\",\n },\n TokenTtl = 3600,\n TokenPolicies = new[]\n {\n \"default\",\n \"dev\",\n \"prod\",\n },\n Audience = \"vault\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault\"\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/kubernetes\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tkubernetes, err := vault.NewAuthBackend(ctx, \"kubernetes\", \u0026vault.AuthBackendArgs{\n\t\t\tType: pulumi.String(\"kubernetes\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = kubernetes.NewAuthBackendRole(ctx, \"example\", \u0026kubernetes.AuthBackendRoleArgs{\n\t\t\tBackend: kubernetes.Path,\n\t\t\tRoleName: pulumi.String(\"example-role\"),\n\t\t\tBoundServiceAccountNames: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"example\"),\n\t\t\t},\n\t\t\tBoundServiceAccountNamespaces: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"example\"),\n\t\t\t},\n\t\t\tTokenTtl: pulumi.Int(3600),\n\t\t\tTokenPolicies: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"default\"),\n\t\t\t\tpulumi.String(\"dev\"),\n\t\t\t\tpulumi.String(\"prod\"),\n\t\t\t},\n\t\t\tAudience: pulumi.String(\"vault\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.AuthBackend;\nimport com.pulumi.vault.AuthBackendArgs;\nimport com.pulumi.vault.kubernetes.AuthBackendRole;\nimport com.pulumi.vault.kubernetes.AuthBackendRoleArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var kubernetes = new AuthBackend(\"kubernetes\", AuthBackendArgs.builder() \n .type(\"kubernetes\")\n .build());\n\n var example = new AuthBackendRole(\"example\", AuthBackendRoleArgs.builder() \n .backend(kubernetes.path())\n .roleName(\"example-role\")\n .boundServiceAccountNames(\"example\")\n .boundServiceAccountNamespaces(\"example\")\n .tokenTtl(3600)\n .tokenPolicies( \n \"default\",\n \"dev\",\n \"prod\")\n .audience(\"vault\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n kubernetes:\n type: vault:AuthBackend\n properties:\n type: kubernetes\n example:\n type: vault:kubernetes:AuthBackendRole\n properties:\n backend: ${kubernetes.path}\n roleName: example-role\n boundServiceAccountNames:\n - example\n boundServiceAccountNamespaces:\n - example\n tokenTtl: 3600\n tokenPolicies:\n - default\n - dev\n - prod\n audience: vault\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nKubernetes auth backend role can be imported using the `path`, e.g.\n\n```sh\n $ pulumi import vault:kubernetes/authBackendRole:AuthBackendRole foo auth/kubernetes/role/foo\n```\n ",
"properties": {
"aliasNameSource": {
"type": "string",
@@ -22143,7 +19366,7 @@
},
"audience": {
"type": "string",
- "description": "Audience claim to verify in the JWT.\n"
+ "description": "Audience claim to verify in the JWT.\n\n\u003e Please see [alias_name_source](https://www.vaultproject.io/api-docs/auth/kubernetes#alias_name_source)\nbefore setting this to something other its default value. There are **important** security\nimplications to be aware of.\n"
},
"backend": {
"type": "string",
@@ -22227,7 +19450,7 @@
},
"audience": {
"type": "string",
- "description": "Audience claim to verify in the JWT.\n"
+ "description": "Audience claim to verify in the JWT.\n\n\u003e Please see [alias_name_source](https://www.vaultproject.io/api-docs/auth/kubernetes#alias_name_source)\nbefore setting this to something other its default value. There are **important** security\nimplications to be aware of.\n"
},
"backend": {
"type": "string",
@@ -22315,7 +19538,7 @@
},
"audience": {
"type": "string",
- "description": "Audience claim to verify in the JWT.\n"
+ "description": "Audience claim to verify in the JWT.\n\n\u003e Please see [alias_name_source](https://www.vaultproject.io/api-docs/auth/kubernetes#alias_name_source)\nbefore setting this to something other its default value. There are **important** security\nimplications to be aware of.\n"
},
"backend": {
"type": "string",
@@ -22393,7 +19616,7 @@
}
},
"vault:kubernetes/secretBackend:SecretBackend": {
- "description": "{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as fs from \"fs\";\nimport * as vault from \"@pulumi/vault\";\n\nconst config = new vault.kubernetes.SecretBackend(\"config\", {\n path: \"kubernetes\",\n description: \"kubernetes secrets engine description\",\n defaultLeaseTtlSeconds: 43200,\n maxLeaseTtlSeconds: 86400,\n kubernetesHost: \"https://127.0.0.1:61233\",\n kubernetesCaCert: fs.readFileSync(\"/path/to/cert\"),\n serviceAccountJwt: fs.readFileSync(\"/path/to/token\"),\n disableLocalCaJwt: false,\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nconfig = vault.kubernetes.SecretBackend(\"config\",\n path=\"kubernetes\",\n description=\"kubernetes secrets engine description\",\n default_lease_ttl_seconds=43200,\n max_lease_ttl_seconds=86400,\n kubernetes_host=\"https://127.0.0.1:61233\",\n kubernetes_ca_cert=(lambda path: open(path).read())(\"/path/to/cert\"),\n service_account_jwt=(lambda path: open(path).read())(\"/path/to/token\"),\n disable_local_ca_jwt=False)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.IO;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Vault.Kubernetes.SecretBackend(\"config\", new()\n {\n Path = \"kubernetes\",\n Description = \"kubernetes secrets engine description\",\n DefaultLeaseTtlSeconds = 43200,\n MaxLeaseTtlSeconds = 86400,\n KubernetesHost = \"https://127.0.0.1:61233\",\n KubernetesCaCert = File.ReadAllText(\"/path/to/cert\"),\n ServiceAccountJwt = File.ReadAllText(\"/path/to/token\"),\n DisableLocalCaJwt = false,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"io/ioutil\"\n\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/kubernetes\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc readFileOrPanic(path string) pulumi.StringPtrInput {\n\tdata, err := ioutil.ReadFile(path)\n\tif err != nil {\n\t\tpanic(err.Error())\n\t}\n\treturn pulumi.String(string(data))\n}\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := kubernetes.NewSecretBackend(ctx, \"config\", \u0026kubernetes.SecretBackendArgs{\n\t\t\tPath: pulumi.String(\"kubernetes\"),\n\t\t\tDescription: pulumi.String(\"kubernetes secrets engine description\"),\n\t\t\tDefaultLeaseTtlSeconds: pulumi.Int(43200),\n\t\t\tMaxLeaseTtlSeconds: pulumi.Int(86400),\n\t\t\tKubernetesHost: pulumi.String(\"https://127.0.0.1:61233\"),\n\t\t\tKubernetesCaCert: readFileOrPanic(\"/path/to/cert\"),\n\t\t\tServiceAccountJwt: readFileOrPanic(\"/path/to/token\"),\n\t\t\tDisableLocalCaJwt: pulumi.Bool(false),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.kubernetes.SecretBackend;\nimport com.pulumi.vault.kubernetes.SecretBackendArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var config = new SecretBackend(\"config\", SecretBackendArgs.builder() \n .path(\"kubernetes\")\n .description(\"kubernetes secrets engine description\")\n .defaultLeaseTtlSeconds(43200)\n .maxLeaseTtlSeconds(86400)\n .kubernetesHost(\"https://127.0.0.1:61233\")\n .kubernetesCaCert(Files.readString(Paths.get(\"/path/to/cert\")))\n .serviceAccountJwt(Files.readString(Paths.get(\"/path/to/token\")))\n .disableLocalCaJwt(false)\n .build());\n\n }\n}\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nThe Kubernetes secret backend can be imported using its `path` e.g.\n\n```sh\n $ pulumi import vault:kubernetes/secretBackend:SecretBackend config kubernetes\n```\n\n ",
+ "description": "{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as fs from \"fs\";\nimport * as vault from \"@pulumi/vault\";\n\nconst config = new vault.kubernetes.SecretBackend(\"config\", {\n path: \"kubernetes\",\n description: \"kubernetes secrets engine description\",\n defaultLeaseTtlSeconds: 43200,\n maxLeaseTtlSeconds: 86400,\n kubernetesHost: \"https://127.0.0.1:61233\",\n kubernetesCaCert: fs.readFileSync(\"/path/to/cert\"),\n serviceAccountJwt: fs.readFileSync(\"/path/to/token\"),\n disableLocalCaJwt: false,\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nconfig = vault.kubernetes.SecretBackend(\"config\",\n path=\"kubernetes\",\n description=\"kubernetes secrets engine description\",\n default_lease_ttl_seconds=43200,\n max_lease_ttl_seconds=86400,\n kubernetes_host=\"https://127.0.0.1:61233\",\n kubernetes_ca_cert=(lambda path: open(path).read())(\"/path/to/cert\"),\n service_account_jwt=(lambda path: open(path).read())(\"/path/to/token\"),\n disable_local_ca_jwt=False)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.IO;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Vault.Kubernetes.SecretBackend(\"config\", new()\n {\n Path = \"kubernetes\",\n Description = \"kubernetes secrets engine description\",\n DefaultLeaseTtlSeconds = 43200,\n MaxLeaseTtlSeconds = 86400,\n KubernetesHost = \"https://127.0.0.1:61233\",\n KubernetesCaCert = File.ReadAllText(\"/path/to/cert\"),\n ServiceAccountJwt = File.ReadAllText(\"/path/to/token\"),\n DisableLocalCaJwt = false,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"os\"\n\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/kubernetes\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc readFileOrPanic(path string) pulumi.StringPtrInput {\n\tdata, err := os.ReadFile(path)\n\tif err != nil {\n\t\tpanic(err.Error())\n\t}\n\treturn pulumi.String(string(data))\n}\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := kubernetes.NewSecretBackend(ctx, \"config\", \u0026kubernetes.SecretBackendArgs{\n\t\t\tPath: pulumi.String(\"kubernetes\"),\n\t\t\tDescription: pulumi.String(\"kubernetes secrets engine description\"),\n\t\t\tDefaultLeaseTtlSeconds: pulumi.Int(43200),\n\t\t\tMaxLeaseTtlSeconds: pulumi.Int(86400),\n\t\t\tKubernetesHost: pulumi.String(\"https://127.0.0.1:61233\"),\n\t\t\tKubernetesCaCert: readFileOrPanic(\"/path/to/cert\"),\n\t\t\tServiceAccountJwt: readFileOrPanic(\"/path/to/token\"),\n\t\t\tDisableLocalCaJwt: pulumi.Bool(false),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.kubernetes.SecretBackend;\nimport com.pulumi.vault.kubernetes.SecretBackendArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var config = new SecretBackend(\"config\", SecretBackendArgs.builder() \n .path(\"kubernetes\")\n .description(\"kubernetes secrets engine description\")\n .defaultLeaseTtlSeconds(43200)\n .maxLeaseTtlSeconds(86400)\n .kubernetesHost(\"https://127.0.0.1:61233\")\n .kubernetesCaCert(Files.readString(Paths.get(\"/path/to/cert\")))\n .serviceAccountJwt(Files.readString(Paths.get(\"/path/to/token\")))\n .disableLocalCaJwt(false)\n .build());\n\n }\n}\n```\n```yaml\nresources:\n config:\n type: vault:kubernetes:SecretBackend\n properties:\n path: kubernetes\n description: kubernetes secrets engine description\n defaultLeaseTtlSeconds: 43200\n maxLeaseTtlSeconds: 86400\n kubernetesHost: https://127.0.0.1:61233\n kubernetesCaCert:\n fn::readFile: /path/to/cert\n serviceAccountJwt:\n fn::readFile: /path/to/token\n disableLocalCaJwt: false\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nThe Kubernetes secret backend can be imported using its `path` e.g.\n\n```sh\n $ pulumi import vault:kubernetes/secretBackend:SecretBackend config kubernetes\n```\n ",
"properties": {
"accessor": {
"type": "string",
@@ -22667,7 +19890,7 @@
}
},
"vault:kubernetes/secretBackendRole:SecretBackendRole": {
- "description": "{{% examples %}}\n## Example Usage\n{{% example %}}\n\nExample using `service_account_name` mode:\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as fs from \"fs\";\nimport * as vault from \"@pulumi/vault\";\n\nconst config = new vault.kubernetes.SecretBackend(\"config\", {\n path: \"kubernetes\",\n description: \"kubernetes secrets engine description\",\n kubernetesHost: \"https://127.0.0.1:61233\",\n kubernetesCaCert: fs.readFileSync(\"/path/to/cert\"),\n serviceAccountJwt: fs.readFileSync(\"/path/to/token\"),\n disableLocalCaJwt: false,\n});\nconst sa_example = new vault.kubernetes.SecretBackendRole(\"sa-example\", {\n backend: config.path,\n allowedKubernetesNamespaces: [\"*\"],\n tokenMaxTtl: 43200,\n tokenDefaultTtl: 21600,\n serviceAccountName: \"test-service-account-with-generated-token\",\n extraLabels: {\n id: \"abc123\",\n name: \"some_name\",\n },\n extraAnnotations: {\n env: \"development\",\n location: \"earth\",\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nconfig = vault.kubernetes.SecretBackend(\"config\",\n path=\"kubernetes\",\n description=\"kubernetes secrets engine description\",\n kubernetes_host=\"https://127.0.0.1:61233\",\n kubernetes_ca_cert=(lambda path: open(path).read())(\"/path/to/cert\"),\n service_account_jwt=(lambda path: open(path).read())(\"/path/to/token\"),\n disable_local_ca_jwt=False)\nsa_example = vault.kubernetes.SecretBackendRole(\"sa-example\",\n backend=config.path,\n allowed_kubernetes_namespaces=[\"*\"],\n token_max_ttl=43200,\n token_default_ttl=21600,\n service_account_name=\"test-service-account-with-generated-token\",\n extra_labels={\n \"id\": \"abc123\",\n \"name\": \"some_name\",\n },\n extra_annotations={\n \"env\": \"development\",\n \"location\": \"earth\",\n })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.IO;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Vault.Kubernetes.SecretBackend(\"config\", new()\n {\n Path = \"kubernetes\",\n Description = \"kubernetes secrets engine description\",\n KubernetesHost = \"https://127.0.0.1:61233\",\n KubernetesCaCert = File.ReadAllText(\"/path/to/cert\"),\n ServiceAccountJwt = File.ReadAllText(\"/path/to/token\"),\n DisableLocalCaJwt = false,\n });\n\n var sa_example = new Vault.Kubernetes.SecretBackendRole(\"sa-example\", new()\n {\n Backend = config.Path,\n AllowedKubernetesNamespaces = new[]\n {\n \"*\",\n },\n TokenMaxTtl = 43200,\n TokenDefaultTtl = 21600,\n ServiceAccountName = \"test-service-account-with-generated-token\",\n ExtraLabels = \n {\n { \"id\", \"abc123\" },\n { \"name\", \"some_name\" },\n },\n ExtraAnnotations = \n {\n { \"env\", \"development\" },\n { \"location\", \"earth\" },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"io/ioutil\"\n\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/kubernetes\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc readFileOrPanic(path string) pulumi.StringPtrInput {\n\tdata, err := ioutil.ReadFile(path)\n\tif err != nil {\n\t\tpanic(err.Error())\n\t}\n\treturn pulumi.String(string(data))\n}\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tconfig, err := kubernetes.NewSecretBackend(ctx, \"config\", \u0026kubernetes.SecretBackendArgs{\n\t\t\tPath: pulumi.String(\"kubernetes\"),\n\t\t\tDescription: pulumi.String(\"kubernetes secrets engine description\"),\n\t\t\tKubernetesHost: pulumi.String(\"https://127.0.0.1:61233\"),\n\t\t\tKubernetesCaCert: readFileOrPanic(\"/path/to/cert\"),\n\t\t\tServiceAccountJwt: readFileOrPanic(\"/path/to/token\"),\n\t\t\tDisableLocalCaJwt: pulumi.Bool(false),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = kubernetes.NewSecretBackendRole(ctx, \"sa-example\", \u0026kubernetes.SecretBackendRoleArgs{\n\t\t\tBackend: config.Path,\n\t\t\tAllowedKubernetesNamespaces: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"*\"),\n\t\t\t},\n\t\t\tTokenMaxTtl: pulumi.Int(43200),\n\t\t\tTokenDefaultTtl: pulumi.Int(21600),\n\t\t\tServiceAccountName: pulumi.String(\"test-service-account-with-generated-token\"),\n\t\t\tExtraLabels: pulumi.StringMap{\n\t\t\t\t\"id\": pulumi.String(\"abc123\"),\n\t\t\t\t\"name\": pulumi.String(\"some_name\"),\n\t\t\t},\n\t\t\tExtraAnnotations: pulumi.StringMap{\n\t\t\t\t\"env\": pulumi.String(\"development\"),\n\t\t\t\t\"location\": pulumi.String(\"earth\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.kubernetes.SecretBackend;\nimport com.pulumi.vault.kubernetes.SecretBackendArgs;\nimport com.pulumi.vault.kubernetes.SecretBackendRole;\nimport com.pulumi.vault.kubernetes.SecretBackendRoleArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var config = new SecretBackend(\"config\", SecretBackendArgs.builder() \n .path(\"kubernetes\")\n .description(\"kubernetes secrets engine description\")\n .kubernetesHost(\"https://127.0.0.1:61233\")\n .kubernetesCaCert(Files.readString(Paths.get(\"/path/to/cert\")))\n .serviceAccountJwt(Files.readString(Paths.get(\"/path/to/token\")))\n .disableLocalCaJwt(false)\n .build());\n\n var sa_example = new SecretBackendRole(\"sa-example\", SecretBackendRoleArgs.builder() \n .backend(config.path())\n .allowedKubernetesNamespaces(\"*\")\n .tokenMaxTtl(43200)\n .tokenDefaultTtl(21600)\n .serviceAccountName(\"test-service-account-with-generated-token\")\n .extraLabels(Map.ofEntries(\n Map.entry(\"id\", \"abc123\"),\n Map.entry(\"name\", \"some_name\")\n ))\n .extraAnnotations(Map.ofEntries(\n Map.entry(\"env\", \"development\"),\n Map.entry(\"location\", \"earth\")\n ))\n .build());\n\n }\n}\n```\n\nExample using `kubernetes_role_name` mode:\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as fs from \"fs\";\nimport * as vault from \"@pulumi/vault\";\n\nconst config = new vault.kubernetes.SecretBackend(\"config\", {\n path: \"kubernetes\",\n description: \"kubernetes secrets engine description\",\n kubernetesHost: \"https://127.0.0.1:61233\",\n kubernetesCaCert: fs.readFileSync(\"/path/to/cert\"),\n serviceAccountJwt: fs.readFileSync(\"/path/to/token\"),\n disableLocalCaJwt: false,\n});\nconst name_example = new vault.kubernetes.SecretBackendRole(\"name-example\", {\n backend: config.path,\n allowedKubernetesNamespaces: [\"*\"],\n tokenMaxTtl: 43200,\n tokenDefaultTtl: 21600,\n kubernetesRoleName: \"vault-k8s-secrets-role\",\n extraLabels: {\n id: \"abc123\",\n name: \"some_name\",\n },\n extraAnnotations: {\n env: \"development\",\n location: \"earth\",\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nconfig = vault.kubernetes.SecretBackend(\"config\",\n path=\"kubernetes\",\n description=\"kubernetes secrets engine description\",\n kubernetes_host=\"https://127.0.0.1:61233\",\n kubernetes_ca_cert=(lambda path: open(path).read())(\"/path/to/cert\"),\n service_account_jwt=(lambda path: open(path).read())(\"/path/to/token\"),\n disable_local_ca_jwt=False)\nname_example = vault.kubernetes.SecretBackendRole(\"name-example\",\n backend=config.path,\n allowed_kubernetes_namespaces=[\"*\"],\n token_max_ttl=43200,\n token_default_ttl=21600,\n kubernetes_role_name=\"vault-k8s-secrets-role\",\n extra_labels={\n \"id\": \"abc123\",\n \"name\": \"some_name\",\n },\n extra_annotations={\n \"env\": \"development\",\n \"location\": \"earth\",\n })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.IO;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Vault.Kubernetes.SecretBackend(\"config\", new()\n {\n Path = \"kubernetes\",\n Description = \"kubernetes secrets engine description\",\n KubernetesHost = \"https://127.0.0.1:61233\",\n KubernetesCaCert = File.ReadAllText(\"/path/to/cert\"),\n ServiceAccountJwt = File.ReadAllText(\"/path/to/token\"),\n DisableLocalCaJwt = false,\n });\n\n var name_example = new Vault.Kubernetes.SecretBackendRole(\"name-example\", new()\n {\n Backend = config.Path,\n AllowedKubernetesNamespaces = new[]\n {\n \"*\",\n },\n TokenMaxTtl = 43200,\n TokenDefaultTtl = 21600,\n KubernetesRoleName = \"vault-k8s-secrets-role\",\n ExtraLabels = \n {\n { \"id\", \"abc123\" },\n { \"name\", \"some_name\" },\n },\n ExtraAnnotations = \n {\n { \"env\", \"development\" },\n { \"location\", \"earth\" },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"io/ioutil\"\n\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/kubernetes\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc readFileOrPanic(path string) pulumi.StringPtrInput {\n\tdata, err := ioutil.ReadFile(path)\n\tif err != nil {\n\t\tpanic(err.Error())\n\t}\n\treturn pulumi.String(string(data))\n}\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tconfig, err := kubernetes.NewSecretBackend(ctx, \"config\", \u0026kubernetes.SecretBackendArgs{\n\t\t\tPath: pulumi.String(\"kubernetes\"),\n\t\t\tDescription: pulumi.String(\"kubernetes secrets engine description\"),\n\t\t\tKubernetesHost: pulumi.String(\"https://127.0.0.1:61233\"),\n\t\t\tKubernetesCaCert: readFileOrPanic(\"/path/to/cert\"),\n\t\t\tServiceAccountJwt: readFileOrPanic(\"/path/to/token\"),\n\t\t\tDisableLocalCaJwt: pulumi.Bool(false),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = kubernetes.NewSecretBackendRole(ctx, \"name-example\", \u0026kubernetes.SecretBackendRoleArgs{\n\t\t\tBackend: config.Path,\n\t\t\tAllowedKubernetesNamespaces: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"*\"),\n\t\t\t},\n\t\t\tTokenMaxTtl: pulumi.Int(43200),\n\t\t\tTokenDefaultTtl: pulumi.Int(21600),\n\t\t\tKubernetesRoleName: pulumi.String(\"vault-k8s-secrets-role\"),\n\t\t\tExtraLabels: pulumi.StringMap{\n\t\t\t\t\"id\": pulumi.String(\"abc123\"),\n\t\t\t\t\"name\": pulumi.String(\"some_name\"),\n\t\t\t},\n\t\t\tExtraAnnotations: pulumi.StringMap{\n\t\t\t\t\"env\": pulumi.String(\"development\"),\n\t\t\t\t\"location\": pulumi.String(\"earth\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.kubernetes.SecretBackend;\nimport com.pulumi.vault.kubernetes.SecretBackendArgs;\nimport com.pulumi.vault.kubernetes.SecretBackendRole;\nimport com.pulumi.vault.kubernetes.SecretBackendRoleArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var config = new SecretBackend(\"config\", SecretBackendArgs.builder() \n .path(\"kubernetes\")\n .description(\"kubernetes secrets engine description\")\n .kubernetesHost(\"https://127.0.0.1:61233\")\n .kubernetesCaCert(Files.readString(Paths.get(\"/path/to/cert\")))\n .serviceAccountJwt(Files.readString(Paths.get(\"/path/to/token\")))\n .disableLocalCaJwt(false)\n .build());\n\n var name_example = new SecretBackendRole(\"name-example\", SecretBackendRoleArgs.builder() \n .backend(config.path())\n .allowedKubernetesNamespaces(\"*\")\n .tokenMaxTtl(43200)\n .tokenDefaultTtl(21600)\n .kubernetesRoleName(\"vault-k8s-secrets-role\")\n .extraLabels(Map.ofEntries(\n Map.entry(\"id\", \"abc123\"),\n Map.entry(\"name\", \"some_name\")\n ))\n .extraAnnotations(Map.ofEntries(\n Map.entry(\"env\", \"development\"),\n Map.entry(\"location\", \"earth\")\n ))\n .build());\n\n }\n}\n```\n\nExample using `generated_role_rules` mode:\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as fs from \"fs\";\nimport * as vault from \"@pulumi/vault\";\n\nconst config = new vault.kubernetes.SecretBackend(\"config\", {\n path: \"kubernetes\",\n description: \"kubernetes secrets engine description\",\n kubernetesHost: \"https://127.0.0.1:61233\",\n kubernetesCaCert: fs.readFileSync(\"/path/to/cert\"),\n serviceAccountJwt: fs.readFileSync(\"/path/to/token\"),\n disableLocalCaJwt: false,\n});\nconst rules_example = new vault.kubernetes.SecretBackendRole(\"rules-example\", {\n backend: config.path,\n allowedKubernetesNamespaces: [\"*\"],\n tokenMaxTtl: 43200,\n tokenDefaultTtl: 21600,\n kubernetesRoleType: \"Role\",\n generatedRoleRules: `rules:\n- apiGroups: [\"\"]\n resources: [\"pods\"]\n verbs: [\"list\"]\n`,\n extraLabels: {\n id: \"abc123\",\n name: \"some_name\",\n },\n extraAnnotations: {\n env: \"development\",\n location: \"earth\",\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nconfig = vault.kubernetes.SecretBackend(\"config\",\n path=\"kubernetes\",\n description=\"kubernetes secrets engine description\",\n kubernetes_host=\"https://127.0.0.1:61233\",\n kubernetes_ca_cert=(lambda path: open(path).read())(\"/path/to/cert\"),\n service_account_jwt=(lambda path: open(path).read())(\"/path/to/token\"),\n disable_local_ca_jwt=False)\nrules_example = vault.kubernetes.SecretBackendRole(\"rules-example\",\n backend=config.path,\n allowed_kubernetes_namespaces=[\"*\"],\n token_max_ttl=43200,\n token_default_ttl=21600,\n kubernetes_role_type=\"Role\",\n generated_role_rules=\"\"\"rules:\n- apiGroups: [\"\"]\n resources: [\"pods\"]\n verbs: [\"list\"]\n\"\"\",\n extra_labels={\n \"id\": \"abc123\",\n \"name\": \"some_name\",\n },\n extra_annotations={\n \"env\": \"development\",\n \"location\": \"earth\",\n })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.IO;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Vault.Kubernetes.SecretBackend(\"config\", new()\n {\n Path = \"kubernetes\",\n Description = \"kubernetes secrets engine description\",\n KubernetesHost = \"https://127.0.0.1:61233\",\n KubernetesCaCert = File.ReadAllText(\"/path/to/cert\"),\n ServiceAccountJwt = File.ReadAllText(\"/path/to/token\"),\n DisableLocalCaJwt = false,\n });\n\n var rules_example = new Vault.Kubernetes.SecretBackendRole(\"rules-example\", new()\n {\n Backend = config.Path,\n AllowedKubernetesNamespaces = new[]\n {\n \"*\",\n },\n TokenMaxTtl = 43200,\n TokenDefaultTtl = 21600,\n KubernetesRoleType = \"Role\",\n GeneratedRoleRules = @\"rules:\n- apiGroups: [\"\"\"\"]\n resources: [\"\"pods\"\"]\n verbs: [\"\"list\"\"]\n\",\n ExtraLabels = \n {\n { \"id\", \"abc123\" },\n { \"name\", \"some_name\" },\n },\n ExtraAnnotations = \n {\n { \"env\", \"development\" },\n { \"location\", \"earth\" },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"io/ioutil\"\n\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/kubernetes\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc readFileOrPanic(path string) pulumi.StringPtrInput {\n\tdata, err := ioutil.ReadFile(path)\n\tif err != nil {\n\t\tpanic(err.Error())\n\t}\n\treturn pulumi.String(string(data))\n}\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tconfig, err := kubernetes.NewSecretBackend(ctx, \"config\", \u0026kubernetes.SecretBackendArgs{\n\t\t\tPath: pulumi.String(\"kubernetes\"),\n\t\t\tDescription: pulumi.String(\"kubernetes secrets engine description\"),\n\t\t\tKubernetesHost: pulumi.String(\"https://127.0.0.1:61233\"),\n\t\t\tKubernetesCaCert: readFileOrPanic(\"/path/to/cert\"),\n\t\t\tServiceAccountJwt: readFileOrPanic(\"/path/to/token\"),\n\t\t\tDisableLocalCaJwt: pulumi.Bool(false),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = kubernetes.NewSecretBackendRole(ctx, \"rules-example\", \u0026kubernetes.SecretBackendRoleArgs{\n\t\t\tBackend: config.Path,\n\t\t\tAllowedKubernetesNamespaces: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"*\"),\n\t\t\t},\n\t\t\tTokenMaxTtl: pulumi.Int(43200),\n\t\t\tTokenDefaultTtl: pulumi.Int(21600),\n\t\t\tKubernetesRoleType: pulumi.String(\"Role\"),\n\t\t\tGeneratedRoleRules: pulumi.String(\"rules:\\n- apiGroups: [\\\"\\\"]\\n resources: [\\\"pods\\\"]\\n verbs: [\\\"list\\\"]\\n\"),\n\t\t\tExtraLabels: pulumi.StringMap{\n\t\t\t\t\"id\": pulumi.String(\"abc123\"),\n\t\t\t\t\"name\": pulumi.String(\"some_name\"),\n\t\t\t},\n\t\t\tExtraAnnotations: pulumi.StringMap{\n\t\t\t\t\"env\": pulumi.String(\"development\"),\n\t\t\t\t\"location\": pulumi.String(\"earth\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.kubernetes.SecretBackend;\nimport com.pulumi.vault.kubernetes.SecretBackendArgs;\nimport com.pulumi.vault.kubernetes.SecretBackendRole;\nimport com.pulumi.vault.kubernetes.SecretBackendRoleArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var config = new SecretBackend(\"config\", SecretBackendArgs.builder() \n .path(\"kubernetes\")\n .description(\"kubernetes secrets engine description\")\n .kubernetesHost(\"https://127.0.0.1:61233\")\n .kubernetesCaCert(Files.readString(Paths.get(\"/path/to/cert\")))\n .serviceAccountJwt(Files.readString(Paths.get(\"/path/to/token\")))\n .disableLocalCaJwt(false)\n .build());\n\n var rules_example = new SecretBackendRole(\"rules-example\", SecretBackendRoleArgs.builder() \n .backend(config.path())\n .allowedKubernetesNamespaces(\"*\")\n .tokenMaxTtl(43200)\n .tokenDefaultTtl(21600)\n .kubernetesRoleType(\"Role\")\n .generatedRoleRules(\"\"\"\nrules:\n- apiGroups: [\"\"]\n resources: [\"pods\"]\n verbs: [\"list\"]\n \"\"\")\n .extraLabels(Map.ofEntries(\n Map.entry(\"id\", \"abc123\"),\n Map.entry(\"name\", \"some_name\")\n ))\n .extraAnnotations(Map.ofEntries(\n Map.entry(\"env\", \"development\"),\n Map.entry(\"location\", \"earth\")\n ))\n .build());\n\n }\n}\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nThe Kubernetes secret backend role can be imported using the full path to the role of the form`\u003cbackend_path\u003e/roles/\u003crole_name\u003e` e.g.\n\n```sh\n $ pulumi import vault:kubernetes/secretBackendRole:SecretBackendRole example kubernetes kubernetes/roles/example-role\n```\n\n ",
+ "description": "{{% examples %}}\n## Example Usage\n{{% example %}}\n\nExample using `service_account_name` mode:\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as fs from \"fs\";\nimport * as vault from \"@pulumi/vault\";\n\nconst config = new vault.kubernetes.SecretBackend(\"config\", {\n path: \"kubernetes\",\n description: \"kubernetes secrets engine description\",\n kubernetesHost: \"https://127.0.0.1:61233\",\n kubernetesCaCert: fs.readFileSync(\"/path/to/cert\"),\n serviceAccountJwt: fs.readFileSync(\"/path/to/token\"),\n disableLocalCaJwt: false,\n});\nconst sa_example = new vault.kubernetes.SecretBackendRole(\"sa-example\", {\n backend: config.path,\n allowedKubernetesNamespaces: [\"*\"],\n tokenMaxTtl: 43200,\n tokenDefaultTtl: 21600,\n serviceAccountName: \"test-service-account-with-generated-token\",\n extraLabels: {\n id: \"abc123\",\n name: \"some_name\",\n },\n extraAnnotations: {\n env: \"development\",\n location: \"earth\",\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nconfig = vault.kubernetes.SecretBackend(\"config\",\n path=\"kubernetes\",\n description=\"kubernetes secrets engine description\",\n kubernetes_host=\"https://127.0.0.1:61233\",\n kubernetes_ca_cert=(lambda path: open(path).read())(\"/path/to/cert\"),\n service_account_jwt=(lambda path: open(path).read())(\"/path/to/token\"),\n disable_local_ca_jwt=False)\nsa_example = vault.kubernetes.SecretBackendRole(\"sa-example\",\n backend=config.path,\n allowed_kubernetes_namespaces=[\"*\"],\n token_max_ttl=43200,\n token_default_ttl=21600,\n service_account_name=\"test-service-account-with-generated-token\",\n extra_labels={\n \"id\": \"abc123\",\n \"name\": \"some_name\",\n },\n extra_annotations={\n \"env\": \"development\",\n \"location\": \"earth\",\n })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.IO;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Vault.Kubernetes.SecretBackend(\"config\", new()\n {\n Path = \"kubernetes\",\n Description = \"kubernetes secrets engine description\",\n KubernetesHost = \"https://127.0.0.1:61233\",\n KubernetesCaCert = File.ReadAllText(\"/path/to/cert\"),\n ServiceAccountJwt = File.ReadAllText(\"/path/to/token\"),\n DisableLocalCaJwt = false,\n });\n\n var sa_example = new Vault.Kubernetes.SecretBackendRole(\"sa-example\", new()\n {\n Backend = config.Path,\n AllowedKubernetesNamespaces = new[]\n {\n \"*\",\n },\n TokenMaxTtl = 43200,\n TokenDefaultTtl = 21600,\n ServiceAccountName = \"test-service-account-with-generated-token\",\n ExtraLabels = \n {\n { \"id\", \"abc123\" },\n { \"name\", \"some_name\" },\n },\n ExtraAnnotations = \n {\n { \"env\", \"development\" },\n { \"location\", \"earth\" },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"os\"\n\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/kubernetes\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc readFileOrPanic(path string) pulumi.StringPtrInput {\n\tdata, err := os.ReadFile(path)\n\tif err != nil {\n\t\tpanic(err.Error())\n\t}\n\treturn pulumi.String(string(data))\n}\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tconfig, err := kubernetes.NewSecretBackend(ctx, \"config\", \u0026kubernetes.SecretBackendArgs{\n\t\t\tPath: pulumi.String(\"kubernetes\"),\n\t\t\tDescription: pulumi.String(\"kubernetes secrets engine description\"),\n\t\t\tKubernetesHost: pulumi.String(\"https://127.0.0.1:61233\"),\n\t\t\tKubernetesCaCert: readFileOrPanic(\"/path/to/cert\"),\n\t\t\tServiceAccountJwt: readFileOrPanic(\"/path/to/token\"),\n\t\t\tDisableLocalCaJwt: pulumi.Bool(false),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = kubernetes.NewSecretBackendRole(ctx, \"sa-example\", \u0026kubernetes.SecretBackendRoleArgs{\n\t\t\tBackend: config.Path,\n\t\t\tAllowedKubernetesNamespaces: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"*\"),\n\t\t\t},\n\t\t\tTokenMaxTtl: pulumi.Int(43200),\n\t\t\tTokenDefaultTtl: pulumi.Int(21600),\n\t\t\tServiceAccountName: pulumi.String(\"test-service-account-with-generated-token\"),\n\t\t\tExtraLabels: pulumi.StringMap{\n\t\t\t\t\"id\": pulumi.String(\"abc123\"),\n\t\t\t\t\"name\": pulumi.String(\"some_name\"),\n\t\t\t},\n\t\t\tExtraAnnotations: pulumi.StringMap{\n\t\t\t\t\"env\": pulumi.String(\"development\"),\n\t\t\t\t\"location\": pulumi.String(\"earth\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.kubernetes.SecretBackend;\nimport com.pulumi.vault.kubernetes.SecretBackendArgs;\nimport com.pulumi.vault.kubernetes.SecretBackendRole;\nimport com.pulumi.vault.kubernetes.SecretBackendRoleArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var config = new SecretBackend(\"config\", SecretBackendArgs.builder() \n .path(\"kubernetes\")\n .description(\"kubernetes secrets engine description\")\n .kubernetesHost(\"https://127.0.0.1:61233\")\n .kubernetesCaCert(Files.readString(Paths.get(\"/path/to/cert\")))\n .serviceAccountJwt(Files.readString(Paths.get(\"/path/to/token\")))\n .disableLocalCaJwt(false)\n .build());\n\n var sa_example = new SecretBackendRole(\"sa-example\", SecretBackendRoleArgs.builder() \n .backend(config.path())\n .allowedKubernetesNamespaces(\"*\")\n .tokenMaxTtl(43200)\n .tokenDefaultTtl(21600)\n .serviceAccountName(\"test-service-account-with-generated-token\")\n .extraLabels(Map.ofEntries(\n Map.entry(\"id\", \"abc123\"),\n Map.entry(\"name\", \"some_name\")\n ))\n .extraAnnotations(Map.ofEntries(\n Map.entry(\"env\", \"development\"),\n Map.entry(\"location\", \"earth\")\n ))\n .build());\n\n }\n}\n```\n```yaml\nresources:\n config:\n type: vault:kubernetes:SecretBackend\n properties:\n path: kubernetes\n description: kubernetes secrets engine description\n kubernetesHost: https://127.0.0.1:61233\n kubernetesCaCert:\n fn::readFile: /path/to/cert\n serviceAccountJwt:\n fn::readFile: /path/to/token\n disableLocalCaJwt: false\n sa-example:\n type: vault:kubernetes:SecretBackendRole\n properties:\n backend: ${config.path}\n allowedKubernetesNamespaces:\n - '*'\n tokenMaxTtl: 43200\n tokenDefaultTtl: 21600\n serviceAccountName: test-service-account-with-generated-token\n extraLabels:\n id: abc123\n name: some_name\n extraAnnotations:\n env: development\n location: earth\n```\n\nExample using `kubernetes_role_name` mode:\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as fs from \"fs\";\nimport * as vault from \"@pulumi/vault\";\n\nconst config = new vault.kubernetes.SecretBackend(\"config\", {\n path: \"kubernetes\",\n description: \"kubernetes secrets engine description\",\n kubernetesHost: \"https://127.0.0.1:61233\",\n kubernetesCaCert: fs.readFileSync(\"/path/to/cert\"),\n serviceAccountJwt: fs.readFileSync(\"/path/to/token\"),\n disableLocalCaJwt: false,\n});\nconst name_example = new vault.kubernetes.SecretBackendRole(\"name-example\", {\n backend: config.path,\n allowedKubernetesNamespaces: [\"*\"],\n tokenMaxTtl: 43200,\n tokenDefaultTtl: 21600,\n kubernetesRoleName: \"vault-k8s-secrets-role\",\n extraLabels: {\n id: \"abc123\",\n name: \"some_name\",\n },\n extraAnnotations: {\n env: \"development\",\n location: \"earth\",\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nconfig = vault.kubernetes.SecretBackend(\"config\",\n path=\"kubernetes\",\n description=\"kubernetes secrets engine description\",\n kubernetes_host=\"https://127.0.0.1:61233\",\n kubernetes_ca_cert=(lambda path: open(path).read())(\"/path/to/cert\"),\n service_account_jwt=(lambda path: open(path).read())(\"/path/to/token\"),\n disable_local_ca_jwt=False)\nname_example = vault.kubernetes.SecretBackendRole(\"name-example\",\n backend=config.path,\n allowed_kubernetes_namespaces=[\"*\"],\n token_max_ttl=43200,\n token_default_ttl=21600,\n kubernetes_role_name=\"vault-k8s-secrets-role\",\n extra_labels={\n \"id\": \"abc123\",\n \"name\": \"some_name\",\n },\n extra_annotations={\n \"env\": \"development\",\n \"location\": \"earth\",\n })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.IO;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Vault.Kubernetes.SecretBackend(\"config\", new()\n {\n Path = \"kubernetes\",\n Description = \"kubernetes secrets engine description\",\n KubernetesHost = \"https://127.0.0.1:61233\",\n KubernetesCaCert = File.ReadAllText(\"/path/to/cert\"),\n ServiceAccountJwt = File.ReadAllText(\"/path/to/token\"),\n DisableLocalCaJwt = false,\n });\n\n var name_example = new Vault.Kubernetes.SecretBackendRole(\"name-example\", new()\n {\n Backend = config.Path,\n AllowedKubernetesNamespaces = new[]\n {\n \"*\",\n },\n TokenMaxTtl = 43200,\n TokenDefaultTtl = 21600,\n KubernetesRoleName = \"vault-k8s-secrets-role\",\n ExtraLabels = \n {\n { \"id\", \"abc123\" },\n { \"name\", \"some_name\" },\n },\n ExtraAnnotations = \n {\n { \"env\", \"development\" },\n { \"location\", \"earth\" },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"os\"\n\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/kubernetes\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc readFileOrPanic(path string) pulumi.StringPtrInput {\n\tdata, err := os.ReadFile(path)\n\tif err != nil {\n\t\tpanic(err.Error())\n\t}\n\treturn pulumi.String(string(data))\n}\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tconfig, err := kubernetes.NewSecretBackend(ctx, \"config\", \u0026kubernetes.SecretBackendArgs{\n\t\t\tPath: pulumi.String(\"kubernetes\"),\n\t\t\tDescription: pulumi.String(\"kubernetes secrets engine description\"),\n\t\t\tKubernetesHost: pulumi.String(\"https://127.0.0.1:61233\"),\n\t\t\tKubernetesCaCert: readFileOrPanic(\"/path/to/cert\"),\n\t\t\tServiceAccountJwt: readFileOrPanic(\"/path/to/token\"),\n\t\t\tDisableLocalCaJwt: pulumi.Bool(false),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = kubernetes.NewSecretBackendRole(ctx, \"name-example\", \u0026kubernetes.SecretBackendRoleArgs{\n\t\t\tBackend: config.Path,\n\t\t\tAllowedKubernetesNamespaces: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"*\"),\n\t\t\t},\n\t\t\tTokenMaxTtl: pulumi.Int(43200),\n\t\t\tTokenDefaultTtl: pulumi.Int(21600),\n\t\t\tKubernetesRoleName: pulumi.String(\"vault-k8s-secrets-role\"),\n\t\t\tExtraLabels: pulumi.StringMap{\n\t\t\t\t\"id\": pulumi.String(\"abc123\"),\n\t\t\t\t\"name\": pulumi.String(\"some_name\"),\n\t\t\t},\n\t\t\tExtraAnnotations: pulumi.StringMap{\n\t\t\t\t\"env\": pulumi.String(\"development\"),\n\t\t\t\t\"location\": pulumi.String(\"earth\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.kubernetes.SecretBackend;\nimport com.pulumi.vault.kubernetes.SecretBackendArgs;\nimport com.pulumi.vault.kubernetes.SecretBackendRole;\nimport com.pulumi.vault.kubernetes.SecretBackendRoleArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var config = new SecretBackend(\"config\", SecretBackendArgs.builder() \n .path(\"kubernetes\")\n .description(\"kubernetes secrets engine description\")\n .kubernetesHost(\"https://127.0.0.1:61233\")\n .kubernetesCaCert(Files.readString(Paths.get(\"/path/to/cert\")))\n .serviceAccountJwt(Files.readString(Paths.get(\"/path/to/token\")))\n .disableLocalCaJwt(false)\n .build());\n\n var name_example = new SecretBackendRole(\"name-example\", SecretBackendRoleArgs.builder() \n .backend(config.path())\n .allowedKubernetesNamespaces(\"*\")\n .tokenMaxTtl(43200)\n .tokenDefaultTtl(21600)\n .kubernetesRoleName(\"vault-k8s-secrets-role\")\n .extraLabels(Map.ofEntries(\n Map.entry(\"id\", \"abc123\"),\n Map.entry(\"name\", \"some_name\")\n ))\n .extraAnnotations(Map.ofEntries(\n Map.entry(\"env\", \"development\"),\n Map.entry(\"location\", \"earth\")\n ))\n .build());\n\n }\n}\n```\n```yaml\nresources:\n config:\n type: vault:kubernetes:SecretBackend\n properties:\n path: kubernetes\n description: kubernetes secrets engine description\n kubernetesHost: https://127.0.0.1:61233\n kubernetesCaCert:\n fn::readFile: /path/to/cert\n serviceAccountJwt:\n fn::readFile: /path/to/token\n disableLocalCaJwt: false\n name-example:\n type: vault:kubernetes:SecretBackendRole\n properties:\n backend: ${config.path}\n allowedKubernetesNamespaces:\n - '*'\n tokenMaxTtl: 43200\n tokenDefaultTtl: 21600\n kubernetesRoleName: vault-k8s-secrets-role\n extraLabels:\n id: abc123\n name: some_name\n extraAnnotations:\n env: development\n location: earth\n```\n\nExample using `generated_role_rules` mode:\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as fs from \"fs\";\nimport * as vault from \"@pulumi/vault\";\n\nconst config = new vault.kubernetes.SecretBackend(\"config\", {\n path: \"kubernetes\",\n description: \"kubernetes secrets engine description\",\n kubernetesHost: \"https://127.0.0.1:61233\",\n kubernetesCaCert: fs.readFileSync(\"/path/to/cert\"),\n serviceAccountJwt: fs.readFileSync(\"/path/to/token\"),\n disableLocalCaJwt: false,\n});\nconst rules_example = new vault.kubernetes.SecretBackendRole(\"rules-example\", {\n backend: config.path,\n allowedKubernetesNamespaces: [\"*\"],\n tokenMaxTtl: 43200,\n tokenDefaultTtl: 21600,\n kubernetesRoleType: \"Role\",\n generatedRoleRules: `rules:\n- apiGroups: [\"\"]\n resources: [\"pods\"]\n verbs: [\"list\"]\n`,\n extraLabels: {\n id: \"abc123\",\n name: \"some_name\",\n },\n extraAnnotations: {\n env: \"development\",\n location: \"earth\",\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nconfig = vault.kubernetes.SecretBackend(\"config\",\n path=\"kubernetes\",\n description=\"kubernetes secrets engine description\",\n kubernetes_host=\"https://127.0.0.1:61233\",\n kubernetes_ca_cert=(lambda path: open(path).read())(\"/path/to/cert\"),\n service_account_jwt=(lambda path: open(path).read())(\"/path/to/token\"),\n disable_local_ca_jwt=False)\nrules_example = vault.kubernetes.SecretBackendRole(\"rules-example\",\n backend=config.path,\n allowed_kubernetes_namespaces=[\"*\"],\n token_max_ttl=43200,\n token_default_ttl=21600,\n kubernetes_role_type=\"Role\",\n generated_role_rules=\"\"\"rules:\n- apiGroups: [\"\"]\n resources: [\"pods\"]\n verbs: [\"list\"]\n\"\"\",\n extra_labels={\n \"id\": \"abc123\",\n \"name\": \"some_name\",\n },\n extra_annotations={\n \"env\": \"development\",\n \"location\": \"earth\",\n })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.IO;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Vault.Kubernetes.SecretBackend(\"config\", new()\n {\n Path = \"kubernetes\",\n Description = \"kubernetes secrets engine description\",\n KubernetesHost = \"https://127.0.0.1:61233\",\n KubernetesCaCert = File.ReadAllText(\"/path/to/cert\"),\n ServiceAccountJwt = File.ReadAllText(\"/path/to/token\"),\n DisableLocalCaJwt = false,\n });\n\n var rules_example = new Vault.Kubernetes.SecretBackendRole(\"rules-example\", new()\n {\n Backend = config.Path,\n AllowedKubernetesNamespaces = new[]\n {\n \"*\",\n },\n TokenMaxTtl = 43200,\n TokenDefaultTtl = 21600,\n KubernetesRoleType = \"Role\",\n GeneratedRoleRules = @\"rules:\n- apiGroups: [\"\"\"\"]\n resources: [\"\"pods\"\"]\n verbs: [\"\"list\"\"]\n\",\n ExtraLabels = \n {\n { \"id\", \"abc123\" },\n { \"name\", \"some_name\" },\n },\n ExtraAnnotations = \n {\n { \"env\", \"development\" },\n { \"location\", \"earth\" },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"os\"\n\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/kubernetes\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc readFileOrPanic(path string) pulumi.StringPtrInput {\n\tdata, err := os.ReadFile(path)\n\tif err != nil {\n\t\tpanic(err.Error())\n\t}\n\treturn pulumi.String(string(data))\n}\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tconfig, err := kubernetes.NewSecretBackend(ctx, \"config\", \u0026kubernetes.SecretBackendArgs{\n\t\t\tPath: pulumi.String(\"kubernetes\"),\n\t\t\tDescription: pulumi.String(\"kubernetes secrets engine description\"),\n\t\t\tKubernetesHost: pulumi.String(\"https://127.0.0.1:61233\"),\n\t\t\tKubernetesCaCert: readFileOrPanic(\"/path/to/cert\"),\n\t\t\tServiceAccountJwt: readFileOrPanic(\"/path/to/token\"),\n\t\t\tDisableLocalCaJwt: pulumi.Bool(false),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = kubernetes.NewSecretBackendRole(ctx, \"rules-example\", \u0026kubernetes.SecretBackendRoleArgs{\n\t\t\tBackend: config.Path,\n\t\t\tAllowedKubernetesNamespaces: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"*\"),\n\t\t\t},\n\t\t\tTokenMaxTtl: pulumi.Int(43200),\n\t\t\tTokenDefaultTtl: pulumi.Int(21600),\n\t\t\tKubernetesRoleType: pulumi.String(\"Role\"),\n\t\t\tGeneratedRoleRules: pulumi.String(\"rules:\\n- apiGroups: [\\\"\\\"]\\n resources: [\\\"pods\\\"]\\n verbs: [\\\"list\\\"]\\n\"),\n\t\t\tExtraLabels: pulumi.StringMap{\n\t\t\t\t\"id\": pulumi.String(\"abc123\"),\n\t\t\t\t\"name\": pulumi.String(\"some_name\"),\n\t\t\t},\n\t\t\tExtraAnnotations: pulumi.StringMap{\n\t\t\t\t\"env\": pulumi.String(\"development\"),\n\t\t\t\t\"location\": pulumi.String(\"earth\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.kubernetes.SecretBackend;\nimport com.pulumi.vault.kubernetes.SecretBackendArgs;\nimport com.pulumi.vault.kubernetes.SecretBackendRole;\nimport com.pulumi.vault.kubernetes.SecretBackendRoleArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var config = new SecretBackend(\"config\", SecretBackendArgs.builder() \n .path(\"kubernetes\")\n .description(\"kubernetes secrets engine description\")\n .kubernetesHost(\"https://127.0.0.1:61233\")\n .kubernetesCaCert(Files.readString(Paths.get(\"/path/to/cert\")))\n .serviceAccountJwt(Files.readString(Paths.get(\"/path/to/token\")))\n .disableLocalCaJwt(false)\n .build());\n\n var rules_example = new SecretBackendRole(\"rules-example\", SecretBackendRoleArgs.builder() \n .backend(config.path())\n .allowedKubernetesNamespaces(\"*\")\n .tokenMaxTtl(43200)\n .tokenDefaultTtl(21600)\n .kubernetesRoleType(\"Role\")\n .generatedRoleRules(\"\"\"\nrules:\n- apiGroups: [\"\"]\n resources: [\"pods\"]\n verbs: [\"list\"]\n \"\"\")\n .extraLabels(Map.ofEntries(\n Map.entry(\"id\", \"abc123\"),\n Map.entry(\"name\", \"some_name\")\n ))\n .extraAnnotations(Map.ofEntries(\n Map.entry(\"env\", \"development\"),\n Map.entry(\"location\", \"earth\")\n ))\n .build());\n\n }\n}\n```\n```yaml\nresources:\n config:\n type: vault:kubernetes:SecretBackend\n properties:\n path: kubernetes\n description: kubernetes secrets engine description\n kubernetesHost: https://127.0.0.1:61233\n kubernetesCaCert:\n fn::readFile: /path/to/cert\n serviceAccountJwt:\n fn::readFile: /path/to/token\n disableLocalCaJwt: false\n rules-example:\n type: vault:kubernetes:SecretBackendRole\n properties:\n backend: ${config.path}\n allowedKubernetesNamespaces:\n - '*'\n tokenMaxTtl: 43200\n tokenDefaultTtl: 21600\n kubernetesRoleType: Role\n generatedRoleRules: |\n rules:\n - apiGroups: [\"\"]\n resources: [\"pods\"]\n verbs: [\"list\"]\n extraLabels:\n id: abc123\n name: some_name\n extraAnnotations:\n env: development\n location: earth\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nThe Kubernetes secret backend role can be imported using the full path to the role of the form`\u003cbackend_path\u003e/roles/\u003crole_name\u003e` e.g.\n\n```sh\n $ pulumi import vault:kubernetes/secretBackendRole:SecretBackendRole example kubernetes kubernetes/roles/example-role\n```\n\n ",
"properties": {
"allowedKubernetesNamespaces": {
"type": "array",
@@ -22692,7 +19915,7 @@
"additionalProperties": {
"type": "string"
},
- "description": "Additional labels to apply to all generated Kubernetes \nobjects.\n"
+ "description": "Additional labels to apply to all generated Kubernetes \nobjects.\n\nThis resource also directly accepts all vault.Mount fields.\n"
},
"generatedRoleRules": {
"type": "string",
@@ -22761,7 +19984,7 @@
"additionalProperties": {
"type": "string"
},
- "description": "Additional labels to apply to all generated Kubernetes \nobjects.\n"
+ "description": "Additional labels to apply to all generated Kubernetes \nobjects.\n\nThis resource also directly accepts all vault.Mount fields.\n"
},
"generatedRoleRules": {
"type": "string",
@@ -22833,7 +20056,7 @@
"additionalProperties": {
"type": "string"
},
- "description": "Additional labels to apply to all generated Kubernetes \nobjects.\n"
+ "description": "Additional labels to apply to all generated Kubernetes \nobjects.\n\nThis resource also directly accepts all vault.Mount fields.\n"
},
"generatedRoleRules": {
"type": "string",
@@ -22878,7 +20101,7 @@
}
},
"vault:kv/secret:Secret": {
- "description": "Writes a KV-V1 secret to a given path in Vault.\n\nFor more information on Vault's KV-V1 secret backend\n[see here](https://www.vaultproject.io/docs/secrets/kv/kv-v1).\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst kvv1 = new vault.Mount(\"kvv1\", {\n path: \"kvv1\",\n type: \"kv\",\n options: {\n version: \"1\",\n },\n description: \"KV Version 1 secret engine mount\",\n});\nconst secret = new vault.kv.Secret(\"secret\", {\n path: pulumi.interpolate`${kvv1.path}/secret`,\n dataJson: JSON.stringify({\n zip: \"zap\",\n foo: \"bar\",\n }),\n});\n```\n```python\nimport pulumi\nimport json\nimport pulumi_vault as vault\n\nkvv1 = vault.Mount(\"kvv1\",\n path=\"kvv1\",\n type=\"kv\",\n options={\n \"version\": \"1\",\n },\n description=\"KV Version 1 secret engine mount\")\nsecret = vault.kv.Secret(\"secret\",\n path=kvv1.path.apply(lambda path: f\"{path}/secret\"),\n data_json=json.dumps({\n \"zip\": \"zap\",\n \"foo\": \"bar\",\n }))\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Text.Json;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var kvv1 = new Vault.Mount(\"kvv1\", new()\n {\n Path = \"kvv1\",\n Type = \"kv\",\n Options = \n {\n { \"version\", \"1\" },\n },\n Description = \"KV Version 1 secret engine mount\",\n });\n\n var secret = new Vault.Kv.Secret(\"secret\", new()\n {\n Path = kvv1.Path.Apply(path =\u003e $\"{path}/secret\"),\n DataJson = JsonSerializer.Serialize(new Dictionary\u003cstring, object?\u003e\n {\n [\"zip\"] = \"zap\",\n [\"foo\"] = \"bar\",\n }),\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"encoding/json\"\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault\"\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/kv\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tkvv1, err := vault.NewMount(ctx, \"kvv1\", \u0026vault.MountArgs{\n\t\t\tPath: pulumi.String(\"kvv1\"),\n\t\t\tType: pulumi.String(\"kv\"),\n\t\t\tOptions: pulumi.AnyMap{\n\t\t\t\t\"version\": pulumi.Any(\"1\"),\n\t\t\t},\n\t\t\tDescription: pulumi.String(\"KV Version 1 secret engine mount\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\ttmpJSON0, err := json.Marshal(map[string]interface{}{\n\t\t\t\"zip\": \"zap\",\n\t\t\t\"foo\": \"bar\",\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tjson0 := string(tmpJSON0)\n\t\t_, err = kv.NewSecret(ctx, \"secret\", \u0026kv.SecretArgs{\n\t\t\tPath: kvv1.Path.ApplyT(func(path string) (string, error) {\n\t\t\t\treturn fmt.Sprintf(\"%v/secret\", path), nil\n\t\t\t}).(pulumi.StringOutput),\n\t\t\tDataJson: pulumi.String(json0),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.Mount;\nimport com.pulumi.vault.MountArgs;\nimport com.pulumi.vault.kv.Secret;\nimport com.pulumi.vault.kv.SecretArgs;\nimport static com.pulumi.codegen.internal.Serialization.*;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var kvv1 = new Mount(\"kvv1\", MountArgs.builder() \n .path(\"kvv1\")\n .type(\"kv\")\n .options(Map.of(\"version\", \"1\"))\n .description(\"KV Version 1 secret engine mount\")\n .build());\n\n var secret = new Secret(\"secret\", SecretArgs.builder() \n .path(kvv1.path().applyValue(path -\u003e String.format(\"%s/secret\", path)))\n .dataJson(serializeJson(\n jsonObject(\n jsonProperty(\"zip\", \"zap\"),\n jsonProperty(\"foo\", \"bar\")\n )))\n .build());\n\n }\n}\n```\n```yaml\nresources:\n kvv1:\n type: vault:Mount\n properties:\n path: kvv1\n type: kv\n options:\n version: 1\n description: KV Version 1 secret engine mount\n secret:\n type: vault:kv:Secret\n properties:\n path: ${kvv1.path}/secret\n dataJson:\n Fn::ToJSON:\n zip: zap\n foo: bar\n```\n{{% /example %}}\n{{% /examples %}}\n## Required Vault Capabilities\n\nUse of this resource requires the `create` or `update` capability\n(depending on whether the resource already exists) on the given path,\nthe `delete` capability if the resource is removed from configuration,\nand the `read` capability for drift detection (by default).\n\n\n## Import\n\nKV-V1 secrets can be imported using the `path`, e.g.\n\n```sh\n $ pulumi import vault:kv/secret:Secret secret kvv1/secret\n```\n\n ",
+ "description": "Writes a KV-V1 secret to a given path in Vault.\n\nFor more information on Vault's KV-V1 secret backend\n[see here](https://www.vaultproject.io/docs/secrets/kv/kv-v1).\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst kvv1 = new vault.Mount(\"kvv1\", {\n path: \"kvv1\",\n type: \"kv\",\n options: {\n version: \"1\",\n },\n description: \"KV Version 1 secret engine mount\",\n});\nconst secret = new vault.kv.Secret(\"secret\", {\n path: pulumi.interpolate`${kvv1.path}/secret`,\n dataJson: JSON.stringify({\n zip: \"zap\",\n foo: \"bar\",\n }),\n});\n```\n```python\nimport pulumi\nimport json\nimport pulumi_vault as vault\n\nkvv1 = vault.Mount(\"kvv1\",\n path=\"kvv1\",\n type=\"kv\",\n options={\n \"version\": \"1\",\n },\n description=\"KV Version 1 secret engine mount\")\nsecret = vault.kv.Secret(\"secret\",\n path=kvv1.path.apply(lambda path: f\"{path}/secret\"),\n data_json=json.dumps({\n \"zip\": \"zap\",\n \"foo\": \"bar\",\n }))\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text.Json;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var kvv1 = new Vault.Mount(\"kvv1\", new()\n {\n Path = \"kvv1\",\n Type = \"kv\",\n Options = \n {\n { \"version\", \"1\" },\n },\n Description = \"KV Version 1 secret engine mount\",\n });\n\n var secret = new Vault.Kv.Secret(\"secret\", new()\n {\n Path = kvv1.Path.Apply(path =\u003e $\"{path}/secret\"),\n DataJson = JsonSerializer.Serialize(new Dictionary\u003cstring, object?\u003e\n {\n [\"zip\"] = \"zap\",\n [\"foo\"] = \"bar\",\n }),\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"encoding/json\"\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault\"\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/kv\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tkvv1, err := vault.NewMount(ctx, \"kvv1\", \u0026vault.MountArgs{\n\t\t\tPath: pulumi.String(\"kvv1\"),\n\t\t\tType: pulumi.String(\"kv\"),\n\t\t\tOptions: pulumi.Map{\n\t\t\t\t\"version\": pulumi.Any(\"1\"),\n\t\t\t},\n\t\t\tDescription: pulumi.String(\"KV Version 1 secret engine mount\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\ttmpJSON0, err := json.Marshal(map[string]interface{}{\n\t\t\t\"zip\": \"zap\",\n\t\t\t\"foo\": \"bar\",\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tjson0 := string(tmpJSON0)\n\t\t_, err = kv.NewSecret(ctx, \"secret\", \u0026kv.SecretArgs{\n\t\t\tPath: kvv1.Path.ApplyT(func(path string) (string, error) {\n\t\t\t\treturn fmt.Sprintf(\"%v/secret\", path), nil\n\t\t\t}).(pulumi.StringOutput),\n\t\t\tDataJson: pulumi.String(json0),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.Mount;\nimport com.pulumi.vault.MountArgs;\nimport com.pulumi.vault.kv.Secret;\nimport com.pulumi.vault.kv.SecretArgs;\nimport static com.pulumi.codegen.internal.Serialization.*;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var kvv1 = new Mount(\"kvv1\", MountArgs.builder() \n .path(\"kvv1\")\n .type(\"kv\")\n .options(Map.of(\"version\", \"1\"))\n .description(\"KV Version 1 secret engine mount\")\n .build());\n\n var secret = new Secret(\"secret\", SecretArgs.builder() \n .path(kvv1.path().applyValue(path -\u003e String.format(\"%s/secret\", path)))\n .dataJson(serializeJson(\n jsonObject(\n jsonProperty(\"zip\", \"zap\"),\n jsonProperty(\"foo\", \"bar\")\n )))\n .build());\n\n }\n}\n```\n```yaml\nresources:\n kvv1:\n type: vault:Mount\n properties:\n path: kvv1\n type: kv\n options:\n version: '1'\n description: KV Version 1 secret engine mount\n secret:\n type: vault:kv:Secret\n properties:\n path: ${kvv1.path}/secret\n dataJson:\n fn::toJSON:\n zip: zap\n foo: bar\n```\n{{% /example %}}\n{{% /examples %}}\n## Required Vault Capabilities\n\nUse of this resource requires the `create` or `update` capability\n(depending on whether the resource already exists) on the given path,\nthe `delete` capability if the resource is removed from configuration,\nand the `read` capability for drift detection (by default).\n\n\n## Import\n\nKV-V1 secrets can be imported using the `path`, e.g.\n\n```sh\n $ pulumi import vault:kv/secret:Secret secret kvv1/secret\n```\n ",
"properties": {
"data": {
"type": "object",
@@ -22959,7 +20182,7 @@
}
},
"vault:kv/secretBackendV2:SecretBackendV2": {
- "description": "Configures KV-V2 backend level settings that are applied to\nevery key in the key-value store.\n\nFor more information on Vault's KV-V2 secret backend\n[see here](https://www.vaultproject.io/docs/secrets/kv/kv-v2).\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst kvv2 = new vault.Mount(\"kvv2\", {\n path: \"kvv2\",\n type: \"kv\",\n options: {\n version: \"2\",\n },\n description: \"KV Version 2 secret engine mount\",\n});\nconst example = new vault.kv.SecretBackendV2(\"example\", {\n mount: kvv2.path,\n maxVersions: 5,\n deleteVersionAfter: 12600,\n casRequired: true,\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nkvv2 = vault.Mount(\"kvv2\",\n path=\"kvv2\",\n type=\"kv\",\n options={\n \"version\": \"2\",\n },\n description=\"KV Version 2 secret engine mount\")\nexample = vault.kv.SecretBackendV2(\"example\",\n mount=kvv2.path,\n max_versions=5,\n delete_version_after=12600,\n cas_required=True)\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var kvv2 = new Vault.Mount(\"kvv2\", new()\n {\n Path = \"kvv2\",\n Type = \"kv\",\n Options = \n {\n { \"version\", \"2\" },\n },\n Description = \"KV Version 2 secret engine mount\",\n });\n\n var example = new Vault.Kv.SecretBackendV2(\"example\", new()\n {\n Mount = kvv2.Path,\n MaxVersions = 5,\n DeleteVersionAfter = 12600,\n CasRequired = true,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault\"\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/kv\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tkvv2, err := vault.NewMount(ctx, \"kvv2\", \u0026vault.MountArgs{\n\t\t\tPath: pulumi.String(\"kvv2\"),\n\t\t\tType: pulumi.String(\"kv\"),\n\t\t\tOptions: pulumi.AnyMap{\n\t\t\t\t\"version\": pulumi.Any(\"2\"),\n\t\t\t},\n\t\t\tDescription: pulumi.String(\"KV Version 2 secret engine mount\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = kv.NewSecretBackendV2(ctx, \"example\", \u0026kv.SecretBackendV2Args{\n\t\t\tMount: kvv2.Path,\n\t\t\tMaxVersions: pulumi.Int(5),\n\t\t\tDeleteVersionAfter: pulumi.Int(12600),\n\t\t\tCasRequired: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.Mount;\nimport com.pulumi.vault.MountArgs;\nimport com.pulumi.vault.kv.SecretBackendV2;\nimport com.pulumi.vault.kv.SecretBackendV2Args;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var kvv2 = new Mount(\"kvv2\", MountArgs.builder() \n .path(\"kvv2\")\n .type(\"kv\")\n .options(Map.of(\"version\", \"2\"))\n .description(\"KV Version 2 secret engine mount\")\n .build());\n\n var example = new SecretBackendV2(\"example\", SecretBackendV2Args.builder() \n .mount(kvv2.path())\n .maxVersions(5)\n .deleteVersionAfter(12600)\n .casRequired(true)\n .build());\n\n }\n}\n```\n```yaml\nresources:\n kvv2:\n type: vault:Mount\n properties:\n path: kvv2\n type: kv\n options:\n version: 2\n description: KV Version 2 secret engine mount\n example:\n type: vault:kv:SecretBackendV2\n properties:\n mount: ${kvv2.path}\n maxVersions: 5\n deleteVersionAfter: 12600\n casRequired: true\n```\n{{% /example %}}\n{{% /examples %}}\n## Required Vault Capabilities\n\nUse of this resource requires the `create` or `update` capability\n(depending on whether the resource already exists) on the given path,\nthe `delete` capability if the resource is removed from configuration,\nand the `read` capability for drift detection (by default).\n\n\n## Import\n\nThe KV-V2 secret backend can be imported using its unique ID, the `${mount}/config`, e.g.\n\n```sh\n $ pulumi import vault:kv/secretBackendV2:SecretBackendV2 example kvv2/config\n```\n\n ",
+ "description": "Configures KV-V2 backend level settings that are applied to\nevery key in the key-value store.\n\nFor more information on Vault's KV-V2 secret backend\n[see here](https://www.vaultproject.io/docs/secrets/kv/kv-v2).\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst kvv2 = new vault.Mount(\"kvv2\", {\n path: \"kvv2\",\n type: \"kv\",\n options: {\n version: \"2\",\n },\n description: \"KV Version 2 secret engine mount\",\n});\nconst example = new vault.kv.SecretBackendV2(\"example\", {\n mount: kvv2.path,\n maxVersions: 5,\n deleteVersionAfter: 12600,\n casRequired: true,\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nkvv2 = vault.Mount(\"kvv2\",\n path=\"kvv2\",\n type=\"kv\",\n options={\n \"version\": \"2\",\n },\n description=\"KV Version 2 secret engine mount\")\nexample = vault.kv.SecretBackendV2(\"example\",\n mount=kvv2.path,\n max_versions=5,\n delete_version_after=12600,\n cas_required=True)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var kvv2 = new Vault.Mount(\"kvv2\", new()\n {\n Path = \"kvv2\",\n Type = \"kv\",\n Options = \n {\n { \"version\", \"2\" },\n },\n Description = \"KV Version 2 secret engine mount\",\n });\n\n var example = new Vault.Kv.SecretBackendV2(\"example\", new()\n {\n Mount = kvv2.Path,\n MaxVersions = 5,\n DeleteVersionAfter = 12600,\n CasRequired = true,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault\"\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/kv\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tkvv2, err := vault.NewMount(ctx, \"kvv2\", \u0026vault.MountArgs{\n\t\t\tPath: pulumi.String(\"kvv2\"),\n\t\t\tType: pulumi.String(\"kv\"),\n\t\t\tOptions: pulumi.Map{\n\t\t\t\t\"version\": pulumi.Any(\"2\"),\n\t\t\t},\n\t\t\tDescription: pulumi.String(\"KV Version 2 secret engine mount\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = kv.NewSecretBackendV2(ctx, \"example\", \u0026kv.SecretBackendV2Args{\n\t\t\tMount: kvv2.Path,\n\t\t\tMaxVersions: pulumi.Int(5),\n\t\t\tDeleteVersionAfter: pulumi.Int(12600),\n\t\t\tCasRequired: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.Mount;\nimport com.pulumi.vault.MountArgs;\nimport com.pulumi.vault.kv.SecretBackendV2;\nimport com.pulumi.vault.kv.SecretBackendV2Args;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var kvv2 = new Mount(\"kvv2\", MountArgs.builder() \n .path(\"kvv2\")\n .type(\"kv\")\n .options(Map.of(\"version\", \"2\"))\n .description(\"KV Version 2 secret engine mount\")\n .build());\n\n var example = new SecretBackendV2(\"example\", SecretBackendV2Args.builder() \n .mount(kvv2.path())\n .maxVersions(5)\n .deleteVersionAfter(12600)\n .casRequired(true)\n .build());\n\n }\n}\n```\n```yaml\nresources:\n kvv2:\n type: vault:Mount\n properties:\n path: kvv2\n type: kv\n options:\n version: '2'\n description: KV Version 2 secret engine mount\n example:\n type: vault:kv:SecretBackendV2\n properties:\n mount: ${kvv2.path}\n maxVersions: 5\n deleteVersionAfter: 12600\n casRequired: true\n```\n{{% /example %}}\n{{% /examples %}}\n## Required Vault Capabilities\n\nUse of this resource requires the `create` or `update` capability\n(depending on whether the resource already exists) on the given path,\nthe `delete` capability if the resource is removed from configuration,\nand the `read` capability for drift detection (by default).\n\n\n## Import\n\nThe KV-V2 secret backend can be imported using its unique ID, the `${mount}/config`, e.g.\n\n```sh\n $ pulumi import vault:kv/secretBackendV2:SecretBackendV2 example kvv2/config\n```\n ",
"properties": {
"casRequired": {
"type": "boolean",
@@ -23044,7 +20267,7 @@
}
},
"vault:kv/secretV2:SecretV2": {
- "description": "Writes a KV-V2 secret to a given path in Vault.\n\nFor more information on Vault's KV-V2 secret backend\n[see here](https://www.vaultproject.io/docs/secrets/kv/kv-v2).\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst kvv2 = new vault.Mount(\"kvv2\", {\n path: \"kvv2\",\n type: \"kv\",\n options: {\n version: \"2\",\n },\n description: \"KV Version 2 secret engine mount\",\n});\nconst example = new vault.kv.SecretV2(\"example\", {\n mount: kvv2.path,\n cas: 1,\n deleteAllVersions: true,\n dataJson: JSON.stringify({\n zip: \"zap\",\n foo: \"bar\",\n }),\n customMetadata: {\n maxVersions: 5,\n data: {\n foo: \"vault@example.com\",\n bar: \"12345\",\n },\n },\n});\n```\n```python\nimport pulumi\nimport json\nimport pulumi_vault as vault\n\nkvv2 = vault.Mount(\"kvv2\",\n path=\"kvv2\",\n type=\"kv\",\n options={\n \"version\": \"2\",\n },\n description=\"KV Version 2 secret engine mount\")\nexample = vault.kv.SecretV2(\"example\",\n mount=kvv2.path,\n cas=1,\n delete_all_versions=True,\n data_json=json.dumps({\n \"zip\": \"zap\",\n \"foo\": \"bar\",\n }),\n custom_metadata=vault.kv.SecretV2CustomMetadataArgs(\n max_versions=5,\n data={\n \"foo\": \"vault@example.com\",\n \"bar\": \"12345\",\n },\n ))\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Text.Json;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var kvv2 = new Vault.Mount(\"kvv2\", new()\n {\n Path = \"kvv2\",\n Type = \"kv\",\n Options = \n {\n { \"version\", \"2\" },\n },\n Description = \"KV Version 2 secret engine mount\",\n });\n\n var example = new Vault.Kv.SecretV2(\"example\", new()\n {\n Mount = kvv2.Path,\n Cas = 1,\n DeleteAllVersions = true,\n DataJson = JsonSerializer.Serialize(new Dictionary\u003cstring, object?\u003e\n {\n [\"zip\"] = \"zap\",\n [\"foo\"] = \"bar\",\n }),\n CustomMetadata = new Vault.kv.Inputs.SecretV2CustomMetadataArgs\n {\n MaxVersions = 5,\n Data = \n {\n { \"foo\", \"vault@example.com\" },\n { \"bar\", \"12345\" },\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"encoding/json\"\n\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault\"\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/kv\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tkvv2, err := vault.NewMount(ctx, \"kvv2\", \u0026vault.MountArgs{\n\t\t\tPath: pulumi.String(\"kvv2\"),\n\t\t\tType: pulumi.String(\"kv\"),\n\t\t\tOptions: pulumi.AnyMap{\n\t\t\t\t\"version\": pulumi.Any(\"2\"),\n\t\t\t},\n\t\t\tDescription: pulumi.String(\"KV Version 2 secret engine mount\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\ttmpJSON0, err := json.Marshal(map[string]interface{}{\n\t\t\t\"zip\": \"zap\",\n\t\t\t\"foo\": \"bar\",\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tjson0 := string(tmpJSON0)\n\t\t_, err = kv.NewSecretV2(ctx, \"example\", \u0026kv.SecretV2Args{\n\t\t\tMount: kvv2.Path,\n\t\t\tCas: pulumi.Int(1),\n\t\t\tDeleteAllVersions: pulumi.Bool(true),\n\t\t\tDataJson: pulumi.String(json0),\n\t\t\tCustomMetadata: \u0026kv.SecretV2CustomMetadataArgs{\n\t\t\t\tMaxVersions: pulumi.Int(5),\n\t\t\t\tData: pulumi.AnyMap{\n\t\t\t\t\t\"foo\": pulumi.Any(\"vault@example.com\"),\n\t\t\t\t\t\"bar\": pulumi.Any(\"12345\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.Mount;\nimport com.pulumi.vault.MountArgs;\nimport com.pulumi.vault.kv.SecretV2;\nimport com.pulumi.vault.kv.SecretV2Args;\nimport com.pulumi.vault.kv.inputs.SecretV2CustomMetadataArgs;\nimport static com.pulumi.codegen.internal.Serialization.*;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var kvv2 = new Mount(\"kvv2\", MountArgs.builder() \n .path(\"kvv2\")\n .type(\"kv\")\n .options(Map.of(\"version\", \"2\"))\n .description(\"KV Version 2 secret engine mount\")\n .build());\n\n var example = new SecretV2(\"example\", SecretV2Args.builder() \n .mount(kvv2.path())\n .cas(1)\n .deleteAllVersions(true)\n .dataJson(serializeJson(\n jsonObject(\n jsonProperty(\"zip\", \"zap\"),\n jsonProperty(\"foo\", \"bar\")\n )))\n .customMetadata(SecretV2CustomMetadataArgs.builder()\n .maxVersions(5)\n .data(Map.ofEntries(\n Map.entry(\"foo\", \"vault@example.com\"),\n Map.entry(\"bar\", \"12345\")\n ))\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n kvv2:\n type: vault:Mount\n properties:\n path: kvv2\n type: kv\n options:\n version: 2\n description: KV Version 2 secret engine mount\n example:\n type: vault:kv:SecretV2\n properties:\n mount: ${kvv2.path}\n cas: 1\n deleteAllVersions: true\n dataJson:\n Fn::ToJSON:\n zip: zap\n foo: bar\n customMetadata:\n maxVersions: 5\n data:\n foo: vault@example.com\n bar: 12345\n```\n{{% /example %}}\n{{% /examples %}}\n## Required Vault Capabilities\n\nUse of this resource requires the `create` or `update` capability\n(depending on whether the resource already exists) on the given path,\nthe `delete` capability if the resource is removed from configuration,\nand the `read` capability for drift detection (by default).\n\n### Custom Metadata Configuration Options\n\n* `max_versions` - (Optional) The number of versions to keep per key.\n\n* `cas_required` - (Optional) If true, all keys will require the cas\n parameter to be set on all write requests.\n\n* `delete_version_after` - (Optional) If set, specifies the length of time before\n a version is deleted. Accepts duration in integer seconds.\n\n* `data` - (Optional) A string to string map describing the secret.\n\n\n## Import\n\nKV-V2 secrets can be imported using the `path`, e.g.\n\n```sh\n $ pulumi import vault:kv/secretV2:SecretV2 example kvv2/data/secret\n```\n\n ",
+ "description": "Writes a KV-V2 secret to a given path in Vault.\n\nFor more information on Vault's KV-V2 secret backend\n[see here](https://www.vaultproject.io/docs/secrets/kv/kv-v2).\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst kvv2 = new vault.Mount(\"kvv2\", {\n path: \"kvv2\",\n type: \"kv\",\n options: {\n version: \"2\",\n },\n description: \"KV Version 2 secret engine mount\",\n});\nconst example = new vault.kv.SecretV2(\"example\", {\n mount: kvv2.path,\n cas: 1,\n deleteAllVersions: true,\n dataJson: JSON.stringify({\n zip: \"zap\",\n foo: \"bar\",\n }),\n customMetadata: {\n maxVersions: 5,\n data: {\n foo: \"vault@example.com\",\n bar: \"12345\",\n },\n },\n});\n```\n```python\nimport pulumi\nimport json\nimport pulumi_vault as vault\n\nkvv2 = vault.Mount(\"kvv2\",\n path=\"kvv2\",\n type=\"kv\",\n options={\n \"version\": \"2\",\n },\n description=\"KV Version 2 secret engine mount\")\nexample = vault.kv.SecretV2(\"example\",\n mount=kvv2.path,\n cas=1,\n delete_all_versions=True,\n data_json=json.dumps({\n \"zip\": \"zap\",\n \"foo\": \"bar\",\n }),\n custom_metadata=vault.kv.SecretV2CustomMetadataArgs(\n max_versions=5,\n data={\n \"foo\": \"vault@example.com\",\n \"bar\": \"12345\",\n },\n ))\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text.Json;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var kvv2 = new Vault.Mount(\"kvv2\", new()\n {\n Path = \"kvv2\",\n Type = \"kv\",\n Options = \n {\n { \"version\", \"2\" },\n },\n Description = \"KV Version 2 secret engine mount\",\n });\n\n var example = new Vault.Kv.SecretV2(\"example\", new()\n {\n Mount = kvv2.Path,\n Cas = 1,\n DeleteAllVersions = true,\n DataJson = JsonSerializer.Serialize(new Dictionary\u003cstring, object?\u003e\n {\n [\"zip\"] = \"zap\",\n [\"foo\"] = \"bar\",\n }),\n CustomMetadata = new Vault.kv.Inputs.SecretV2CustomMetadataArgs\n {\n MaxVersions = 5,\n Data = \n {\n { \"foo\", \"vault@example.com\" },\n { \"bar\", \"12345\" },\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"encoding/json\"\n\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault\"\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/kv\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tkvv2, err := vault.NewMount(ctx, \"kvv2\", \u0026vault.MountArgs{\n\t\t\tPath: pulumi.String(\"kvv2\"),\n\t\t\tType: pulumi.String(\"kv\"),\n\t\t\tOptions: pulumi.Map{\n\t\t\t\t\"version\": pulumi.Any(\"2\"),\n\t\t\t},\n\t\t\tDescription: pulumi.String(\"KV Version 2 secret engine mount\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\ttmpJSON0, err := json.Marshal(map[string]interface{}{\n\t\t\t\"zip\": \"zap\",\n\t\t\t\"foo\": \"bar\",\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tjson0 := string(tmpJSON0)\n\t\t_, err = kv.NewSecretV2(ctx, \"example\", \u0026kv.SecretV2Args{\n\t\t\tMount: kvv2.Path,\n\t\t\tCas: pulumi.Int(1),\n\t\t\tDeleteAllVersions: pulumi.Bool(true),\n\t\t\tDataJson: pulumi.String(json0),\n\t\t\tCustomMetadata: \u0026kv.SecretV2CustomMetadataArgs{\n\t\t\t\tMaxVersions: pulumi.Int(5),\n\t\t\t\tData: pulumi.Map{\n\t\t\t\t\t\"foo\": pulumi.Any(\"vault@example.com\"),\n\t\t\t\t\t\"bar\": pulumi.Any(\"12345\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.Mount;\nimport com.pulumi.vault.MountArgs;\nimport com.pulumi.vault.kv.SecretV2;\nimport com.pulumi.vault.kv.SecretV2Args;\nimport com.pulumi.vault.kv.inputs.SecretV2CustomMetadataArgs;\nimport static com.pulumi.codegen.internal.Serialization.*;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var kvv2 = new Mount(\"kvv2\", MountArgs.builder() \n .path(\"kvv2\")\n .type(\"kv\")\n .options(Map.of(\"version\", \"2\"))\n .description(\"KV Version 2 secret engine mount\")\n .build());\n\n var example = new SecretV2(\"example\", SecretV2Args.builder() \n .mount(kvv2.path())\n .cas(1)\n .deleteAllVersions(true)\n .dataJson(serializeJson(\n jsonObject(\n jsonProperty(\"zip\", \"zap\"),\n jsonProperty(\"foo\", \"bar\")\n )))\n .customMetadata(SecretV2CustomMetadataArgs.builder()\n .maxVersions(5)\n .data(Map.ofEntries(\n Map.entry(\"foo\", \"vault@example.com\"),\n Map.entry(\"bar\", \"12345\")\n ))\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n kvv2:\n type: vault:Mount\n properties:\n path: kvv2\n type: kv\n options:\n version: '2'\n description: KV Version 2 secret engine mount\n example:\n type: vault:kv:SecretV2\n properties:\n mount: ${kvv2.path}\n cas: 1\n deleteAllVersions: true\n dataJson:\n fn::toJSON:\n zip: zap\n foo: bar\n customMetadata:\n maxVersions: 5\n data:\n foo: vault@example.com\n bar: '12345'\n```\n{{% /example %}}\n{{% /examples %}}\n## Required Vault Capabilities\n\nUse of this resource requires the `create` or `update` capability\n(depending on whether the resource already exists) on the given path,\nthe `delete` capability if the resource is removed from configuration,\nand the `read` capability for drift detection (by default).\n\n### Custom Metadata Configuration Options\n\n* `max_versions` - (Optional) The number of versions to keep per key.\n\n* `cas_required` - (Optional) If true, all keys will require the cas\n parameter to be set on all write requests.\n\n* `delete_version_after` - (Optional) If set, specifies the length of time before\n a version is deleted. Accepts duration in integer seconds.\n\n* `data` - (Optional) A string to string map describing the secret.\n\n\n## Import\n\nKV-V2 secrets can be imported using the `path`, e.g.\n\n```sh\n $ pulumi import vault:kv/secretV2:SecretV2 example kvv2/data/secret\n```\n ",
"properties": {
"cas": {
"type": "integer",
@@ -23234,7 +20457,7 @@
}
},
"vault:ldap/authBackend:AuthBackend": {
- "description": "Provides a resource for managing an [LDAP auth backend within Vault](https://www.vaultproject.io/docs/auth/ldap.html).\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst ldap = new vault.ldap.AuthBackend(\"ldap\", {\n discoverdn: false,\n groupdn: \"OU=Groups,DC=example,DC=org\",\n groupfilter: \"(\u0026(objectClass=group)(member:1.2.840.113556.1.4.1941:={{.UserDN}}))\",\n path: \"ldap\",\n upndomain: \"EXAMPLE.ORG\",\n url: \"ldaps://dc-01.example.org\",\n userattr: \"sAMAccountName\",\n userdn: \"OU=Users,OU=Accounts,DC=example,DC=org\",\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nldap = vault.ldap.AuthBackend(\"ldap\",\n discoverdn=False,\n groupdn=\"OU=Groups,DC=example,DC=org\",\n groupfilter=\"(\u0026(objectClass=group)(member:1.2.840.113556.1.4.1941:={{.UserDN}}))\",\n path=\"ldap\",\n upndomain=\"EXAMPLE.ORG\",\n url=\"ldaps://dc-01.example.org\",\n userattr=\"sAMAccountName\",\n userdn=\"OU=Users,OU=Accounts,DC=example,DC=org\")\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var ldap = new Vault.Ldap.AuthBackend(\"ldap\", new()\n {\n Discoverdn = false,\n Groupdn = \"OU=Groups,DC=example,DC=org\",\n Groupfilter = \"(\u0026(objectClass=group)(member:1.2.840.113556.1.4.1941:={{.UserDN}}))\",\n Path = \"ldap\",\n Upndomain = \"EXAMPLE.ORG\",\n Url = \"ldaps://dc-01.example.org\",\n Userattr = \"sAMAccountName\",\n Userdn = \"OU=Users,OU=Accounts,DC=example,DC=org\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/ldap\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := ldap.NewAuthBackend(ctx, \"ldap\", \u0026ldap.AuthBackendArgs{\n\t\t\tDiscoverdn: pulumi.Bool(false),\n\t\t\tGroupdn: pulumi.String(\"OU=Groups,DC=example,DC=org\"),\n\t\t\tGroupfilter: pulumi.String(\"(\u0026(objectClass=group)(member:1.2.840.113556.1.4.1941:={{.UserDN}}))\"),\n\t\t\tPath: pulumi.String(\"ldap\"),\n\t\t\tUpndomain: pulumi.String(\"EXAMPLE.ORG\"),\n\t\t\tUrl: pulumi.String(\"ldaps://dc-01.example.org\"),\n\t\t\tUserattr: pulumi.String(\"sAMAccountName\"),\n\t\t\tUserdn: pulumi.String(\"OU=Users,OU=Accounts,DC=example,DC=org\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.ldap.AuthBackend;\nimport com.pulumi.vault.ldap.AuthBackendArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var ldap = new AuthBackend(\"ldap\", AuthBackendArgs.builder() \n .discoverdn(false)\n .groupdn(\"OU=Groups,DC=example,DC=org\")\n .groupfilter(\"(\u0026(objectClass=group)(member:1.2.840.113556.1.4.1941:={{.UserDN}}))\")\n .path(\"ldap\")\n .upndomain(\"EXAMPLE.ORG\")\n .url(\"ldaps://dc-01.example.org\")\n .userattr(\"sAMAccountName\")\n .userdn(\"OU=Users,OU=Accounts,DC=example,DC=org\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n ldap:\n type: vault:ldap:AuthBackend\n properties:\n discoverdn: false\n groupdn: OU=Groups,DC=example,DC=org\n groupfilter: (\u0026(objectClass=group)(member:1.2.840.113556.1.4.1941:={{.UserDN}}))\n path: ldap\n upndomain: EXAMPLE.ORG\n url: ldaps://dc-01.example.org\n userattr: sAMAccountName\n userdn: OU=Users,OU=Accounts,DC=example,DC=org\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nLDAP authentication backends can be imported using the `path`, e.g.\n\n```sh\n $ pulumi import vault:ldap/authBackend:AuthBackend ldap ldap\n```\n\n ",
+ "description": "Provides a resource for managing an [LDAP auth backend within Vault](https://www.vaultproject.io/docs/auth/ldap.html).\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst ldap = new vault.ldap.AuthBackend(\"ldap\", {\n discoverdn: false,\n groupdn: \"OU=Groups,DC=example,DC=org\",\n groupfilter: \"(\u0026(objectClass=group)(member:1.2.840.113556.1.4.1941:={{.UserDN}}))\",\n path: \"ldap\",\n upndomain: \"EXAMPLE.ORG\",\n url: \"ldaps://dc-01.example.org\",\n userattr: \"sAMAccountName\",\n userdn: \"OU=Users,OU=Accounts,DC=example,DC=org\",\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nldap = vault.ldap.AuthBackend(\"ldap\",\n discoverdn=False,\n groupdn=\"OU=Groups,DC=example,DC=org\",\n groupfilter=\"(\u0026(objectClass=group)(member:1.2.840.113556.1.4.1941:={{.UserDN}}))\",\n path=\"ldap\",\n upndomain=\"EXAMPLE.ORG\",\n url=\"ldaps://dc-01.example.org\",\n userattr=\"sAMAccountName\",\n userdn=\"OU=Users,OU=Accounts,DC=example,DC=org\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var ldap = new Vault.Ldap.AuthBackend(\"ldap\", new()\n {\n Discoverdn = false,\n Groupdn = \"OU=Groups,DC=example,DC=org\",\n Groupfilter = \"(\u0026(objectClass=group)(member:1.2.840.113556.1.4.1941:={{.UserDN}}))\",\n Path = \"ldap\",\n Upndomain = \"EXAMPLE.ORG\",\n Url = \"ldaps://dc-01.example.org\",\n Userattr = \"sAMAccountName\",\n Userdn = \"OU=Users,OU=Accounts,DC=example,DC=org\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/ldap\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := ldap.NewAuthBackend(ctx, \"ldap\", \u0026ldap.AuthBackendArgs{\n\t\t\tDiscoverdn: pulumi.Bool(false),\n\t\t\tGroupdn: pulumi.String(\"OU=Groups,DC=example,DC=org\"),\n\t\t\tGroupfilter: pulumi.String(\"(\u0026(objectClass=group)(member:1.2.840.113556.1.4.1941:={{.UserDN}}))\"),\n\t\t\tPath: pulumi.String(\"ldap\"),\n\t\t\tUpndomain: pulumi.String(\"EXAMPLE.ORG\"),\n\t\t\tUrl: pulumi.String(\"ldaps://dc-01.example.org\"),\n\t\t\tUserattr: pulumi.String(\"sAMAccountName\"),\n\t\t\tUserdn: pulumi.String(\"OU=Users,OU=Accounts,DC=example,DC=org\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.ldap.AuthBackend;\nimport com.pulumi.vault.ldap.AuthBackendArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var ldap = new AuthBackend(\"ldap\", AuthBackendArgs.builder() \n .discoverdn(false)\n .groupdn(\"OU=Groups,DC=example,DC=org\")\n .groupfilter(\"(\u0026(objectClass=group)(member:1.2.840.113556.1.4.1941:={{.UserDN}}))\")\n .path(\"ldap\")\n .upndomain(\"EXAMPLE.ORG\")\n .url(\"ldaps://dc-01.example.org\")\n .userattr(\"sAMAccountName\")\n .userdn(\"OU=Users,OU=Accounts,DC=example,DC=org\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n ldap:\n type: vault:ldap:AuthBackend\n properties:\n discoverdn: false\n groupdn: OU=Groups,DC=example,DC=org\n groupfilter: (\u0026(objectClass=group)(member:1.2.840.113556.1.4.1941:={{.UserDN}}))\n path: ldap\n upndomain: EXAMPLE.ORG\n url: ldaps://dc-01.example.org\n userattr: sAMAccountName\n userdn: OU=Users,OU=Accounts,DC=example,DC=org\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nLDAP authentication backends can be imported using the `path`, e.g.\n\n```sh\n $ pulumi import vault:ldap/authBackend:AuthBackend ldap ldap\n```\n ",
"properties": {
"accessor": {
"type": "string",
@@ -23265,7 +20488,8 @@
"secret": true
},
"denyNullBind": {
- "type": "boolean"
+ "type": "boolean",
+ "description": "Prevents users from bypassing authentication when providing an empty password.\n"
},
"description": {
"type": "string",
@@ -23276,7 +20500,8 @@
"description": "If set, opts out of mount migration on path updates.\nSee here for more info on [Mount Migration](https://www.vaultproject.io/docs/concepts/mount-migration)\n"
},
"discoverdn": {
- "type": "boolean"
+ "type": "boolean",
+ "description": "Use anonymous bind to discover the bind DN of a user.\n"
},
"groupattr": {
"type": "string",
@@ -23362,11 +20587,11 @@
},
"tokenType": {
"type": "string",
- "description": "The type of token that should be generated. Can be `service`,\n`batch`, or `default` to use the mount's tuned default (which unless changed will be\n`service` tokens). For token store roles, there are two additional possibilities:\n`default-service` and `default-batch` which specify the type to return unless the client\nrequests a different type at generation time.\n"
+ "description": "The type of token to generate, service or batch\n"
},
"upndomain": {
"type": "string",
- "description": "The userPrincipalDomain used to construct UPN string\n"
+ "description": "The `userPrincipalDomain` used to construct the UPN string for the authenticating user.\n"
},
"url": {
"type": "string",
@@ -23445,7 +20670,8 @@
"secret": true
},
"denyNullBind": {
- "type": "boolean"
+ "type": "boolean",
+ "description": "Prevents users from bypassing authentication when providing an empty password.\n"
},
"description": {
"type": "string",
@@ -23456,7 +20682,8 @@
"description": "If set, opts out of mount migration on path updates.\nSee here for more info on [Mount Migration](https://www.vaultproject.io/docs/concepts/mount-migration)\n"
},
"discoverdn": {
- "type": "boolean"
+ "type": "boolean",
+ "description": "Use anonymous bind to discover the bind DN of a user.\n"
},
"groupattr": {
"type": "string",
@@ -23544,11 +20771,11 @@
},
"tokenType": {
"type": "string",
- "description": "The type of token that should be generated. Can be `service`,\n`batch`, or `default` to use the mount's tuned default (which unless changed will be\n`service` tokens). For token store roles, there are two additional possibilities:\n`default-service` and `default-batch` which specify the type to return unless the client\nrequests a different type at generation time.\n"
+ "description": "The type of token to generate, service or batch\n"
},
"upndomain": {
"type": "string",
- "description": "The userPrincipalDomain used to construct UPN string\n"
+ "description": "The `userPrincipalDomain` used to construct the UPN string for the authenticating user.\n"
},
"url": {
"type": "string",
@@ -23610,7 +20837,8 @@
"secret": true
},
"denyNullBind": {
- "type": "boolean"
+ "type": "boolean",
+ "description": "Prevents users from bypassing authentication when providing an empty password.\n"
},
"description": {
"type": "string",
@@ -23621,7 +20849,8 @@
"description": "If set, opts out of mount migration on path updates.\nSee here for more info on [Mount Migration](https://www.vaultproject.io/docs/concepts/mount-migration)\n"
},
"discoverdn": {
- "type": "boolean"
+ "type": "boolean",
+ "description": "Use anonymous bind to discover the bind DN of a user.\n"
},
"groupattr": {
"type": "string",
@@ -23709,11 +20938,11 @@
},
"tokenType": {
"type": "string",
- "description": "The type of token that should be generated. Can be `service`,\n`batch`, or `default` to use the mount's tuned default (which unless changed will be\n`service` tokens). For token store roles, there are two additional possibilities:\n`default-service` and `default-batch` which specify the type to return unless the client\nrequests a different type at generation time.\n"
+ "description": "The type of token to generate, service or batch\n"
},
"upndomain": {
"type": "string",
- "description": "The userPrincipalDomain used to construct UPN string\n"
+ "description": "The `userPrincipalDomain` used to construct the UPN string for the authenticating user.\n"
},
"url": {
"type": "string",
@@ -23744,11 +20973,11 @@
}
},
"vault:ldap/authBackendGroup:AuthBackendGroup": {
- "description": "Provides a resource to create a group in an [LDAP auth backend within Vault](https://www.vaultproject.io/docs/auth/ldap.html).\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst ldap = new vault.ldap.AuthBackend(\"ldap\", {\n path: \"ldap\",\n url: \"ldaps://dc-01.example.org\",\n userdn: \"OU=Users,OU=Accounts,DC=example,DC=org\",\n userattr: \"sAMAccountName\",\n upndomain: \"EXAMPLE.ORG\",\n discoverdn: false,\n groupdn: \"OU=Groups,DC=example,DC=org\",\n groupfilter: \"(\u0026(objectClass=group)(member:1.2.840.113556.1.4.1941:={{.UserDN}}))\",\n});\nconst group = new vault.ldap.AuthBackendGroup(\"group\", {\n groupname: \"dba\",\n policies: [\"dba\"],\n backend: ldap.path,\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nldap = vault.ldap.AuthBackend(\"ldap\",\n path=\"ldap\",\n url=\"ldaps://dc-01.example.org\",\n userdn=\"OU=Users,OU=Accounts,DC=example,DC=org\",\n userattr=\"sAMAccountName\",\n upndomain=\"EXAMPLE.ORG\",\n discoverdn=False,\n groupdn=\"OU=Groups,DC=example,DC=org\",\n groupfilter=\"(\u0026(objectClass=group)(member:1.2.840.113556.1.4.1941:={{.UserDN}}))\")\ngroup = vault.ldap.AuthBackendGroup(\"group\",\n groupname=\"dba\",\n policies=[\"dba\"],\n backend=ldap.path)\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var ldap = new Vault.Ldap.AuthBackend(\"ldap\", new()\n {\n Path = \"ldap\",\n Url = \"ldaps://dc-01.example.org\",\n Userdn = \"OU=Users,OU=Accounts,DC=example,DC=org\",\n Userattr = \"sAMAccountName\",\n Upndomain = \"EXAMPLE.ORG\",\n Discoverdn = false,\n Groupdn = \"OU=Groups,DC=example,DC=org\",\n Groupfilter = \"(\u0026(objectClass=group)(member:1.2.840.113556.1.4.1941:={{.UserDN}}))\",\n });\n\n var @group = new Vault.Ldap.AuthBackendGroup(\"group\", new()\n {\n Groupname = \"dba\",\n Policies = new[]\n {\n \"dba\",\n },\n Backend = ldap.Path,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/ldap\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tldap, err := ldap.NewAuthBackend(ctx, \"ldap\", \u0026ldap.AuthBackendArgs{\n\t\t\tPath: pulumi.String(\"ldap\"),\n\t\t\tUrl: pulumi.String(\"ldaps://dc-01.example.org\"),\n\t\t\tUserdn: pulumi.String(\"OU=Users,OU=Accounts,DC=example,DC=org\"),\n\t\t\tUserattr: pulumi.String(\"sAMAccountName\"),\n\t\t\tUpndomain: pulumi.String(\"EXAMPLE.ORG\"),\n\t\t\tDiscoverdn: pulumi.Bool(false),\n\t\t\tGroupdn: pulumi.String(\"OU=Groups,DC=example,DC=org\"),\n\t\t\tGroupfilter: pulumi.String(\"(\u0026(objectClass=group)(member:1.2.840.113556.1.4.1941:={{.UserDN}}))\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = ldap.NewAuthBackendGroup(ctx, \"group\", \u0026ldap.AuthBackendGroupArgs{\n\t\t\tGroupname: pulumi.String(\"dba\"),\n\t\t\tPolicies: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"dba\"),\n\t\t\t},\n\t\t\tBackend: ldap.Path,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.ldap.AuthBackend;\nimport com.pulumi.vault.ldap.AuthBackendArgs;\nimport com.pulumi.vault.ldap.AuthBackendGroup;\nimport com.pulumi.vault.ldap.AuthBackendGroupArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var ldap = new AuthBackend(\"ldap\", AuthBackendArgs.builder() \n .path(\"ldap\")\n .url(\"ldaps://dc-01.example.org\")\n .userdn(\"OU=Users,OU=Accounts,DC=example,DC=org\")\n .userattr(\"sAMAccountName\")\n .upndomain(\"EXAMPLE.ORG\")\n .discoverdn(false)\n .groupdn(\"OU=Groups,DC=example,DC=org\")\n .groupfilter(\"(\u0026(objectClass=group)(member:1.2.840.113556.1.4.1941:={{.UserDN}}))\")\n .build());\n\n var group = new AuthBackendGroup(\"group\", AuthBackendGroupArgs.builder() \n .groupname(\"dba\")\n .policies(\"dba\")\n .backend(ldap.path())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n ldap:\n type: vault:ldap:AuthBackend\n properties:\n path: ldap\n url: ldaps://dc-01.example.org\n userdn: OU=Users,OU=Accounts,DC=example,DC=org\n userattr: sAMAccountName\n upndomain: EXAMPLE.ORG\n discoverdn: false\n groupdn: OU=Groups,DC=example,DC=org\n groupfilter: (\u0026(objectClass=group)(member:1.2.840.113556.1.4.1941:={{.UserDN}}))\n group:\n type: vault:ldap:AuthBackendGroup\n properties:\n groupname: dba\n policies:\n - dba\n backend: ${ldap.path}\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nLDAP authentication backend groups can be imported using the `path`, e.g.\n\n```sh\n $ pulumi import vault:ldap/authBackendGroup:AuthBackendGroup foo auth/ldap/groups/foo\n```\n\n ",
+ "description": "Provides a resource to create a group in an [LDAP auth backend within Vault](https://www.vaultproject.io/docs/auth/ldap.html).\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst ldap = new vault.ldap.AuthBackend(\"ldap\", {\n path: \"ldap\",\n url: \"ldaps://dc-01.example.org\",\n userdn: \"OU=Users,OU=Accounts,DC=example,DC=org\",\n userattr: \"sAMAccountName\",\n upndomain: \"EXAMPLE.ORG\",\n discoverdn: false,\n groupdn: \"OU=Groups,DC=example,DC=org\",\n groupfilter: \"(\u0026(objectClass=group)(member:1.2.840.113556.1.4.1941:={{.UserDN}}))\",\n});\nconst group = new vault.ldap.AuthBackendGroup(\"group\", {\n groupname: \"dba\",\n policies: [\"dba\"],\n backend: ldap.path,\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nldap = vault.ldap.AuthBackend(\"ldap\",\n path=\"ldap\",\n url=\"ldaps://dc-01.example.org\",\n userdn=\"OU=Users,OU=Accounts,DC=example,DC=org\",\n userattr=\"sAMAccountName\",\n upndomain=\"EXAMPLE.ORG\",\n discoverdn=False,\n groupdn=\"OU=Groups,DC=example,DC=org\",\n groupfilter=\"(\u0026(objectClass=group)(member:1.2.840.113556.1.4.1941:={{.UserDN}}))\")\ngroup = vault.ldap.AuthBackendGroup(\"group\",\n groupname=\"dba\",\n policies=[\"dba\"],\n backend=ldap.path)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var ldap = new Vault.Ldap.AuthBackend(\"ldap\", new()\n {\n Path = \"ldap\",\n Url = \"ldaps://dc-01.example.org\",\n Userdn = \"OU=Users,OU=Accounts,DC=example,DC=org\",\n Userattr = \"sAMAccountName\",\n Upndomain = \"EXAMPLE.ORG\",\n Discoverdn = false,\n Groupdn = \"OU=Groups,DC=example,DC=org\",\n Groupfilter = \"(\u0026(objectClass=group)(member:1.2.840.113556.1.4.1941:={{.UserDN}}))\",\n });\n\n var @group = new Vault.Ldap.AuthBackendGroup(\"group\", new()\n {\n Groupname = \"dba\",\n Policies = new[]\n {\n \"dba\",\n },\n Backend = ldap.Path,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/ldap\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tldap, err := ldap.NewAuthBackend(ctx, \"ldap\", \u0026ldap.AuthBackendArgs{\n\t\t\tPath: pulumi.String(\"ldap\"),\n\t\t\tUrl: pulumi.String(\"ldaps://dc-01.example.org\"),\n\t\t\tUserdn: pulumi.String(\"OU=Users,OU=Accounts,DC=example,DC=org\"),\n\t\t\tUserattr: pulumi.String(\"sAMAccountName\"),\n\t\t\tUpndomain: pulumi.String(\"EXAMPLE.ORG\"),\n\t\t\tDiscoverdn: pulumi.Bool(false),\n\t\t\tGroupdn: pulumi.String(\"OU=Groups,DC=example,DC=org\"),\n\t\t\tGroupfilter: pulumi.String(\"(\u0026(objectClass=group)(member:1.2.840.113556.1.4.1941:={{.UserDN}}))\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = ldap.NewAuthBackendGroup(ctx, \"group\", \u0026ldap.AuthBackendGroupArgs{\n\t\t\tGroupname: pulumi.String(\"dba\"),\n\t\t\tPolicies: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"dba\"),\n\t\t\t},\n\t\t\tBackend: ldap.Path,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.ldap.AuthBackend;\nimport com.pulumi.vault.ldap.AuthBackendArgs;\nimport com.pulumi.vault.ldap.AuthBackendGroup;\nimport com.pulumi.vault.ldap.AuthBackendGroupArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var ldap = new AuthBackend(\"ldap\", AuthBackendArgs.builder() \n .path(\"ldap\")\n .url(\"ldaps://dc-01.example.org\")\n .userdn(\"OU=Users,OU=Accounts,DC=example,DC=org\")\n .userattr(\"sAMAccountName\")\n .upndomain(\"EXAMPLE.ORG\")\n .discoverdn(false)\n .groupdn(\"OU=Groups,DC=example,DC=org\")\n .groupfilter(\"(\u0026(objectClass=group)(member:1.2.840.113556.1.4.1941:={{.UserDN}}))\")\n .build());\n\n var group = new AuthBackendGroup(\"group\", AuthBackendGroupArgs.builder() \n .groupname(\"dba\")\n .policies(\"dba\")\n .backend(ldap.path())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n ldap:\n type: vault:ldap:AuthBackend\n properties:\n path: ldap\n url: ldaps://dc-01.example.org\n userdn: OU=Users,OU=Accounts,DC=example,DC=org\n userattr: sAMAccountName\n upndomain: EXAMPLE.ORG\n discoverdn: false\n groupdn: OU=Groups,DC=example,DC=org\n groupfilter: (\u0026(objectClass=group)(member:1.2.840.113556.1.4.1941:={{.UserDN}}))\n group:\n type: vault:ldap:AuthBackendGroup\n properties:\n groupname: dba\n policies:\n - dba\n backend: ${ldap.path}\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nLDAP authentication backend groups can be imported using the `path`, e.g.\n\n```sh\n $ pulumi import vault:ldap/authBackendGroup:AuthBackendGroup foo auth/ldap/groups/foo\n```\n ",
"properties": {
"backend": {
"type": "string",
- "description": "Path to the authentication backend\n"
+ "description": "Path to the authentication backend\n\nFor more details on the usage of each argument consult the [Vault LDAP API documentation](https://www.vaultproject.io/api-docs/auth/ldap).\n"
},
"groupname": {
"type": "string",
@@ -23773,7 +21002,7 @@
"inputProperties": {
"backend": {
"type": "string",
- "description": "Path to the authentication backend\n",
+ "description": "Path to the authentication backend\n\nFor more details on the usage of each argument consult the [Vault LDAP API documentation](https://www.vaultproject.io/api-docs/auth/ldap).\n",
"willReplaceOnChanges": true
},
"groupname": {
@@ -23802,7 +21031,7 @@
"properties": {
"backend": {
"type": "string",
- "description": "Path to the authentication backend\n",
+ "description": "Path to the authentication backend\n\nFor more details on the usage of each argument consult the [Vault LDAP API documentation](https://www.vaultproject.io/api-docs/auth/ldap).\n",
"willReplaceOnChanges": true
},
"groupname": {
@@ -23827,11 +21056,11 @@
}
},
"vault:ldap/authBackendUser:AuthBackendUser": {
- "description": "Provides a resource to create a user in an [LDAP auth backend within Vault](https://www.vaultproject.io/docs/auth/ldap.html).\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst ldap = new vault.ldap.AuthBackend(\"ldap\", {\n path: \"ldap\",\n url: \"ldaps://dc-01.example.org\",\n userdn: \"OU=Users,OU=Accounts,DC=example,DC=org\",\n userattr: \"sAMAccountName\",\n upndomain: \"EXAMPLE.ORG\",\n discoverdn: false,\n groupdn: \"OU=Groups,DC=example,DC=org\",\n groupfilter: \"(\u0026(objectClass=group)(member:1.2.840.113556.1.4.1941:={{.UserDN}}))\",\n});\nconst user = new vault.ldap.AuthBackendUser(\"user\", {\n username: \"test-user\",\n policies: [\n \"dba\",\n \"sysops\",\n ],\n backend: ldap.path,\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nldap = vault.ldap.AuthBackend(\"ldap\",\n path=\"ldap\",\n url=\"ldaps://dc-01.example.org\",\n userdn=\"OU=Users,OU=Accounts,DC=example,DC=org\",\n userattr=\"sAMAccountName\",\n upndomain=\"EXAMPLE.ORG\",\n discoverdn=False,\n groupdn=\"OU=Groups,DC=example,DC=org\",\n groupfilter=\"(\u0026(objectClass=group)(member:1.2.840.113556.1.4.1941:={{.UserDN}}))\")\nuser = vault.ldap.AuthBackendUser(\"user\",\n username=\"test-user\",\n policies=[\n \"dba\",\n \"sysops\",\n ],\n backend=ldap.path)\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var ldap = new Vault.Ldap.AuthBackend(\"ldap\", new()\n {\n Path = \"ldap\",\n Url = \"ldaps://dc-01.example.org\",\n Userdn = \"OU=Users,OU=Accounts,DC=example,DC=org\",\n Userattr = \"sAMAccountName\",\n Upndomain = \"EXAMPLE.ORG\",\n Discoverdn = false,\n Groupdn = \"OU=Groups,DC=example,DC=org\",\n Groupfilter = \"(\u0026(objectClass=group)(member:1.2.840.113556.1.4.1941:={{.UserDN}}))\",\n });\n\n var user = new Vault.Ldap.AuthBackendUser(\"user\", new()\n {\n Username = \"test-user\",\n Policies = new[]\n {\n \"dba\",\n \"sysops\",\n },\n Backend = ldap.Path,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/ldap\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tldap, err := ldap.NewAuthBackend(ctx, \"ldap\", \u0026ldap.AuthBackendArgs{\n\t\t\tPath: pulumi.String(\"ldap\"),\n\t\t\tUrl: pulumi.String(\"ldaps://dc-01.example.org\"),\n\t\t\tUserdn: pulumi.String(\"OU=Users,OU=Accounts,DC=example,DC=org\"),\n\t\t\tUserattr: pulumi.String(\"sAMAccountName\"),\n\t\t\tUpndomain: pulumi.String(\"EXAMPLE.ORG\"),\n\t\t\tDiscoverdn: pulumi.Bool(false),\n\t\t\tGroupdn: pulumi.String(\"OU=Groups,DC=example,DC=org\"),\n\t\t\tGroupfilter: pulumi.String(\"(\u0026(objectClass=group)(member:1.2.840.113556.1.4.1941:={{.UserDN}}))\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = ldap.NewAuthBackendUser(ctx, \"user\", \u0026ldap.AuthBackendUserArgs{\n\t\t\tUsername: pulumi.String(\"test-user\"),\n\t\t\tPolicies: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"dba\"),\n\t\t\t\tpulumi.String(\"sysops\"),\n\t\t\t},\n\t\t\tBackend: ldap.Path,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.ldap.AuthBackend;\nimport com.pulumi.vault.ldap.AuthBackendArgs;\nimport com.pulumi.vault.ldap.AuthBackendUser;\nimport com.pulumi.vault.ldap.AuthBackendUserArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var ldap = new AuthBackend(\"ldap\", AuthBackendArgs.builder() \n .path(\"ldap\")\n .url(\"ldaps://dc-01.example.org\")\n .userdn(\"OU=Users,OU=Accounts,DC=example,DC=org\")\n .userattr(\"sAMAccountName\")\n .upndomain(\"EXAMPLE.ORG\")\n .discoverdn(false)\n .groupdn(\"OU=Groups,DC=example,DC=org\")\n .groupfilter(\"(\u0026(objectClass=group)(member:1.2.840.113556.1.4.1941:={{.UserDN}}))\")\n .build());\n\n var user = new AuthBackendUser(\"user\", AuthBackendUserArgs.builder() \n .username(\"test-user\")\n .policies( \n \"dba\",\n \"sysops\")\n .backend(ldap.path())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n ldap:\n type: vault:ldap:AuthBackend\n properties:\n path: ldap\n url: ldaps://dc-01.example.org\n userdn: OU=Users,OU=Accounts,DC=example,DC=org\n userattr: sAMAccountName\n upndomain: EXAMPLE.ORG\n discoverdn: false\n groupdn: OU=Groups,DC=example,DC=org\n groupfilter: (\u0026(objectClass=group)(member:1.2.840.113556.1.4.1941:={{.UserDN}}))\n user:\n type: vault:ldap:AuthBackendUser\n properties:\n username: test-user\n policies:\n - dba\n - sysops\n backend: ${ldap.path}\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nLDAP authentication backend users can be imported using the `path`, e.g.\n\n```sh\n $ pulumi import vault:ldap/authBackendUser:AuthBackendUser foo auth/ldap/users/foo\n```\n\n ",
+ "description": "Provides a resource to create a user in an [LDAP auth backend within Vault](https://www.vaultproject.io/docs/auth/ldap.html).\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst ldap = new vault.ldap.AuthBackend(\"ldap\", {\n path: \"ldap\",\n url: \"ldaps://dc-01.example.org\",\n userdn: \"OU=Users,OU=Accounts,DC=example,DC=org\",\n userattr: \"sAMAccountName\",\n upndomain: \"EXAMPLE.ORG\",\n discoverdn: false,\n groupdn: \"OU=Groups,DC=example,DC=org\",\n groupfilter: \"(\u0026(objectClass=group)(member:1.2.840.113556.1.4.1941:={{.UserDN}}))\",\n});\nconst user = new vault.ldap.AuthBackendUser(\"user\", {\n username: \"test-user\",\n policies: [\n \"dba\",\n \"sysops\",\n ],\n backend: ldap.path,\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nldap = vault.ldap.AuthBackend(\"ldap\",\n path=\"ldap\",\n url=\"ldaps://dc-01.example.org\",\n userdn=\"OU=Users,OU=Accounts,DC=example,DC=org\",\n userattr=\"sAMAccountName\",\n upndomain=\"EXAMPLE.ORG\",\n discoverdn=False,\n groupdn=\"OU=Groups,DC=example,DC=org\",\n groupfilter=\"(\u0026(objectClass=group)(member:1.2.840.113556.1.4.1941:={{.UserDN}}))\")\nuser = vault.ldap.AuthBackendUser(\"user\",\n username=\"test-user\",\n policies=[\n \"dba\",\n \"sysops\",\n ],\n backend=ldap.path)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var ldap = new Vault.Ldap.AuthBackend(\"ldap\", new()\n {\n Path = \"ldap\",\n Url = \"ldaps://dc-01.example.org\",\n Userdn = \"OU=Users,OU=Accounts,DC=example,DC=org\",\n Userattr = \"sAMAccountName\",\n Upndomain = \"EXAMPLE.ORG\",\n Discoverdn = false,\n Groupdn = \"OU=Groups,DC=example,DC=org\",\n Groupfilter = \"(\u0026(objectClass=group)(member:1.2.840.113556.1.4.1941:={{.UserDN}}))\",\n });\n\n var user = new Vault.Ldap.AuthBackendUser(\"user\", new()\n {\n Username = \"test-user\",\n Policies = new[]\n {\n \"dba\",\n \"sysops\",\n },\n Backend = ldap.Path,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/ldap\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tldap, err := ldap.NewAuthBackend(ctx, \"ldap\", \u0026ldap.AuthBackendArgs{\n\t\t\tPath: pulumi.String(\"ldap\"),\n\t\t\tUrl: pulumi.String(\"ldaps://dc-01.example.org\"),\n\t\t\tUserdn: pulumi.String(\"OU=Users,OU=Accounts,DC=example,DC=org\"),\n\t\t\tUserattr: pulumi.String(\"sAMAccountName\"),\n\t\t\tUpndomain: pulumi.String(\"EXAMPLE.ORG\"),\n\t\t\tDiscoverdn: pulumi.Bool(false),\n\t\t\tGroupdn: pulumi.String(\"OU=Groups,DC=example,DC=org\"),\n\t\t\tGroupfilter: pulumi.String(\"(\u0026(objectClass=group)(member:1.2.840.113556.1.4.1941:={{.UserDN}}))\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = ldap.NewAuthBackendUser(ctx, \"user\", \u0026ldap.AuthBackendUserArgs{\n\t\t\tUsername: pulumi.String(\"test-user\"),\n\t\t\tPolicies: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"dba\"),\n\t\t\t\tpulumi.String(\"sysops\"),\n\t\t\t},\n\t\t\tBackend: ldap.Path,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.ldap.AuthBackend;\nimport com.pulumi.vault.ldap.AuthBackendArgs;\nimport com.pulumi.vault.ldap.AuthBackendUser;\nimport com.pulumi.vault.ldap.AuthBackendUserArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var ldap = new AuthBackend(\"ldap\", AuthBackendArgs.builder() \n .path(\"ldap\")\n .url(\"ldaps://dc-01.example.org\")\n .userdn(\"OU=Users,OU=Accounts,DC=example,DC=org\")\n .userattr(\"sAMAccountName\")\n .upndomain(\"EXAMPLE.ORG\")\n .discoverdn(false)\n .groupdn(\"OU=Groups,DC=example,DC=org\")\n .groupfilter(\"(\u0026(objectClass=group)(member:1.2.840.113556.1.4.1941:={{.UserDN}}))\")\n .build());\n\n var user = new AuthBackendUser(\"user\", AuthBackendUserArgs.builder() \n .username(\"test-user\")\n .policies( \n \"dba\",\n \"sysops\")\n .backend(ldap.path())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n ldap:\n type: vault:ldap:AuthBackend\n properties:\n path: ldap\n url: ldaps://dc-01.example.org\n userdn: OU=Users,OU=Accounts,DC=example,DC=org\n userattr: sAMAccountName\n upndomain: EXAMPLE.ORG\n discoverdn: false\n groupdn: OU=Groups,DC=example,DC=org\n groupfilter: (\u0026(objectClass=group)(member:1.2.840.113556.1.4.1941:={{.UserDN}}))\n user:\n type: vault:ldap:AuthBackendUser\n properties:\n username: test-user\n policies:\n - dba\n - sysops\n backend: ${ldap.path}\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nLDAP authentication backend users can be imported using the `path`, e.g.\n\n```sh\n $ pulumi import vault:ldap/authBackendUser:AuthBackendUser foo auth/ldap/users/foo\n```\n ",
"properties": {
"backend": {
"type": "string",
- "description": "Path to the authentication backend\n"
+ "description": "Path to the authentication backend\n\nFor more details on the usage of each argument consult the [Vault LDAP API documentation](https://www.vaultproject.io/api-docs/auth/ldap).\n"
},
"groups": {
"type": "array",
@@ -23864,7 +21093,7 @@
"inputProperties": {
"backend": {
"type": "string",
- "description": "Path to the authentication backend\n",
+ "description": "Path to the authentication backend\n\nFor more details on the usage of each argument consult the [Vault LDAP API documentation](https://www.vaultproject.io/api-docs/auth/ldap).\n",
"willReplaceOnChanges": true
},
"groups": {
@@ -23899,7 +21128,7 @@
"properties": {
"backend": {
"type": "string",
- "description": "Path to the authentication backend\n",
+ "description": "Path to the authentication backend\n\nFor more details on the usage of each argument consult the [Vault LDAP API documentation](https://www.vaultproject.io/api-docs/auth/ldap).\n",
"willReplaceOnChanges": true
},
"groups": {
@@ -23930,7 +21159,7 @@
}
},
"vault:ldap/secretBackend:SecretBackend": {
- "description": "{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst config = new vault.ldap.SecretBackend(\"config\", {\n binddn: \"CN=Administrator,CN=Users,DC=corp,DC=example,DC=net\",\n bindpass: \"SuperSecretPassw0rd\",\n insecureTls: true,\n path: \"my-custom-ldap\",\n url: \"ldaps://localhost\",\n userdn: \"CN=Users,DC=corp,DC=example,DC=net\",\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nconfig = vault.ldap.SecretBackend(\"config\",\n binddn=\"CN=Administrator,CN=Users,DC=corp,DC=example,DC=net\",\n bindpass=\"SuperSecretPassw0rd\",\n insecure_tls=True,\n path=\"my-custom-ldap\",\n url=\"ldaps://localhost\",\n userdn=\"CN=Users,DC=corp,DC=example,DC=net\")\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Vault.Ldap.SecretBackend(\"config\", new()\n {\n Binddn = \"CN=Administrator,CN=Users,DC=corp,DC=example,DC=net\",\n Bindpass = \"SuperSecretPassw0rd\",\n InsecureTls = true,\n Path = \"my-custom-ldap\",\n Url = \"ldaps://localhost\",\n Userdn = \"CN=Users,DC=corp,DC=example,DC=net\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/ldap\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := ldap.NewSecretBackend(ctx, \"config\", \u0026ldap.SecretBackendArgs{\n\t\t\tBinddn: pulumi.String(\"CN=Administrator,CN=Users,DC=corp,DC=example,DC=net\"),\n\t\t\tBindpass: pulumi.String(\"SuperSecretPassw0rd\"),\n\t\t\tInsecureTls: pulumi.Bool(true),\n\t\t\tPath: pulumi.String(\"my-custom-ldap\"),\n\t\t\tUrl: pulumi.String(\"ldaps://localhost\"),\n\t\t\tUserdn: pulumi.String(\"CN=Users,DC=corp,DC=example,DC=net\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.ldap.SecretBackend;\nimport com.pulumi.vault.ldap.SecretBackendArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var config = new SecretBackend(\"config\", SecretBackendArgs.builder() \n .binddn(\"CN=Administrator,CN=Users,DC=corp,DC=example,DC=net\")\n .bindpass(\"SuperSecretPassw0rd\")\n .insecureTls(\"true\")\n .path(\"my-custom-ldap\")\n .url(\"ldaps://localhost\")\n .userdn(\"CN=Users,DC=corp,DC=example,DC=net\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n config:\n type: vault:ldap:SecretBackend\n properties:\n binddn: CN=Administrator,CN=Users,DC=corp,DC=example,DC=net\n bindpass: SuperSecretPassw0rd\n insecureTls: true\n path: my-custom-ldap\n url: ldaps://localhost\n userdn: CN=Users,DC=corp,DC=example,DC=net\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nLDAP secret backend can be imported using the `${mount}/config`, e.g.\n\n```sh\n $ pulumi import vault:ldap/secretBackend:SecretBackend config ldap/config\n```\n\n ",
+ "description": "{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst config = new vault.ldap.SecretBackend(\"config\", {\n binddn: \"CN=Administrator,CN=Users,DC=corp,DC=example,DC=net\",\n bindpass: \"SuperSecretPassw0rd\",\n insecureTls: true,\n path: \"my-custom-ldap\",\n url: \"ldaps://localhost\",\n userdn: \"CN=Users,DC=corp,DC=example,DC=net\",\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nconfig = vault.ldap.SecretBackend(\"config\",\n binddn=\"CN=Administrator,CN=Users,DC=corp,DC=example,DC=net\",\n bindpass=\"SuperSecretPassw0rd\",\n insecure_tls=True,\n path=\"my-custom-ldap\",\n url=\"ldaps://localhost\",\n userdn=\"CN=Users,DC=corp,DC=example,DC=net\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Vault.Ldap.SecretBackend(\"config\", new()\n {\n Binddn = \"CN=Administrator,CN=Users,DC=corp,DC=example,DC=net\",\n Bindpass = \"SuperSecretPassw0rd\",\n InsecureTls = true,\n Path = \"my-custom-ldap\",\n Url = \"ldaps://localhost\",\n Userdn = \"CN=Users,DC=corp,DC=example,DC=net\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/ldap\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := ldap.NewSecretBackend(ctx, \"config\", \u0026ldap.SecretBackendArgs{\n\t\t\tBinddn: pulumi.String(\"CN=Administrator,CN=Users,DC=corp,DC=example,DC=net\"),\n\t\t\tBindpass: pulumi.String(\"SuperSecretPassw0rd\"),\n\t\t\tInsecureTls: pulumi.Bool(true),\n\t\t\tPath: pulumi.String(\"my-custom-ldap\"),\n\t\t\tUrl: pulumi.String(\"ldaps://localhost\"),\n\t\t\tUserdn: pulumi.String(\"CN=Users,DC=corp,DC=example,DC=net\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.ldap.SecretBackend;\nimport com.pulumi.vault.ldap.SecretBackendArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var config = new SecretBackend(\"config\", SecretBackendArgs.builder() \n .binddn(\"CN=Administrator,CN=Users,DC=corp,DC=example,DC=net\")\n .bindpass(\"SuperSecretPassw0rd\")\n .insecureTls(\"true\")\n .path(\"my-custom-ldap\")\n .url(\"ldaps://localhost\")\n .userdn(\"CN=Users,DC=corp,DC=example,DC=net\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n config:\n type: vault:ldap:SecretBackend\n properties:\n binddn: CN=Administrator,CN=Users,DC=corp,DC=example,DC=net\n bindpass: SuperSecretPassw0rd\n insecureTls: 'true'\n path: my-custom-ldap\n url: ldaps://localhost\n userdn: CN=Users,DC=corp,DC=example,DC=net\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nLDAP secret backend can be imported using the `${mount}/config`, e.g.\n\n```sh\n $ pulumi import vault:ldap/secretBackend:SecretBackend config ldap/config\n```\n ",
"properties": {
"accessor": {
"type": "string",
@@ -24378,7 +21607,7 @@
}
},
"vault:ldap/secretBackendDynamicRole:SecretBackendDynamicRole": {
- "description": "{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst config = new vault.ldap.SecretBackend(\"config\", {\n path: \"my-custom-ldap\",\n binddn: \"CN=Administrator,CN=Users,DC=corp,DC=example,DC=net\",\n bindpass: \"SuperSecretPassw0rd\",\n url: \"ldaps://localhost\",\n userdn: \"CN=Users,DC=corp,DC=example,DC=net\",\n});\nconst role = new vault.ldap.SecretBackendDynamicRole(\"role\", {\n mount: config.path,\n roleName: \"alice\",\n creationLdif: `dn: cn={{.Username}},ou=users,dc=learn,dc=example\nobjectClass: person\nobjectClass: top\ncn: learn\nsn: {{.Password | utf16le | base64}}\nmemberOf: cn=dev,ou=groups,dc=learn,dc=example\nuserPassword: {{.Password}}\n`,\n deletionLdif: `dn: cn={{.Username}},ou=users,dc=learn,dc=example\nchangetype: delete\n rollback_ldif = \u003c\u003cEOT\ndn: cn={{.Username}},ou=users,dc=learn,dc=example\nchangetype: delete\n`,\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nconfig = vault.ldap.SecretBackend(\"config\",\n path=\"my-custom-ldap\",\n binddn=\"CN=Administrator,CN=Users,DC=corp,DC=example,DC=net\",\n bindpass=\"SuperSecretPassw0rd\",\n url=\"ldaps://localhost\",\n userdn=\"CN=Users,DC=corp,DC=example,DC=net\")\nrole = vault.ldap.SecretBackendDynamicRole(\"role\",\n mount=config.path,\n role_name=\"alice\",\n creation_ldif=\"\"\"dn: cn={{.Username}},ou=users,dc=learn,dc=example\nobjectClass: person\nobjectClass: top\ncn: learn\nsn: {{.Password | utf16le | base64}}\nmemberOf: cn=dev,ou=groups,dc=learn,dc=example\nuserPassword: {{.Password}}\n\"\"\",\n deletion_ldif=\"\"\"dn: cn={{.Username}},ou=users,dc=learn,dc=example\nchangetype: delete\n rollback_ldif = \u003c\u003cEOT\ndn: cn={{.Username}},ou=users,dc=learn,dc=example\nchangetype: delete\n\"\"\")\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Vault.Ldap.SecretBackend(\"config\", new()\n {\n Path = \"my-custom-ldap\",\n Binddn = \"CN=Administrator,CN=Users,DC=corp,DC=example,DC=net\",\n Bindpass = \"SuperSecretPassw0rd\",\n Url = \"ldaps://localhost\",\n Userdn = \"CN=Users,DC=corp,DC=example,DC=net\",\n });\n\n var role = new Vault.Ldap.SecretBackendDynamicRole(\"role\", new()\n {\n Mount = config.Path,\n RoleName = \"alice\",\n CreationLdif = @\"dn: cn={{.Username}},ou=users,dc=learn,dc=example\nobjectClass: person\nobjectClass: top\ncn: learn\nsn: {{.Password | utf16le | base64}}\nmemberOf: cn=dev,ou=groups,dc=learn,dc=example\nuserPassword: {{.Password}}\n\",\n DeletionLdif = @\"dn: cn={{.Username}},ou=users,dc=learn,dc=example\nchangetype: delete\n rollback_ldif = \u003c\u003cEOT\ndn: cn={{.Username}},ou=users,dc=learn,dc=example\nchangetype: delete\n\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/ldap\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tconfig, err := ldap.NewSecretBackend(ctx, \"config\", \u0026ldap.SecretBackendArgs{\n\t\t\tPath: pulumi.String(\"my-custom-ldap\"),\n\t\t\tBinddn: pulumi.String(\"CN=Administrator,CN=Users,DC=corp,DC=example,DC=net\"),\n\t\t\tBindpass: pulumi.String(\"SuperSecretPassw0rd\"),\n\t\t\tUrl: pulumi.String(\"ldaps://localhost\"),\n\t\t\tUserdn: pulumi.String(\"CN=Users,DC=corp,DC=example,DC=net\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = ldap.NewSecretBackendDynamicRole(ctx, \"role\", \u0026ldap.SecretBackendDynamicRoleArgs{\n\t\t\tMount: config.Path,\n\t\t\tRoleName: pulumi.String(\"alice\"),\n\t\t\tCreationLdif: pulumi.String(\"dn: cn={{.Username}},ou=users,dc=learn,dc=example\\nobjectClass: person\\nobjectClass: top\\ncn: learn\\nsn: {{.Password | utf16le | base64}}\\nmemberOf: cn=dev,ou=groups,dc=learn,dc=example\\nuserPassword: {{.Password}}\\n\"),\n\t\t\tDeletionLdif: pulumi.String(\"dn: cn={{.Username}},ou=users,dc=learn,dc=example\\nchangetype: delete\\n rollback_ldif = \u003c\u003cEOT\\ndn: cn={{.Username}},ou=users,dc=learn,dc=example\\nchangetype: delete\\n\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.ldap.SecretBackend;\nimport com.pulumi.vault.ldap.SecretBackendArgs;\nimport com.pulumi.vault.ldap.SecretBackendDynamicRole;\nimport com.pulumi.vault.ldap.SecretBackendDynamicRoleArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var config = new SecretBackend(\"config\", SecretBackendArgs.builder() \n .path(\"my-custom-ldap\")\n .binddn(\"CN=Administrator,CN=Users,DC=corp,DC=example,DC=net\")\n .bindpass(\"SuperSecretPassw0rd\")\n .url(\"ldaps://localhost\")\n .userdn(\"CN=Users,DC=corp,DC=example,DC=net\")\n .build());\n\n var role = new SecretBackendDynamicRole(\"role\", SecretBackendDynamicRoleArgs.builder() \n .mount(config.path())\n .roleName(\"alice\")\n .creationLdif(\"\"\"\ndn: cn={{.Username}},ou=users,dc=learn,dc=example\nobjectClass: person\nobjectClass: top\ncn: learn\nsn: {{.Password | utf16le | base64}}\nmemberOf: cn=dev,ou=groups,dc=learn,dc=example\nuserPassword: {{.Password}}\n \"\"\")\n .deletionLdif(\"\"\"\ndn: cn={{.Username}},ou=users,dc=learn,dc=example\nchangetype: delete\n rollback_ldif = \u003c\u003cEOT\ndn: cn={{.Username}},ou=users,dc=learn,dc=example\nchangetype: delete\n \"\"\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n config:\n type: vault:ldap:SecretBackend\n properties:\n path: my-custom-ldap\n binddn: CN=Administrator,CN=Users,DC=corp,DC=example,DC=net\n bindpass: SuperSecretPassw0rd\n url: ldaps://localhost\n userdn: CN=Users,DC=corp,DC=example,DC=net\n role:\n type: vault:ldap:SecretBackendDynamicRole\n properties:\n mount: ${config.path}\n roleName: alice\n creationLdif: |\n dn: cn={{.Username}},ou=users,dc=learn,dc=example\n objectClass: person\n objectClass: top\n cn: learn\n sn: {{.Password | utf16le | base64}}\n memberOf: cn=dev,ou=groups,dc=learn,dc=example\n userPassword: {{.Password}}\n deletionLdif: |\n dn: cn={{.Username}},ou=users,dc=learn,dc=example\n changetype: delete\n rollback_ldif = \u003c\u003cEOT\n dn: cn={{.Username}},ou=users,dc=learn,dc=example\n changetype: delete\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nLDAP secret backend dynamic role can be imported using the full path to the role of the form`\u003cmount_path\u003e/dynamic-role/\u003crole_name\u003e` e.g.\n\n```sh\n $ pulumi import vault:ldap/secretBackendDynamicRole:SecretBackendDynamicRole role ldap/role/dynamic-role\n```\n\n ",
+ "description": "{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst config = new vault.ldap.SecretBackend(\"config\", {\n path: \"my-custom-ldap\",\n binddn: \"CN=Administrator,CN=Users,DC=corp,DC=example,DC=net\",\n bindpass: \"SuperSecretPassw0rd\",\n url: \"ldaps://localhost\",\n userdn: \"CN=Users,DC=corp,DC=example,DC=net\",\n});\nconst role = new vault.ldap.SecretBackendDynamicRole(\"role\", {\n mount: config.path,\n roleName: \"alice\",\n creationLdif: `dn: cn={{.Username}},ou=users,dc=learn,dc=example\nobjectClass: person\nobjectClass: top\ncn: learn\nsn: {{.Password | utf16le | base64}}\nmemberOf: cn=dev,ou=groups,dc=learn,dc=example\nuserPassword: {{.Password}}\n`,\n deletionLdif: `dn: cn={{.Username}},ou=users,dc=learn,dc=example\nchangetype: delete\n rollback_ldif = \u003c\u003cEOT\ndn: cn={{.Username}},ou=users,dc=learn,dc=example\nchangetype: delete\n`,\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nconfig = vault.ldap.SecretBackend(\"config\",\n path=\"my-custom-ldap\",\n binddn=\"CN=Administrator,CN=Users,DC=corp,DC=example,DC=net\",\n bindpass=\"SuperSecretPassw0rd\",\n url=\"ldaps://localhost\",\n userdn=\"CN=Users,DC=corp,DC=example,DC=net\")\nrole = vault.ldap.SecretBackendDynamicRole(\"role\",\n mount=config.path,\n role_name=\"alice\",\n creation_ldif=\"\"\"dn: cn={{.Username}},ou=users,dc=learn,dc=example\nobjectClass: person\nobjectClass: top\ncn: learn\nsn: {{.Password | utf16le | base64}}\nmemberOf: cn=dev,ou=groups,dc=learn,dc=example\nuserPassword: {{.Password}}\n\"\"\",\n deletion_ldif=\"\"\"dn: cn={{.Username}},ou=users,dc=learn,dc=example\nchangetype: delete\n rollback_ldif = \u003c\u003cEOT\ndn: cn={{.Username}},ou=users,dc=learn,dc=example\nchangetype: delete\n\"\"\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Vault.Ldap.SecretBackend(\"config\", new()\n {\n Path = \"my-custom-ldap\",\n Binddn = \"CN=Administrator,CN=Users,DC=corp,DC=example,DC=net\",\n Bindpass = \"SuperSecretPassw0rd\",\n Url = \"ldaps://localhost\",\n Userdn = \"CN=Users,DC=corp,DC=example,DC=net\",\n });\n\n var role = new Vault.Ldap.SecretBackendDynamicRole(\"role\", new()\n {\n Mount = config.Path,\n RoleName = \"alice\",\n CreationLdif = @\"dn: cn={{.Username}},ou=users,dc=learn,dc=example\nobjectClass: person\nobjectClass: top\ncn: learn\nsn: {{.Password | utf16le | base64}}\nmemberOf: cn=dev,ou=groups,dc=learn,dc=example\nuserPassword: {{.Password}}\n\",\n DeletionLdif = @\"dn: cn={{.Username}},ou=users,dc=learn,dc=example\nchangetype: delete\n rollback_ldif = \u003c\u003cEOT\ndn: cn={{.Username}},ou=users,dc=learn,dc=example\nchangetype: delete\n\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/ldap\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tconfig, err := ldap.NewSecretBackend(ctx, \"config\", \u0026ldap.SecretBackendArgs{\n\t\t\tPath: pulumi.String(\"my-custom-ldap\"),\n\t\t\tBinddn: pulumi.String(\"CN=Administrator,CN=Users,DC=corp,DC=example,DC=net\"),\n\t\t\tBindpass: pulumi.String(\"SuperSecretPassw0rd\"),\n\t\t\tUrl: pulumi.String(\"ldaps://localhost\"),\n\t\t\tUserdn: pulumi.String(\"CN=Users,DC=corp,DC=example,DC=net\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = ldap.NewSecretBackendDynamicRole(ctx, \"role\", \u0026ldap.SecretBackendDynamicRoleArgs{\n\t\t\tMount: config.Path,\n\t\t\tRoleName: pulumi.String(\"alice\"),\n\t\t\tCreationLdif: pulumi.String(`dn: cn={{.Username}},ou=users,dc=learn,dc=example\nobjectClass: person\nobjectClass: top\ncn: learn\nsn: {{.Password | utf16le | base64}}\nmemberOf: cn=dev,ou=groups,dc=learn,dc=example\nuserPassword: {{.Password}}\n`),\n\t\t\tDeletionLdif: pulumi.String(`dn: cn={{.Username}},ou=users,dc=learn,dc=example\nchangetype: delete\n rollback_ldif = \u003c\u003cEOT\ndn: cn={{.Username}},ou=users,dc=learn,dc=example\nchangetype: delete\n`),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.ldap.SecretBackend;\nimport com.pulumi.vault.ldap.SecretBackendArgs;\nimport com.pulumi.vault.ldap.SecretBackendDynamicRole;\nimport com.pulumi.vault.ldap.SecretBackendDynamicRoleArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var config = new SecretBackend(\"config\", SecretBackendArgs.builder() \n .path(\"my-custom-ldap\")\n .binddn(\"CN=Administrator,CN=Users,DC=corp,DC=example,DC=net\")\n .bindpass(\"SuperSecretPassw0rd\")\n .url(\"ldaps://localhost\")\n .userdn(\"CN=Users,DC=corp,DC=example,DC=net\")\n .build());\n\n var role = new SecretBackendDynamicRole(\"role\", SecretBackendDynamicRoleArgs.builder() \n .mount(config.path())\n .roleName(\"alice\")\n .creationLdif(\"\"\"\ndn: cn={{.Username}},ou=users,dc=learn,dc=example\nobjectClass: person\nobjectClass: top\ncn: learn\nsn: {{.Password | utf16le | base64}}\nmemberOf: cn=dev,ou=groups,dc=learn,dc=example\nuserPassword: {{.Password}}\n \"\"\")\n .deletionLdif(\"\"\"\ndn: cn={{.Username}},ou=users,dc=learn,dc=example\nchangetype: delete\n rollback_ldif = \u003c\u003cEOT\ndn: cn={{.Username}},ou=users,dc=learn,dc=example\nchangetype: delete\n \"\"\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n config:\n type: vault:ldap:SecretBackend\n properties:\n path: my-custom-ldap\n binddn: CN=Administrator,CN=Users,DC=corp,DC=example,DC=net\n bindpass: SuperSecretPassw0rd\n url: ldaps://localhost\n userdn: CN=Users,DC=corp,DC=example,DC=net\n role:\n type: vault:ldap:SecretBackendDynamicRole\n properties:\n mount: ${config.path}\n roleName: alice\n creationLdif: |\n dn: cn={{.Username}},ou=users,dc=learn,dc=example\n objectClass: person\n objectClass: top\n cn: learn\n sn: {{.Password | utf16le | base64}}\n memberOf: cn=dev,ou=groups,dc=learn,dc=example\n userPassword: {{.Password}}\n deletionLdif: |\n dn: cn={{.Username}},ou=users,dc=learn,dc=example\n changetype: delete\n rollback_ldif = \u003c\u003cEOT\n dn: cn={{.Username}},ou=users,dc=learn,dc=example\n changetype: delete\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nLDAP secret backend dynamic role can be imported using the full path to the role of the form`\u003cmount_path\u003e/dynamic-role/\u003crole_name\u003e` e.g.\n\n```sh\n $ pulumi import vault:ldap/secretBackendDynamicRole:SecretBackendDynamicRole role ldap/role/dynamic-role\n```\n ",
"properties": {
"creationLdif": {
"type": "string",
@@ -24513,7 +21742,7 @@
}
},
"vault:ldap/secretBackendLibrarySet:SecretBackendLibrarySet": {
- "description": "{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst config = new vault.ldap.SecretBackend(\"config\", {\n path: \"ldap\",\n binddn: \"CN=Administrator,CN=Users,DC=corp,DC=example,DC=net\",\n bindpass: \"SuperSecretPassw0rd\",\n url: \"ldaps://localhost\",\n insecureTls: true,\n userdn: \"CN=Users,DC=corp,DC=example,DC=net\",\n});\nconst qa = new vault.ldap.SecretBackendLibrarySet(\"qa\", {\n mount: config.path,\n serviceAccountNames: [\n \"Bob\",\n \"Mary\",\n ],\n ttl: 60,\n disableCheckInEnforcement: true,\n maxTtl: 120,\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nconfig = vault.ldap.SecretBackend(\"config\",\n path=\"ldap\",\n binddn=\"CN=Administrator,CN=Users,DC=corp,DC=example,DC=net\",\n bindpass=\"SuperSecretPassw0rd\",\n url=\"ldaps://localhost\",\n insecure_tls=True,\n userdn=\"CN=Users,DC=corp,DC=example,DC=net\")\nqa = vault.ldap.SecretBackendLibrarySet(\"qa\",\n mount=config.path,\n service_account_names=[\n \"Bob\",\n \"Mary\",\n ],\n ttl=60,\n disable_check_in_enforcement=True,\n max_ttl=120)\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Vault.Ldap.SecretBackend(\"config\", new()\n {\n Path = \"ldap\",\n Binddn = \"CN=Administrator,CN=Users,DC=corp,DC=example,DC=net\",\n Bindpass = \"SuperSecretPassw0rd\",\n Url = \"ldaps://localhost\",\n InsecureTls = true,\n Userdn = \"CN=Users,DC=corp,DC=example,DC=net\",\n });\n\n var qa = new Vault.Ldap.SecretBackendLibrarySet(\"qa\", new()\n {\n Mount = config.Path,\n ServiceAccountNames = new[]\n {\n \"Bob\",\n \"Mary\",\n },\n Ttl = 60,\n DisableCheckInEnforcement = true,\n MaxTtl = 120,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/ldap\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tconfig, err := ldap.NewSecretBackend(ctx, \"config\", \u0026ldap.SecretBackendArgs{\n\t\t\tPath: pulumi.String(\"ldap\"),\n\t\t\tBinddn: pulumi.String(\"CN=Administrator,CN=Users,DC=corp,DC=example,DC=net\"),\n\t\t\tBindpass: pulumi.String(\"SuperSecretPassw0rd\"),\n\t\t\tUrl: pulumi.String(\"ldaps://localhost\"),\n\t\t\tInsecureTls: pulumi.Bool(true),\n\t\t\tUserdn: pulumi.String(\"CN=Users,DC=corp,DC=example,DC=net\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = ldap.NewSecretBackendLibrarySet(ctx, \"qa\", \u0026ldap.SecretBackendLibrarySetArgs{\n\t\t\tMount: config.Path,\n\t\t\tServiceAccountNames: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"Bob\"),\n\t\t\t\tpulumi.String(\"Mary\"),\n\t\t\t},\n\t\t\tTtl: pulumi.Int(60),\n\t\t\tDisableCheckInEnforcement: pulumi.Bool(true),\n\t\t\tMaxTtl: pulumi.Int(120),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.ldap.SecretBackend;\nimport com.pulumi.vault.ldap.SecretBackendArgs;\nimport com.pulumi.vault.ldap.SecretBackendLibrarySet;\nimport com.pulumi.vault.ldap.SecretBackendLibrarySetArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var config = new SecretBackend(\"config\", SecretBackendArgs.builder() \n .path(\"ldap\")\n .binddn(\"CN=Administrator,CN=Users,DC=corp,DC=example,DC=net\")\n .bindpass(\"SuperSecretPassw0rd\")\n .url(\"ldaps://localhost\")\n .insecureTls(\"true\")\n .userdn(\"CN=Users,DC=corp,DC=example,DC=net\")\n .build());\n\n var qa = new SecretBackendLibrarySet(\"qa\", SecretBackendLibrarySetArgs.builder() \n .mount(config.path())\n .serviceAccountNames( \n \"Bob\",\n \"Mary\")\n .ttl(60)\n .disableCheckInEnforcement(true)\n .maxTtl(120)\n .build());\n\n }\n}\n```\n```yaml\nresources:\n config:\n type: vault:ldap:SecretBackend\n properties:\n path: ldap\n binddn: CN=Administrator,CN=Users,DC=corp,DC=example,DC=net\n bindpass: SuperSecretPassw0rd\n url: ldaps://localhost\n insecureTls: true\n userdn: CN=Users,DC=corp,DC=example,DC=net\n qa:\n type: vault:ldap:SecretBackendLibrarySet\n properties:\n mount: ${config.path}\n serviceAccountNames:\n - Bob\n - Mary\n ttl: 60\n disableCheckInEnforcement: true\n maxTtl: 120\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nLDAP secret backend libraries can be imported using the `path`, e.g.\n\n```sh\n $ pulumi import vault:ldap/secretBackendLibrarySet:SecretBackendLibrarySet qa ldap/library/bob\n```\n\n ",
+ "description": "{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst config = new vault.ldap.SecretBackend(\"config\", {\n path: \"ldap\",\n binddn: \"CN=Administrator,CN=Users,DC=corp,DC=example,DC=net\",\n bindpass: \"SuperSecretPassw0rd\",\n url: \"ldaps://localhost\",\n insecureTls: true,\n userdn: \"CN=Users,DC=corp,DC=example,DC=net\",\n});\nconst qa = new vault.ldap.SecretBackendLibrarySet(\"qa\", {\n mount: config.path,\n serviceAccountNames: [\n \"Bob\",\n \"Mary\",\n ],\n ttl: 60,\n disableCheckInEnforcement: true,\n maxTtl: 120,\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nconfig = vault.ldap.SecretBackend(\"config\",\n path=\"ldap\",\n binddn=\"CN=Administrator,CN=Users,DC=corp,DC=example,DC=net\",\n bindpass=\"SuperSecretPassw0rd\",\n url=\"ldaps://localhost\",\n insecure_tls=True,\n userdn=\"CN=Users,DC=corp,DC=example,DC=net\")\nqa = vault.ldap.SecretBackendLibrarySet(\"qa\",\n mount=config.path,\n service_account_names=[\n \"Bob\",\n \"Mary\",\n ],\n ttl=60,\n disable_check_in_enforcement=True,\n max_ttl=120)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Vault.Ldap.SecretBackend(\"config\", new()\n {\n Path = \"ldap\",\n Binddn = \"CN=Administrator,CN=Users,DC=corp,DC=example,DC=net\",\n Bindpass = \"SuperSecretPassw0rd\",\n Url = \"ldaps://localhost\",\n InsecureTls = true,\n Userdn = \"CN=Users,DC=corp,DC=example,DC=net\",\n });\n\n var qa = new Vault.Ldap.SecretBackendLibrarySet(\"qa\", new()\n {\n Mount = config.Path,\n ServiceAccountNames = new[]\n {\n \"Bob\",\n \"Mary\",\n },\n Ttl = 60,\n DisableCheckInEnforcement = true,\n MaxTtl = 120,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/ldap\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tconfig, err := ldap.NewSecretBackend(ctx, \"config\", \u0026ldap.SecretBackendArgs{\n\t\t\tPath: pulumi.String(\"ldap\"),\n\t\t\tBinddn: pulumi.String(\"CN=Administrator,CN=Users,DC=corp,DC=example,DC=net\"),\n\t\t\tBindpass: pulumi.String(\"SuperSecretPassw0rd\"),\n\t\t\tUrl: pulumi.String(\"ldaps://localhost\"),\n\t\t\tInsecureTls: pulumi.Bool(true),\n\t\t\tUserdn: pulumi.String(\"CN=Users,DC=corp,DC=example,DC=net\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = ldap.NewSecretBackendLibrarySet(ctx, \"qa\", \u0026ldap.SecretBackendLibrarySetArgs{\n\t\t\tMount: config.Path,\n\t\t\tServiceAccountNames: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"Bob\"),\n\t\t\t\tpulumi.String(\"Mary\"),\n\t\t\t},\n\t\t\tTtl: pulumi.Int(60),\n\t\t\tDisableCheckInEnforcement: pulumi.Bool(true),\n\t\t\tMaxTtl: pulumi.Int(120),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.ldap.SecretBackend;\nimport com.pulumi.vault.ldap.SecretBackendArgs;\nimport com.pulumi.vault.ldap.SecretBackendLibrarySet;\nimport com.pulumi.vault.ldap.SecretBackendLibrarySetArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var config = new SecretBackend(\"config\", SecretBackendArgs.builder() \n .path(\"ldap\")\n .binddn(\"CN=Administrator,CN=Users,DC=corp,DC=example,DC=net\")\n .bindpass(\"SuperSecretPassw0rd\")\n .url(\"ldaps://localhost\")\n .insecureTls(\"true\")\n .userdn(\"CN=Users,DC=corp,DC=example,DC=net\")\n .build());\n\n var qa = new SecretBackendLibrarySet(\"qa\", SecretBackendLibrarySetArgs.builder() \n .mount(config.path())\n .serviceAccountNames( \n \"Bob\",\n \"Mary\")\n .ttl(60)\n .disableCheckInEnforcement(true)\n .maxTtl(120)\n .build());\n\n }\n}\n```\n```yaml\nresources:\n config:\n type: vault:ldap:SecretBackend\n properties:\n path: ldap\n binddn: CN=Administrator,CN=Users,DC=corp,DC=example,DC=net\n bindpass: SuperSecretPassw0rd\n url: ldaps://localhost\n insecureTls: 'true'\n userdn: CN=Users,DC=corp,DC=example,DC=net\n qa:\n type: vault:ldap:SecretBackendLibrarySet\n properties:\n mount: ${config.path}\n serviceAccountNames:\n - Bob\n - Mary\n ttl: 60\n disableCheckInEnforcement: true\n maxTtl: 120\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nLDAP secret backend libraries can be imported using the `path`, e.g.\n\n```sh\n $ pulumi import vault:ldap/secretBackendLibrarySet:SecretBackendLibrarySet qa ldap/library/bob\n```\n ",
"properties": {
"disableCheckInEnforcement": {
"type": "boolean",
@@ -24634,7 +21863,7 @@
}
},
"vault:ldap/secretBackendStaticRole:SecretBackendStaticRole": {
- "description": "{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst config = new vault.ldap.SecretBackend(\"config\", {\n path: \"my-custom-ldap\",\n binddn: \"CN=Administrator,CN=Users,DC=corp,DC=example,DC=net\",\n bindpass: \"SuperSecretPassw0rd\",\n url: \"ldaps://localhost\",\n insecureTls: true,\n userdn: \"CN=Users,DC=corp,DC=example,DC=net\",\n});\nconst role = new vault.ldap.SecretBackendStaticRole(\"role\", {\n mount: config.path,\n username: \"alice\",\n dn: \"cn=alice,ou=Users,DC=corp,DC=example,DC=net\",\n roleName: \"alice\",\n rotationPeriod: 60,\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nconfig = vault.ldap.SecretBackend(\"config\",\n path=\"my-custom-ldap\",\n binddn=\"CN=Administrator,CN=Users,DC=corp,DC=example,DC=net\",\n bindpass=\"SuperSecretPassw0rd\",\n url=\"ldaps://localhost\",\n insecure_tls=True,\n userdn=\"CN=Users,DC=corp,DC=example,DC=net\")\nrole = vault.ldap.SecretBackendStaticRole(\"role\",\n mount=config.path,\n username=\"alice\",\n dn=\"cn=alice,ou=Users,DC=corp,DC=example,DC=net\",\n role_name=\"alice\",\n rotation_period=60)\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Vault.Ldap.SecretBackend(\"config\", new()\n {\n Path = \"my-custom-ldap\",\n Binddn = \"CN=Administrator,CN=Users,DC=corp,DC=example,DC=net\",\n Bindpass = \"SuperSecretPassw0rd\",\n Url = \"ldaps://localhost\",\n InsecureTls = true,\n Userdn = \"CN=Users,DC=corp,DC=example,DC=net\",\n });\n\n var role = new Vault.Ldap.SecretBackendStaticRole(\"role\", new()\n {\n Mount = config.Path,\n Username = \"alice\",\n Dn = \"cn=alice,ou=Users,DC=corp,DC=example,DC=net\",\n RoleName = \"alice\",\n RotationPeriod = 60,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/ldap\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tconfig, err := ldap.NewSecretBackend(ctx, \"config\", \u0026ldap.SecretBackendArgs{\n\t\t\tPath: pulumi.String(\"my-custom-ldap\"),\n\t\t\tBinddn: pulumi.String(\"CN=Administrator,CN=Users,DC=corp,DC=example,DC=net\"),\n\t\t\tBindpass: pulumi.String(\"SuperSecretPassw0rd\"),\n\t\t\tUrl: pulumi.String(\"ldaps://localhost\"),\n\t\t\tInsecureTls: pulumi.Bool(true),\n\t\t\tUserdn: pulumi.String(\"CN=Users,DC=corp,DC=example,DC=net\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = ldap.NewSecretBackendStaticRole(ctx, \"role\", \u0026ldap.SecretBackendStaticRoleArgs{\n\t\t\tMount: config.Path,\n\t\t\tUsername: pulumi.String(\"alice\"),\n\t\t\tDn: pulumi.String(\"cn=alice,ou=Users,DC=corp,DC=example,DC=net\"),\n\t\t\tRoleName: pulumi.String(\"alice\"),\n\t\t\tRotationPeriod: pulumi.Int(60),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.ldap.SecretBackend;\nimport com.pulumi.vault.ldap.SecretBackendArgs;\nimport com.pulumi.vault.ldap.SecretBackendStaticRole;\nimport com.pulumi.vault.ldap.SecretBackendStaticRoleArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var config = new SecretBackend(\"config\", SecretBackendArgs.builder() \n .path(\"my-custom-ldap\")\n .binddn(\"CN=Administrator,CN=Users,DC=corp,DC=example,DC=net\")\n .bindpass(\"SuperSecretPassw0rd\")\n .url(\"ldaps://localhost\")\n .insecureTls(\"true\")\n .userdn(\"CN=Users,DC=corp,DC=example,DC=net\")\n .build());\n\n var role = new SecretBackendStaticRole(\"role\", SecretBackendStaticRoleArgs.builder() \n .mount(config.path())\n .username(\"alice\")\n .dn(\"cn=alice,ou=Users,DC=corp,DC=example,DC=net\")\n .roleName(\"alice\")\n .rotationPeriod(60)\n .build());\n\n }\n}\n```\n```yaml\nresources:\n config:\n type: vault:ldap:SecretBackend\n properties:\n path: my-custom-ldap\n binddn: CN=Administrator,CN=Users,DC=corp,DC=example,DC=net\n bindpass: SuperSecretPassw0rd\n url: ldaps://localhost\n insecureTls: true\n userdn: CN=Users,DC=corp,DC=example,DC=net\n role:\n type: vault:ldap:SecretBackendStaticRole\n properties:\n mount: ${config.path}\n username: alice\n dn: cn=alice,ou=Users,DC=corp,DC=example,DC=net\n roleName: alice\n rotationPeriod: 60\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nLDAP secret backend static role can be imported using the full path to the role of the form`\u003cmount_path\u003e/static-role/\u003crole_name\u003e` e.g.\n\n```sh\n $ pulumi import vault:ldap/secretBackendStaticRole:SecretBackendStaticRole role ldap/static-role/example-role\n```\n\n ",
+ "description": "{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst config = new vault.ldap.SecretBackend(\"config\", {\n path: \"my-custom-ldap\",\n binddn: \"CN=Administrator,CN=Users,DC=corp,DC=example,DC=net\",\n bindpass: \"SuperSecretPassw0rd\",\n url: \"ldaps://localhost\",\n insecureTls: true,\n userdn: \"CN=Users,DC=corp,DC=example,DC=net\",\n});\nconst role = new vault.ldap.SecretBackendStaticRole(\"role\", {\n mount: config.path,\n username: \"alice\",\n dn: \"cn=alice,ou=Users,DC=corp,DC=example,DC=net\",\n roleName: \"alice\",\n rotationPeriod: 60,\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nconfig = vault.ldap.SecretBackend(\"config\",\n path=\"my-custom-ldap\",\n binddn=\"CN=Administrator,CN=Users,DC=corp,DC=example,DC=net\",\n bindpass=\"SuperSecretPassw0rd\",\n url=\"ldaps://localhost\",\n insecure_tls=True,\n userdn=\"CN=Users,DC=corp,DC=example,DC=net\")\nrole = vault.ldap.SecretBackendStaticRole(\"role\",\n mount=config.path,\n username=\"alice\",\n dn=\"cn=alice,ou=Users,DC=corp,DC=example,DC=net\",\n role_name=\"alice\",\n rotation_period=60)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Vault.Ldap.SecretBackend(\"config\", new()\n {\n Path = \"my-custom-ldap\",\n Binddn = \"CN=Administrator,CN=Users,DC=corp,DC=example,DC=net\",\n Bindpass = \"SuperSecretPassw0rd\",\n Url = \"ldaps://localhost\",\n InsecureTls = true,\n Userdn = \"CN=Users,DC=corp,DC=example,DC=net\",\n });\n\n var role = new Vault.Ldap.SecretBackendStaticRole(\"role\", new()\n {\n Mount = config.Path,\n Username = \"alice\",\n Dn = \"cn=alice,ou=Users,DC=corp,DC=example,DC=net\",\n RoleName = \"alice\",\n RotationPeriod = 60,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/ldap\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tconfig, err := ldap.NewSecretBackend(ctx, \"config\", \u0026ldap.SecretBackendArgs{\n\t\t\tPath: pulumi.String(\"my-custom-ldap\"),\n\t\t\tBinddn: pulumi.String(\"CN=Administrator,CN=Users,DC=corp,DC=example,DC=net\"),\n\t\t\tBindpass: pulumi.String(\"SuperSecretPassw0rd\"),\n\t\t\tUrl: pulumi.String(\"ldaps://localhost\"),\n\t\t\tInsecureTls: pulumi.Bool(true),\n\t\t\tUserdn: pulumi.String(\"CN=Users,DC=corp,DC=example,DC=net\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = ldap.NewSecretBackendStaticRole(ctx, \"role\", \u0026ldap.SecretBackendStaticRoleArgs{\n\t\t\tMount: config.Path,\n\t\t\tUsername: pulumi.String(\"alice\"),\n\t\t\tDn: pulumi.String(\"cn=alice,ou=Users,DC=corp,DC=example,DC=net\"),\n\t\t\tRoleName: pulumi.String(\"alice\"),\n\t\t\tRotationPeriod: pulumi.Int(60),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.ldap.SecretBackend;\nimport com.pulumi.vault.ldap.SecretBackendArgs;\nimport com.pulumi.vault.ldap.SecretBackendStaticRole;\nimport com.pulumi.vault.ldap.SecretBackendStaticRoleArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var config = new SecretBackend(\"config\", SecretBackendArgs.builder() \n .path(\"my-custom-ldap\")\n .binddn(\"CN=Administrator,CN=Users,DC=corp,DC=example,DC=net\")\n .bindpass(\"SuperSecretPassw0rd\")\n .url(\"ldaps://localhost\")\n .insecureTls(\"true\")\n .userdn(\"CN=Users,DC=corp,DC=example,DC=net\")\n .build());\n\n var role = new SecretBackendStaticRole(\"role\", SecretBackendStaticRoleArgs.builder() \n .mount(config.path())\n .username(\"alice\")\n .dn(\"cn=alice,ou=Users,DC=corp,DC=example,DC=net\")\n .roleName(\"alice\")\n .rotationPeriod(60)\n .build());\n\n }\n}\n```\n```yaml\nresources:\n config:\n type: vault:ldap:SecretBackend\n properties:\n path: my-custom-ldap\n binddn: CN=Administrator,CN=Users,DC=corp,DC=example,DC=net\n bindpass: SuperSecretPassw0rd\n url: ldaps://localhost\n insecureTls: 'true'\n userdn: CN=Users,DC=corp,DC=example,DC=net\n role:\n type: vault:ldap:SecretBackendStaticRole\n properties:\n mount: ${config.path}\n username: alice\n dn: cn=alice,ou=Users,DC=corp,DC=example,DC=net\n roleName: alice\n rotationPeriod: 60\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nLDAP secret backend static role can be imported using the full path to the role of the form`\u003cmount_path\u003e/static-role/\u003crole_name\u003e` e.g.\n\n```sh\n $ pulumi import vault:ldap/secretBackendStaticRole:SecretBackendStaticRole role ldap/static-role/example-role\n```\n ",
"properties": {
"dn": {
"type": "string",
@@ -24735,7 +21964,7 @@
}
},
"vault:managed/keys:Keys": {
- "description": "\n\n\n## Import\n\nMounts can be imported using the `id` of `default`, e.g.\n\n```sh\n $ pulumi import vault:managed/keys:Keys keys default\n```\n\n ",
+ "description": "\n\n\n## Import\n\nMounts can be imported using the `id` of `default`, e.g.\n\n```sh\n $ pulumi import vault:managed/keys:Keys keys default\n```\n ",
"properties": {
"aws": {
"type": "array",
@@ -24825,7 +22054,7 @@
}
},
"vault:mongodbatlas/secretBackend:SecretBackend": {
- "description": "{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst mongo = new vault.Mount(\"mongo\", {\n description: \"MongoDB Atlas secret engine mount\",\n path: \"mongodbatlas\",\n type: \"mongodbatlas\",\n});\nconst config = new vault.mongodbatlas.SecretBackend(\"config\", {\n mount: \"vault_mount.mongo.path\",\n privateKey: \"privateKey\",\n publicKey: \"publicKey\",\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nmongo = vault.Mount(\"mongo\",\n description=\"MongoDB Atlas secret engine mount\",\n path=\"mongodbatlas\",\n type=\"mongodbatlas\")\nconfig = vault.mongodbatlas.SecretBackend(\"config\",\n mount=\"vault_mount.mongo.path\",\n private_key=\"privateKey\",\n public_key=\"publicKey\")\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var mongo = new Vault.Mount(\"mongo\", new()\n {\n Description = \"MongoDB Atlas secret engine mount\",\n Path = \"mongodbatlas\",\n Type = \"mongodbatlas\",\n });\n\n var config = new Vault.MongoDBAtlas.SecretBackend(\"config\", new()\n {\n Mount = \"vault_mount.mongo.path\",\n PrivateKey = \"privateKey\",\n PublicKey = \"publicKey\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault\"\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/mongodbatlas\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := vault.NewMount(ctx, \"mongo\", \u0026vault.MountArgs{\n\t\t\tDescription: pulumi.String(\"MongoDB Atlas secret engine mount\"),\n\t\t\tPath: pulumi.String(\"mongodbatlas\"),\n\t\t\tType: pulumi.String(\"mongodbatlas\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = mongodbatlas.NewSecretBackend(ctx, \"config\", \u0026mongodbatlas.SecretBackendArgs{\n\t\t\tMount: pulumi.String(\"vault_mount.mongo.path\"),\n\t\t\tPrivateKey: pulumi.String(\"privateKey\"),\n\t\t\tPublicKey: pulumi.String(\"publicKey\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.Mount;\nimport com.pulumi.vault.MountArgs;\nimport com.pulumi.vault.mongodbatlas.SecretBackend;\nimport com.pulumi.vault.mongodbatlas.SecretBackendArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var mongo = new Mount(\"mongo\", MountArgs.builder() \n .description(\"MongoDB Atlas secret engine mount\")\n .path(\"mongodbatlas\")\n .type(\"mongodbatlas\")\n .build());\n\n var config = new SecretBackend(\"config\", SecretBackendArgs.builder() \n .mount(\"vault_mount.mongo.path\")\n .privateKey(\"privateKey\")\n .publicKey(\"publicKey\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n mongo:\n type: vault:Mount\n properties:\n description: MongoDB Atlas secret engine mount\n path: mongodbatlas\n type: mongodbatlas\n config:\n type: vault:mongodbatlas:SecretBackend\n properties:\n mount: vault_mount.mongo.path\n privateKey: privateKey\n publicKey: publicKey\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nMongoDB Atlas secret backends can be imported using the `${mount}/config`, e.g.\n\n```sh\n $ pulumi import vault:mongodbatlas/secretBackend:SecretBackend config mongodbatlas/config\n```\n\n ",
+ "description": "{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst mongo = new vault.Mount(\"mongo\", {\n description: \"MongoDB Atlas secret engine mount\",\n path: \"mongodbatlas\",\n type: \"mongodbatlas\",\n});\nconst config = new vault.mongodbatlas.SecretBackend(\"config\", {\n mount: \"vault_mount.mongo.path\",\n privateKey: \"privateKey\",\n publicKey: \"publicKey\",\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nmongo = vault.Mount(\"mongo\",\n description=\"MongoDB Atlas secret engine mount\",\n path=\"mongodbatlas\",\n type=\"mongodbatlas\")\nconfig = vault.mongodbatlas.SecretBackend(\"config\",\n mount=\"vault_mount.mongo.path\",\n private_key=\"privateKey\",\n public_key=\"publicKey\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var mongo = new Vault.Mount(\"mongo\", new()\n {\n Description = \"MongoDB Atlas secret engine mount\",\n Path = \"mongodbatlas\",\n Type = \"mongodbatlas\",\n });\n\n var config = new Vault.MongoDBAtlas.SecretBackend(\"config\", new()\n {\n Mount = \"vault_mount.mongo.path\",\n PrivateKey = \"privateKey\",\n PublicKey = \"publicKey\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault\"\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/mongodbatlas\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := vault.NewMount(ctx, \"mongo\", \u0026vault.MountArgs{\n\t\t\tDescription: pulumi.String(\"MongoDB Atlas secret engine mount\"),\n\t\t\tPath: pulumi.String(\"mongodbatlas\"),\n\t\t\tType: pulumi.String(\"mongodbatlas\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = mongodbatlas.NewSecretBackend(ctx, \"config\", \u0026mongodbatlas.SecretBackendArgs{\n\t\t\tMount: pulumi.String(\"vault_mount.mongo.path\"),\n\t\t\tPrivateKey: pulumi.String(\"privateKey\"),\n\t\t\tPublicKey: pulumi.String(\"publicKey\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.Mount;\nimport com.pulumi.vault.MountArgs;\nimport com.pulumi.vault.mongodbatlas.SecretBackend;\nimport com.pulumi.vault.mongodbatlas.SecretBackendArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var mongo = new Mount(\"mongo\", MountArgs.builder() \n .description(\"MongoDB Atlas secret engine mount\")\n .path(\"mongodbatlas\")\n .type(\"mongodbatlas\")\n .build());\n\n var config = new SecretBackend(\"config\", SecretBackendArgs.builder() \n .mount(\"vault_mount.mongo.path\")\n .privateKey(\"privateKey\")\n .publicKey(\"publicKey\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n mongo:\n type: vault:Mount\n properties:\n description: MongoDB Atlas secret engine mount\n path: mongodbatlas\n type: mongodbatlas\n config:\n type: vault:mongodbatlas:SecretBackend\n properties:\n mount: vault_mount.mongo.path\n privateKey: privateKey\n publicKey: publicKey\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nMongoDB Atlas secret backends can be imported using the `${mount}/config`, e.g.\n\n```sh\n $ pulumi import vault:mongodbatlas/secretBackend:SecretBackend config mongodbatlas/config\n```\n ",
"properties": {
"mount": {
"type": "string",
@@ -24907,7 +22136,7 @@
}
},
"vault:mongodbatlas/secretRole:SecretRole": {
- "description": "{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst mongo = new vault.Mount(\"mongo\", {\n path: \"%s\",\n type: \"mongodbatlas\",\n description: \"MongoDB Atlas secret engine mount\",\n});\nconst config = new vault.mongodbatlas.SecretBackend(\"config\", {\n mount: \"vault_mount.mongo.path\",\n privateKey: \"privateKey\",\n publicKey: \"publicKey\",\n});\nconst role = new vault.mongodbatlas.SecretRole(\"role\", {\n mount: mongo.path,\n organizationId: \"7cf5a45a9ccf6400e60981b7\",\n projectId: \"5cf5a45a9ccf6400e60981b6\",\n roles: \"ORG_READ_ONLY\",\n ipAddresses: \"192.168.1.5, 192.168.1.6\",\n cidrBlocks: \"192.168.1.3/35\",\n projectRoles: \"GROUP_READ_ONLY\",\n ttl: \"60\",\n maxTtl: \"120\",\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nmongo = vault.Mount(\"mongo\",\n path=\"%s\",\n type=\"mongodbatlas\",\n description=\"MongoDB Atlas secret engine mount\")\nconfig = vault.mongodbatlas.SecretBackend(\"config\",\n mount=\"vault_mount.mongo.path\",\n private_key=\"privateKey\",\n public_key=\"publicKey\")\nrole = vault.mongodbatlas.SecretRole(\"role\",\n mount=mongo.path,\n organization_id=\"7cf5a45a9ccf6400e60981b7\",\n project_id=\"5cf5a45a9ccf6400e60981b6\",\n roles=\"ORG_READ_ONLY\",\n ip_addresses=\"192.168.1.5, 192.168.1.6\",\n cidr_blocks=\"192.168.1.3/35\",\n project_roles=\"GROUP_READ_ONLY\",\n ttl=\"60\",\n max_ttl=\"120\")\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var mongo = new Vault.Mount(\"mongo\", new()\n {\n Path = \"%s\",\n Type = \"mongodbatlas\",\n Description = \"MongoDB Atlas secret engine mount\",\n });\n\n var config = new Vault.MongoDBAtlas.SecretBackend(\"config\", new()\n {\n Mount = \"vault_mount.mongo.path\",\n PrivateKey = \"privateKey\",\n PublicKey = \"publicKey\",\n });\n\n var role = new Vault.MongoDBAtlas.SecretRole(\"role\", new()\n {\n Mount = mongo.Path,\n OrganizationId = \"7cf5a45a9ccf6400e60981b7\",\n ProjectId = \"5cf5a45a9ccf6400e60981b6\",\n Roles = \"ORG_READ_ONLY\",\n IpAddresses = \"192.168.1.5, 192.168.1.6\",\n CidrBlocks = \"192.168.1.3/35\",\n ProjectRoles = \"GROUP_READ_ONLY\",\n Ttl = \"60\",\n MaxTtl = \"120\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault\"\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/mongodbatlas\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tmongo, err := vault.NewMount(ctx, \"mongo\", \u0026vault.MountArgs{\n\t\t\tPath: pulumi.String(\"%s\"),\n\t\t\tType: pulumi.String(\"mongodbatlas\"),\n\t\t\tDescription: pulumi.String(\"MongoDB Atlas secret engine mount\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = mongodbatlas.NewSecretBackend(ctx, \"config\", \u0026mongodbatlas.SecretBackendArgs{\n\t\t\tMount: pulumi.String(\"vault_mount.mongo.path\"),\n\t\t\tPrivateKey: pulumi.String(\"privateKey\"),\n\t\t\tPublicKey: pulumi.String(\"publicKey\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = mongodbatlas.NewSecretRole(ctx, \"role\", \u0026mongodbatlas.SecretRoleArgs{\n\t\t\tMount: mongo.Path,\n\t\t\tOrganizationId: pulumi.String(\"7cf5a45a9ccf6400e60981b7\"),\n\t\t\tProjectId: pulumi.String(\"5cf5a45a9ccf6400e60981b6\"),\n\t\t\tRoles: pulumi.StringArray(\"ORG_READ_ONLY\"),\n\t\t\tIpAddresses: pulumi.StringArray(\"192.168.1.5, 192.168.1.6\"),\n\t\t\tCidrBlocks: pulumi.StringArray(\"192.168.1.3/35\"),\n\t\t\tProjectRoles: pulumi.StringArray(\"GROUP_READ_ONLY\"),\n\t\t\tTtl: pulumi.String(\"60\"),\n\t\t\tMaxTtl: pulumi.String(\"120\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.Mount;\nimport com.pulumi.vault.MountArgs;\nimport com.pulumi.vault.mongodbatlas.SecretBackend;\nimport com.pulumi.vault.mongodbatlas.SecretBackendArgs;\nimport com.pulumi.vault.mongodbatlas.SecretRole;\nimport com.pulumi.vault.mongodbatlas.SecretRoleArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var mongo = new Mount(\"mongo\", MountArgs.builder() \n .path(\"%s\")\n .type(\"mongodbatlas\")\n .description(\"MongoDB Atlas secret engine mount\")\n .build());\n\n var config = new SecretBackend(\"config\", SecretBackendArgs.builder() \n .mount(\"vault_mount.mongo.path\")\n .privateKey(\"privateKey\")\n .publicKey(\"publicKey\")\n .build());\n\n var role = new SecretRole(\"role\", SecretRoleArgs.builder() \n .mount(mongo.path())\n .organizationId(\"7cf5a45a9ccf6400e60981b7\")\n .projectId(\"5cf5a45a9ccf6400e60981b6\")\n .roles(\"ORG_READ_ONLY\")\n .ipAddresses(\"192.168.1.5, 192.168.1.6\")\n .cidrBlocks(\"192.168.1.3/35\")\n .projectRoles(\"GROUP_READ_ONLY\")\n .ttl(\"60\")\n .maxTtl(\"120\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n mongo:\n type: vault:Mount\n properties:\n path: '%s'\n type: mongodbatlas\n description: MongoDB Atlas secret engine mount\n config:\n type: vault:mongodbatlas:SecretBackend\n properties:\n mount: vault_mount.mongo.path\n privateKey: privateKey\n publicKey: publicKey\n role:\n type: vault:mongodbatlas:SecretRole\n properties:\n mount: ${mongo.path}\n organizationId: 7cf5a45a9ccf6400e60981b7\n projectId: 5cf5a45a9ccf6400e60981b6\n roles: ORG_READ_ONLY\n ipAddresses: 192.168.1.5, 192.168.1.6\n cidrBlocks: 192.168.1.3/35\n projectRoles: GROUP_READ_ONLY\n ttl: 60\n maxTtl: 120\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nThe MongoDB Atlas secret role can be imported using the full path to the role of the form`\u003cmount_path\u003e/roles/\u003crole_name\u003e` e.g.\n\n```sh\n $ pulumi import vault:mongodbatlas/secretRole:SecretRole example mongodbatlas/roles/example-role\n```\n\n ",
+ "description": "{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst mongo = new vault.Mount(\"mongo\", {\n path: \"%s\",\n type: \"mongodbatlas\",\n description: \"MongoDB Atlas secret engine mount\",\n});\nconst config = new vault.mongodbatlas.SecretBackend(\"config\", {\n mount: \"vault_mount.mongo.path\",\n privateKey: \"privateKey\",\n publicKey: \"publicKey\",\n});\nconst role = new vault.mongodbatlas.SecretRole(\"role\", {\n mount: mongo.path,\n organizationId: \"7cf5a45a9ccf6400e60981b7\",\n projectId: \"5cf5a45a9ccf6400e60981b6\",\n roles: \"ORG_READ_ONLY\",\n ipAddresses: \"192.168.1.5, 192.168.1.6\",\n cidrBlocks: \"192.168.1.3/35\",\n projectRoles: \"GROUP_READ_ONLY\",\n ttl: \"60\",\n maxTtl: \"120\",\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nmongo = vault.Mount(\"mongo\",\n path=\"%s\",\n type=\"mongodbatlas\",\n description=\"MongoDB Atlas secret engine mount\")\nconfig = vault.mongodbatlas.SecretBackend(\"config\",\n mount=\"vault_mount.mongo.path\",\n private_key=\"privateKey\",\n public_key=\"publicKey\")\nrole = vault.mongodbatlas.SecretRole(\"role\",\n mount=mongo.path,\n organization_id=\"7cf5a45a9ccf6400e60981b7\",\n project_id=\"5cf5a45a9ccf6400e60981b6\",\n roles=\"ORG_READ_ONLY\",\n ip_addresses=\"192.168.1.5, 192.168.1.6\",\n cidr_blocks=\"192.168.1.3/35\",\n project_roles=\"GROUP_READ_ONLY\",\n ttl=\"60\",\n max_ttl=\"120\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var mongo = new Vault.Mount(\"mongo\", new()\n {\n Path = \"%s\",\n Type = \"mongodbatlas\",\n Description = \"MongoDB Atlas secret engine mount\",\n });\n\n var config = new Vault.MongoDBAtlas.SecretBackend(\"config\", new()\n {\n Mount = \"vault_mount.mongo.path\",\n PrivateKey = \"privateKey\",\n PublicKey = \"publicKey\",\n });\n\n var role = new Vault.MongoDBAtlas.SecretRole(\"role\", new()\n {\n Mount = mongo.Path,\n OrganizationId = \"7cf5a45a9ccf6400e60981b7\",\n ProjectId = \"5cf5a45a9ccf6400e60981b6\",\n Roles = \"ORG_READ_ONLY\",\n IpAddresses = \"192.168.1.5, 192.168.1.6\",\n CidrBlocks = \"192.168.1.3/35\",\n ProjectRoles = \"GROUP_READ_ONLY\",\n Ttl = \"60\",\n MaxTtl = \"120\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault\"\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/mongodbatlas\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tmongo, err := vault.NewMount(ctx, \"mongo\", \u0026vault.MountArgs{\n\t\t\tPath: pulumi.String(\"%s\"),\n\t\t\tType: pulumi.String(\"mongodbatlas\"),\n\t\t\tDescription: pulumi.String(\"MongoDB Atlas secret engine mount\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = mongodbatlas.NewSecretBackend(ctx, \"config\", \u0026mongodbatlas.SecretBackendArgs{\n\t\t\tMount: pulumi.String(\"vault_mount.mongo.path\"),\n\t\t\tPrivateKey: pulumi.String(\"privateKey\"),\n\t\t\tPublicKey: pulumi.String(\"publicKey\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = mongodbatlas.NewSecretRole(ctx, \"role\", \u0026mongodbatlas.SecretRoleArgs{\n\t\t\tMount: mongo.Path,\n\t\t\tOrganizationId: pulumi.String(\"7cf5a45a9ccf6400e60981b7\"),\n\t\t\tProjectId: pulumi.String(\"5cf5a45a9ccf6400e60981b6\"),\n\t\t\tRoles: pulumi.StringArray(\"ORG_READ_ONLY\"),\n\t\t\tIpAddresses: pulumi.StringArray(\"192.168.1.5, 192.168.1.6\"),\n\t\t\tCidrBlocks: pulumi.StringArray(\"192.168.1.3/35\"),\n\t\t\tProjectRoles: pulumi.StringArray(\"GROUP_READ_ONLY\"),\n\t\t\tTtl: pulumi.String(\"60\"),\n\t\t\tMaxTtl: pulumi.String(\"120\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.Mount;\nimport com.pulumi.vault.MountArgs;\nimport com.pulumi.vault.mongodbatlas.SecretBackend;\nimport com.pulumi.vault.mongodbatlas.SecretBackendArgs;\nimport com.pulumi.vault.mongodbatlas.SecretRole;\nimport com.pulumi.vault.mongodbatlas.SecretRoleArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var mongo = new Mount(\"mongo\", MountArgs.builder() \n .path(\"%s\")\n .type(\"mongodbatlas\")\n .description(\"MongoDB Atlas secret engine mount\")\n .build());\n\n var config = new SecretBackend(\"config\", SecretBackendArgs.builder() \n .mount(\"vault_mount.mongo.path\")\n .privateKey(\"privateKey\")\n .publicKey(\"publicKey\")\n .build());\n\n var role = new SecretRole(\"role\", SecretRoleArgs.builder() \n .mount(mongo.path())\n .organizationId(\"7cf5a45a9ccf6400e60981b7\")\n .projectId(\"5cf5a45a9ccf6400e60981b6\")\n .roles(\"ORG_READ_ONLY\")\n .ipAddresses(\"192.168.1.5, 192.168.1.6\")\n .cidrBlocks(\"192.168.1.3/35\")\n .projectRoles(\"GROUP_READ_ONLY\")\n .ttl(\"60\")\n .maxTtl(\"120\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n mongo:\n type: vault:Mount\n properties:\n path: '%s'\n type: mongodbatlas\n description: MongoDB Atlas secret engine mount\n config:\n type: vault:mongodbatlas:SecretBackend\n properties:\n mount: vault_mount.mongo.path\n privateKey: privateKey\n publicKey: publicKey\n role:\n type: vault:mongodbatlas:SecretRole\n properties:\n mount: ${mongo.path}\n organizationId: 7cf5a45a9ccf6400e60981b7\n projectId: 5cf5a45a9ccf6400e60981b6\n roles: ORG_READ_ONLY\n ipAddresses: 192.168.1.5, 192.168.1.6\n cidrBlocks: 192.168.1.3/35\n projectRoles: GROUP_READ_ONLY\n ttl: '60'\n maxTtl: '120'\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nThe MongoDB Atlas secret role can be imported using the full path to the role of the form`\u003cmount_path\u003e/roles/\u003crole_name\u003e` e.g.\n\n```sh\n $ pulumi import vault:mongodbatlas/secretRole:SecretRole example mongodbatlas/roles/example-role\n```\n ",
"properties": {
"cidrBlocks": {
"type": "array",
@@ -25101,7 +22330,7 @@
}
},
"vault:okta/authBackend:AuthBackend": {
- "description": "Provides a resource for managing an\n[Okta auth backend within Vault](https://www.vaultproject.io/docs/auth/okta.html).\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst example = new vault.okta.AuthBackend(\"example\", {\n description: \"Demonstration of the Terraform Okta auth backend\",\n groups: [{\n groupName: \"foo\",\n policies: [\n \"one\",\n \"two\",\n ],\n }],\n organization: \"example\",\n token: \"something that should be kept secret\",\n users: [{\n groups: [\"foo\"],\n username: \"bar\",\n }],\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nexample = vault.okta.AuthBackend(\"example\",\n description=\"Demonstration of the Terraform Okta auth backend\",\n groups=[vault.okta.AuthBackendGroupArgs(\n group_name=\"foo\",\n policies=[\n \"one\",\n \"two\",\n ],\n )],\n organization=\"example\",\n token=\"something that should be kept secret\",\n users=[vault.okta.AuthBackendUserArgs(\n groups=[\"foo\"],\n username=\"bar\",\n )])\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new Vault.Okta.AuthBackend(\"example\", new()\n {\n Description = \"Demonstration of the Terraform Okta auth backend\",\n Groups = new[]\n {\n new Vault.Okta.Inputs.AuthBackendGroupArgs\n {\n GroupName = \"foo\",\n Policies = new[]\n {\n \"one\",\n \"two\",\n },\n },\n },\n Organization = \"example\",\n Token = \"something that should be kept secret\",\n Users = new[]\n {\n new Vault.Okta.Inputs.AuthBackendUserArgs\n {\n Groups = new[]\n {\n \"foo\",\n },\n Username = \"bar\",\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/okta\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := okta.NewAuthBackend(ctx, \"example\", \u0026okta.AuthBackendArgs{\n\t\t\tDescription: pulumi.String(\"Demonstration of the Terraform Okta auth backend\"),\n\t\t\tGroups: okta.AuthBackendGroupTypeArray{\n\t\t\t\t\u0026okta.AuthBackendGroupTypeArgs{\n\t\t\t\t\tGroupName: pulumi.String(\"foo\"),\n\t\t\t\t\tPolicies: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"one\"),\n\t\t\t\t\t\tpulumi.String(\"two\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tOrganization: pulumi.String(\"example\"),\n\t\t\tToken: pulumi.String(\"something that should be kept secret\"),\n\t\t\tUsers: okta.AuthBackendUserTypeArray{\n\t\t\t\t\u0026okta.AuthBackendUserTypeArgs{\n\t\t\t\t\tGroups: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"foo\"),\n\t\t\t\t\t},\n\t\t\t\t\tUsername: pulumi.String(\"bar\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.okta.AuthBackend;\nimport com.pulumi.vault.okta.AuthBackendArgs;\nimport com.pulumi.vault.okta.inputs.AuthBackendGroupArgs;\nimport com.pulumi.vault.okta.inputs.AuthBackendUserArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new AuthBackend(\"example\", AuthBackendArgs.builder() \n .description(\"Demonstration of the Terraform Okta auth backend\")\n .groups(AuthBackendGroupArgs.builder()\n .groupName(\"foo\")\n .policies( \n \"one\",\n \"two\")\n .build())\n .organization(\"example\")\n .token(\"something that should be kept secret\")\n .users(AuthBackendUserArgs.builder()\n .groups(\"foo\")\n .username(\"bar\")\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: vault:okta:AuthBackend\n properties:\n description: Demonstration of the Terraform Okta auth backend\n groups:\n - groupName: foo\n policies:\n - one\n - two\n organization: example\n token: something that should be kept secret\n users:\n - groups:\n - foo\n username: bar\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nOkta authentication backends can be imported using its `path`, e.g.\n\n```sh\n $ pulumi import vault:okta/authBackend:AuthBackend example okta\n```\n\n ",
+ "description": "Provides a resource for managing an\n[Okta auth backend within Vault](https://www.vaultproject.io/docs/auth/okta.html).\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst example = new vault.okta.AuthBackend(\"example\", {\n description: \"Demonstration of the Terraform Okta auth backend\",\n groups: [{\n groupName: \"foo\",\n policies: [\n \"one\",\n \"two\",\n ],\n }],\n organization: \"example\",\n token: \"something that should be kept secret\",\n users: [{\n groups: [\"foo\"],\n username: \"bar\",\n }],\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nexample = vault.okta.AuthBackend(\"example\",\n description=\"Demonstration of the Terraform Okta auth backend\",\n groups=[vault.okta.AuthBackendGroupArgs(\n group_name=\"foo\",\n policies=[\n \"one\",\n \"two\",\n ],\n )],\n organization=\"example\",\n token=\"something that should be kept secret\",\n users=[vault.okta.AuthBackendUserArgs(\n groups=[\"foo\"],\n username=\"bar\",\n )])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new Vault.Okta.AuthBackend(\"example\", new()\n {\n Description = \"Demonstration of the Terraform Okta auth backend\",\n Groups = new[]\n {\n new Vault.Okta.Inputs.AuthBackendGroupArgs\n {\n GroupName = \"foo\",\n Policies = new[]\n {\n \"one\",\n \"two\",\n },\n },\n },\n Organization = \"example\",\n Token = \"something that should be kept secret\",\n Users = new[]\n {\n new Vault.Okta.Inputs.AuthBackendUserArgs\n {\n Groups = new[]\n {\n \"foo\",\n },\n Username = \"bar\",\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/okta\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := okta.NewAuthBackend(ctx, \"example\", \u0026okta.AuthBackendArgs{\n\t\t\tDescription: pulumi.String(\"Demonstration of the Terraform Okta auth backend\"),\n\t\t\tGroups: okta.AuthBackendGroupTypeArray{\n\t\t\t\t\u0026okta.AuthBackendGroupTypeArgs{\n\t\t\t\t\tGroupName: pulumi.String(\"foo\"),\n\t\t\t\t\tPolicies: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"one\"),\n\t\t\t\t\t\tpulumi.String(\"two\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tOrganization: pulumi.String(\"example\"),\n\t\t\tToken: pulumi.String(\"something that should be kept secret\"),\n\t\t\tUsers: okta.AuthBackendUserTypeArray{\n\t\t\t\t\u0026okta.AuthBackendUserTypeArgs{\n\t\t\t\t\tGroups: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"foo\"),\n\t\t\t\t\t},\n\t\t\t\t\tUsername: pulumi.String(\"bar\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.okta.AuthBackend;\nimport com.pulumi.vault.okta.AuthBackendArgs;\nimport com.pulumi.vault.okta.inputs.AuthBackendGroupArgs;\nimport com.pulumi.vault.okta.inputs.AuthBackendUserArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new AuthBackend(\"example\", AuthBackendArgs.builder() \n .description(\"Demonstration of the Terraform Okta auth backend\")\n .groups(AuthBackendGroupArgs.builder()\n .groupName(\"foo\")\n .policies( \n \"one\",\n \"two\")\n .build())\n .organization(\"example\")\n .token(\"something that should be kept secret\")\n .users(AuthBackendUserArgs.builder()\n .groups(\"foo\")\n .username(\"bar\")\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: vault:okta:AuthBackend\n properties:\n description: Demonstration of the Terraform Okta auth backend\n groups:\n - groupName: foo\n policies:\n - one\n - two\n organization: example\n token: something that should be kept secret\n users:\n - groups:\n - foo\n username: bar\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nOkta authentication backends can be imported using its `path`, e.g.\n\n```sh\n $ pulumi import vault:okta/authBackend:AuthBackend example okta\n```\n ",
"properties": {
"accessor": {
"type": "string",
@@ -25298,7 +22527,7 @@
}
},
"vault:okta/authBackendGroup:AuthBackendGroup": {
- "description": "Provides a resource to create a group in an\n[Okta auth backend within Vault](https://www.vaultproject.io/docs/auth/okta.html).\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst example = new vault.okta.AuthBackend(\"example\", {\n path: \"group_okta\",\n organization: \"dummy\",\n});\nconst foo = new vault.okta.AuthBackendGroup(\"foo\", {\n path: example.path,\n groupName: \"foo\",\n policies: [\n \"one\",\n \"two\",\n ],\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nexample = vault.okta.AuthBackend(\"example\",\n path=\"group_okta\",\n organization=\"dummy\")\nfoo = vault.okta.AuthBackendGroup(\"foo\",\n path=example.path,\n group_name=\"foo\",\n policies=[\n \"one\",\n \"two\",\n ])\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new Vault.Okta.AuthBackend(\"example\", new()\n {\n Path = \"group_okta\",\n Organization = \"dummy\",\n });\n\n var foo = new Vault.Okta.AuthBackendGroup(\"foo\", new()\n {\n Path = example.Path,\n GroupName = \"foo\",\n Policies = new[]\n {\n \"one\",\n \"two\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/okta\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texample, err := okta.NewAuthBackend(ctx, \"example\", \u0026okta.AuthBackendArgs{\n\t\t\tPath: pulumi.String(\"group_okta\"),\n\t\t\tOrganization: pulumi.String(\"dummy\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = okta.NewAuthBackendGroup(ctx, \"foo\", \u0026okta.AuthBackendGroupArgs{\n\t\t\tPath: example.Path,\n\t\t\tGroupName: pulumi.String(\"foo\"),\n\t\t\tPolicies: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"one\"),\n\t\t\t\tpulumi.String(\"two\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.okta.AuthBackend;\nimport com.pulumi.vault.okta.AuthBackendArgs;\nimport com.pulumi.vault.okta.AuthBackendGroup;\nimport com.pulumi.vault.okta.AuthBackendGroupArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new AuthBackend(\"example\", AuthBackendArgs.builder() \n .path(\"group_okta\")\n .organization(\"dummy\")\n .build());\n\n var foo = new AuthBackendGroup(\"foo\", AuthBackendGroupArgs.builder() \n .path(example.path())\n .groupName(\"foo\")\n .policies( \n \"one\",\n \"two\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: vault:okta:AuthBackend\n properties:\n path: group_okta\n organization: dummy\n foo:\n type: vault:okta:AuthBackendGroup\n properties:\n path: ${example.path}\n groupName: foo\n policies:\n - one\n - two\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nOkta authentication backend groups can be imported using the format `backend/groupName` e.g.\n\n```sh\n $ pulumi import vault:okta/authBackendGroup:AuthBackendGroup foo okta/foo\n```\n\n ",
+ "description": "Provides a resource to create a group in an\n[Okta auth backend within Vault](https://www.vaultproject.io/docs/auth/okta.html).\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst example = new vault.okta.AuthBackend(\"example\", {\n path: \"group_okta\",\n organization: \"dummy\",\n});\nconst foo = new vault.okta.AuthBackendGroup(\"foo\", {\n path: example.path,\n groupName: \"foo\",\n policies: [\n \"one\",\n \"two\",\n ],\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nexample = vault.okta.AuthBackend(\"example\",\n path=\"group_okta\",\n organization=\"dummy\")\nfoo = vault.okta.AuthBackendGroup(\"foo\",\n path=example.path,\n group_name=\"foo\",\n policies=[\n \"one\",\n \"two\",\n ])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new Vault.Okta.AuthBackend(\"example\", new()\n {\n Path = \"group_okta\",\n Organization = \"dummy\",\n });\n\n var foo = new Vault.Okta.AuthBackendGroup(\"foo\", new()\n {\n Path = example.Path,\n GroupName = \"foo\",\n Policies = new[]\n {\n \"one\",\n \"two\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/okta\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texample, err := okta.NewAuthBackend(ctx, \"example\", \u0026okta.AuthBackendArgs{\n\t\t\tPath: pulumi.String(\"group_okta\"),\n\t\t\tOrganization: pulumi.String(\"dummy\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = okta.NewAuthBackendGroup(ctx, \"foo\", \u0026okta.AuthBackendGroupArgs{\n\t\t\tPath: example.Path,\n\t\t\tGroupName: pulumi.String(\"foo\"),\n\t\t\tPolicies: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"one\"),\n\t\t\t\tpulumi.String(\"two\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.okta.AuthBackend;\nimport com.pulumi.vault.okta.AuthBackendArgs;\nimport com.pulumi.vault.okta.AuthBackendGroup;\nimport com.pulumi.vault.okta.AuthBackendGroupArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new AuthBackend(\"example\", AuthBackendArgs.builder() \n .path(\"group_okta\")\n .organization(\"dummy\")\n .build());\n\n var foo = new AuthBackendGroup(\"foo\", AuthBackendGroupArgs.builder() \n .path(example.path())\n .groupName(\"foo\")\n .policies( \n \"one\",\n \"two\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: vault:okta:AuthBackend\n properties:\n path: group_okta\n organization: dummy\n foo:\n type: vault:okta:AuthBackendGroup\n properties:\n path: ${example.path}\n groupName: foo\n policies:\n - one\n - two\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nOkta authentication backend groups can be imported using the format `backend/groupName` e.g.\n\n```sh\n $ pulumi import vault:okta/authBackendGroup:AuthBackendGroup foo okta/foo\n```\n ",
"properties": {
"groupName": {
"type": "string",
@@ -25382,7 +22611,7 @@
}
},
"vault:okta/authBackendUser:AuthBackendUser": {
- "description": "Provides a resource to create a user in an\n[Okta auth backend within Vault](https://www.vaultproject.io/docs/auth/okta.html).\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst example = new vault.okta.AuthBackend(\"example\", {\n path: \"user_okta\",\n organization: \"dummy\",\n});\nconst foo = new vault.okta.AuthBackendUser(\"foo\", {\n path: example.path,\n username: \"foo\",\n groups: [\n \"one\",\n \"two\",\n ],\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nexample = vault.okta.AuthBackend(\"example\",\n path=\"user_okta\",\n organization=\"dummy\")\nfoo = vault.okta.AuthBackendUser(\"foo\",\n path=example.path,\n username=\"foo\",\n groups=[\n \"one\",\n \"two\",\n ])\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new Vault.Okta.AuthBackend(\"example\", new()\n {\n Path = \"user_okta\",\n Organization = \"dummy\",\n });\n\n var foo = new Vault.Okta.AuthBackendUser(\"foo\", new()\n {\n Path = example.Path,\n Username = \"foo\",\n Groups = new[]\n {\n \"one\",\n \"two\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/okta\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texample, err := okta.NewAuthBackend(ctx, \"example\", \u0026okta.AuthBackendArgs{\n\t\t\tPath: pulumi.String(\"user_okta\"),\n\t\t\tOrganization: pulumi.String(\"dummy\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = okta.NewAuthBackendUser(ctx, \"foo\", \u0026okta.AuthBackendUserArgs{\n\t\t\tPath: example.Path,\n\t\t\tUsername: pulumi.String(\"foo\"),\n\t\t\tGroups: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"one\"),\n\t\t\t\tpulumi.String(\"two\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.okta.AuthBackend;\nimport com.pulumi.vault.okta.AuthBackendArgs;\nimport com.pulumi.vault.okta.AuthBackendUser;\nimport com.pulumi.vault.okta.AuthBackendUserArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new AuthBackend(\"example\", AuthBackendArgs.builder() \n .path(\"user_okta\")\n .organization(\"dummy\")\n .build());\n\n var foo = new AuthBackendUser(\"foo\", AuthBackendUserArgs.builder() \n .path(example.path())\n .username(\"foo\")\n .groups( \n \"one\",\n \"two\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: vault:okta:AuthBackend\n properties:\n path: user_okta\n organization: dummy\n foo:\n type: vault:okta:AuthBackendUser\n properties:\n path: ${example.path}\n username: foo\n groups:\n - one\n - two\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nOkta authentication backend users can be imported using its `path/user` ID format, e.g.\n\n```sh\n $ pulumi import vault:okta/authBackendUser:AuthBackendUser example okta/foo\n```\n\n ",
+ "description": "Provides a resource to create a user in an\n[Okta auth backend within Vault](https://www.vaultproject.io/docs/auth/okta.html).\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst example = new vault.okta.AuthBackend(\"example\", {\n path: \"user_okta\",\n organization: \"dummy\",\n});\nconst foo = new vault.okta.AuthBackendUser(\"foo\", {\n path: example.path,\n username: \"foo\",\n groups: [\n \"one\",\n \"two\",\n ],\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nexample = vault.okta.AuthBackend(\"example\",\n path=\"user_okta\",\n organization=\"dummy\")\nfoo = vault.okta.AuthBackendUser(\"foo\",\n path=example.path,\n username=\"foo\",\n groups=[\n \"one\",\n \"two\",\n ])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new Vault.Okta.AuthBackend(\"example\", new()\n {\n Path = \"user_okta\",\n Organization = \"dummy\",\n });\n\n var foo = new Vault.Okta.AuthBackendUser(\"foo\", new()\n {\n Path = example.Path,\n Username = \"foo\",\n Groups = new[]\n {\n \"one\",\n \"two\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/okta\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texample, err := okta.NewAuthBackend(ctx, \"example\", \u0026okta.AuthBackendArgs{\n\t\t\tPath: pulumi.String(\"user_okta\"),\n\t\t\tOrganization: pulumi.String(\"dummy\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = okta.NewAuthBackendUser(ctx, \"foo\", \u0026okta.AuthBackendUserArgs{\n\t\t\tPath: example.Path,\n\t\t\tUsername: pulumi.String(\"foo\"),\n\t\t\tGroups: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"one\"),\n\t\t\t\tpulumi.String(\"two\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.okta.AuthBackend;\nimport com.pulumi.vault.okta.AuthBackendArgs;\nimport com.pulumi.vault.okta.AuthBackendUser;\nimport com.pulumi.vault.okta.AuthBackendUserArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new AuthBackend(\"example\", AuthBackendArgs.builder() \n .path(\"user_okta\")\n .organization(\"dummy\")\n .build());\n\n var foo = new AuthBackendUser(\"foo\", AuthBackendUserArgs.builder() \n .path(example.path())\n .username(\"foo\")\n .groups( \n \"one\",\n \"two\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: vault:okta:AuthBackend\n properties:\n path: user_okta\n organization: dummy\n foo:\n type: vault:okta:AuthBackendUser\n properties:\n path: ${example.path}\n username: foo\n groups:\n - one\n - two\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nOkta authentication backend users can be imported using its `path/user` ID format, e.g.\n\n```sh\n $ pulumi import vault:okta/authBackendUser:AuthBackendUser example okta/foo\n```\n ",
"properties": {
"groups": {
"type": "array",
@@ -25487,7 +22716,7 @@
}
},
"vault:pkiSecret/secretBackendCert:SecretBackendCert": {
- "description": "{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst app = new vault.pkisecret.SecretBackendCert(\"app\", {\n backend: vault_mount.intermediate.path,\n commonName: \"app.my.domain\",\n}, {\n dependsOn: [vault_pki_secret_backend_role.admin],\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\napp = vault.pki_secret.SecretBackendCert(\"app\",\n backend=vault_mount[\"intermediate\"][\"path\"],\n common_name=\"app.my.domain\",\n opts=pulumi.ResourceOptions(depends_on=[vault_pki_secret_backend_role[\"admin\"]]))\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var app = new Vault.PkiSecret.SecretBackendCert(\"app\", new()\n {\n Backend = vault_mount.Intermediate.Path,\n CommonName = \"app.my.domain\",\n }, new CustomResourceOptions\n {\n DependsOn = new[]\n {\n vault_pki_secret_backend_role.Admin,\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/pkiSecret\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := pkiSecret.NewSecretBackendCert(ctx, \"app\", \u0026pkiSecret.SecretBackendCertArgs{\n\t\t\tBackend: pulumi.Any(vault_mount.Intermediate.Path),\n\t\t\tCommonName: pulumi.String(\"app.my.domain\"),\n\t\t}, pulumi.DependsOn([]pulumi.Resource{\n\t\t\tvault_pki_secret_backend_role.Admin,\n\t\t}))\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.pkiSecret.SecretBackendCert;\nimport com.pulumi.vault.pkiSecret.SecretBackendCertArgs;\nimport com.pulumi.resources.CustomResourceOptions;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var app = new SecretBackendCert(\"app\", SecretBackendCertArgs.builder() \n .backend(vault_mount.intermediate().path())\n .commonName(\"app.my.domain\")\n .build(), CustomResourceOptions.builder()\n .dependsOn(vault_pki_secret_backend_role.admin())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n app:\n type: vault:pkiSecret:SecretBackendCert\n properties:\n backend: ${vault_mount.intermediate.path}\n commonName: app.my.domain\n options:\n dependson:\n - ${vault_pki_secret_backend_role.admin}\n```\n{{% /example %}}\n{{% /examples %}}",
+ "description": "{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst app = new vault.pkisecret.SecretBackendCert(\"app\", {\n backend: vault_mount.intermediate.path,\n commonName: \"app.my.domain\",\n}, {\n dependsOn: [vault_pki_secret_backend_role.admin],\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\napp = vault.pki_secret.SecretBackendCert(\"app\",\n backend=vault_mount[\"intermediate\"][\"path\"],\n common_name=\"app.my.domain\",\n opts=pulumi.ResourceOptions(depends_on=[vault_pki_secret_backend_role[\"admin\"]]))\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var app = new Vault.PkiSecret.SecretBackendCert(\"app\", new()\n {\n Backend = vault_mount.Intermediate.Path,\n CommonName = \"app.my.domain\",\n }, new CustomResourceOptions\n {\n DependsOn = new[]\n {\n vault_pki_secret_backend_role.Admin,\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/pkiSecret\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := pkiSecret.NewSecretBackendCert(ctx, \"app\", \u0026pkiSecret.SecretBackendCertArgs{\n\t\t\tBackend: pulumi.Any(vault_mount.Intermediate.Path),\n\t\t\tCommonName: pulumi.String(\"app.my.domain\"),\n\t\t}, pulumi.DependsOn([]pulumi.Resource{\n\t\t\tvault_pki_secret_backend_role.Admin,\n\t\t}))\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.pkiSecret.SecretBackendCert;\nimport com.pulumi.vault.pkiSecret.SecretBackendCertArgs;\nimport com.pulumi.resources.CustomResourceOptions;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var app = new SecretBackendCert(\"app\", SecretBackendCertArgs.builder() \n .backend(vault_mount.intermediate().path())\n .commonName(\"app.my.domain\")\n .build(), CustomResourceOptions.builder()\n .dependsOn(vault_pki_secret_backend_role.admin())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n app:\n type: vault:pkiSecret:SecretBackendCert\n properties:\n backend: ${vault_mount.intermediate.path}\n commonName: app.my.domain\n options:\n dependson:\n - ${vault_pki_secret_backend_role.admin}\n```\n{{% /example %}}\n{{% /examples %}}",
"properties": {
"altNames": {
"type": "array",
@@ -25856,7 +23085,7 @@
}
},
"vault:pkiSecret/secretBackendConfigCa:SecretBackendConfigCa": {
- "description": "{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst intermediate = new vault.pkisecret.SecretBackendConfigCa(\"intermediate\", {\n backend: vault_mount.intermediate.path,\n pemBundle: `-----BEGIN RSA PRIVATE KEY-----\nMIIEowIBAAKCAQEAwvEHeJCXnFgi88rE1dTX6FHdBPK0wSjedh0ywVnCZxLWbBv/\n5PytjTcCPdrfW7g2sfbPwOge/WF3X2KeYSP8SxZA0czmz6QDspeG921JkZWtyp5o\n++N0leLTIUAhq339p3O1onAOUO1k4sHfmCwfrDpTn2hcx4URa5Pzzb1fHigusjIH\n1mcGdncaA6Z2CzO1w4E8kPOUukIDrcZT4faOZrWUIQZKQw2JzTyKJ+ZMDCZq2TFz\nWwpL3eG48wB7J7mibFQ/9nFvxpIflBjDAZ8QiqkwYr5N0DNsTxcfTCSeubfJDCUf\nIWwFZhLitzwOxazazUQKXX/SPMQ1l/L9o3nnHwIDAQABAoIBAAQidJQcDPsl62fc\nTxxx7TpiMhvewfKu2TkMGX18V+EzxxR364+BxHSQTB3fvIkHeTGBGJrw0WdyX8PI\nJa/NwZYeHLXWcLbKtcFd8WDiEoNh91Oq1HMzOc/MBcpYv94RSAX7MEkHs2YIAvHE\nRufFV86hVhC1d/JLYjkz5CHi+Fd9XTYjBK78tHhJd4IJPu5LYvwlmzC1zeS7s1Tg\nQW1FQuVDV8tWa4PMTrQHwfaGqn95AKc+tbg+ubpCiWl5bBNI3Ghuh4sAC9dMdAkd\nw27i29O9/Y3XJSSGUZlZqDBP4YU388RgHpzLDUxgRcaQt9vdeEz6frULPW67e9D2\nmPPDzjECgYEA4aPOwvnSwGoOKsS6vANGy4Ajsq09PR+1ltMJUR5kDlXGuZWI72eX\n3/GAnovDuCp0tbYt0r7Fmkfel0Ore7SYM18TH5QGpPddcZLvKUf7AchCIOYY0Te3\npS9+7S1lEGrLXyuox4N26Ov6wHVrmZTcQoZsDWbjYxNNsNACsiQNjGMCgYEA3SvQ\nJets9e9SgNVvao2TijX+/vcNKRfcWB71T9Xc4BuSNEu5+ZLtptlwaSnVCVu1Xilk\nsWDh+3EhByl4EteENPvE/7A2s1sfcDOprvg0r52aBZKeTp0AukrT8+Ad4hap7g1x\n2Lz11MFDkhRqt2KqQaIL+5Mq5WfptbBJ0YI7ARUCgYAD6iSfK1hlsDFYupsGwgPL\nagi0g97pHZC38idaOe3AdeqBs79xb9mpr/XsSj52Bn6J3IRFALxK5e5Nr4XdGo/9\nbCvXw2iuGgCMBOGTVMVdDY1gJr3Ne2r7Oay5Dq2PMFsg5pACDhzVA6sRBbh9LKD5\non1jaiKNyHrzk1hIoOl/QwKBgA+Ov2uLbfS2yvTpDpdOMiyss603r6NOXF+Ofe8J\nuinBhr1K/mAB59muveuH18Z6vv1KqByaFgtb39jjH+Eja9dWRns95/sh08pOuAbo\nyrv3uBfgQmaBQMXZ8aLcBv4aXgWyyGlYkWpP1fL2oLMZq6RGQ9WEeqX8c0ImjmrA\nYGopAoGBAJZPFlZi2Rfq4MfFZp/X1/zM09hphZwkxkSI+RnsjDUjTgB8CuQul5ep\nKWE98yLw4C25Cqw5fKKQ2addizLnZCAIfJKVNRjYLWlWyGQydDEUzqwXlSLS9LVX\nLxLkWDajIyjeFn21Ttb42L9pBo3TAQIxUenom/lP2SQTvCKBiPai\n-----END RSA PRIVATE KEY-----\n-----BEGIN CERTIFICATE-----\nMIIDazCCAlOgAwIBAgIUahce2sCO7Bom/Rznd5HsNAlr1NgwDQYJKoZIhvcNAQEL\nBQAwRTELMAkGA1UEBhMCQVUxEzARBgNVBAgMClNvbWUtU3RhdGUxITAfBgNVBAoM\nGEludGVybmV0IFdpZGdpdHMgUHR5IEx0ZDAeFw0xODEyMDIwMTAxNDRaFw00NjEy\nMTUwMTAxNDRaMEUxCzAJBgNVBAYTAkFVMRMwEQYDVQQIDApTb21lLVN0YXRlMSEw\nHwYDVQQKDBhJbnRlcm5ldCBXaWRnaXRzIFB0eSBMdGQwggEiMA0GCSqGSIb3DQEB\nAQUAA4IBDwAwggEKAoIBAQDC8Qd4kJecWCLzysTV1NfoUd0E8rTBKN52HTLBWcJn\nEtZsG//k/K2NNwI92t9buDax9s/A6B79YXdfYp5hI/xLFkDRzObPpAOyl4b3bUmR\nla3Knmj743SV4tMhQCGrff2nc7WicA5Q7WTiwd+YLB+sOlOfaFzHhRFrk/PNvV8e\nKC6yMgfWZwZ2dxoDpnYLM7XDgTyQ85S6QgOtxlPh9o5mtZQhBkpDDYnNPIon5kwM\nJmrZMXNbCkvd4bjzAHsnuaJsVD/2cW/Gkh+UGMMBnxCKqTBivk3QM2xPFx9MJJ65\nt8kMJR8hbAVmEuK3PA7FrNrNRApdf9I8xDWX8v2jeecfAgMBAAGjUzBRMB0GA1Ud\nDgQWBBQXGfrns8OqxTGKsXG5pDZS/WyyYDAfBgNVHSMEGDAWgBQXGfrns8OqxTGK\nsXG5pDZS/WyyYDAPBgNVHRMBAf8EBTADAQH/MA0GCSqGSIb3DQEBCwUAA4IBAQCt\n8aUX26cl2PgdIEByZSHAX5G+2b0IEtTclPkl4uDyyKRY4dVq6gK3ueVSU5eUmBip\nJbV5aRetovGOcV//8vbxkZm/ntQ8Oo+2sfGR5lIzd0UdlOr5pkD6g3bFy/zJ+4DR\nDAe8fklUacfz6CFmD+H8GyHm+fKmF+mjr4oOGQW6OegRDJHuiipUk2lJyuXdlPSa\nFpNRO2sGbjn000ANinFgnFiVzGDnx0/G1Kii/6GWrI6rrdVmXioQzF+8AloWckeB\n+hbmbwkwQa/JrLb5SWcBDOXSgtn1Li3XF5AQQBBjA3pOlyBXqnI94Irw89Lv9uPT\nMUR4qFxeUOW/GJGccMUd\n-----END CERTIFICATE-----\n`,\n}, {\n dependsOn: [vault_mount.intermediate],\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nintermediate = vault.pki_secret.SecretBackendConfigCa(\"intermediate\",\n backend=vault_mount[\"intermediate\"][\"path\"],\n pem_bundle=\"\"\"-----BEGIN RSA PRIVATE KEY-----\nMIIEowIBAAKCAQEAwvEHeJCXnFgi88rE1dTX6FHdBPK0wSjedh0ywVnCZxLWbBv/\n5PytjTcCPdrfW7g2sfbPwOge/WF3X2KeYSP8SxZA0czmz6QDspeG921JkZWtyp5o\n++N0leLTIUAhq339p3O1onAOUO1k4sHfmCwfrDpTn2hcx4URa5Pzzb1fHigusjIH\n1mcGdncaA6Z2CzO1w4E8kPOUukIDrcZT4faOZrWUIQZKQw2JzTyKJ+ZMDCZq2TFz\nWwpL3eG48wB7J7mibFQ/9nFvxpIflBjDAZ8QiqkwYr5N0DNsTxcfTCSeubfJDCUf\nIWwFZhLitzwOxazazUQKXX/SPMQ1l/L9o3nnHwIDAQABAoIBAAQidJQcDPsl62fc\nTxxx7TpiMhvewfKu2TkMGX18V+EzxxR364+BxHSQTB3fvIkHeTGBGJrw0WdyX8PI\nJa/NwZYeHLXWcLbKtcFd8WDiEoNh91Oq1HMzOc/MBcpYv94RSAX7MEkHs2YIAvHE\nRufFV86hVhC1d/JLYjkz5CHi+Fd9XTYjBK78tHhJd4IJPu5LYvwlmzC1zeS7s1Tg\nQW1FQuVDV8tWa4PMTrQHwfaGqn95AKc+tbg+ubpCiWl5bBNI3Ghuh4sAC9dMdAkd\nw27i29O9/Y3XJSSGUZlZqDBP4YU388RgHpzLDUxgRcaQt9vdeEz6frULPW67e9D2\nmPPDzjECgYEA4aPOwvnSwGoOKsS6vANGy4Ajsq09PR+1ltMJUR5kDlXGuZWI72eX\n3/GAnovDuCp0tbYt0r7Fmkfel0Ore7SYM18TH5QGpPddcZLvKUf7AchCIOYY0Te3\npS9+7S1lEGrLXyuox4N26Ov6wHVrmZTcQoZsDWbjYxNNsNACsiQNjGMCgYEA3SvQ\nJets9e9SgNVvao2TijX+/vcNKRfcWB71T9Xc4BuSNEu5+ZLtptlwaSnVCVu1Xilk\nsWDh+3EhByl4EteENPvE/7A2s1sfcDOprvg0r52aBZKeTp0AukrT8+Ad4hap7g1x\n2Lz11MFDkhRqt2KqQaIL+5Mq5WfptbBJ0YI7ARUCgYAD6iSfK1hlsDFYupsGwgPL\nagi0g97pHZC38idaOe3AdeqBs79xb9mpr/XsSj52Bn6J3IRFALxK5e5Nr4XdGo/9\nbCvXw2iuGgCMBOGTVMVdDY1gJr3Ne2r7Oay5Dq2PMFsg5pACDhzVA6sRBbh9LKD5\non1jaiKNyHrzk1hIoOl/QwKBgA+Ov2uLbfS2yvTpDpdOMiyss603r6NOXF+Ofe8J\nuinBhr1K/mAB59muveuH18Z6vv1KqByaFgtb39jjH+Eja9dWRns95/sh08pOuAbo\nyrv3uBfgQmaBQMXZ8aLcBv4aXgWyyGlYkWpP1fL2oLMZq6RGQ9WEeqX8c0ImjmrA\nYGopAoGBAJZPFlZi2Rfq4MfFZp/X1/zM09hphZwkxkSI+RnsjDUjTgB8CuQul5ep\nKWE98yLw4C25Cqw5fKKQ2addizLnZCAIfJKVNRjYLWlWyGQydDEUzqwXlSLS9LVX\nLxLkWDajIyjeFn21Ttb42L9pBo3TAQIxUenom/lP2SQTvCKBiPai\n-----END RSA PRIVATE KEY-----\n-----BEGIN CERTIFICATE-----\nMIIDazCCAlOgAwIBAgIUahce2sCO7Bom/Rznd5HsNAlr1NgwDQYJKoZIhvcNAQEL\nBQAwRTELMAkGA1UEBhMCQVUxEzARBgNVBAgMClNvbWUtU3RhdGUxITAfBgNVBAoM\nGEludGVybmV0IFdpZGdpdHMgUHR5IEx0ZDAeFw0xODEyMDIwMTAxNDRaFw00NjEy\nMTUwMTAxNDRaMEUxCzAJBgNVBAYTAkFVMRMwEQYDVQQIDApTb21lLVN0YXRlMSEw\nHwYDVQQKDBhJbnRlcm5ldCBXaWRnaXRzIFB0eSBMdGQwggEiMA0GCSqGSIb3DQEB\nAQUAA4IBDwAwggEKAoIBAQDC8Qd4kJecWCLzysTV1NfoUd0E8rTBKN52HTLBWcJn\nEtZsG//k/K2NNwI92t9buDax9s/A6B79YXdfYp5hI/xLFkDRzObPpAOyl4b3bUmR\nla3Knmj743SV4tMhQCGrff2nc7WicA5Q7WTiwd+YLB+sOlOfaFzHhRFrk/PNvV8e\nKC6yMgfWZwZ2dxoDpnYLM7XDgTyQ85S6QgOtxlPh9o5mtZQhBkpDDYnNPIon5kwM\nJmrZMXNbCkvd4bjzAHsnuaJsVD/2cW/Gkh+UGMMBnxCKqTBivk3QM2xPFx9MJJ65\nt8kMJR8hbAVmEuK3PA7FrNrNRApdf9I8xDWX8v2jeecfAgMBAAGjUzBRMB0GA1Ud\nDgQWBBQXGfrns8OqxTGKsXG5pDZS/WyyYDAfBgNVHSMEGDAWgBQXGfrns8OqxTGK\nsXG5pDZS/WyyYDAPBgNVHRMBAf8EBTADAQH/MA0GCSqGSIb3DQEBCwUAA4IBAQCt\n8aUX26cl2PgdIEByZSHAX5G+2b0IEtTclPkl4uDyyKRY4dVq6gK3ueVSU5eUmBip\nJbV5aRetovGOcV//8vbxkZm/ntQ8Oo+2sfGR5lIzd0UdlOr5pkD6g3bFy/zJ+4DR\nDAe8fklUacfz6CFmD+H8GyHm+fKmF+mjr4oOGQW6OegRDJHuiipUk2lJyuXdlPSa\nFpNRO2sGbjn000ANinFgnFiVzGDnx0/G1Kii/6GWrI6rrdVmXioQzF+8AloWckeB\n+hbmbwkwQa/JrLb5SWcBDOXSgtn1Li3XF5AQQBBjA3pOlyBXqnI94Irw89Lv9uPT\nMUR4qFxeUOW/GJGccMUd\n-----END CERTIFICATE-----\n\"\"\",\n opts=pulumi.ResourceOptions(depends_on=[vault_mount[\"intermediate\"]]))\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var intermediate = new Vault.PkiSecret.SecretBackendConfigCa(\"intermediate\", new()\n {\n Backend = vault_mount.Intermediate.Path,\n PemBundle = @\"-----BEGIN RSA PRIVATE KEY-----\nMIIEowIBAAKCAQEAwvEHeJCXnFgi88rE1dTX6FHdBPK0wSjedh0ywVnCZxLWbBv/\n5PytjTcCPdrfW7g2sfbPwOge/WF3X2KeYSP8SxZA0czmz6QDspeG921JkZWtyp5o\n++N0leLTIUAhq339p3O1onAOUO1k4sHfmCwfrDpTn2hcx4URa5Pzzb1fHigusjIH\n1mcGdncaA6Z2CzO1w4E8kPOUukIDrcZT4faOZrWUIQZKQw2JzTyKJ+ZMDCZq2TFz\nWwpL3eG48wB7J7mibFQ/9nFvxpIflBjDAZ8QiqkwYr5N0DNsTxcfTCSeubfJDCUf\nIWwFZhLitzwOxazazUQKXX/SPMQ1l/L9o3nnHwIDAQABAoIBAAQidJQcDPsl62fc\nTxxx7TpiMhvewfKu2TkMGX18V+EzxxR364+BxHSQTB3fvIkHeTGBGJrw0WdyX8PI\nJa/NwZYeHLXWcLbKtcFd8WDiEoNh91Oq1HMzOc/MBcpYv94RSAX7MEkHs2YIAvHE\nRufFV86hVhC1d/JLYjkz5CHi+Fd9XTYjBK78tHhJd4IJPu5LYvwlmzC1zeS7s1Tg\nQW1FQuVDV8tWa4PMTrQHwfaGqn95AKc+tbg+ubpCiWl5bBNI3Ghuh4sAC9dMdAkd\nw27i29O9/Y3XJSSGUZlZqDBP4YU388RgHpzLDUxgRcaQt9vdeEz6frULPW67e9D2\nmPPDzjECgYEA4aPOwvnSwGoOKsS6vANGy4Ajsq09PR+1ltMJUR5kDlXGuZWI72eX\n3/GAnovDuCp0tbYt0r7Fmkfel0Ore7SYM18TH5QGpPddcZLvKUf7AchCIOYY0Te3\npS9+7S1lEGrLXyuox4N26Ov6wHVrmZTcQoZsDWbjYxNNsNACsiQNjGMCgYEA3SvQ\nJets9e9SgNVvao2TijX+/vcNKRfcWB71T9Xc4BuSNEu5+ZLtptlwaSnVCVu1Xilk\nsWDh+3EhByl4EteENPvE/7A2s1sfcDOprvg0r52aBZKeTp0AukrT8+Ad4hap7g1x\n2Lz11MFDkhRqt2KqQaIL+5Mq5WfptbBJ0YI7ARUCgYAD6iSfK1hlsDFYupsGwgPL\nagi0g97pHZC38idaOe3AdeqBs79xb9mpr/XsSj52Bn6J3IRFALxK5e5Nr4XdGo/9\nbCvXw2iuGgCMBOGTVMVdDY1gJr3Ne2r7Oay5Dq2PMFsg5pACDhzVA6sRBbh9LKD5\non1jaiKNyHrzk1hIoOl/QwKBgA+Ov2uLbfS2yvTpDpdOMiyss603r6NOXF+Ofe8J\nuinBhr1K/mAB59muveuH18Z6vv1KqByaFgtb39jjH+Eja9dWRns95/sh08pOuAbo\nyrv3uBfgQmaBQMXZ8aLcBv4aXgWyyGlYkWpP1fL2oLMZq6RGQ9WEeqX8c0ImjmrA\nYGopAoGBAJZPFlZi2Rfq4MfFZp/X1/zM09hphZwkxkSI+RnsjDUjTgB8CuQul5ep\nKWE98yLw4C25Cqw5fKKQ2addizLnZCAIfJKVNRjYLWlWyGQydDEUzqwXlSLS9LVX\nLxLkWDajIyjeFn21Ttb42L9pBo3TAQIxUenom/lP2SQTvCKBiPai\n-----END RSA PRIVATE KEY-----\n-----BEGIN CERTIFICATE-----\nMIIDazCCAlOgAwIBAgIUahce2sCO7Bom/Rznd5HsNAlr1NgwDQYJKoZIhvcNAQEL\nBQAwRTELMAkGA1UEBhMCQVUxEzARBgNVBAgMClNvbWUtU3RhdGUxITAfBgNVBAoM\nGEludGVybmV0IFdpZGdpdHMgUHR5IEx0ZDAeFw0xODEyMDIwMTAxNDRaFw00NjEy\nMTUwMTAxNDRaMEUxCzAJBgNVBAYTAkFVMRMwEQYDVQQIDApTb21lLVN0YXRlMSEw\nHwYDVQQKDBhJbnRlcm5ldCBXaWRnaXRzIFB0eSBMdGQwggEiMA0GCSqGSIb3DQEB\nAQUAA4IBDwAwggEKAoIBAQDC8Qd4kJecWCLzysTV1NfoUd0E8rTBKN52HTLBWcJn\nEtZsG//k/K2NNwI92t9buDax9s/A6B79YXdfYp5hI/xLFkDRzObPpAOyl4b3bUmR\nla3Knmj743SV4tMhQCGrff2nc7WicA5Q7WTiwd+YLB+sOlOfaFzHhRFrk/PNvV8e\nKC6yMgfWZwZ2dxoDpnYLM7XDgTyQ85S6QgOtxlPh9o5mtZQhBkpDDYnNPIon5kwM\nJmrZMXNbCkvd4bjzAHsnuaJsVD/2cW/Gkh+UGMMBnxCKqTBivk3QM2xPFx9MJJ65\nt8kMJR8hbAVmEuK3PA7FrNrNRApdf9I8xDWX8v2jeecfAgMBAAGjUzBRMB0GA1Ud\nDgQWBBQXGfrns8OqxTGKsXG5pDZS/WyyYDAfBgNVHSMEGDAWgBQXGfrns8OqxTGK\nsXG5pDZS/WyyYDAPBgNVHRMBAf8EBTADAQH/MA0GCSqGSIb3DQEBCwUAA4IBAQCt\n8aUX26cl2PgdIEByZSHAX5G+2b0IEtTclPkl4uDyyKRY4dVq6gK3ueVSU5eUmBip\nJbV5aRetovGOcV//8vbxkZm/ntQ8Oo+2sfGR5lIzd0UdlOr5pkD6g3bFy/zJ+4DR\nDAe8fklUacfz6CFmD+H8GyHm+fKmF+mjr4oOGQW6OegRDJHuiipUk2lJyuXdlPSa\nFpNRO2sGbjn000ANinFgnFiVzGDnx0/G1Kii/6GWrI6rrdVmXioQzF+8AloWckeB\n+hbmbwkwQa/JrLb5SWcBDOXSgtn1Li3XF5AQQBBjA3pOlyBXqnI94Irw89Lv9uPT\nMUR4qFxeUOW/GJGccMUd\n-----END CERTIFICATE-----\n\",\n }, new CustomResourceOptions\n {\n DependsOn = new[]\n {\n vault_mount.Intermediate,\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/pkiSecret\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := pkiSecret.NewSecretBackendConfigCa(ctx, \"intermediate\", \u0026pkiSecret.SecretBackendConfigCaArgs{\n\t\t\tBackend: pulumi.Any(vault_mount.Intermediate.Path),\n\t\t\tPemBundle: pulumi.String(\"-----BEGIN RSA PRIVATE KEY-----\\nMIIEowIBAAKCAQEAwvEHeJCXnFgi88rE1dTX6FHdBPK0wSjedh0ywVnCZxLWbBv/\\n5PytjTcCPdrfW7g2sfbPwOge/WF3X2KeYSP8SxZA0czmz6QDspeG921JkZWtyp5o\\n++N0leLTIUAhq339p3O1onAOUO1k4sHfmCwfrDpTn2hcx4URa5Pzzb1fHigusjIH\\n1mcGdncaA6Z2CzO1w4E8kPOUukIDrcZT4faOZrWUIQZKQw2JzTyKJ+ZMDCZq2TFz\\nWwpL3eG48wB7J7mibFQ/9nFvxpIflBjDAZ8QiqkwYr5N0DNsTxcfTCSeubfJDCUf\\nIWwFZhLitzwOxazazUQKXX/SPMQ1l/L9o3nnHwIDAQABAoIBAAQidJQcDPsl62fc\\nTxxx7TpiMhvewfKu2TkMGX18V+EzxxR364+BxHSQTB3fvIkHeTGBGJrw0WdyX8PI\\nJa/NwZYeHLXWcLbKtcFd8WDiEoNh91Oq1HMzOc/MBcpYv94RSAX7MEkHs2YIAvHE\\nRufFV86hVhC1d/JLYjkz5CHi+Fd9XTYjBK78tHhJd4IJPu5LYvwlmzC1zeS7s1Tg\\nQW1FQuVDV8tWa4PMTrQHwfaGqn95AKc+tbg+ubpCiWl5bBNI3Ghuh4sAC9dMdAkd\\nw27i29O9/Y3XJSSGUZlZqDBP4YU388RgHpzLDUxgRcaQt9vdeEz6frULPW67e9D2\\nmPPDzjECgYEA4aPOwvnSwGoOKsS6vANGy4Ajsq09PR+1ltMJUR5kDlXGuZWI72eX\\n3/GAnovDuCp0tbYt0r7Fmkfel0Ore7SYM18TH5QGpPddcZLvKUf7AchCIOYY0Te3\\npS9+7S1lEGrLXyuox4N26Ov6wHVrmZTcQoZsDWbjYxNNsNACsiQNjGMCgYEA3SvQ\\nJets9e9SgNVvao2TijX+/vcNKRfcWB71T9Xc4BuSNEu5+ZLtptlwaSnVCVu1Xilk\\nsWDh+3EhByl4EteENPvE/7A2s1sfcDOprvg0r52aBZKeTp0AukrT8+Ad4hap7g1x\\n2Lz11MFDkhRqt2KqQaIL+5Mq5WfptbBJ0YI7ARUCgYAD6iSfK1hlsDFYupsGwgPL\\nagi0g97pHZC38idaOe3AdeqBs79xb9mpr/XsSj52Bn6J3IRFALxK5e5Nr4XdGo/9\\nbCvXw2iuGgCMBOGTVMVdDY1gJr3Ne2r7Oay5Dq2PMFsg5pACDhzVA6sRBbh9LKD5\\non1jaiKNyHrzk1hIoOl/QwKBgA+Ov2uLbfS2yvTpDpdOMiyss603r6NOXF+Ofe8J\\nuinBhr1K/mAB59muveuH18Z6vv1KqByaFgtb39jjH+Eja9dWRns95/sh08pOuAbo\\nyrv3uBfgQmaBQMXZ8aLcBv4aXgWyyGlYkWpP1fL2oLMZq6RGQ9WEeqX8c0ImjmrA\\nYGopAoGBAJZPFlZi2Rfq4MfFZp/X1/zM09hphZwkxkSI+RnsjDUjTgB8CuQul5ep\\nKWE98yLw4C25Cqw5fKKQ2addizLnZCAIfJKVNRjYLWlWyGQydDEUzqwXlSLS9LVX\\nLxLkWDajIyjeFn21Ttb42L9pBo3TAQIxUenom/lP2SQTvCKBiPai\\n-----END RSA PRIVATE KEY-----\\n-----BEGIN CERTIFICATE-----\\nMIIDazCCAlOgAwIBAgIUahce2sCO7Bom/Rznd5HsNAlr1NgwDQYJKoZIhvcNAQEL\\nBQAwRTELMAkGA1UEBhMCQVUxEzARBgNVBAgMClNvbWUtU3RhdGUxITAfBgNVBAoM\\nGEludGVybmV0IFdpZGdpdHMgUHR5IEx0ZDAeFw0xODEyMDIwMTAxNDRaFw00NjEy\\nMTUwMTAxNDRaMEUxCzAJBgNVBAYTAkFVMRMwEQYDVQQIDApTb21lLVN0YXRlMSEw\\nHwYDVQQKDBhJbnRlcm5ldCBXaWRnaXRzIFB0eSBMdGQwggEiMA0GCSqGSIb3DQEB\\nAQUAA4IBDwAwggEKAoIBAQDC8Qd4kJecWCLzysTV1NfoUd0E8rTBKN52HTLBWcJn\\nEtZsG//k/K2NNwI92t9buDax9s/A6B79YXdfYp5hI/xLFkDRzObPpAOyl4b3bUmR\\nla3Knmj743SV4tMhQCGrff2nc7WicA5Q7WTiwd+YLB+sOlOfaFzHhRFrk/PNvV8e\\nKC6yMgfWZwZ2dxoDpnYLM7XDgTyQ85S6QgOtxlPh9o5mtZQhBkpDDYnNPIon5kwM\\nJmrZMXNbCkvd4bjzAHsnuaJsVD/2cW/Gkh+UGMMBnxCKqTBivk3QM2xPFx9MJJ65\\nt8kMJR8hbAVmEuK3PA7FrNrNRApdf9I8xDWX8v2jeecfAgMBAAGjUzBRMB0GA1Ud\\nDgQWBBQXGfrns8OqxTGKsXG5pDZS/WyyYDAfBgNVHSMEGDAWgBQXGfrns8OqxTGK\\nsXG5pDZS/WyyYDAPBgNVHRMBAf8EBTADAQH/MA0GCSqGSIb3DQEBCwUAA4IBAQCt\\n8aUX26cl2PgdIEByZSHAX5G+2b0IEtTclPkl4uDyyKRY4dVq6gK3ueVSU5eUmBip\\nJbV5aRetovGOcV//8vbxkZm/ntQ8Oo+2sfGR5lIzd0UdlOr5pkD6g3bFy/zJ+4DR\\nDAe8fklUacfz6CFmD+H8GyHm+fKmF+mjr4oOGQW6OegRDJHuiipUk2lJyuXdlPSa\\nFpNRO2sGbjn000ANinFgnFiVzGDnx0/G1Kii/6GWrI6rrdVmXioQzF+8AloWckeB\\n+hbmbwkwQa/JrLb5SWcBDOXSgtn1Li3XF5AQQBBjA3pOlyBXqnI94Irw89Lv9uPT\\nMUR4qFxeUOW/GJGccMUd\\n-----END CERTIFICATE-----\\n\"),\n\t\t}, pulumi.DependsOn([]pulumi.Resource{\n\t\t\tvault_mount.Intermediate,\n\t\t}))\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.pkiSecret.SecretBackendConfigCa;\nimport com.pulumi.vault.pkiSecret.SecretBackendConfigCaArgs;\nimport com.pulumi.resources.CustomResourceOptions;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var intermediate = new SecretBackendConfigCa(\"intermediate\", SecretBackendConfigCaArgs.builder() \n .backend(vault_mount.intermediate().path())\n .pemBundle(\"\"\"\n-----BEGIN RSA PRIVATE KEY-----\nMIIEowIBAAKCAQEAwvEHeJCXnFgi88rE1dTX6FHdBPK0wSjedh0ywVnCZxLWbBv/\n5PytjTcCPdrfW7g2sfbPwOge/WF3X2KeYSP8SxZA0czmz6QDspeG921JkZWtyp5o\n++N0leLTIUAhq339p3O1onAOUO1k4sHfmCwfrDpTn2hcx4URa5Pzzb1fHigusjIH\n1mcGdncaA6Z2CzO1w4E8kPOUukIDrcZT4faOZrWUIQZKQw2JzTyKJ+ZMDCZq2TFz\nWwpL3eG48wB7J7mibFQ/9nFvxpIflBjDAZ8QiqkwYr5N0DNsTxcfTCSeubfJDCUf\nIWwFZhLitzwOxazazUQKXX/SPMQ1l/L9o3nnHwIDAQABAoIBAAQidJQcDPsl62fc\nTxxx7TpiMhvewfKu2TkMGX18V+EzxxR364+BxHSQTB3fvIkHeTGBGJrw0WdyX8PI\nJa/NwZYeHLXWcLbKtcFd8WDiEoNh91Oq1HMzOc/MBcpYv94RSAX7MEkHs2YIAvHE\nRufFV86hVhC1d/JLYjkz5CHi+Fd9XTYjBK78tHhJd4IJPu5LYvwlmzC1zeS7s1Tg\nQW1FQuVDV8tWa4PMTrQHwfaGqn95AKc+tbg+ubpCiWl5bBNI3Ghuh4sAC9dMdAkd\nw27i29O9/Y3XJSSGUZlZqDBP4YU388RgHpzLDUxgRcaQt9vdeEz6frULPW67e9D2\nmPPDzjECgYEA4aPOwvnSwGoOKsS6vANGy4Ajsq09PR+1ltMJUR5kDlXGuZWI72eX\n3/GAnovDuCp0tbYt0r7Fmkfel0Ore7SYM18TH5QGpPddcZLvKUf7AchCIOYY0Te3\npS9+7S1lEGrLXyuox4N26Ov6wHVrmZTcQoZsDWbjYxNNsNACsiQNjGMCgYEA3SvQ\nJets9e9SgNVvao2TijX+/vcNKRfcWB71T9Xc4BuSNEu5+ZLtptlwaSnVCVu1Xilk\nsWDh+3EhByl4EteENPvE/7A2s1sfcDOprvg0r52aBZKeTp0AukrT8+Ad4hap7g1x\n2Lz11MFDkhRqt2KqQaIL+5Mq5WfptbBJ0YI7ARUCgYAD6iSfK1hlsDFYupsGwgPL\nagi0g97pHZC38idaOe3AdeqBs79xb9mpr/XsSj52Bn6J3IRFALxK5e5Nr4XdGo/9\nbCvXw2iuGgCMBOGTVMVdDY1gJr3Ne2r7Oay5Dq2PMFsg5pACDhzVA6sRBbh9LKD5\non1jaiKNyHrzk1hIoOl/QwKBgA+Ov2uLbfS2yvTpDpdOMiyss603r6NOXF+Ofe8J\nuinBhr1K/mAB59muveuH18Z6vv1KqByaFgtb39jjH+Eja9dWRns95/sh08pOuAbo\nyrv3uBfgQmaBQMXZ8aLcBv4aXgWyyGlYkWpP1fL2oLMZq6RGQ9WEeqX8c0ImjmrA\nYGopAoGBAJZPFlZi2Rfq4MfFZp/X1/zM09hphZwkxkSI+RnsjDUjTgB8CuQul5ep\nKWE98yLw4C25Cqw5fKKQ2addizLnZCAIfJKVNRjYLWlWyGQydDEUzqwXlSLS9LVX\nLxLkWDajIyjeFn21Ttb42L9pBo3TAQIxUenom/lP2SQTvCKBiPai\n-----END RSA PRIVATE KEY-----\n-----BEGIN CERTIFICATE-----\nMIIDazCCAlOgAwIBAgIUahce2sCO7Bom/Rznd5HsNAlr1NgwDQYJKoZIhvcNAQEL\nBQAwRTELMAkGA1UEBhMCQVUxEzARBgNVBAgMClNvbWUtU3RhdGUxITAfBgNVBAoM\nGEludGVybmV0IFdpZGdpdHMgUHR5IEx0ZDAeFw0xODEyMDIwMTAxNDRaFw00NjEy\nMTUwMTAxNDRaMEUxCzAJBgNVBAYTAkFVMRMwEQYDVQQIDApTb21lLVN0YXRlMSEw\nHwYDVQQKDBhJbnRlcm5ldCBXaWRnaXRzIFB0eSBMdGQwggEiMA0GCSqGSIb3DQEB\nAQUAA4IBDwAwggEKAoIBAQDC8Qd4kJecWCLzysTV1NfoUd0E8rTBKN52HTLBWcJn\nEtZsG//k/K2NNwI92t9buDax9s/A6B79YXdfYp5hI/xLFkDRzObPpAOyl4b3bUmR\nla3Knmj743SV4tMhQCGrff2nc7WicA5Q7WTiwd+YLB+sOlOfaFzHhRFrk/PNvV8e\nKC6yMgfWZwZ2dxoDpnYLM7XDgTyQ85S6QgOtxlPh9o5mtZQhBkpDDYnNPIon5kwM\nJmrZMXNbCkvd4bjzAHsnuaJsVD/2cW/Gkh+UGMMBnxCKqTBivk3QM2xPFx9MJJ65\nt8kMJR8hbAVmEuK3PA7FrNrNRApdf9I8xDWX8v2jeecfAgMBAAGjUzBRMB0GA1Ud\nDgQWBBQXGfrns8OqxTGKsXG5pDZS/WyyYDAfBgNVHSMEGDAWgBQXGfrns8OqxTGK\nsXG5pDZS/WyyYDAPBgNVHRMBAf8EBTADAQH/MA0GCSqGSIb3DQEBCwUAA4IBAQCt\n8aUX26cl2PgdIEByZSHAX5G+2b0IEtTclPkl4uDyyKRY4dVq6gK3ueVSU5eUmBip\nJbV5aRetovGOcV//8vbxkZm/ntQ8Oo+2sfGR5lIzd0UdlOr5pkD6g3bFy/zJ+4DR\nDAe8fklUacfz6CFmD+H8GyHm+fKmF+mjr4oOGQW6OegRDJHuiipUk2lJyuXdlPSa\nFpNRO2sGbjn000ANinFgnFiVzGDnx0/G1Kii/6GWrI6rrdVmXioQzF+8AloWckeB\n+hbmbwkwQa/JrLb5SWcBDOXSgtn1Li3XF5AQQBBjA3pOlyBXqnI94Irw89Lv9uPT\nMUR4qFxeUOW/GJGccMUd\n-----END CERTIFICATE-----\n \"\"\")\n .build(), CustomResourceOptions.builder()\n .dependsOn(vault_mount.intermediate())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n intermediate:\n type: vault:pkiSecret:SecretBackendConfigCa\n properties:\n backend: ${vault_mount.intermediate.path}\n pemBundle: |\n -----BEGIN RSA PRIVATE KEY-----\n MIIEowIBAAKCAQEAwvEHeJCXnFgi88rE1dTX6FHdBPK0wSjedh0ywVnCZxLWbBv/\n 5PytjTcCPdrfW7g2sfbPwOge/WF3X2KeYSP8SxZA0czmz6QDspeG921JkZWtyp5o\n ++N0leLTIUAhq339p3O1onAOUO1k4sHfmCwfrDpTn2hcx4URa5Pzzb1fHigusjIH\n 1mcGdncaA6Z2CzO1w4E8kPOUukIDrcZT4faOZrWUIQZKQw2JzTyKJ+ZMDCZq2TFz\n WwpL3eG48wB7J7mibFQ/9nFvxpIflBjDAZ8QiqkwYr5N0DNsTxcfTCSeubfJDCUf\n IWwFZhLitzwOxazazUQKXX/SPMQ1l/L9o3nnHwIDAQABAoIBAAQidJQcDPsl62fc\n Txxx7TpiMhvewfKu2TkMGX18V+EzxxR364+BxHSQTB3fvIkHeTGBGJrw0WdyX8PI\n Ja/NwZYeHLXWcLbKtcFd8WDiEoNh91Oq1HMzOc/MBcpYv94RSAX7MEkHs2YIAvHE\n RufFV86hVhC1d/JLYjkz5CHi+Fd9XTYjBK78tHhJd4IJPu5LYvwlmzC1zeS7s1Tg\n QW1FQuVDV8tWa4PMTrQHwfaGqn95AKc+tbg+ubpCiWl5bBNI3Ghuh4sAC9dMdAkd\n w27i29O9/Y3XJSSGUZlZqDBP4YU388RgHpzLDUxgRcaQt9vdeEz6frULPW67e9D2\n mPPDzjECgYEA4aPOwvnSwGoOKsS6vANGy4Ajsq09PR+1ltMJUR5kDlXGuZWI72eX\n 3/GAnovDuCp0tbYt0r7Fmkfel0Ore7SYM18TH5QGpPddcZLvKUf7AchCIOYY0Te3\n pS9+7S1lEGrLXyuox4N26Ov6wHVrmZTcQoZsDWbjYxNNsNACsiQNjGMCgYEA3SvQ\n Jets9e9SgNVvao2TijX+/vcNKRfcWB71T9Xc4BuSNEu5+ZLtptlwaSnVCVu1Xilk\n sWDh+3EhByl4EteENPvE/7A2s1sfcDOprvg0r52aBZKeTp0AukrT8+Ad4hap7g1x\n 2Lz11MFDkhRqt2KqQaIL+5Mq5WfptbBJ0YI7ARUCgYAD6iSfK1hlsDFYupsGwgPL\n agi0g97pHZC38idaOe3AdeqBs79xb9mpr/XsSj52Bn6J3IRFALxK5e5Nr4XdGo/9\n bCvXw2iuGgCMBOGTVMVdDY1gJr3Ne2r7Oay5Dq2PMFsg5pACDhzVA6sRBbh9LKD5\n on1jaiKNyHrzk1hIoOl/QwKBgA+Ov2uLbfS2yvTpDpdOMiyss603r6NOXF+Ofe8J\n uinBhr1K/mAB59muveuH18Z6vv1KqByaFgtb39jjH+Eja9dWRns95/sh08pOuAbo\n yrv3uBfgQmaBQMXZ8aLcBv4aXgWyyGlYkWpP1fL2oLMZq6RGQ9WEeqX8c0ImjmrA\n YGopAoGBAJZPFlZi2Rfq4MfFZp/X1/zM09hphZwkxkSI+RnsjDUjTgB8CuQul5ep\n KWE98yLw4C25Cqw5fKKQ2addizLnZCAIfJKVNRjYLWlWyGQydDEUzqwXlSLS9LVX\n LxLkWDajIyjeFn21Ttb42L9pBo3TAQIxUenom/lP2SQTvCKBiPai\n -----END RSA PRIVATE KEY-----\n -----BEGIN CERTIFICATE-----\n MIIDazCCAlOgAwIBAgIUahce2sCO7Bom/Rznd5HsNAlr1NgwDQYJKoZIhvcNAQEL\n BQAwRTELMAkGA1UEBhMCQVUxEzARBgNVBAgMClNvbWUtU3RhdGUxITAfBgNVBAoM\n GEludGVybmV0IFdpZGdpdHMgUHR5IEx0ZDAeFw0xODEyMDIwMTAxNDRaFw00NjEy\n MTUwMTAxNDRaMEUxCzAJBgNVBAYTAkFVMRMwEQYDVQQIDApTb21lLVN0YXRlMSEw\n HwYDVQQKDBhJbnRlcm5ldCBXaWRnaXRzIFB0eSBMdGQwggEiMA0GCSqGSIb3DQEB\n AQUAA4IBDwAwggEKAoIBAQDC8Qd4kJecWCLzysTV1NfoUd0E8rTBKN52HTLBWcJn\n EtZsG//k/K2NNwI92t9buDax9s/A6B79YXdfYp5hI/xLFkDRzObPpAOyl4b3bUmR\n la3Knmj743SV4tMhQCGrff2nc7WicA5Q7WTiwd+YLB+sOlOfaFzHhRFrk/PNvV8e\n KC6yMgfWZwZ2dxoDpnYLM7XDgTyQ85S6QgOtxlPh9o5mtZQhBkpDDYnNPIon5kwM\n JmrZMXNbCkvd4bjzAHsnuaJsVD/2cW/Gkh+UGMMBnxCKqTBivk3QM2xPFx9MJJ65\n t8kMJR8hbAVmEuK3PA7FrNrNRApdf9I8xDWX8v2jeecfAgMBAAGjUzBRMB0GA1Ud\n DgQWBBQXGfrns8OqxTGKsXG5pDZS/WyyYDAfBgNVHSMEGDAWgBQXGfrns8OqxTGK\n sXG5pDZS/WyyYDAPBgNVHRMBAf8EBTADAQH/MA0GCSqGSIb3DQEBCwUAA4IBAQCt\n 8aUX26cl2PgdIEByZSHAX5G+2b0IEtTclPkl4uDyyKRY4dVq6gK3ueVSU5eUmBip\n JbV5aRetovGOcV//8vbxkZm/ntQ8Oo+2sfGR5lIzd0UdlOr5pkD6g3bFy/zJ+4DR\n DAe8fklUacfz6CFmD+H8GyHm+fKmF+mjr4oOGQW6OegRDJHuiipUk2lJyuXdlPSa\n FpNRO2sGbjn000ANinFgnFiVzGDnx0/G1Kii/6GWrI6rrdVmXioQzF+8AloWckeB\n +hbmbwkwQa/JrLb5SWcBDOXSgtn1Li3XF5AQQBBjA3pOlyBXqnI94Irw89Lv9uPT\n MUR4qFxeUOW/GJGccMUd\n -----END CERTIFICATE-----\n options:\n dependson:\n - ${vault_mount.intermediate}\n```\n{{% /example %}}\n{{% /examples %}}",
+ "description": "{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst intermediate = new vault.pkisecret.SecretBackendConfigCa(\"intermediate\", {\n backend: vault_mount.intermediate.path,\n pemBundle: `-----BEGIN RSA PRIVATE KEY-----\nMIIEowIBAAKCAQEAwvEHeJCXnFgi88rE1dTX6FHdBPK0wSjedh0ywVnCZxLWbBv/\n5PytjTcCPdrfW7g2sfbPwOge/WF3X2KeYSP8SxZA0czmz6QDspeG921JkZWtyp5o\n++N0leLTIUAhq339p3O1onAOUO1k4sHfmCwfrDpTn2hcx4URa5Pzzb1fHigusjIH\n1mcGdncaA6Z2CzO1w4E8kPOUukIDrcZT4faOZrWUIQZKQw2JzTyKJ+ZMDCZq2TFz\nWwpL3eG48wB7J7mibFQ/9nFvxpIflBjDAZ8QiqkwYr5N0DNsTxcfTCSeubfJDCUf\nIWwFZhLitzwOxazazUQKXX/SPMQ1l/L9o3nnHwIDAQABAoIBAAQidJQcDPsl62fc\nTxxx7TpiMhvewfKu2TkMGX18V+EzxxR364+BxHSQTB3fvIkHeTGBGJrw0WdyX8PI\nJa/NwZYeHLXWcLbKtcFd8WDiEoNh91Oq1HMzOc/MBcpYv94RSAX7MEkHs2YIAvHE\nRufFV86hVhC1d/JLYjkz5CHi+Fd9XTYjBK78tHhJd4IJPu5LYvwlmzC1zeS7s1Tg\nQW1FQuVDV8tWa4PMTrQHwfaGqn95AKc+tbg+ubpCiWl5bBNI3Ghuh4sAC9dMdAkd\nw27i29O9/Y3XJSSGUZlZqDBP4YU388RgHpzLDUxgRcaQt9vdeEz6frULPW67e9D2\nmPPDzjECgYEA4aPOwvnSwGoOKsS6vANGy4Ajsq09PR+1ltMJUR5kDlXGuZWI72eX\n3/GAnovDuCp0tbYt0r7Fmkfel0Ore7SYM18TH5QGpPddcZLvKUf7AchCIOYY0Te3\npS9+7S1lEGrLXyuox4N26Ov6wHVrmZTcQoZsDWbjYxNNsNACsiQNjGMCgYEA3SvQ\nJets9e9SgNVvao2TijX+/vcNKRfcWB71T9Xc4BuSNEu5+ZLtptlwaSnVCVu1Xilk\nsWDh+3EhByl4EteENPvE/7A2s1sfcDOprvg0r52aBZKeTp0AukrT8+Ad4hap7g1x\n2Lz11MFDkhRqt2KqQaIL+5Mq5WfptbBJ0YI7ARUCgYAD6iSfK1hlsDFYupsGwgPL\nagi0g97pHZC38idaOe3AdeqBs79xb9mpr/XsSj52Bn6J3IRFALxK5e5Nr4XdGo/9\nbCvXw2iuGgCMBOGTVMVdDY1gJr3Ne2r7Oay5Dq2PMFsg5pACDhzVA6sRBbh9LKD5\non1jaiKNyHrzk1hIoOl/QwKBgA+Ov2uLbfS2yvTpDpdOMiyss603r6NOXF+Ofe8J\nuinBhr1K/mAB59muveuH18Z6vv1KqByaFgtb39jjH+Eja9dWRns95/sh08pOuAbo\nyrv3uBfgQmaBQMXZ8aLcBv4aXgWyyGlYkWpP1fL2oLMZq6RGQ9WEeqX8c0ImjmrA\nYGopAoGBAJZPFlZi2Rfq4MfFZp/X1/zM09hphZwkxkSI+RnsjDUjTgB8CuQul5ep\nKWE98yLw4C25Cqw5fKKQ2addizLnZCAIfJKVNRjYLWlWyGQydDEUzqwXlSLS9LVX\nLxLkWDajIyjeFn21Ttb42L9pBo3TAQIxUenom/lP2SQTvCKBiPai\n-----END RSA PRIVATE KEY-----\n-----BEGIN CERTIFICATE-----\nMIIDazCCAlOgAwIBAgIUahce2sCO7Bom/Rznd5HsNAlr1NgwDQYJKoZIhvcNAQEL\nBQAwRTELMAkGA1UEBhMCQVUxEzARBgNVBAgMClNvbWUtU3RhdGUxITAfBgNVBAoM\nGEludGVybmV0IFdpZGdpdHMgUHR5IEx0ZDAeFw0xODEyMDIwMTAxNDRaFw00NjEy\nMTUwMTAxNDRaMEUxCzAJBgNVBAYTAkFVMRMwEQYDVQQIDApTb21lLVN0YXRlMSEw\nHwYDVQQKDBhJbnRlcm5ldCBXaWRnaXRzIFB0eSBMdGQwggEiMA0GCSqGSIb3DQEB\nAQUAA4IBDwAwggEKAoIBAQDC8Qd4kJecWCLzysTV1NfoUd0E8rTBKN52HTLBWcJn\nEtZsG//k/K2NNwI92t9buDax9s/A6B79YXdfYp5hI/xLFkDRzObPpAOyl4b3bUmR\nla3Knmj743SV4tMhQCGrff2nc7WicA5Q7WTiwd+YLB+sOlOfaFzHhRFrk/PNvV8e\nKC6yMgfWZwZ2dxoDpnYLM7XDgTyQ85S6QgOtxlPh9o5mtZQhBkpDDYnNPIon5kwM\nJmrZMXNbCkvd4bjzAHsnuaJsVD/2cW/Gkh+UGMMBnxCKqTBivk3QM2xPFx9MJJ65\nt8kMJR8hbAVmEuK3PA7FrNrNRApdf9I8xDWX8v2jeecfAgMBAAGjUzBRMB0GA1Ud\nDgQWBBQXGfrns8OqxTGKsXG5pDZS/WyyYDAfBgNVHSMEGDAWgBQXGfrns8OqxTGK\nsXG5pDZS/WyyYDAPBgNVHRMBAf8EBTADAQH/MA0GCSqGSIb3DQEBCwUAA4IBAQCt\n8aUX26cl2PgdIEByZSHAX5G+2b0IEtTclPkl4uDyyKRY4dVq6gK3ueVSU5eUmBip\nJbV5aRetovGOcV//8vbxkZm/ntQ8Oo+2sfGR5lIzd0UdlOr5pkD6g3bFy/zJ+4DR\nDAe8fklUacfz6CFmD+H8GyHm+fKmF+mjr4oOGQW6OegRDJHuiipUk2lJyuXdlPSa\nFpNRO2sGbjn000ANinFgnFiVzGDnx0/G1Kii/6GWrI6rrdVmXioQzF+8AloWckeB\n+hbmbwkwQa/JrLb5SWcBDOXSgtn1Li3XF5AQQBBjA3pOlyBXqnI94Irw89Lv9uPT\nMUR4qFxeUOW/GJGccMUd\n-----END CERTIFICATE-----\n`,\n}, {\n dependsOn: [vault_mount.intermediate],\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nintermediate = vault.pki_secret.SecretBackendConfigCa(\"intermediate\",\n backend=vault_mount[\"intermediate\"][\"path\"],\n pem_bundle=\"\"\"-----BEGIN RSA PRIVATE KEY-----\nMIIEowIBAAKCAQEAwvEHeJCXnFgi88rE1dTX6FHdBPK0wSjedh0ywVnCZxLWbBv/\n5PytjTcCPdrfW7g2sfbPwOge/WF3X2KeYSP8SxZA0czmz6QDspeG921JkZWtyp5o\n++N0leLTIUAhq339p3O1onAOUO1k4sHfmCwfrDpTn2hcx4URa5Pzzb1fHigusjIH\n1mcGdncaA6Z2CzO1w4E8kPOUukIDrcZT4faOZrWUIQZKQw2JzTyKJ+ZMDCZq2TFz\nWwpL3eG48wB7J7mibFQ/9nFvxpIflBjDAZ8QiqkwYr5N0DNsTxcfTCSeubfJDCUf\nIWwFZhLitzwOxazazUQKXX/SPMQ1l/L9o3nnHwIDAQABAoIBAAQidJQcDPsl62fc\nTxxx7TpiMhvewfKu2TkMGX18V+EzxxR364+BxHSQTB3fvIkHeTGBGJrw0WdyX8PI\nJa/NwZYeHLXWcLbKtcFd8WDiEoNh91Oq1HMzOc/MBcpYv94RSAX7MEkHs2YIAvHE\nRufFV86hVhC1d/JLYjkz5CHi+Fd9XTYjBK78tHhJd4IJPu5LYvwlmzC1zeS7s1Tg\nQW1FQuVDV8tWa4PMTrQHwfaGqn95AKc+tbg+ubpCiWl5bBNI3Ghuh4sAC9dMdAkd\nw27i29O9/Y3XJSSGUZlZqDBP4YU388RgHpzLDUxgRcaQt9vdeEz6frULPW67e9D2\nmPPDzjECgYEA4aPOwvnSwGoOKsS6vANGy4Ajsq09PR+1ltMJUR5kDlXGuZWI72eX\n3/GAnovDuCp0tbYt0r7Fmkfel0Ore7SYM18TH5QGpPddcZLvKUf7AchCIOYY0Te3\npS9+7S1lEGrLXyuox4N26Ov6wHVrmZTcQoZsDWbjYxNNsNACsiQNjGMCgYEA3SvQ\nJets9e9SgNVvao2TijX+/vcNKRfcWB71T9Xc4BuSNEu5+ZLtptlwaSnVCVu1Xilk\nsWDh+3EhByl4EteENPvE/7A2s1sfcDOprvg0r52aBZKeTp0AukrT8+Ad4hap7g1x\n2Lz11MFDkhRqt2KqQaIL+5Mq5WfptbBJ0YI7ARUCgYAD6iSfK1hlsDFYupsGwgPL\nagi0g97pHZC38idaOe3AdeqBs79xb9mpr/XsSj52Bn6J3IRFALxK5e5Nr4XdGo/9\nbCvXw2iuGgCMBOGTVMVdDY1gJr3Ne2r7Oay5Dq2PMFsg5pACDhzVA6sRBbh9LKD5\non1jaiKNyHrzk1hIoOl/QwKBgA+Ov2uLbfS2yvTpDpdOMiyss603r6NOXF+Ofe8J\nuinBhr1K/mAB59muveuH18Z6vv1KqByaFgtb39jjH+Eja9dWRns95/sh08pOuAbo\nyrv3uBfgQmaBQMXZ8aLcBv4aXgWyyGlYkWpP1fL2oLMZq6RGQ9WEeqX8c0ImjmrA\nYGopAoGBAJZPFlZi2Rfq4MfFZp/X1/zM09hphZwkxkSI+RnsjDUjTgB8CuQul5ep\nKWE98yLw4C25Cqw5fKKQ2addizLnZCAIfJKVNRjYLWlWyGQydDEUzqwXlSLS9LVX\nLxLkWDajIyjeFn21Ttb42L9pBo3TAQIxUenom/lP2SQTvCKBiPai\n-----END RSA PRIVATE KEY-----\n-----BEGIN CERTIFICATE-----\nMIIDazCCAlOgAwIBAgIUahce2sCO7Bom/Rznd5HsNAlr1NgwDQYJKoZIhvcNAQEL\nBQAwRTELMAkGA1UEBhMCQVUxEzARBgNVBAgMClNvbWUtU3RhdGUxITAfBgNVBAoM\nGEludGVybmV0IFdpZGdpdHMgUHR5IEx0ZDAeFw0xODEyMDIwMTAxNDRaFw00NjEy\nMTUwMTAxNDRaMEUxCzAJBgNVBAYTAkFVMRMwEQYDVQQIDApTb21lLVN0YXRlMSEw\nHwYDVQQKDBhJbnRlcm5ldCBXaWRnaXRzIFB0eSBMdGQwggEiMA0GCSqGSIb3DQEB\nAQUAA4IBDwAwggEKAoIBAQDC8Qd4kJecWCLzysTV1NfoUd0E8rTBKN52HTLBWcJn\nEtZsG//k/K2NNwI92t9buDax9s/A6B79YXdfYp5hI/xLFkDRzObPpAOyl4b3bUmR\nla3Knmj743SV4tMhQCGrff2nc7WicA5Q7WTiwd+YLB+sOlOfaFzHhRFrk/PNvV8e\nKC6yMgfWZwZ2dxoDpnYLM7XDgTyQ85S6QgOtxlPh9o5mtZQhBkpDDYnNPIon5kwM\nJmrZMXNbCkvd4bjzAHsnuaJsVD/2cW/Gkh+UGMMBnxCKqTBivk3QM2xPFx9MJJ65\nt8kMJR8hbAVmEuK3PA7FrNrNRApdf9I8xDWX8v2jeecfAgMBAAGjUzBRMB0GA1Ud\nDgQWBBQXGfrns8OqxTGKsXG5pDZS/WyyYDAfBgNVHSMEGDAWgBQXGfrns8OqxTGK\nsXG5pDZS/WyyYDAPBgNVHRMBAf8EBTADAQH/MA0GCSqGSIb3DQEBCwUAA4IBAQCt\n8aUX26cl2PgdIEByZSHAX5G+2b0IEtTclPkl4uDyyKRY4dVq6gK3ueVSU5eUmBip\nJbV5aRetovGOcV//8vbxkZm/ntQ8Oo+2sfGR5lIzd0UdlOr5pkD6g3bFy/zJ+4DR\nDAe8fklUacfz6CFmD+H8GyHm+fKmF+mjr4oOGQW6OegRDJHuiipUk2lJyuXdlPSa\nFpNRO2sGbjn000ANinFgnFiVzGDnx0/G1Kii/6GWrI6rrdVmXioQzF+8AloWckeB\n+hbmbwkwQa/JrLb5SWcBDOXSgtn1Li3XF5AQQBBjA3pOlyBXqnI94Irw89Lv9uPT\nMUR4qFxeUOW/GJGccMUd\n-----END CERTIFICATE-----\n\"\"\",\n opts=pulumi.ResourceOptions(depends_on=[vault_mount[\"intermediate\"]]))\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var intermediate = new Vault.PkiSecret.SecretBackendConfigCa(\"intermediate\", new()\n {\n Backend = vault_mount.Intermediate.Path,\n PemBundle = @\"-----BEGIN RSA PRIVATE KEY-----\nMIIEowIBAAKCAQEAwvEHeJCXnFgi88rE1dTX6FHdBPK0wSjedh0ywVnCZxLWbBv/\n5PytjTcCPdrfW7g2sfbPwOge/WF3X2KeYSP8SxZA0czmz6QDspeG921JkZWtyp5o\n++N0leLTIUAhq339p3O1onAOUO1k4sHfmCwfrDpTn2hcx4URa5Pzzb1fHigusjIH\n1mcGdncaA6Z2CzO1w4E8kPOUukIDrcZT4faOZrWUIQZKQw2JzTyKJ+ZMDCZq2TFz\nWwpL3eG48wB7J7mibFQ/9nFvxpIflBjDAZ8QiqkwYr5N0DNsTxcfTCSeubfJDCUf\nIWwFZhLitzwOxazazUQKXX/SPMQ1l/L9o3nnHwIDAQABAoIBAAQidJQcDPsl62fc\nTxxx7TpiMhvewfKu2TkMGX18V+EzxxR364+BxHSQTB3fvIkHeTGBGJrw0WdyX8PI\nJa/NwZYeHLXWcLbKtcFd8WDiEoNh91Oq1HMzOc/MBcpYv94RSAX7MEkHs2YIAvHE\nRufFV86hVhC1d/JLYjkz5CHi+Fd9XTYjBK78tHhJd4IJPu5LYvwlmzC1zeS7s1Tg\nQW1FQuVDV8tWa4PMTrQHwfaGqn95AKc+tbg+ubpCiWl5bBNI3Ghuh4sAC9dMdAkd\nw27i29O9/Y3XJSSGUZlZqDBP4YU388RgHpzLDUxgRcaQt9vdeEz6frULPW67e9D2\nmPPDzjECgYEA4aPOwvnSwGoOKsS6vANGy4Ajsq09PR+1ltMJUR5kDlXGuZWI72eX\n3/GAnovDuCp0tbYt0r7Fmkfel0Ore7SYM18TH5QGpPddcZLvKUf7AchCIOYY0Te3\npS9+7S1lEGrLXyuox4N26Ov6wHVrmZTcQoZsDWbjYxNNsNACsiQNjGMCgYEA3SvQ\nJets9e9SgNVvao2TijX+/vcNKRfcWB71T9Xc4BuSNEu5+ZLtptlwaSnVCVu1Xilk\nsWDh+3EhByl4EteENPvE/7A2s1sfcDOprvg0r52aBZKeTp0AukrT8+Ad4hap7g1x\n2Lz11MFDkhRqt2KqQaIL+5Mq5WfptbBJ0YI7ARUCgYAD6iSfK1hlsDFYupsGwgPL\nagi0g97pHZC38idaOe3AdeqBs79xb9mpr/XsSj52Bn6J3IRFALxK5e5Nr4XdGo/9\nbCvXw2iuGgCMBOGTVMVdDY1gJr3Ne2r7Oay5Dq2PMFsg5pACDhzVA6sRBbh9LKD5\non1jaiKNyHrzk1hIoOl/QwKBgA+Ov2uLbfS2yvTpDpdOMiyss603r6NOXF+Ofe8J\nuinBhr1K/mAB59muveuH18Z6vv1KqByaFgtb39jjH+Eja9dWRns95/sh08pOuAbo\nyrv3uBfgQmaBQMXZ8aLcBv4aXgWyyGlYkWpP1fL2oLMZq6RGQ9WEeqX8c0ImjmrA\nYGopAoGBAJZPFlZi2Rfq4MfFZp/X1/zM09hphZwkxkSI+RnsjDUjTgB8CuQul5ep\nKWE98yLw4C25Cqw5fKKQ2addizLnZCAIfJKVNRjYLWlWyGQydDEUzqwXlSLS9LVX\nLxLkWDajIyjeFn21Ttb42L9pBo3TAQIxUenom/lP2SQTvCKBiPai\n-----END RSA PRIVATE KEY-----\n-----BEGIN CERTIFICATE-----\nMIIDazCCAlOgAwIBAgIUahce2sCO7Bom/Rznd5HsNAlr1NgwDQYJKoZIhvcNAQEL\nBQAwRTELMAkGA1UEBhMCQVUxEzARBgNVBAgMClNvbWUtU3RhdGUxITAfBgNVBAoM\nGEludGVybmV0IFdpZGdpdHMgUHR5IEx0ZDAeFw0xODEyMDIwMTAxNDRaFw00NjEy\nMTUwMTAxNDRaMEUxCzAJBgNVBAYTAkFVMRMwEQYDVQQIDApTb21lLVN0YXRlMSEw\nHwYDVQQKDBhJbnRlcm5ldCBXaWRnaXRzIFB0eSBMdGQwggEiMA0GCSqGSIb3DQEB\nAQUAA4IBDwAwggEKAoIBAQDC8Qd4kJecWCLzysTV1NfoUd0E8rTBKN52HTLBWcJn\nEtZsG//k/K2NNwI92t9buDax9s/A6B79YXdfYp5hI/xLFkDRzObPpAOyl4b3bUmR\nla3Knmj743SV4tMhQCGrff2nc7WicA5Q7WTiwd+YLB+sOlOfaFzHhRFrk/PNvV8e\nKC6yMgfWZwZ2dxoDpnYLM7XDgTyQ85S6QgOtxlPh9o5mtZQhBkpDDYnNPIon5kwM\nJmrZMXNbCkvd4bjzAHsnuaJsVD/2cW/Gkh+UGMMBnxCKqTBivk3QM2xPFx9MJJ65\nt8kMJR8hbAVmEuK3PA7FrNrNRApdf9I8xDWX8v2jeecfAgMBAAGjUzBRMB0GA1Ud\nDgQWBBQXGfrns8OqxTGKsXG5pDZS/WyyYDAfBgNVHSMEGDAWgBQXGfrns8OqxTGK\nsXG5pDZS/WyyYDAPBgNVHRMBAf8EBTADAQH/MA0GCSqGSIb3DQEBCwUAA4IBAQCt\n8aUX26cl2PgdIEByZSHAX5G+2b0IEtTclPkl4uDyyKRY4dVq6gK3ueVSU5eUmBip\nJbV5aRetovGOcV//8vbxkZm/ntQ8Oo+2sfGR5lIzd0UdlOr5pkD6g3bFy/zJ+4DR\nDAe8fklUacfz6CFmD+H8GyHm+fKmF+mjr4oOGQW6OegRDJHuiipUk2lJyuXdlPSa\nFpNRO2sGbjn000ANinFgnFiVzGDnx0/G1Kii/6GWrI6rrdVmXioQzF+8AloWckeB\n+hbmbwkwQa/JrLb5SWcBDOXSgtn1Li3XF5AQQBBjA3pOlyBXqnI94Irw89Lv9uPT\nMUR4qFxeUOW/GJGccMUd\n-----END CERTIFICATE-----\n\",\n }, new CustomResourceOptions\n {\n DependsOn = new[]\n {\n vault_mount.Intermediate,\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/pkiSecret\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := pkiSecret.NewSecretBackendConfigCa(ctx, \"intermediate\", \u0026pkiSecret.SecretBackendConfigCaArgs{\n\t\t\tBackend: pulumi.Any(vault_mount.Intermediate.Path),\n\t\t\tPemBundle: pulumi.String(`-----BEGIN RSA PRIVATE KEY-----\nMIIEowIBAAKCAQEAwvEHeJCXnFgi88rE1dTX6FHdBPK0wSjedh0ywVnCZxLWbBv/\n5PytjTcCPdrfW7g2sfbPwOge/WF3X2KeYSP8SxZA0czmz6QDspeG921JkZWtyp5o\n++N0leLTIUAhq339p3O1onAOUO1k4sHfmCwfrDpTn2hcx4URa5Pzzb1fHigusjIH\n1mcGdncaA6Z2CzO1w4E8kPOUukIDrcZT4faOZrWUIQZKQw2JzTyKJ+ZMDCZq2TFz\nWwpL3eG48wB7J7mibFQ/9nFvxpIflBjDAZ8QiqkwYr5N0DNsTxcfTCSeubfJDCUf\nIWwFZhLitzwOxazazUQKXX/SPMQ1l/L9o3nnHwIDAQABAoIBAAQidJQcDPsl62fc\nTxxx7TpiMhvewfKu2TkMGX18V+EzxxR364+BxHSQTB3fvIkHeTGBGJrw0WdyX8PI\nJa/NwZYeHLXWcLbKtcFd8WDiEoNh91Oq1HMzOc/MBcpYv94RSAX7MEkHs2YIAvHE\nRufFV86hVhC1d/JLYjkz5CHi+Fd9XTYjBK78tHhJd4IJPu5LYvwlmzC1zeS7s1Tg\nQW1FQuVDV8tWa4PMTrQHwfaGqn95AKc+tbg+ubpCiWl5bBNI3Ghuh4sAC9dMdAkd\nw27i29O9/Y3XJSSGUZlZqDBP4YU388RgHpzLDUxgRcaQt9vdeEz6frULPW67e9D2\nmPPDzjECgYEA4aPOwvnSwGoOKsS6vANGy4Ajsq09PR+1ltMJUR5kDlXGuZWI72eX\n3/GAnovDuCp0tbYt0r7Fmkfel0Ore7SYM18TH5QGpPddcZLvKUf7AchCIOYY0Te3\npS9+7S1lEGrLXyuox4N26Ov6wHVrmZTcQoZsDWbjYxNNsNACsiQNjGMCgYEA3SvQ\nJets9e9SgNVvao2TijX+/vcNKRfcWB71T9Xc4BuSNEu5+ZLtptlwaSnVCVu1Xilk\nsWDh+3EhByl4EteENPvE/7A2s1sfcDOprvg0r52aBZKeTp0AukrT8+Ad4hap7g1x\n2Lz11MFDkhRqt2KqQaIL+5Mq5WfptbBJ0YI7ARUCgYAD6iSfK1hlsDFYupsGwgPL\nagi0g97pHZC38idaOe3AdeqBs79xb9mpr/XsSj52Bn6J3IRFALxK5e5Nr4XdGo/9\nbCvXw2iuGgCMBOGTVMVdDY1gJr3Ne2r7Oay5Dq2PMFsg5pACDhzVA6sRBbh9LKD5\non1jaiKNyHrzk1hIoOl/QwKBgA+Ov2uLbfS2yvTpDpdOMiyss603r6NOXF+Ofe8J\nuinBhr1K/mAB59muveuH18Z6vv1KqByaFgtb39jjH+Eja9dWRns95/sh08pOuAbo\nyrv3uBfgQmaBQMXZ8aLcBv4aXgWyyGlYkWpP1fL2oLMZq6RGQ9WEeqX8c0ImjmrA\nYGopAoGBAJZPFlZi2Rfq4MfFZp/X1/zM09hphZwkxkSI+RnsjDUjTgB8CuQul5ep\nKWE98yLw4C25Cqw5fKKQ2addizLnZCAIfJKVNRjYLWlWyGQydDEUzqwXlSLS9LVX\nLxLkWDajIyjeFn21Ttb42L9pBo3TAQIxUenom/lP2SQTvCKBiPai\n-----END RSA PRIVATE KEY-----\n-----BEGIN CERTIFICATE-----\nMIIDazCCAlOgAwIBAgIUahce2sCO7Bom/Rznd5HsNAlr1NgwDQYJKoZIhvcNAQEL\nBQAwRTELMAkGA1UEBhMCQVUxEzARBgNVBAgMClNvbWUtU3RhdGUxITAfBgNVBAoM\nGEludGVybmV0IFdpZGdpdHMgUHR5IEx0ZDAeFw0xODEyMDIwMTAxNDRaFw00NjEy\nMTUwMTAxNDRaMEUxCzAJBgNVBAYTAkFVMRMwEQYDVQQIDApTb21lLVN0YXRlMSEw\nHwYDVQQKDBhJbnRlcm5ldCBXaWRnaXRzIFB0eSBMdGQwggEiMA0GCSqGSIb3DQEB\nAQUAA4IBDwAwggEKAoIBAQDC8Qd4kJecWCLzysTV1NfoUd0E8rTBKN52HTLBWcJn\nEtZsG//k/K2NNwI92t9buDax9s/A6B79YXdfYp5hI/xLFkDRzObPpAOyl4b3bUmR\nla3Knmj743SV4tMhQCGrff2nc7WicA5Q7WTiwd+YLB+sOlOfaFzHhRFrk/PNvV8e\nKC6yMgfWZwZ2dxoDpnYLM7XDgTyQ85S6QgOtxlPh9o5mtZQhBkpDDYnNPIon5kwM\nJmrZMXNbCkvd4bjzAHsnuaJsVD/2cW/Gkh+UGMMBnxCKqTBivk3QM2xPFx9MJJ65\nt8kMJR8hbAVmEuK3PA7FrNrNRApdf9I8xDWX8v2jeecfAgMBAAGjUzBRMB0GA1Ud\nDgQWBBQXGfrns8OqxTGKsXG5pDZS/WyyYDAfBgNVHSMEGDAWgBQXGfrns8OqxTGK\nsXG5pDZS/WyyYDAPBgNVHRMBAf8EBTADAQH/MA0GCSqGSIb3DQEBCwUAA4IBAQCt\n8aUX26cl2PgdIEByZSHAX5G+2b0IEtTclPkl4uDyyKRY4dVq6gK3ueVSU5eUmBip\nJbV5aRetovGOcV//8vbxkZm/ntQ8Oo+2sfGR5lIzd0UdlOr5pkD6g3bFy/zJ+4DR\nDAe8fklUacfz6CFmD+H8GyHm+fKmF+mjr4oOGQW6OegRDJHuiipUk2lJyuXdlPSa\nFpNRO2sGbjn000ANinFgnFiVzGDnx0/G1Kii/6GWrI6rrdVmXioQzF+8AloWckeB\n+hbmbwkwQa/JrLb5SWcBDOXSgtn1Li3XF5AQQBBjA3pOlyBXqnI94Irw89Lv9uPT\nMUR4qFxeUOW/GJGccMUd\n-----END CERTIFICATE-----\n`),\n\t\t}, pulumi.DependsOn([]pulumi.Resource{\n\t\t\tvault_mount.Intermediate,\n\t\t}))\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.pkiSecret.SecretBackendConfigCa;\nimport com.pulumi.vault.pkiSecret.SecretBackendConfigCaArgs;\nimport com.pulumi.resources.CustomResourceOptions;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var intermediate = new SecretBackendConfigCa(\"intermediate\", SecretBackendConfigCaArgs.builder() \n .backend(vault_mount.intermediate().path())\n .pemBundle(\"\"\"\n-----BEGIN RSA PRIVATE KEY-----\nMIIEowIBAAKCAQEAwvEHeJCXnFgi88rE1dTX6FHdBPK0wSjedh0ywVnCZxLWbBv/\n5PytjTcCPdrfW7g2sfbPwOge/WF3X2KeYSP8SxZA0czmz6QDspeG921JkZWtyp5o\n++N0leLTIUAhq339p3O1onAOUO1k4sHfmCwfrDpTn2hcx4URa5Pzzb1fHigusjIH\n1mcGdncaA6Z2CzO1w4E8kPOUukIDrcZT4faOZrWUIQZKQw2JzTyKJ+ZMDCZq2TFz\nWwpL3eG48wB7J7mibFQ/9nFvxpIflBjDAZ8QiqkwYr5N0DNsTxcfTCSeubfJDCUf\nIWwFZhLitzwOxazazUQKXX/SPMQ1l/L9o3nnHwIDAQABAoIBAAQidJQcDPsl62fc\nTxxx7TpiMhvewfKu2TkMGX18V+EzxxR364+BxHSQTB3fvIkHeTGBGJrw0WdyX8PI\nJa/NwZYeHLXWcLbKtcFd8WDiEoNh91Oq1HMzOc/MBcpYv94RSAX7MEkHs2YIAvHE\nRufFV86hVhC1d/JLYjkz5CHi+Fd9XTYjBK78tHhJd4IJPu5LYvwlmzC1zeS7s1Tg\nQW1FQuVDV8tWa4PMTrQHwfaGqn95AKc+tbg+ubpCiWl5bBNI3Ghuh4sAC9dMdAkd\nw27i29O9/Y3XJSSGUZlZqDBP4YU388RgHpzLDUxgRcaQt9vdeEz6frULPW67e9D2\nmPPDzjECgYEA4aPOwvnSwGoOKsS6vANGy4Ajsq09PR+1ltMJUR5kDlXGuZWI72eX\n3/GAnovDuCp0tbYt0r7Fmkfel0Ore7SYM18TH5QGpPddcZLvKUf7AchCIOYY0Te3\npS9+7S1lEGrLXyuox4N26Ov6wHVrmZTcQoZsDWbjYxNNsNACsiQNjGMCgYEA3SvQ\nJets9e9SgNVvao2TijX+/vcNKRfcWB71T9Xc4BuSNEu5+ZLtptlwaSnVCVu1Xilk\nsWDh+3EhByl4EteENPvE/7A2s1sfcDOprvg0r52aBZKeTp0AukrT8+Ad4hap7g1x\n2Lz11MFDkhRqt2KqQaIL+5Mq5WfptbBJ0YI7ARUCgYAD6iSfK1hlsDFYupsGwgPL\nagi0g97pHZC38idaOe3AdeqBs79xb9mpr/XsSj52Bn6J3IRFALxK5e5Nr4XdGo/9\nbCvXw2iuGgCMBOGTVMVdDY1gJr3Ne2r7Oay5Dq2PMFsg5pACDhzVA6sRBbh9LKD5\non1jaiKNyHrzk1hIoOl/QwKBgA+Ov2uLbfS2yvTpDpdOMiyss603r6NOXF+Ofe8J\nuinBhr1K/mAB59muveuH18Z6vv1KqByaFgtb39jjH+Eja9dWRns95/sh08pOuAbo\nyrv3uBfgQmaBQMXZ8aLcBv4aXgWyyGlYkWpP1fL2oLMZq6RGQ9WEeqX8c0ImjmrA\nYGopAoGBAJZPFlZi2Rfq4MfFZp/X1/zM09hphZwkxkSI+RnsjDUjTgB8CuQul5ep\nKWE98yLw4C25Cqw5fKKQ2addizLnZCAIfJKVNRjYLWlWyGQydDEUzqwXlSLS9LVX\nLxLkWDajIyjeFn21Ttb42L9pBo3TAQIxUenom/lP2SQTvCKBiPai\n-----END RSA PRIVATE KEY-----\n-----BEGIN CERTIFICATE-----\nMIIDazCCAlOgAwIBAgIUahce2sCO7Bom/Rznd5HsNAlr1NgwDQYJKoZIhvcNAQEL\nBQAwRTELMAkGA1UEBhMCQVUxEzARBgNVBAgMClNvbWUtU3RhdGUxITAfBgNVBAoM\nGEludGVybmV0IFdpZGdpdHMgUHR5IEx0ZDAeFw0xODEyMDIwMTAxNDRaFw00NjEy\nMTUwMTAxNDRaMEUxCzAJBgNVBAYTAkFVMRMwEQYDVQQIDApTb21lLVN0YXRlMSEw\nHwYDVQQKDBhJbnRlcm5ldCBXaWRnaXRzIFB0eSBMdGQwggEiMA0GCSqGSIb3DQEB\nAQUAA4IBDwAwggEKAoIBAQDC8Qd4kJecWCLzysTV1NfoUd0E8rTBKN52HTLBWcJn\nEtZsG//k/K2NNwI92t9buDax9s/A6B79YXdfYp5hI/xLFkDRzObPpAOyl4b3bUmR\nla3Knmj743SV4tMhQCGrff2nc7WicA5Q7WTiwd+YLB+sOlOfaFzHhRFrk/PNvV8e\nKC6yMgfWZwZ2dxoDpnYLM7XDgTyQ85S6QgOtxlPh9o5mtZQhBkpDDYnNPIon5kwM\nJmrZMXNbCkvd4bjzAHsnuaJsVD/2cW/Gkh+UGMMBnxCKqTBivk3QM2xPFx9MJJ65\nt8kMJR8hbAVmEuK3PA7FrNrNRApdf9I8xDWX8v2jeecfAgMBAAGjUzBRMB0GA1Ud\nDgQWBBQXGfrns8OqxTGKsXG5pDZS/WyyYDAfBgNVHSMEGDAWgBQXGfrns8OqxTGK\nsXG5pDZS/WyyYDAPBgNVHRMBAf8EBTADAQH/MA0GCSqGSIb3DQEBCwUAA4IBAQCt\n8aUX26cl2PgdIEByZSHAX5G+2b0IEtTclPkl4uDyyKRY4dVq6gK3ueVSU5eUmBip\nJbV5aRetovGOcV//8vbxkZm/ntQ8Oo+2sfGR5lIzd0UdlOr5pkD6g3bFy/zJ+4DR\nDAe8fklUacfz6CFmD+H8GyHm+fKmF+mjr4oOGQW6OegRDJHuiipUk2lJyuXdlPSa\nFpNRO2sGbjn000ANinFgnFiVzGDnx0/G1Kii/6GWrI6rrdVmXioQzF+8AloWckeB\n+hbmbwkwQa/JrLb5SWcBDOXSgtn1Li3XF5AQQBBjA3pOlyBXqnI94Irw89Lv9uPT\nMUR4qFxeUOW/GJGccMUd\n-----END CERTIFICATE-----\n \"\"\")\n .build(), CustomResourceOptions.builder()\n .dependsOn(vault_mount.intermediate())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n intermediate:\n type: vault:pkiSecret:SecretBackendConfigCa\n properties:\n backend: ${vault_mount.intermediate.path}\n pemBundle: |\n -----BEGIN RSA PRIVATE KEY-----\n MIIEowIBAAKCAQEAwvEHeJCXnFgi88rE1dTX6FHdBPK0wSjedh0ywVnCZxLWbBv/\n 5PytjTcCPdrfW7g2sfbPwOge/WF3X2KeYSP8SxZA0czmz6QDspeG921JkZWtyp5o\n ++N0leLTIUAhq339p3O1onAOUO1k4sHfmCwfrDpTn2hcx4URa5Pzzb1fHigusjIH\n 1mcGdncaA6Z2CzO1w4E8kPOUukIDrcZT4faOZrWUIQZKQw2JzTyKJ+ZMDCZq2TFz\n WwpL3eG48wB7J7mibFQ/9nFvxpIflBjDAZ8QiqkwYr5N0DNsTxcfTCSeubfJDCUf\n IWwFZhLitzwOxazazUQKXX/SPMQ1l/L9o3nnHwIDAQABAoIBAAQidJQcDPsl62fc\n Txxx7TpiMhvewfKu2TkMGX18V+EzxxR364+BxHSQTB3fvIkHeTGBGJrw0WdyX8PI\n Ja/NwZYeHLXWcLbKtcFd8WDiEoNh91Oq1HMzOc/MBcpYv94RSAX7MEkHs2YIAvHE\n RufFV86hVhC1d/JLYjkz5CHi+Fd9XTYjBK78tHhJd4IJPu5LYvwlmzC1zeS7s1Tg\n QW1FQuVDV8tWa4PMTrQHwfaGqn95AKc+tbg+ubpCiWl5bBNI3Ghuh4sAC9dMdAkd\n w27i29O9/Y3XJSSGUZlZqDBP4YU388RgHpzLDUxgRcaQt9vdeEz6frULPW67e9D2\n mPPDzjECgYEA4aPOwvnSwGoOKsS6vANGy4Ajsq09PR+1ltMJUR5kDlXGuZWI72eX\n 3/GAnovDuCp0tbYt0r7Fmkfel0Ore7SYM18TH5QGpPddcZLvKUf7AchCIOYY0Te3\n pS9+7S1lEGrLXyuox4N26Ov6wHVrmZTcQoZsDWbjYxNNsNACsiQNjGMCgYEA3SvQ\n Jets9e9SgNVvao2TijX+/vcNKRfcWB71T9Xc4BuSNEu5+ZLtptlwaSnVCVu1Xilk\n sWDh+3EhByl4EteENPvE/7A2s1sfcDOprvg0r52aBZKeTp0AukrT8+Ad4hap7g1x\n 2Lz11MFDkhRqt2KqQaIL+5Mq5WfptbBJ0YI7ARUCgYAD6iSfK1hlsDFYupsGwgPL\n agi0g97pHZC38idaOe3AdeqBs79xb9mpr/XsSj52Bn6J3IRFALxK5e5Nr4XdGo/9\n bCvXw2iuGgCMBOGTVMVdDY1gJr3Ne2r7Oay5Dq2PMFsg5pACDhzVA6sRBbh9LKD5\n on1jaiKNyHrzk1hIoOl/QwKBgA+Ov2uLbfS2yvTpDpdOMiyss603r6NOXF+Ofe8J\n uinBhr1K/mAB59muveuH18Z6vv1KqByaFgtb39jjH+Eja9dWRns95/sh08pOuAbo\n yrv3uBfgQmaBQMXZ8aLcBv4aXgWyyGlYkWpP1fL2oLMZq6RGQ9WEeqX8c0ImjmrA\n YGopAoGBAJZPFlZi2Rfq4MfFZp/X1/zM09hphZwkxkSI+RnsjDUjTgB8CuQul5ep\n KWE98yLw4C25Cqw5fKKQ2addizLnZCAIfJKVNRjYLWlWyGQydDEUzqwXlSLS9LVX\n LxLkWDajIyjeFn21Ttb42L9pBo3TAQIxUenom/lP2SQTvCKBiPai\n -----END RSA PRIVATE KEY-----\n -----BEGIN CERTIFICATE-----\n MIIDazCCAlOgAwIBAgIUahce2sCO7Bom/Rznd5HsNAlr1NgwDQYJKoZIhvcNAQEL\n BQAwRTELMAkGA1UEBhMCQVUxEzARBgNVBAgMClNvbWUtU3RhdGUxITAfBgNVBAoM\n GEludGVybmV0IFdpZGdpdHMgUHR5IEx0ZDAeFw0xODEyMDIwMTAxNDRaFw00NjEy\n MTUwMTAxNDRaMEUxCzAJBgNVBAYTAkFVMRMwEQYDVQQIDApTb21lLVN0YXRlMSEw\n HwYDVQQKDBhJbnRlcm5ldCBXaWRnaXRzIFB0eSBMdGQwggEiMA0GCSqGSIb3DQEB\n AQUAA4IBDwAwggEKAoIBAQDC8Qd4kJecWCLzysTV1NfoUd0E8rTBKN52HTLBWcJn\n EtZsG//k/K2NNwI92t9buDax9s/A6B79YXdfYp5hI/xLFkDRzObPpAOyl4b3bUmR\n la3Knmj743SV4tMhQCGrff2nc7WicA5Q7WTiwd+YLB+sOlOfaFzHhRFrk/PNvV8e\n KC6yMgfWZwZ2dxoDpnYLM7XDgTyQ85S6QgOtxlPh9o5mtZQhBkpDDYnNPIon5kwM\n JmrZMXNbCkvd4bjzAHsnuaJsVD/2cW/Gkh+UGMMBnxCKqTBivk3QM2xPFx9MJJ65\n t8kMJR8hbAVmEuK3PA7FrNrNRApdf9I8xDWX8v2jeecfAgMBAAGjUzBRMB0GA1Ud\n DgQWBBQXGfrns8OqxTGKsXG5pDZS/WyyYDAfBgNVHSMEGDAWgBQXGfrns8OqxTGK\n sXG5pDZS/WyyYDAPBgNVHRMBAf8EBTADAQH/MA0GCSqGSIb3DQEBCwUAA4IBAQCt\n 8aUX26cl2PgdIEByZSHAX5G+2b0IEtTclPkl4uDyyKRY4dVq6gK3ueVSU5eUmBip\n JbV5aRetovGOcV//8vbxkZm/ntQ8Oo+2sfGR5lIzd0UdlOr5pkD6g3bFy/zJ+4DR\n DAe8fklUacfz6CFmD+H8GyHm+fKmF+mjr4oOGQW6OegRDJHuiipUk2lJyuXdlPSa\n FpNRO2sGbjn000ANinFgnFiVzGDnx0/G1Kii/6GWrI6rrdVmXioQzF+8AloWckeB\n +hbmbwkwQa/JrLb5SWcBDOXSgtn1Li3XF5AQQBBjA3pOlyBXqnI94Irw89Lv9uPT\n MUR4qFxeUOW/GJGccMUd\n -----END CERTIFICATE-----\n options:\n dependson:\n - ${vault_mount.intermediate}\n```\n{{% /example %}}\n{{% /examples %}}",
"properties": {
"backend": {
"type": "string",
@@ -25922,7 +23151,7 @@
}
},
"vault:pkiSecret/secretBackendConfigIssuers:SecretBackendConfigIssuers": {
- "description": "Allows setting the value of the default issuer. For more information, see the\n[Vault documentation](https://developer.hashicorp.com/vault/api-docs/secret/pki#set-issuers-configuration)\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst pki = new vault.Mount(\"pki\", {\n path: \"pki\",\n type: \"pki\",\n defaultLeaseTtlSeconds: 3600,\n maxLeaseTtlSeconds: 86400,\n});\nconst root = new vault.pkisecret.SecretBackendRootCert(\"root\", {\n backend: pki.path,\n type: \"internal\",\n commonName: \"test\",\n ttl: \"86400\",\n});\nconst example = new vault.pkisecret.SecretBackendIssuer(\"example\", {\n backend: root.backend,\n issuerRef: root.issuerId,\n issuerName: \"example-issuer\",\n});\nconst config = new vault.pkisecret.SecretBackendConfigIssuers(\"config\", {\n backend: pki.path,\n \"default\": example.issuerId,\n defaultFollowsLatestIssuer: true,\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\npki = vault.Mount(\"pki\",\n path=\"pki\",\n type=\"pki\",\n default_lease_ttl_seconds=3600,\n max_lease_ttl_seconds=86400)\nroot = vault.pki_secret.SecretBackendRootCert(\"root\",\n backend=pki.path,\n type=\"internal\",\n common_name=\"test\",\n ttl=\"86400\")\nexample = vault.pki_secret.SecretBackendIssuer(\"example\",\n backend=root.backend,\n issuer_ref=root.issuer_id,\n issuer_name=\"example-issuer\")\nconfig = vault.pki_secret.SecretBackendConfigIssuers(\"config\",\n backend=pki.path,\n default=example.issuer_id,\n default_follows_latest_issuer=True)\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var pki = new Vault.Mount(\"pki\", new()\n {\n Path = \"pki\",\n Type = \"pki\",\n DefaultLeaseTtlSeconds = 3600,\n MaxLeaseTtlSeconds = 86400,\n });\n\n var root = new Vault.PkiSecret.SecretBackendRootCert(\"root\", new()\n {\n Backend = pki.Path,\n Type = \"internal\",\n CommonName = \"test\",\n Ttl = \"86400\",\n });\n\n var example = new Vault.PkiSecret.SecretBackendIssuer(\"example\", new()\n {\n Backend = root.Backend,\n IssuerRef = root.IssuerId,\n IssuerName = \"example-issuer\",\n });\n\n var config = new Vault.PkiSecret.SecretBackendConfigIssuers(\"config\", new()\n {\n Backend = pki.Path,\n Default = example.IssuerId,\n DefaultFollowsLatestIssuer = true,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault\"\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/pkiSecret\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tpki, err := vault.NewMount(ctx, \"pki\", \u0026vault.MountArgs{\n\t\t\tPath: pulumi.String(\"pki\"),\n\t\t\tType: pulumi.String(\"pki\"),\n\t\t\tDefaultLeaseTtlSeconds: pulumi.Int(3600),\n\t\t\tMaxLeaseTtlSeconds: pulumi.Int(86400),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\troot, err := pkiSecret.NewSecretBackendRootCert(ctx, \"root\", \u0026pkiSecret.SecretBackendRootCertArgs{\n\t\t\tBackend: pki.Path,\n\t\t\tType: pulumi.String(\"internal\"),\n\t\t\tCommonName: pulumi.String(\"test\"),\n\t\t\tTtl: pulumi.String(\"86400\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texample, err := pkiSecret.NewSecretBackendIssuer(ctx, \"example\", \u0026pkiSecret.SecretBackendIssuerArgs{\n\t\t\tBackend: root.Backend,\n\t\t\tIssuerRef: root.IssuerId,\n\t\t\tIssuerName: pulumi.String(\"example-issuer\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = pkiSecret.NewSecretBackendConfigIssuers(ctx, \"config\", \u0026pkiSecret.SecretBackendConfigIssuersArgs{\n\t\t\tBackend: pki.Path,\n\t\t\tDefault: example.IssuerId,\n\t\t\tDefaultFollowsLatestIssuer: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.Mount;\nimport com.pulumi.vault.MountArgs;\nimport com.pulumi.vault.pkiSecret.SecretBackendRootCert;\nimport com.pulumi.vault.pkiSecret.SecretBackendRootCertArgs;\nimport com.pulumi.vault.pkiSecret.SecretBackendIssuer;\nimport com.pulumi.vault.pkiSecret.SecretBackendIssuerArgs;\nimport com.pulumi.vault.pkiSecret.SecretBackendConfigIssuers;\nimport com.pulumi.vault.pkiSecret.SecretBackendConfigIssuersArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var pki = new Mount(\"pki\", MountArgs.builder() \n .path(\"pki\")\n .type(\"pki\")\n .defaultLeaseTtlSeconds(3600)\n .maxLeaseTtlSeconds(86400)\n .build());\n\n var root = new SecretBackendRootCert(\"root\", SecretBackendRootCertArgs.builder() \n .backend(pki.path())\n .type(\"internal\")\n .commonName(\"test\")\n .ttl(\"86400\")\n .build());\n\n var example = new SecretBackendIssuer(\"example\", SecretBackendIssuerArgs.builder() \n .backend(root.backend())\n .issuerRef(root.issuerId())\n .issuerName(\"example-issuer\")\n .build());\n\n var config = new SecretBackendConfigIssuers(\"config\", SecretBackendConfigIssuersArgs.builder() \n .backend(pki.path())\n .default_(example.issuerId())\n .defaultFollowsLatestIssuer(true)\n .build());\n\n }\n}\n```\n```yaml\nresources:\n pki:\n type: vault:Mount\n properties:\n path: pki\n type: pki\n defaultLeaseTtlSeconds: 3600\n maxLeaseTtlSeconds: 86400\n root:\n type: vault:pkiSecret:SecretBackendRootCert\n properties:\n backend: ${pki.path}\n type: internal\n commonName: test\n ttl: 86400\n example:\n type: vault:pkiSecret:SecretBackendIssuer\n properties:\n backend: ${root.backend}\n issuerRef: ${root.issuerId}\n issuerName: example-issuer\n config:\n type: vault:pkiSecret:SecretBackendConfigIssuers\n properties:\n backend: ${pki.path}\n default: ${example.issuerId}\n defaultFollowsLatestIssuer: true\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nPKI secret backend config issuers can be imported using the path, e.g.\n\n```sh\n $ pulumi import vault:pkiSecret/secretBackendConfigIssuers:SecretBackendConfigIssuers config pki/config/issuers\n```\n\n ",
+ "description": "Allows setting the value of the default issuer. For more information, see the\n[Vault documentation](https://developer.hashicorp.com/vault/api-docs/secret/pki#set-issuers-configuration)\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst pki = new vault.Mount(\"pki\", {\n path: \"pki\",\n type: \"pki\",\n defaultLeaseTtlSeconds: 3600,\n maxLeaseTtlSeconds: 86400,\n});\nconst root = new vault.pkisecret.SecretBackendRootCert(\"root\", {\n backend: pki.path,\n type: \"internal\",\n commonName: \"test\",\n ttl: \"86400\",\n});\nconst example = new vault.pkisecret.SecretBackendIssuer(\"example\", {\n backend: root.backend,\n issuerRef: root.issuerId,\n issuerName: \"example-issuer\",\n});\nconst config = new vault.pkisecret.SecretBackendConfigIssuers(\"config\", {\n backend: pki.path,\n \"default\": example.issuerId,\n defaultFollowsLatestIssuer: true,\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\npki = vault.Mount(\"pki\",\n path=\"pki\",\n type=\"pki\",\n default_lease_ttl_seconds=3600,\n max_lease_ttl_seconds=86400)\nroot = vault.pki_secret.SecretBackendRootCert(\"root\",\n backend=pki.path,\n type=\"internal\",\n common_name=\"test\",\n ttl=\"86400\")\nexample = vault.pki_secret.SecretBackendIssuer(\"example\",\n backend=root.backend,\n issuer_ref=root.issuer_id,\n issuer_name=\"example-issuer\")\nconfig = vault.pki_secret.SecretBackendConfigIssuers(\"config\",\n backend=pki.path,\n default=example.issuer_id,\n default_follows_latest_issuer=True)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var pki = new Vault.Mount(\"pki\", new()\n {\n Path = \"pki\",\n Type = \"pki\",\n DefaultLeaseTtlSeconds = 3600,\n MaxLeaseTtlSeconds = 86400,\n });\n\n var root = new Vault.PkiSecret.SecretBackendRootCert(\"root\", new()\n {\n Backend = pki.Path,\n Type = \"internal\",\n CommonName = \"test\",\n Ttl = \"86400\",\n });\n\n var example = new Vault.PkiSecret.SecretBackendIssuer(\"example\", new()\n {\n Backend = root.Backend,\n IssuerRef = root.IssuerId,\n IssuerName = \"example-issuer\",\n });\n\n var config = new Vault.PkiSecret.SecretBackendConfigIssuers(\"config\", new()\n {\n Backend = pki.Path,\n Default = example.IssuerId,\n DefaultFollowsLatestIssuer = true,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault\"\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/pkiSecret\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tpki, err := vault.NewMount(ctx, \"pki\", \u0026vault.MountArgs{\n\t\t\tPath: pulumi.String(\"pki\"),\n\t\t\tType: pulumi.String(\"pki\"),\n\t\t\tDefaultLeaseTtlSeconds: pulumi.Int(3600),\n\t\t\tMaxLeaseTtlSeconds: pulumi.Int(86400),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\troot, err := pkiSecret.NewSecretBackendRootCert(ctx, \"root\", \u0026pkiSecret.SecretBackendRootCertArgs{\n\t\t\tBackend: pki.Path,\n\t\t\tType: pulumi.String(\"internal\"),\n\t\t\tCommonName: pulumi.String(\"test\"),\n\t\t\tTtl: pulumi.String(\"86400\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texample, err := pkiSecret.NewSecretBackendIssuer(ctx, \"example\", \u0026pkiSecret.SecretBackendIssuerArgs{\n\t\t\tBackend: root.Backend,\n\t\t\tIssuerRef: root.IssuerId,\n\t\t\tIssuerName: pulumi.String(\"example-issuer\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = pkiSecret.NewSecretBackendConfigIssuers(ctx, \"config\", \u0026pkiSecret.SecretBackendConfigIssuersArgs{\n\t\t\tBackend: pki.Path,\n\t\t\tDefault: example.IssuerId,\n\t\t\tDefaultFollowsLatestIssuer: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.Mount;\nimport com.pulumi.vault.MountArgs;\nimport com.pulumi.vault.pkiSecret.SecretBackendRootCert;\nimport com.pulumi.vault.pkiSecret.SecretBackendRootCertArgs;\nimport com.pulumi.vault.pkiSecret.SecretBackendIssuer;\nimport com.pulumi.vault.pkiSecret.SecretBackendIssuerArgs;\nimport com.pulumi.vault.pkiSecret.SecretBackendConfigIssuers;\nimport com.pulumi.vault.pkiSecret.SecretBackendConfigIssuersArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var pki = new Mount(\"pki\", MountArgs.builder() \n .path(\"pki\")\n .type(\"pki\")\n .defaultLeaseTtlSeconds(3600)\n .maxLeaseTtlSeconds(86400)\n .build());\n\n var root = new SecretBackendRootCert(\"root\", SecretBackendRootCertArgs.builder() \n .backend(pki.path())\n .type(\"internal\")\n .commonName(\"test\")\n .ttl(\"86400\")\n .build());\n\n var example = new SecretBackendIssuer(\"example\", SecretBackendIssuerArgs.builder() \n .backend(root.backend())\n .issuerRef(root.issuerId())\n .issuerName(\"example-issuer\")\n .build());\n\n var config = new SecretBackendConfigIssuers(\"config\", SecretBackendConfigIssuersArgs.builder() \n .backend(pki.path())\n .default_(example.issuerId())\n .defaultFollowsLatestIssuer(true)\n .build());\n\n }\n}\n```\n```yaml\nresources:\n pki:\n type: vault:Mount\n properties:\n path: pki\n type: pki\n defaultLeaseTtlSeconds: 3600\n maxLeaseTtlSeconds: 86400\n root:\n type: vault:pkiSecret:SecretBackendRootCert\n properties:\n backend: ${pki.path}\n type: internal\n commonName: test\n ttl: '86400'\n example:\n type: vault:pkiSecret:SecretBackendIssuer\n properties:\n backend: ${root.backend}\n issuerRef: ${root.issuerId}\n issuerName: example-issuer\n config:\n type: vault:pkiSecret:SecretBackendConfigIssuers\n properties:\n backend: ${pki.path}\n default: ${example.issuerId}\n defaultFollowsLatestIssuer: true\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nPKI secret backend config issuers can be imported using the path, e.g.\n\n```sh\n $ pulumi import vault:pkiSecret/secretBackendConfigIssuers:SecretBackendConfigIssuers config pki/config/issuers\n```\n ",
"properties": {
"backend": {
"type": "string",
@@ -25992,7 +23221,7 @@
}
},
"vault:pkiSecret/secretBackendConfigUrls:SecretBackendConfigUrls": {
- "description": "Allows setting the issuing certificate endpoints, CRL distribution points, and OCSP server endpoints that will be encoded into issued certificates.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst root = new vault.Mount(\"root\", {\n path: \"pki-root\",\n type: \"pki\",\n description: \"root PKI\",\n defaultLeaseTtlSeconds: 8640000,\n maxLeaseTtlSeconds: 8640000,\n});\nconst example = new vault.pkisecret.SecretBackendConfigUrls(\"example\", {\n backend: root.path,\n issuingCertificates: [\"http://127.0.0.1:8200/v1/pki/ca\"],\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nroot = vault.Mount(\"root\",\n path=\"pki-root\",\n type=\"pki\",\n description=\"root PKI\",\n default_lease_ttl_seconds=8640000,\n max_lease_ttl_seconds=8640000)\nexample = vault.pki_secret.SecretBackendConfigUrls(\"example\",\n backend=root.path,\n issuing_certificates=[\"http://127.0.0.1:8200/v1/pki/ca\"])\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var root = new Vault.Mount(\"root\", new()\n {\n Path = \"pki-root\",\n Type = \"pki\",\n Description = \"root PKI\",\n DefaultLeaseTtlSeconds = 8640000,\n MaxLeaseTtlSeconds = 8640000,\n });\n\n var example = new Vault.PkiSecret.SecretBackendConfigUrls(\"example\", new()\n {\n Backend = root.Path,\n IssuingCertificates = new[]\n {\n \"http://127.0.0.1:8200/v1/pki/ca\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault\"\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/pkiSecret\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\troot, err := vault.NewMount(ctx, \"root\", \u0026vault.MountArgs{\n\t\t\tPath: pulumi.String(\"pki-root\"),\n\t\t\tType: pulumi.String(\"pki\"),\n\t\t\tDescription: pulumi.String(\"root PKI\"),\n\t\t\tDefaultLeaseTtlSeconds: pulumi.Int(8640000),\n\t\t\tMaxLeaseTtlSeconds: pulumi.Int(8640000),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = pkiSecret.NewSecretBackendConfigUrls(ctx, \"example\", \u0026pkiSecret.SecretBackendConfigUrlsArgs{\n\t\t\tBackend: root.Path,\n\t\t\tIssuingCertificates: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"http://127.0.0.1:8200/v1/pki/ca\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.Mount;\nimport com.pulumi.vault.MountArgs;\nimport com.pulumi.vault.pkiSecret.SecretBackendConfigUrls;\nimport com.pulumi.vault.pkiSecret.SecretBackendConfigUrlsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var root = new Mount(\"root\", MountArgs.builder() \n .path(\"pki-root\")\n .type(\"pki\")\n .description(\"root PKI\")\n .defaultLeaseTtlSeconds(8640000)\n .maxLeaseTtlSeconds(8640000)\n .build());\n\n var example = new SecretBackendConfigUrls(\"example\", SecretBackendConfigUrlsArgs.builder() \n .backend(root.path())\n .issuingCertificates(\"http://127.0.0.1:8200/v1/pki/ca\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n root:\n type: vault:Mount\n properties:\n path: pki-root\n type: pki\n description: root PKI\n defaultLeaseTtlSeconds: 8.64e+06\n maxLeaseTtlSeconds: 8.64e+06\n example:\n type: vault:pkiSecret:SecretBackendConfigUrls\n properties:\n backend: ${root.path}\n issuingCertificates:\n - http://127.0.0.1:8200/v1/pki/ca\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nThe PKI config URLs can be imported using the resource's `id`.\n\nIn the case of the example above the `id` would be `pki-root/config/urls`,\n\nwhere the `pki-root` component is the resource's `backend`, e.g.\n\n```sh\n $ pulumi import vault:pkiSecret/secretBackendConfigUrls:SecretBackendConfigUrls example pki-root/config/urls\n```\n\n ",
+ "description": "Allows setting the issuing certificate endpoints, CRL distribution points, and OCSP server endpoints that will be encoded into issued certificates.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst root = new vault.Mount(\"root\", {\n path: \"pki-root\",\n type: \"pki\",\n description: \"root PKI\",\n defaultLeaseTtlSeconds: 8640000,\n maxLeaseTtlSeconds: 8640000,\n});\nconst example = new vault.pkisecret.SecretBackendConfigUrls(\"example\", {\n backend: root.path,\n issuingCertificates: [\"http://127.0.0.1:8200/v1/pki/ca\"],\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nroot = vault.Mount(\"root\",\n path=\"pki-root\",\n type=\"pki\",\n description=\"root PKI\",\n default_lease_ttl_seconds=8640000,\n max_lease_ttl_seconds=8640000)\nexample = vault.pki_secret.SecretBackendConfigUrls(\"example\",\n backend=root.path,\n issuing_certificates=[\"http://127.0.0.1:8200/v1/pki/ca\"])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var root = new Vault.Mount(\"root\", new()\n {\n Path = \"pki-root\",\n Type = \"pki\",\n Description = \"root PKI\",\n DefaultLeaseTtlSeconds = 8640000,\n MaxLeaseTtlSeconds = 8640000,\n });\n\n var example = new Vault.PkiSecret.SecretBackendConfigUrls(\"example\", new()\n {\n Backend = root.Path,\n IssuingCertificates = new[]\n {\n \"http://127.0.0.1:8200/v1/pki/ca\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault\"\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/pkiSecret\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\troot, err := vault.NewMount(ctx, \"root\", \u0026vault.MountArgs{\n\t\t\tPath: pulumi.String(\"pki-root\"),\n\t\t\tType: pulumi.String(\"pki\"),\n\t\t\tDescription: pulumi.String(\"root PKI\"),\n\t\t\tDefaultLeaseTtlSeconds: pulumi.Int(8640000),\n\t\t\tMaxLeaseTtlSeconds: pulumi.Int(8640000),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = pkiSecret.NewSecretBackendConfigUrls(ctx, \"example\", \u0026pkiSecret.SecretBackendConfigUrlsArgs{\n\t\t\tBackend: root.Path,\n\t\t\tIssuingCertificates: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"http://127.0.0.1:8200/v1/pki/ca\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.Mount;\nimport com.pulumi.vault.MountArgs;\nimport com.pulumi.vault.pkiSecret.SecretBackendConfigUrls;\nimport com.pulumi.vault.pkiSecret.SecretBackendConfigUrlsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var root = new Mount(\"root\", MountArgs.builder() \n .path(\"pki-root\")\n .type(\"pki\")\n .description(\"root PKI\")\n .defaultLeaseTtlSeconds(8640000)\n .maxLeaseTtlSeconds(8640000)\n .build());\n\n var example = new SecretBackendConfigUrls(\"example\", SecretBackendConfigUrlsArgs.builder() \n .backend(root.path())\n .issuingCertificates(\"http://127.0.0.1:8200/v1/pki/ca\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n root:\n type: vault:Mount\n properties:\n path: pki-root\n type: pki\n description: root PKI\n defaultLeaseTtlSeconds: 8.64e+06\n maxLeaseTtlSeconds: 8.64e+06\n example:\n type: vault:pkiSecret:SecretBackendConfigUrls\n properties:\n backend: ${root.path}\n issuingCertificates:\n - http://127.0.0.1:8200/v1/pki/ca\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nThe PKI config URLs can be imported using the resource's `id`. In the case of the example above the `id` would be `pki-root/config/urls`, where the `pki-root` component is the resource's `backend`, e.g.\n\n```sh\n $ pulumi import vault:pkiSecret/secretBackendConfigUrls:SecretBackendConfigUrls example pki-root/config/urls\n```\n ",
"properties": {
"backend": {
"type": "string",
@@ -26100,7 +23329,7 @@
}
},
"vault:pkiSecret/secretBackendCrlConfig:SecretBackendCrlConfig": {
- "description": "Allows setting the duration for which the generated CRL should be marked valid. If the CRL is disabled, it will return a signed but zero-length CRL for any request. If enabled, it will re-build the CRL.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst pki = new vault.Mount(\"pki\", {\n path: \"%s\",\n type: \"pki\",\n defaultLeaseTtlSeconds: 3600,\n maxLeaseTtlSeconds: 86400,\n});\nconst crlConfig = new vault.pkisecret.SecretBackendCrlConfig(\"crlConfig\", {\n backend: pki.path,\n expiry: \"72h\",\n disable: false,\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\npki = vault.Mount(\"pki\",\n path=\"%s\",\n type=\"pki\",\n default_lease_ttl_seconds=3600,\n max_lease_ttl_seconds=86400)\ncrl_config = vault.pki_secret.SecretBackendCrlConfig(\"crlConfig\",\n backend=pki.path,\n expiry=\"72h\",\n disable=False)\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var pki = new Vault.Mount(\"pki\", new()\n {\n Path = \"%s\",\n Type = \"pki\",\n DefaultLeaseTtlSeconds = 3600,\n MaxLeaseTtlSeconds = 86400,\n });\n\n var crlConfig = new Vault.PkiSecret.SecretBackendCrlConfig(\"crlConfig\", new()\n {\n Backend = pki.Path,\n Expiry = \"72h\",\n Disable = false,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault\"\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/pkiSecret\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tpki, err := vault.NewMount(ctx, \"pki\", \u0026vault.MountArgs{\n\t\t\tPath: pulumi.String(\"%s\"),\n\t\t\tType: pulumi.String(\"pki\"),\n\t\t\tDefaultLeaseTtlSeconds: pulumi.Int(3600),\n\t\t\tMaxLeaseTtlSeconds: pulumi.Int(86400),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = pkiSecret.NewSecretBackendCrlConfig(ctx, \"crlConfig\", \u0026pkiSecret.SecretBackendCrlConfigArgs{\n\t\t\tBackend: pki.Path,\n\t\t\tExpiry: pulumi.String(\"72h\"),\n\t\t\tDisable: pulumi.Bool(false),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.Mount;\nimport com.pulumi.vault.MountArgs;\nimport com.pulumi.vault.pkiSecret.SecretBackendCrlConfig;\nimport com.pulumi.vault.pkiSecret.SecretBackendCrlConfigArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var pki = new Mount(\"pki\", MountArgs.builder() \n .path(\"%s\")\n .type(\"pki\")\n .defaultLeaseTtlSeconds(3600)\n .maxLeaseTtlSeconds(86400)\n .build());\n\n var crlConfig = new SecretBackendCrlConfig(\"crlConfig\", SecretBackendCrlConfigArgs.builder() \n .backend(pki.path())\n .expiry(\"72h\")\n .disable(false)\n .build());\n\n }\n}\n```\n```yaml\nresources:\n pki:\n type: vault:Mount\n properties:\n path: '%s'\n type: pki\n defaultLeaseTtlSeconds: 3600\n maxLeaseTtlSeconds: 86400\n crlConfig:\n type: vault:pkiSecret:SecretBackendCrlConfig\n properties:\n backend: ${pki.path}\n expiry: 72h\n disable: false\n```\n{{% /example %}}\n{{% /examples %}}",
+ "description": "Allows setting the duration for which the generated CRL should be marked valid. If the CRL is disabled, it will return a signed but zero-length CRL for any request. If enabled, it will re-build the CRL.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst pki = new vault.Mount(\"pki\", {\n path: \"%s\",\n type: \"pki\",\n defaultLeaseTtlSeconds: 3600,\n maxLeaseTtlSeconds: 86400,\n});\nconst crlConfig = new vault.pkisecret.SecretBackendCrlConfig(\"crlConfig\", {\n backend: pki.path,\n expiry: \"72h\",\n disable: false,\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\npki = vault.Mount(\"pki\",\n path=\"%s\",\n type=\"pki\",\n default_lease_ttl_seconds=3600,\n max_lease_ttl_seconds=86400)\ncrl_config = vault.pki_secret.SecretBackendCrlConfig(\"crlConfig\",\n backend=pki.path,\n expiry=\"72h\",\n disable=False)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var pki = new Vault.Mount(\"pki\", new()\n {\n Path = \"%s\",\n Type = \"pki\",\n DefaultLeaseTtlSeconds = 3600,\n MaxLeaseTtlSeconds = 86400,\n });\n\n var crlConfig = new Vault.PkiSecret.SecretBackendCrlConfig(\"crlConfig\", new()\n {\n Backend = pki.Path,\n Expiry = \"72h\",\n Disable = false,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault\"\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/pkiSecret\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tpki, err := vault.NewMount(ctx, \"pki\", \u0026vault.MountArgs{\n\t\t\tPath: pulumi.String(\"%s\"),\n\t\t\tType: pulumi.String(\"pki\"),\n\t\t\tDefaultLeaseTtlSeconds: pulumi.Int(3600),\n\t\t\tMaxLeaseTtlSeconds: pulumi.Int(86400),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = pkiSecret.NewSecretBackendCrlConfig(ctx, \"crlConfig\", \u0026pkiSecret.SecretBackendCrlConfigArgs{\n\t\t\tBackend: pki.Path,\n\t\t\tExpiry: pulumi.String(\"72h\"),\n\t\t\tDisable: pulumi.Bool(false),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.Mount;\nimport com.pulumi.vault.MountArgs;\nimport com.pulumi.vault.pkiSecret.SecretBackendCrlConfig;\nimport com.pulumi.vault.pkiSecret.SecretBackendCrlConfigArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var pki = new Mount(\"pki\", MountArgs.builder() \n .path(\"%s\")\n .type(\"pki\")\n .defaultLeaseTtlSeconds(3600)\n .maxLeaseTtlSeconds(86400)\n .build());\n\n var crlConfig = new SecretBackendCrlConfig(\"crlConfig\", SecretBackendCrlConfigArgs.builder() \n .backend(pki.path())\n .expiry(\"72h\")\n .disable(false)\n .build());\n\n }\n}\n```\n```yaml\nresources:\n pki:\n type: vault:Mount\n properties:\n path: '%s'\n type: pki\n defaultLeaseTtlSeconds: 3600\n maxLeaseTtlSeconds: 86400\n crlConfig:\n type: vault:pkiSecret:SecretBackendCrlConfig\n properties:\n backend: ${pki.path}\n expiry: 72h\n disable: false\n```\n{{% /example %}}\n{{% /examples %}}",
"properties": {
"autoRebuild": {
"type": "boolean",
@@ -26285,7 +23514,7 @@
}
},
"vault:pkiSecret/secretBackendIntermediateCertRequest:SecretBackendIntermediateCertRequest": {
- "description": "{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst test = new vault.pkisecret.SecretBackendIntermediateCertRequest(\"test\", {\n backend: vault_mount.pki.path,\n type: \"internal\",\n commonName: \"app.my.domain\",\n}, {\n dependsOn: [vault_mount.pki],\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\ntest = vault.pki_secret.SecretBackendIntermediateCertRequest(\"test\",\n backend=vault_mount[\"pki\"][\"path\"],\n type=\"internal\",\n common_name=\"app.my.domain\",\n opts=pulumi.ResourceOptions(depends_on=[vault_mount[\"pki\"]]))\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var test = new Vault.PkiSecret.SecretBackendIntermediateCertRequest(\"test\", new()\n {\n Backend = vault_mount.Pki.Path,\n Type = \"internal\",\n CommonName = \"app.my.domain\",\n }, new CustomResourceOptions\n {\n DependsOn = new[]\n {\n vault_mount.Pki,\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/pkiSecret\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := pkiSecret.NewSecretBackendIntermediateCertRequest(ctx, \"test\", \u0026pkiSecret.SecretBackendIntermediateCertRequestArgs{\n\t\t\tBackend: pulumi.Any(vault_mount.Pki.Path),\n\t\t\tType: pulumi.String(\"internal\"),\n\t\t\tCommonName: pulumi.String(\"app.my.domain\"),\n\t\t}, pulumi.DependsOn([]pulumi.Resource{\n\t\t\tvault_mount.Pki,\n\t\t}))\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.pkiSecret.SecretBackendIntermediateCertRequest;\nimport com.pulumi.vault.pkiSecret.SecretBackendIntermediateCertRequestArgs;\nimport com.pulumi.resources.CustomResourceOptions;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var test = new SecretBackendIntermediateCertRequest(\"test\", SecretBackendIntermediateCertRequestArgs.builder() \n .backend(vault_mount.pki().path())\n .type(\"internal\")\n .commonName(\"app.my.domain\")\n .build(), CustomResourceOptions.builder()\n .dependsOn(vault_mount.pki())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n test:\n type: vault:pkiSecret:SecretBackendIntermediateCertRequest\n properties:\n backend: ${vault_mount.pki.path}\n type: internal\n commonName: app.my.domain\n options:\n dependson:\n - ${vault_mount.pki}\n```\n{{% /example %}}\n{{% /examples %}}",
+ "description": "{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst test = new vault.pkisecret.SecretBackendIntermediateCertRequest(\"test\", {\n backend: vault_mount.pki.path,\n type: \"internal\",\n commonName: \"app.my.domain\",\n}, {\n dependsOn: [vault_mount.pki],\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\ntest = vault.pki_secret.SecretBackendIntermediateCertRequest(\"test\",\n backend=vault_mount[\"pki\"][\"path\"],\n type=\"internal\",\n common_name=\"app.my.domain\",\n opts=pulumi.ResourceOptions(depends_on=[vault_mount[\"pki\"]]))\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var test = new Vault.PkiSecret.SecretBackendIntermediateCertRequest(\"test\", new()\n {\n Backend = vault_mount.Pki.Path,\n Type = \"internal\",\n CommonName = \"app.my.domain\",\n }, new CustomResourceOptions\n {\n DependsOn = new[]\n {\n vault_mount.Pki,\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/pkiSecret\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := pkiSecret.NewSecretBackendIntermediateCertRequest(ctx, \"test\", \u0026pkiSecret.SecretBackendIntermediateCertRequestArgs{\n\t\t\tBackend: pulumi.Any(vault_mount.Pki.Path),\n\t\t\tType: pulumi.String(\"internal\"),\n\t\t\tCommonName: pulumi.String(\"app.my.domain\"),\n\t\t}, pulumi.DependsOn([]pulumi.Resource{\n\t\t\tvault_mount.Pki,\n\t\t}))\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.pkiSecret.SecretBackendIntermediateCertRequest;\nimport com.pulumi.vault.pkiSecret.SecretBackendIntermediateCertRequestArgs;\nimport com.pulumi.resources.CustomResourceOptions;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var test = new SecretBackendIntermediateCertRequest(\"test\", SecretBackendIntermediateCertRequestArgs.builder() \n .backend(vault_mount.pki().path())\n .type(\"internal\")\n .commonName(\"app.my.domain\")\n .build(), CustomResourceOptions.builder()\n .dependsOn(vault_mount.pki())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n test:\n type: vault:pkiSecret:SecretBackendIntermediateCertRequest\n properties:\n backend: ${vault_mount.pki.path}\n type: internal\n commonName: app.my.domain\n options:\n dependson:\n - ${vault_mount.pki}\n```\n{{% /example %}}\n{{% /examples %}}",
"properties": {
"addBasicConstraints": {
"type": "boolean",
@@ -26735,7 +23964,7 @@
}
},
"vault:pkiSecret/secretBackendIntermediateSetSigned:SecretBackendIntermediateSetSigned": {
- "description": "{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst root = new vault.Mount(\"root\", {\n path: \"pki-root\",\n type: \"pki\",\n description: \"root\",\n defaultLeaseTtlSeconds: 8640000,\n maxLeaseTtlSeconds: 8640000,\n});\nconst intermediate = new vault.Mount(\"intermediate\", {\n path: \"pki-int\",\n type: root.type,\n description: \"intermediate\",\n defaultLeaseTtlSeconds: 86400,\n maxLeaseTtlSeconds: 86400,\n});\nconst exampleSecretBackendRootCert = new vault.pkisecret.SecretBackendRootCert(\"exampleSecretBackendRootCert\", {\n backend: root.path,\n type: \"internal\",\n commonName: \"RootOrg Root CA\",\n ttl: \"86400\",\n format: \"pem\",\n privateKeyFormat: \"der\",\n keyType: \"rsa\",\n keyBits: 4096,\n excludeCnFromSans: true,\n ou: \"Organizational Unit\",\n organization: \"RootOrg\",\n country: \"US\",\n locality: \"San Francisco\",\n province: \"CA\",\n});\nconst exampleSecretBackendIntermediateCertRequest = new vault.pkisecret.SecretBackendIntermediateCertRequest(\"exampleSecretBackendIntermediateCertRequest\", {\n backend: intermediate.path,\n type: exampleSecretBackendRootCert.type,\n commonName: \"SubOrg Intermediate CA\",\n});\nconst exampleSecretBackendRootSignIntermediate = new vault.pkisecret.SecretBackendRootSignIntermediate(\"exampleSecretBackendRootSignIntermediate\", {\n backend: root.path,\n csr: exampleSecretBackendIntermediateCertRequest.csr,\n commonName: \"SubOrg Intermediate CA\",\n excludeCnFromSans: true,\n ou: \"SubUnit\",\n organization: \"SubOrg\",\n country: \"US\",\n locality: \"San Francisco\",\n province: \"CA\",\n revoke: true,\n});\nconst exampleSecretBackendIntermediateSetSigned = new vault.pkisecret.SecretBackendIntermediateSetSigned(\"exampleSecretBackendIntermediateSetSigned\", {\n backend: intermediate.path,\n certificate: exampleSecretBackendRootSignIntermediate.certificate,\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nroot = vault.Mount(\"root\",\n path=\"pki-root\",\n type=\"pki\",\n description=\"root\",\n default_lease_ttl_seconds=8640000,\n max_lease_ttl_seconds=8640000)\nintermediate = vault.Mount(\"intermediate\",\n path=\"pki-int\",\n type=root.type,\n description=\"intermediate\",\n default_lease_ttl_seconds=86400,\n max_lease_ttl_seconds=86400)\nexample_secret_backend_root_cert = vault.pki_secret.SecretBackendRootCert(\"exampleSecretBackendRootCert\",\n backend=root.path,\n type=\"internal\",\n common_name=\"RootOrg Root CA\",\n ttl=\"86400\",\n format=\"pem\",\n private_key_format=\"der\",\n key_type=\"rsa\",\n key_bits=4096,\n exclude_cn_from_sans=True,\n ou=\"Organizational Unit\",\n organization=\"RootOrg\",\n country=\"US\",\n locality=\"San Francisco\",\n province=\"CA\")\nexample_secret_backend_intermediate_cert_request = vault.pki_secret.SecretBackendIntermediateCertRequest(\"exampleSecretBackendIntermediateCertRequest\",\n backend=intermediate.path,\n type=example_secret_backend_root_cert.type,\n common_name=\"SubOrg Intermediate CA\")\nexample_secret_backend_root_sign_intermediate = vault.pki_secret.SecretBackendRootSignIntermediate(\"exampleSecretBackendRootSignIntermediate\",\n backend=root.path,\n csr=example_secret_backend_intermediate_cert_request.csr,\n common_name=\"SubOrg Intermediate CA\",\n exclude_cn_from_sans=True,\n ou=\"SubUnit\",\n organization=\"SubOrg\",\n country=\"US\",\n locality=\"San Francisco\",\n province=\"CA\",\n revoke=True)\nexample_secret_backend_intermediate_set_signed = vault.pki_secret.SecretBackendIntermediateSetSigned(\"exampleSecretBackendIntermediateSetSigned\",\n backend=intermediate.path,\n certificate=example_secret_backend_root_sign_intermediate.certificate)\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var root = new Vault.Mount(\"root\", new()\n {\n Path = \"pki-root\",\n Type = \"pki\",\n Description = \"root\",\n DefaultLeaseTtlSeconds = 8640000,\n MaxLeaseTtlSeconds = 8640000,\n });\n\n var intermediate = new Vault.Mount(\"intermediate\", new()\n {\n Path = \"pki-int\",\n Type = root.Type,\n Description = \"intermediate\",\n DefaultLeaseTtlSeconds = 86400,\n MaxLeaseTtlSeconds = 86400,\n });\n\n var exampleSecretBackendRootCert = new Vault.PkiSecret.SecretBackendRootCert(\"exampleSecretBackendRootCert\", new()\n {\n Backend = root.Path,\n Type = \"internal\",\n CommonName = \"RootOrg Root CA\",\n Ttl = \"86400\",\n Format = \"pem\",\n PrivateKeyFormat = \"der\",\n KeyType = \"rsa\",\n KeyBits = 4096,\n ExcludeCnFromSans = true,\n Ou = \"Organizational Unit\",\n Organization = \"RootOrg\",\n Country = \"US\",\n Locality = \"San Francisco\",\n Province = \"CA\",\n });\n\n var exampleSecretBackendIntermediateCertRequest = new Vault.PkiSecret.SecretBackendIntermediateCertRequest(\"exampleSecretBackendIntermediateCertRequest\", new()\n {\n Backend = intermediate.Path,\n Type = exampleSecretBackendRootCert.Type,\n CommonName = \"SubOrg Intermediate CA\",\n });\n\n var exampleSecretBackendRootSignIntermediate = new Vault.PkiSecret.SecretBackendRootSignIntermediate(\"exampleSecretBackendRootSignIntermediate\", new()\n {\n Backend = root.Path,\n Csr = exampleSecretBackendIntermediateCertRequest.Csr,\n CommonName = \"SubOrg Intermediate CA\",\n ExcludeCnFromSans = true,\n Ou = \"SubUnit\",\n Organization = \"SubOrg\",\n Country = \"US\",\n Locality = \"San Francisco\",\n Province = \"CA\",\n Revoke = true,\n });\n\n var exampleSecretBackendIntermediateSetSigned = new Vault.PkiSecret.SecretBackendIntermediateSetSigned(\"exampleSecretBackendIntermediateSetSigned\", new()\n {\n Backend = intermediate.Path,\n Certificate = exampleSecretBackendRootSignIntermediate.Certificate,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault\"\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/pkiSecret\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\troot, err := vault.NewMount(ctx, \"root\", \u0026vault.MountArgs{\n\t\t\tPath: pulumi.String(\"pki-root\"),\n\t\t\tType: pulumi.String(\"pki\"),\n\t\t\tDescription: pulumi.String(\"root\"),\n\t\t\tDefaultLeaseTtlSeconds: pulumi.Int(8640000),\n\t\t\tMaxLeaseTtlSeconds: pulumi.Int(8640000),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tintermediate, err := vault.NewMount(ctx, \"intermediate\", \u0026vault.MountArgs{\n\t\t\tPath: pulumi.String(\"pki-int\"),\n\t\t\tType: root.Type,\n\t\t\tDescription: pulumi.String(\"intermediate\"),\n\t\t\tDefaultLeaseTtlSeconds: pulumi.Int(86400),\n\t\t\tMaxLeaseTtlSeconds: pulumi.Int(86400),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleSecretBackendRootCert, err := pkiSecret.NewSecretBackendRootCert(ctx, \"exampleSecretBackendRootCert\", \u0026pkiSecret.SecretBackendRootCertArgs{\n\t\t\tBackend: root.Path,\n\t\t\tType: pulumi.String(\"internal\"),\n\t\t\tCommonName: pulumi.String(\"RootOrg Root CA\"),\n\t\t\tTtl: pulumi.String(\"86400\"),\n\t\t\tFormat: pulumi.String(\"pem\"),\n\t\t\tPrivateKeyFormat: pulumi.String(\"der\"),\n\t\t\tKeyType: pulumi.String(\"rsa\"),\n\t\t\tKeyBits: pulumi.Int(4096),\n\t\t\tExcludeCnFromSans: pulumi.Bool(true),\n\t\t\tOu: pulumi.String(\"Organizational Unit\"),\n\t\t\tOrganization: pulumi.String(\"RootOrg\"),\n\t\t\tCountry: pulumi.String(\"US\"),\n\t\t\tLocality: pulumi.String(\"San Francisco\"),\n\t\t\tProvince: pulumi.String(\"CA\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleSecretBackendIntermediateCertRequest, err := pkiSecret.NewSecretBackendIntermediateCertRequest(ctx, \"exampleSecretBackendIntermediateCertRequest\", \u0026pkiSecret.SecretBackendIntermediateCertRequestArgs{\n\t\t\tBackend: intermediate.Path,\n\t\t\tType: exampleSecretBackendRootCert.Type,\n\t\t\tCommonName: pulumi.String(\"SubOrg Intermediate CA\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleSecretBackendRootSignIntermediate, err := pkiSecret.NewSecretBackendRootSignIntermediate(ctx, \"exampleSecretBackendRootSignIntermediate\", \u0026pkiSecret.SecretBackendRootSignIntermediateArgs{\n\t\t\tBackend: root.Path,\n\t\t\tCsr: exampleSecretBackendIntermediateCertRequest.Csr,\n\t\t\tCommonName: pulumi.String(\"SubOrg Intermediate CA\"),\n\t\t\tExcludeCnFromSans: pulumi.Bool(true),\n\t\t\tOu: pulumi.String(\"SubUnit\"),\n\t\t\tOrganization: pulumi.String(\"SubOrg\"),\n\t\t\tCountry: pulumi.String(\"US\"),\n\t\t\tLocality: pulumi.String(\"San Francisco\"),\n\t\t\tProvince: pulumi.String(\"CA\"),\n\t\t\tRevoke: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = pkiSecret.NewSecretBackendIntermediateSetSigned(ctx, \"exampleSecretBackendIntermediateSetSigned\", \u0026pkiSecret.SecretBackendIntermediateSetSignedArgs{\n\t\t\tBackend: intermediate.Path,\n\t\t\tCertificate: exampleSecretBackendRootSignIntermediate.Certificate,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.Mount;\nimport com.pulumi.vault.MountArgs;\nimport com.pulumi.vault.pkiSecret.SecretBackendRootCert;\nimport com.pulumi.vault.pkiSecret.SecretBackendRootCertArgs;\nimport com.pulumi.vault.pkiSecret.SecretBackendIntermediateCertRequest;\nimport com.pulumi.vault.pkiSecret.SecretBackendIntermediateCertRequestArgs;\nimport com.pulumi.vault.pkiSecret.SecretBackendRootSignIntermediate;\nimport com.pulumi.vault.pkiSecret.SecretBackendRootSignIntermediateArgs;\nimport com.pulumi.vault.pkiSecret.SecretBackendIntermediateSetSigned;\nimport com.pulumi.vault.pkiSecret.SecretBackendIntermediateSetSignedArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var root = new Mount(\"root\", MountArgs.builder() \n .path(\"pki-root\")\n .type(\"pki\")\n .description(\"root\")\n .defaultLeaseTtlSeconds(8640000)\n .maxLeaseTtlSeconds(8640000)\n .build());\n\n var intermediate = new Mount(\"intermediate\", MountArgs.builder() \n .path(\"pki-int\")\n .type(root.type())\n .description(\"intermediate\")\n .defaultLeaseTtlSeconds(86400)\n .maxLeaseTtlSeconds(86400)\n .build());\n\n var exampleSecretBackendRootCert = new SecretBackendRootCert(\"exampleSecretBackendRootCert\", SecretBackendRootCertArgs.builder() \n .backend(root.path())\n .type(\"internal\")\n .commonName(\"RootOrg Root CA\")\n .ttl(86400)\n .format(\"pem\")\n .privateKeyFormat(\"der\")\n .keyType(\"rsa\")\n .keyBits(4096)\n .excludeCnFromSans(true)\n .ou(\"Organizational Unit\")\n .organization(\"RootOrg\")\n .country(\"US\")\n .locality(\"San Francisco\")\n .province(\"CA\")\n .build());\n\n var exampleSecretBackendIntermediateCertRequest = new SecretBackendIntermediateCertRequest(\"exampleSecretBackendIntermediateCertRequest\", SecretBackendIntermediateCertRequestArgs.builder() \n .backend(intermediate.path())\n .type(exampleSecretBackendRootCert.type())\n .commonName(\"SubOrg Intermediate CA\")\n .build());\n\n var exampleSecretBackendRootSignIntermediate = new SecretBackendRootSignIntermediate(\"exampleSecretBackendRootSignIntermediate\", SecretBackendRootSignIntermediateArgs.builder() \n .backend(root.path())\n .csr(exampleSecretBackendIntermediateCertRequest.csr())\n .commonName(\"SubOrg Intermediate CA\")\n .excludeCnFromSans(true)\n .ou(\"SubUnit\")\n .organization(\"SubOrg\")\n .country(\"US\")\n .locality(\"San Francisco\")\n .province(\"CA\")\n .revoke(true)\n .build());\n\n var exampleSecretBackendIntermediateSetSigned = new SecretBackendIntermediateSetSigned(\"exampleSecretBackendIntermediateSetSigned\", SecretBackendIntermediateSetSignedArgs.builder() \n .backend(intermediate.path())\n .certificate(exampleSecretBackendRootSignIntermediate.certificate())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n root:\n type: vault:Mount\n properties:\n path: pki-root\n type: pki\n description: root\n defaultLeaseTtlSeconds: 8.64e+06\n maxLeaseTtlSeconds: 8.64e+06\n intermediate:\n type: vault:Mount\n properties:\n path: pki-int\n type: ${root.type}\n description: intermediate\n defaultLeaseTtlSeconds: 86400\n maxLeaseTtlSeconds: 86400\n exampleSecretBackendRootCert:\n type: vault:pkiSecret:SecretBackendRootCert\n properties:\n backend: ${root.path}\n type: internal\n commonName: RootOrg Root CA\n ttl: 86400\n format: pem\n privateKeyFormat: der\n keyType: rsa\n keyBits: 4096\n excludeCnFromSans: true\n ou: Organizational Unit\n organization: RootOrg\n country: US\n locality: San Francisco\n province: CA\n exampleSecretBackendIntermediateCertRequest:\n type: vault:pkiSecret:SecretBackendIntermediateCertRequest\n properties:\n backend: ${intermediate.path}\n type: ${exampleSecretBackendRootCert.type}\n commonName: SubOrg Intermediate CA\n exampleSecretBackendRootSignIntermediate:\n type: vault:pkiSecret:SecretBackendRootSignIntermediate\n properties:\n backend: ${root.path}\n csr: ${exampleSecretBackendIntermediateCertRequest.csr}\n commonName: SubOrg Intermediate CA\n excludeCnFromSans: true\n ou: SubUnit\n organization: SubOrg\n country: US\n locality: San Francisco\n province: CA\n revoke: true\n exampleSecretBackendIntermediateSetSigned:\n type: vault:pkiSecret:SecretBackendIntermediateSetSigned\n properties:\n backend: ${intermediate.path}\n certificate: ${exampleSecretBackendRootSignIntermediate.certificate}\n```\n{{% /example %}}\n{{% /examples %}}",
+ "description": "{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst root = new vault.Mount(\"root\", {\n path: \"pki-root\",\n type: \"pki\",\n description: \"root\",\n defaultLeaseTtlSeconds: 8640000,\n maxLeaseTtlSeconds: 8640000,\n});\nconst intermediate = new vault.Mount(\"intermediate\", {\n path: \"pki-int\",\n type: root.type,\n description: \"intermediate\",\n defaultLeaseTtlSeconds: 86400,\n maxLeaseTtlSeconds: 86400,\n});\nconst exampleSecretBackendRootCert = new vault.pkisecret.SecretBackendRootCert(\"exampleSecretBackendRootCert\", {\n backend: root.path,\n type: \"internal\",\n commonName: \"RootOrg Root CA\",\n ttl: \"86400\",\n format: \"pem\",\n privateKeyFormat: \"der\",\n keyType: \"rsa\",\n keyBits: 4096,\n excludeCnFromSans: true,\n ou: \"Organizational Unit\",\n organization: \"RootOrg\",\n country: \"US\",\n locality: \"San Francisco\",\n province: \"CA\",\n});\nconst exampleSecretBackendIntermediateCertRequest = new vault.pkisecret.SecretBackendIntermediateCertRequest(\"exampleSecretBackendIntermediateCertRequest\", {\n backend: intermediate.path,\n type: exampleSecretBackendRootCert.type,\n commonName: \"SubOrg Intermediate CA\",\n});\nconst exampleSecretBackendRootSignIntermediate = new vault.pkisecret.SecretBackendRootSignIntermediate(\"exampleSecretBackendRootSignIntermediate\", {\n backend: root.path,\n csr: exampleSecretBackendIntermediateCertRequest.csr,\n commonName: \"SubOrg Intermediate CA\",\n excludeCnFromSans: true,\n ou: \"SubUnit\",\n organization: \"SubOrg\",\n country: \"US\",\n locality: \"San Francisco\",\n province: \"CA\",\n revoke: true,\n});\nconst exampleSecretBackendIntermediateSetSigned = new vault.pkisecret.SecretBackendIntermediateSetSigned(\"exampleSecretBackendIntermediateSetSigned\", {\n backend: intermediate.path,\n certificate: exampleSecretBackendRootSignIntermediate.certificate,\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nroot = vault.Mount(\"root\",\n path=\"pki-root\",\n type=\"pki\",\n description=\"root\",\n default_lease_ttl_seconds=8640000,\n max_lease_ttl_seconds=8640000)\nintermediate = vault.Mount(\"intermediate\",\n path=\"pki-int\",\n type=root.type,\n description=\"intermediate\",\n default_lease_ttl_seconds=86400,\n max_lease_ttl_seconds=86400)\nexample_secret_backend_root_cert = vault.pki_secret.SecretBackendRootCert(\"exampleSecretBackendRootCert\",\n backend=root.path,\n type=\"internal\",\n common_name=\"RootOrg Root CA\",\n ttl=\"86400\",\n format=\"pem\",\n private_key_format=\"der\",\n key_type=\"rsa\",\n key_bits=4096,\n exclude_cn_from_sans=True,\n ou=\"Organizational Unit\",\n organization=\"RootOrg\",\n country=\"US\",\n locality=\"San Francisco\",\n province=\"CA\")\nexample_secret_backend_intermediate_cert_request = vault.pki_secret.SecretBackendIntermediateCertRequest(\"exampleSecretBackendIntermediateCertRequest\",\n backend=intermediate.path,\n type=example_secret_backend_root_cert.type,\n common_name=\"SubOrg Intermediate CA\")\nexample_secret_backend_root_sign_intermediate = vault.pki_secret.SecretBackendRootSignIntermediate(\"exampleSecretBackendRootSignIntermediate\",\n backend=root.path,\n csr=example_secret_backend_intermediate_cert_request.csr,\n common_name=\"SubOrg Intermediate CA\",\n exclude_cn_from_sans=True,\n ou=\"SubUnit\",\n organization=\"SubOrg\",\n country=\"US\",\n locality=\"San Francisco\",\n province=\"CA\",\n revoke=True)\nexample_secret_backend_intermediate_set_signed = vault.pki_secret.SecretBackendIntermediateSetSigned(\"exampleSecretBackendIntermediateSetSigned\",\n backend=intermediate.path,\n certificate=example_secret_backend_root_sign_intermediate.certificate)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var root = new Vault.Mount(\"root\", new()\n {\n Path = \"pki-root\",\n Type = \"pki\",\n Description = \"root\",\n DefaultLeaseTtlSeconds = 8640000,\n MaxLeaseTtlSeconds = 8640000,\n });\n\n var intermediate = new Vault.Mount(\"intermediate\", new()\n {\n Path = \"pki-int\",\n Type = root.Type,\n Description = \"intermediate\",\n DefaultLeaseTtlSeconds = 86400,\n MaxLeaseTtlSeconds = 86400,\n });\n\n var exampleSecretBackendRootCert = new Vault.PkiSecret.SecretBackendRootCert(\"exampleSecretBackendRootCert\", new()\n {\n Backend = root.Path,\n Type = \"internal\",\n CommonName = \"RootOrg Root CA\",\n Ttl = \"86400\",\n Format = \"pem\",\n PrivateKeyFormat = \"der\",\n KeyType = \"rsa\",\n KeyBits = 4096,\n ExcludeCnFromSans = true,\n Ou = \"Organizational Unit\",\n Organization = \"RootOrg\",\n Country = \"US\",\n Locality = \"San Francisco\",\n Province = \"CA\",\n });\n\n var exampleSecretBackendIntermediateCertRequest = new Vault.PkiSecret.SecretBackendIntermediateCertRequest(\"exampleSecretBackendIntermediateCertRequest\", new()\n {\n Backend = intermediate.Path,\n Type = exampleSecretBackendRootCert.Type,\n CommonName = \"SubOrg Intermediate CA\",\n });\n\n var exampleSecretBackendRootSignIntermediate = new Vault.PkiSecret.SecretBackendRootSignIntermediate(\"exampleSecretBackendRootSignIntermediate\", new()\n {\n Backend = root.Path,\n Csr = exampleSecretBackendIntermediateCertRequest.Csr,\n CommonName = \"SubOrg Intermediate CA\",\n ExcludeCnFromSans = true,\n Ou = \"SubUnit\",\n Organization = \"SubOrg\",\n Country = \"US\",\n Locality = \"San Francisco\",\n Province = \"CA\",\n Revoke = true,\n });\n\n var exampleSecretBackendIntermediateSetSigned = new Vault.PkiSecret.SecretBackendIntermediateSetSigned(\"exampleSecretBackendIntermediateSetSigned\", new()\n {\n Backend = intermediate.Path,\n Certificate = exampleSecretBackendRootSignIntermediate.Certificate,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault\"\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/pkiSecret\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\troot, err := vault.NewMount(ctx, \"root\", \u0026vault.MountArgs{\n\t\t\tPath: pulumi.String(\"pki-root\"),\n\t\t\tType: pulumi.String(\"pki\"),\n\t\t\tDescription: pulumi.String(\"root\"),\n\t\t\tDefaultLeaseTtlSeconds: pulumi.Int(8640000),\n\t\t\tMaxLeaseTtlSeconds: pulumi.Int(8640000),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tintermediate, err := vault.NewMount(ctx, \"intermediate\", \u0026vault.MountArgs{\n\t\t\tPath: pulumi.String(\"pki-int\"),\n\t\t\tType: root.Type,\n\t\t\tDescription: pulumi.String(\"intermediate\"),\n\t\t\tDefaultLeaseTtlSeconds: pulumi.Int(86400),\n\t\t\tMaxLeaseTtlSeconds: pulumi.Int(86400),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleSecretBackendRootCert, err := pkiSecret.NewSecretBackendRootCert(ctx, \"exampleSecretBackendRootCert\", \u0026pkiSecret.SecretBackendRootCertArgs{\n\t\t\tBackend: root.Path,\n\t\t\tType: pulumi.String(\"internal\"),\n\t\t\tCommonName: pulumi.String(\"RootOrg Root CA\"),\n\t\t\tTtl: pulumi.String(\"86400\"),\n\t\t\tFormat: pulumi.String(\"pem\"),\n\t\t\tPrivateKeyFormat: pulumi.String(\"der\"),\n\t\t\tKeyType: pulumi.String(\"rsa\"),\n\t\t\tKeyBits: pulumi.Int(4096),\n\t\t\tExcludeCnFromSans: pulumi.Bool(true),\n\t\t\tOu: pulumi.String(\"Organizational Unit\"),\n\t\t\tOrganization: pulumi.String(\"RootOrg\"),\n\t\t\tCountry: pulumi.String(\"US\"),\n\t\t\tLocality: pulumi.String(\"San Francisco\"),\n\t\t\tProvince: pulumi.String(\"CA\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleSecretBackendIntermediateCertRequest, err := pkiSecret.NewSecretBackendIntermediateCertRequest(ctx, \"exampleSecretBackendIntermediateCertRequest\", \u0026pkiSecret.SecretBackendIntermediateCertRequestArgs{\n\t\t\tBackend: intermediate.Path,\n\t\t\tType: exampleSecretBackendRootCert.Type,\n\t\t\tCommonName: pulumi.String(\"SubOrg Intermediate CA\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleSecretBackendRootSignIntermediate, err := pkiSecret.NewSecretBackendRootSignIntermediate(ctx, \"exampleSecretBackendRootSignIntermediate\", \u0026pkiSecret.SecretBackendRootSignIntermediateArgs{\n\t\t\tBackend: root.Path,\n\t\t\tCsr: exampleSecretBackendIntermediateCertRequest.Csr,\n\t\t\tCommonName: pulumi.String(\"SubOrg Intermediate CA\"),\n\t\t\tExcludeCnFromSans: pulumi.Bool(true),\n\t\t\tOu: pulumi.String(\"SubUnit\"),\n\t\t\tOrganization: pulumi.String(\"SubOrg\"),\n\t\t\tCountry: pulumi.String(\"US\"),\n\t\t\tLocality: pulumi.String(\"San Francisco\"),\n\t\t\tProvince: pulumi.String(\"CA\"),\n\t\t\tRevoke: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = pkiSecret.NewSecretBackendIntermediateSetSigned(ctx, \"exampleSecretBackendIntermediateSetSigned\", \u0026pkiSecret.SecretBackendIntermediateSetSignedArgs{\n\t\t\tBackend: intermediate.Path,\n\t\t\tCertificate: exampleSecretBackendRootSignIntermediate.Certificate,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.Mount;\nimport com.pulumi.vault.MountArgs;\nimport com.pulumi.vault.pkiSecret.SecretBackendRootCert;\nimport com.pulumi.vault.pkiSecret.SecretBackendRootCertArgs;\nimport com.pulumi.vault.pkiSecret.SecretBackendIntermediateCertRequest;\nimport com.pulumi.vault.pkiSecret.SecretBackendIntermediateCertRequestArgs;\nimport com.pulumi.vault.pkiSecret.SecretBackendRootSignIntermediate;\nimport com.pulumi.vault.pkiSecret.SecretBackendRootSignIntermediateArgs;\nimport com.pulumi.vault.pkiSecret.SecretBackendIntermediateSetSigned;\nimport com.pulumi.vault.pkiSecret.SecretBackendIntermediateSetSignedArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var root = new Mount(\"root\", MountArgs.builder() \n .path(\"pki-root\")\n .type(\"pki\")\n .description(\"root\")\n .defaultLeaseTtlSeconds(8640000)\n .maxLeaseTtlSeconds(8640000)\n .build());\n\n var intermediate = new Mount(\"intermediate\", MountArgs.builder() \n .path(\"pki-int\")\n .type(root.type())\n .description(\"intermediate\")\n .defaultLeaseTtlSeconds(86400)\n .maxLeaseTtlSeconds(86400)\n .build());\n\n var exampleSecretBackendRootCert = new SecretBackendRootCert(\"exampleSecretBackendRootCert\", SecretBackendRootCertArgs.builder() \n .backend(root.path())\n .type(\"internal\")\n .commonName(\"RootOrg Root CA\")\n .ttl(86400)\n .format(\"pem\")\n .privateKeyFormat(\"der\")\n .keyType(\"rsa\")\n .keyBits(4096)\n .excludeCnFromSans(true)\n .ou(\"Organizational Unit\")\n .organization(\"RootOrg\")\n .country(\"US\")\n .locality(\"San Francisco\")\n .province(\"CA\")\n .build());\n\n var exampleSecretBackendIntermediateCertRequest = new SecretBackendIntermediateCertRequest(\"exampleSecretBackendIntermediateCertRequest\", SecretBackendIntermediateCertRequestArgs.builder() \n .backend(intermediate.path())\n .type(exampleSecretBackendRootCert.type())\n .commonName(\"SubOrg Intermediate CA\")\n .build());\n\n var exampleSecretBackendRootSignIntermediate = new SecretBackendRootSignIntermediate(\"exampleSecretBackendRootSignIntermediate\", SecretBackendRootSignIntermediateArgs.builder() \n .backend(root.path())\n .csr(exampleSecretBackendIntermediateCertRequest.csr())\n .commonName(\"SubOrg Intermediate CA\")\n .excludeCnFromSans(true)\n .ou(\"SubUnit\")\n .organization(\"SubOrg\")\n .country(\"US\")\n .locality(\"San Francisco\")\n .province(\"CA\")\n .revoke(true)\n .build());\n\n var exampleSecretBackendIntermediateSetSigned = new SecretBackendIntermediateSetSigned(\"exampleSecretBackendIntermediateSetSigned\", SecretBackendIntermediateSetSignedArgs.builder() \n .backend(intermediate.path())\n .certificate(exampleSecretBackendRootSignIntermediate.certificate())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n root:\n type: vault:Mount\n properties:\n path: pki-root\n type: pki\n description: root\n defaultLeaseTtlSeconds: 8.64e+06\n maxLeaseTtlSeconds: 8.64e+06\n intermediate:\n type: vault:Mount\n properties:\n path: pki-int\n type: ${root.type}\n description: intermediate\n defaultLeaseTtlSeconds: 86400\n maxLeaseTtlSeconds: 86400\n exampleSecretBackendRootCert:\n type: vault:pkiSecret:SecretBackendRootCert\n properties:\n backend: ${root.path}\n type: internal\n commonName: RootOrg Root CA\n ttl: 86400\n format: pem\n privateKeyFormat: der\n keyType: rsa\n keyBits: 4096\n excludeCnFromSans: true\n ou: Organizational Unit\n organization: RootOrg\n country: US\n locality: San Francisco\n province: CA\n exampleSecretBackendIntermediateCertRequest:\n type: vault:pkiSecret:SecretBackendIntermediateCertRequest\n properties:\n backend: ${intermediate.path}\n type: ${exampleSecretBackendRootCert.type}\n commonName: SubOrg Intermediate CA\n exampleSecretBackendRootSignIntermediate:\n type: vault:pkiSecret:SecretBackendRootSignIntermediate\n properties:\n backend: ${root.path}\n csr: ${exampleSecretBackendIntermediateCertRequest.csr}\n commonName: SubOrg Intermediate CA\n excludeCnFromSans: true\n ou: SubUnit\n organization: SubOrg\n country: US\n locality: San Francisco\n province: CA\n revoke: true\n exampleSecretBackendIntermediateSetSigned:\n type: vault:pkiSecret:SecretBackendIntermediateSetSigned\n properties:\n backend: ${intermediate.path}\n certificate: ${exampleSecretBackendRootSignIntermediate.certificate}\n```\n{{% /example %}}\n{{% /examples %}}",
"properties": {
"backend": {
"type": "string",
@@ -26830,7 +24059,7 @@
}
},
"vault:pkiSecret/secretBackendIssuer:SecretBackendIssuer": {
- "description": "Manages the lifecycle of an existing issuer on a PKI Secret Backend. This resource does not\ncreate issuers. It instead tracks and performs updates made to an existing issuer that was\ncreated by one of the PKI generate endpoints. For more information, see the \n[Vault documentation](https://developer.hashicorp.com/vault/api-docs/secret/pki#managing-keys-and-issuers)\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst pki = new vault.Mount(\"pki\", {\n path: \"pki\",\n type: \"pki\",\n defaultLeaseTtlSeconds: 3600,\n maxLeaseTtlSeconds: 86400,\n});\nconst root = new vault.pkisecret.SecretBackendRootCert(\"root\", {\n backend: pki.path,\n type: \"internal\",\n commonName: \"test\",\n ttl: \"86400\",\n});\nconst example = new vault.pkisecret.SecretBackendIssuer(\"example\", {\n backend: root.backend,\n issuerRef: root.issuerId,\n issuerName: \"example-issuer\",\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\npki = vault.Mount(\"pki\",\n path=\"pki\",\n type=\"pki\",\n default_lease_ttl_seconds=3600,\n max_lease_ttl_seconds=86400)\nroot = vault.pki_secret.SecretBackendRootCert(\"root\",\n backend=pki.path,\n type=\"internal\",\n common_name=\"test\",\n ttl=\"86400\")\nexample = vault.pki_secret.SecretBackendIssuer(\"example\",\n backend=root.backend,\n issuer_ref=root.issuer_id,\n issuer_name=\"example-issuer\")\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var pki = new Vault.Mount(\"pki\", new()\n {\n Path = \"pki\",\n Type = \"pki\",\n DefaultLeaseTtlSeconds = 3600,\n MaxLeaseTtlSeconds = 86400,\n });\n\n var root = new Vault.PkiSecret.SecretBackendRootCert(\"root\", new()\n {\n Backend = pki.Path,\n Type = \"internal\",\n CommonName = \"test\",\n Ttl = \"86400\",\n });\n\n var example = new Vault.PkiSecret.SecretBackendIssuer(\"example\", new()\n {\n Backend = root.Backend,\n IssuerRef = root.IssuerId,\n IssuerName = \"example-issuer\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault\"\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/pkiSecret\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tpki, err := vault.NewMount(ctx, \"pki\", \u0026vault.MountArgs{\n\t\t\tPath: pulumi.String(\"pki\"),\n\t\t\tType: pulumi.String(\"pki\"),\n\t\t\tDefaultLeaseTtlSeconds: pulumi.Int(3600),\n\t\t\tMaxLeaseTtlSeconds: pulumi.Int(86400),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\troot, err := pkiSecret.NewSecretBackendRootCert(ctx, \"root\", \u0026pkiSecret.SecretBackendRootCertArgs{\n\t\t\tBackend: pki.Path,\n\t\t\tType: pulumi.String(\"internal\"),\n\t\t\tCommonName: pulumi.String(\"test\"),\n\t\t\tTtl: pulumi.String(\"86400\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = pkiSecret.NewSecretBackendIssuer(ctx, \"example\", \u0026pkiSecret.SecretBackendIssuerArgs{\n\t\t\tBackend: root.Backend,\n\t\t\tIssuerRef: root.IssuerId,\n\t\t\tIssuerName: pulumi.String(\"example-issuer\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.Mount;\nimport com.pulumi.vault.MountArgs;\nimport com.pulumi.vault.pkiSecret.SecretBackendRootCert;\nimport com.pulumi.vault.pkiSecret.SecretBackendRootCertArgs;\nimport com.pulumi.vault.pkiSecret.SecretBackendIssuer;\nimport com.pulumi.vault.pkiSecret.SecretBackendIssuerArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var pki = new Mount(\"pki\", MountArgs.builder() \n .path(\"pki\")\n .type(\"pki\")\n .defaultLeaseTtlSeconds(3600)\n .maxLeaseTtlSeconds(86400)\n .build());\n\n var root = new SecretBackendRootCert(\"root\", SecretBackendRootCertArgs.builder() \n .backend(pki.path())\n .type(\"internal\")\n .commonName(\"test\")\n .ttl(\"86400\")\n .build());\n\n var example = new SecretBackendIssuer(\"example\", SecretBackendIssuerArgs.builder() \n .backend(root.backend())\n .issuerRef(root.issuerId())\n .issuerName(\"example-issuer\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n pki:\n type: vault:Mount\n properties:\n path: pki\n type: pki\n defaultLeaseTtlSeconds: 3600\n maxLeaseTtlSeconds: 86400\n root:\n type: vault:pkiSecret:SecretBackendRootCert\n properties:\n backend: ${pki.path}\n type: internal\n commonName: test\n ttl: 86400\n example:\n type: vault:pkiSecret:SecretBackendIssuer\n properties:\n backend: ${root.backend}\n issuerRef: ${root.issuerId}\n issuerName: example-issuer\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nPKI secret backend issuer can be imported using the `id`, e.g.\n\n```sh\n $ pulumi import vault:pkiSecret/secretBackendIssuer:SecretBackendIssuer example pki/issuer/bf9b0d48-d0dd-652c-30be-77d04fc7e94d\n```\n\n ",
+ "description": "Manages the lifecycle of an existing issuer on a PKI Secret Backend. This resource does not\ncreate issuers. It instead tracks and performs updates made to an existing issuer that was\ncreated by one of the PKI generate endpoints. For more information, see the \n[Vault documentation](https://developer.hashicorp.com/vault/api-docs/secret/pki#managing-keys-and-issuers)\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst pki = new vault.Mount(\"pki\", {\n path: \"pki\",\n type: \"pki\",\n defaultLeaseTtlSeconds: 3600,\n maxLeaseTtlSeconds: 86400,\n});\nconst root = new vault.pkisecret.SecretBackendRootCert(\"root\", {\n backend: pki.path,\n type: \"internal\",\n commonName: \"test\",\n ttl: \"86400\",\n});\nconst example = new vault.pkisecret.SecretBackendIssuer(\"example\", {\n backend: root.backend,\n issuerRef: root.issuerId,\n issuerName: \"example-issuer\",\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\npki = vault.Mount(\"pki\",\n path=\"pki\",\n type=\"pki\",\n default_lease_ttl_seconds=3600,\n max_lease_ttl_seconds=86400)\nroot = vault.pki_secret.SecretBackendRootCert(\"root\",\n backend=pki.path,\n type=\"internal\",\n common_name=\"test\",\n ttl=\"86400\")\nexample = vault.pki_secret.SecretBackendIssuer(\"example\",\n backend=root.backend,\n issuer_ref=root.issuer_id,\n issuer_name=\"example-issuer\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var pki = new Vault.Mount(\"pki\", new()\n {\n Path = \"pki\",\n Type = \"pki\",\n DefaultLeaseTtlSeconds = 3600,\n MaxLeaseTtlSeconds = 86400,\n });\n\n var root = new Vault.PkiSecret.SecretBackendRootCert(\"root\", new()\n {\n Backend = pki.Path,\n Type = \"internal\",\n CommonName = \"test\",\n Ttl = \"86400\",\n });\n\n var example = new Vault.PkiSecret.SecretBackendIssuer(\"example\", new()\n {\n Backend = root.Backend,\n IssuerRef = root.IssuerId,\n IssuerName = \"example-issuer\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault\"\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/pkiSecret\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tpki, err := vault.NewMount(ctx, \"pki\", \u0026vault.MountArgs{\n\t\t\tPath: pulumi.String(\"pki\"),\n\t\t\tType: pulumi.String(\"pki\"),\n\t\t\tDefaultLeaseTtlSeconds: pulumi.Int(3600),\n\t\t\tMaxLeaseTtlSeconds: pulumi.Int(86400),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\troot, err := pkiSecret.NewSecretBackendRootCert(ctx, \"root\", \u0026pkiSecret.SecretBackendRootCertArgs{\n\t\t\tBackend: pki.Path,\n\t\t\tType: pulumi.String(\"internal\"),\n\t\t\tCommonName: pulumi.String(\"test\"),\n\t\t\tTtl: pulumi.String(\"86400\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = pkiSecret.NewSecretBackendIssuer(ctx, \"example\", \u0026pkiSecret.SecretBackendIssuerArgs{\n\t\t\tBackend: root.Backend,\n\t\t\tIssuerRef: root.IssuerId,\n\t\t\tIssuerName: pulumi.String(\"example-issuer\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.Mount;\nimport com.pulumi.vault.MountArgs;\nimport com.pulumi.vault.pkiSecret.SecretBackendRootCert;\nimport com.pulumi.vault.pkiSecret.SecretBackendRootCertArgs;\nimport com.pulumi.vault.pkiSecret.SecretBackendIssuer;\nimport com.pulumi.vault.pkiSecret.SecretBackendIssuerArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var pki = new Mount(\"pki\", MountArgs.builder() \n .path(\"pki\")\n .type(\"pki\")\n .defaultLeaseTtlSeconds(3600)\n .maxLeaseTtlSeconds(86400)\n .build());\n\n var root = new SecretBackendRootCert(\"root\", SecretBackendRootCertArgs.builder() \n .backend(pki.path())\n .type(\"internal\")\n .commonName(\"test\")\n .ttl(\"86400\")\n .build());\n\n var example = new SecretBackendIssuer(\"example\", SecretBackendIssuerArgs.builder() \n .backend(root.backend())\n .issuerRef(root.issuerId())\n .issuerName(\"example-issuer\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n pki:\n type: vault:Mount\n properties:\n path: pki\n type: pki\n defaultLeaseTtlSeconds: 3600\n maxLeaseTtlSeconds: 86400\n root:\n type: vault:pkiSecret:SecretBackendRootCert\n properties:\n backend: ${pki.path}\n type: internal\n commonName: test\n ttl: '86400'\n example:\n type: vault:pkiSecret:SecretBackendIssuer\n properties:\n backend: ${root.backend}\n issuerRef: ${root.issuerId}\n issuerName: example-issuer\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nPKI secret backend issuer can be imported using the `id`, e.g.\n\n```sh\n $ pulumi import vault:pkiSecret/secretBackendIssuer:SecretBackendIssuer example pki/issuer/bf9b0d48-d0dd-652c-30be-77d04fc7e94d\n```\n ",
"properties": {
"backend": {
"type": "string",
@@ -27047,7 +24276,7 @@
}
},
"vault:pkiSecret/secretBackendKey:SecretBackendKey": {
- "description": "Creates a key on a PKI Secret Backend for Vault.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.Mount;\nimport com.pulumi.vault.MountArgs;\nimport com.pulumi.vault.pkiSecret.SecretBackendKey;\nimport com.pulumi.vault.pkiSecret.SecretBackendKeyArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var pki = new Mount(\"pki\", MountArgs.builder() \n .path(\"pki\")\n .type(\"pki\")\n .defaultLeaseTtlSeconds(3600)\n .maxLeaseTtlSeconds(86400)\n .build());\n\n var key = new SecretBackendKey(\"key\", SecretBackendKeyArgs.builder() \n .mount(pki.path())\n .type(\"exported\")\n .keyName(\"example-key\")\n .keyType(\"rsa\")\n .keyBits(\"2048\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n pki:\n type: vault:Mount\n properties:\n path: pki\n type: pki\n defaultLeaseTtlSeconds: 3600\n maxLeaseTtlSeconds: 86400\n key:\n type: vault:pkiSecret:SecretBackendKey\n properties:\n mount: ${pki.path}\n type: exported\n keyName: example-key\n keyType: rsa\n keyBits: 2048\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nPKI secret backend key can be imported using the `id`, e.g.\n\n```sh\n $ pulumi import vault:pkiSecret/secretBackendKey:SecretBackendKey key pki/key/bf9b0d48-d0dd-652c-30be-77d04fc7e94d\n```\n\n ",
+ "description": "Creates a key on a PKI Secret Backend for Vault.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.Mount;\nimport com.pulumi.vault.MountArgs;\nimport com.pulumi.vault.pkiSecret.SecretBackendKey;\nimport com.pulumi.vault.pkiSecret.SecretBackendKeyArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var pki = new Mount(\"pki\", MountArgs.builder() \n .path(\"pki\")\n .type(\"pki\")\n .defaultLeaseTtlSeconds(3600)\n .maxLeaseTtlSeconds(86400)\n .build());\n\n var key = new SecretBackendKey(\"key\", SecretBackendKeyArgs.builder() \n .mount(pki.path())\n .type(\"exported\")\n .keyName(\"example-key\")\n .keyType(\"rsa\")\n .keyBits(\"2048\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n pki:\n type: vault:Mount\n properties:\n path: pki\n type: pki\n defaultLeaseTtlSeconds: 3600\n maxLeaseTtlSeconds: 86400\n key:\n type: vault:pkiSecret:SecretBackendKey\n properties:\n mount: ${pki.path}\n type: exported\n keyName: example-key\n keyType: rsa\n keyBits: '2048'\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nPKI secret backend key can be imported using the `id`, e.g.\n\n```sh\n $ pulumi import vault:pkiSecret/secretBackendKey:SecretBackendKey key pki/key/bf9b0d48-d0dd-652c-30be-77d04fc7e94d\n```\n ",
"properties": {
"backend": {
"type": "string",
@@ -27185,7 +24414,7 @@
}
},
"vault:pkiSecret/secretBackendRole:SecretBackendRole": {
- "description": "Creates a role on an PKI Secret Backend for Vault.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst pki = new vault.Mount(\"pki\", {\n path: \"pki\",\n type: \"pki\",\n defaultLeaseTtlSeconds: 3600,\n maxLeaseTtlSeconds: 86400,\n});\nconst role = new vault.pkisecret.SecretBackendRole(\"role\", {\n backend: pki.path,\n ttl: \"3600\",\n allowIpSans: true,\n keyType: \"rsa\",\n keyBits: 4096,\n allowedDomains: [\n \"example.com\",\n \"my.domain\",\n ],\n allowSubdomains: true,\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\npki = vault.Mount(\"pki\",\n path=\"pki\",\n type=\"pki\",\n default_lease_ttl_seconds=3600,\n max_lease_ttl_seconds=86400)\nrole = vault.pki_secret.SecretBackendRole(\"role\",\n backend=pki.path,\n ttl=\"3600\",\n allow_ip_sans=True,\n key_type=\"rsa\",\n key_bits=4096,\n allowed_domains=[\n \"example.com\",\n \"my.domain\",\n ],\n allow_subdomains=True)\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var pki = new Vault.Mount(\"pki\", new()\n {\n Path = \"pki\",\n Type = \"pki\",\n DefaultLeaseTtlSeconds = 3600,\n MaxLeaseTtlSeconds = 86400,\n });\n\n var role = new Vault.PkiSecret.SecretBackendRole(\"role\", new()\n {\n Backend = pki.Path,\n Ttl = \"3600\",\n AllowIpSans = true,\n KeyType = \"rsa\",\n KeyBits = 4096,\n AllowedDomains = new[]\n {\n \"example.com\",\n \"my.domain\",\n },\n AllowSubdomains = true,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault\"\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/pkiSecret\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tpki, err := vault.NewMount(ctx, \"pki\", \u0026vault.MountArgs{\n\t\t\tPath: pulumi.String(\"pki\"),\n\t\t\tType: pulumi.String(\"pki\"),\n\t\t\tDefaultLeaseTtlSeconds: pulumi.Int(3600),\n\t\t\tMaxLeaseTtlSeconds: pulumi.Int(86400),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = pkiSecret.NewSecretBackendRole(ctx, \"role\", \u0026pkiSecret.SecretBackendRoleArgs{\n\t\t\tBackend: pki.Path,\n\t\t\tTtl: pulumi.String(\"3600\"),\n\t\t\tAllowIpSans: pulumi.Bool(true),\n\t\t\tKeyType: pulumi.String(\"rsa\"),\n\t\t\tKeyBits: pulumi.Int(4096),\n\t\t\tAllowedDomains: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"example.com\"),\n\t\t\t\tpulumi.String(\"my.domain\"),\n\t\t\t},\n\t\t\tAllowSubdomains: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.Mount;\nimport com.pulumi.vault.MountArgs;\nimport com.pulumi.vault.pkiSecret.SecretBackendRole;\nimport com.pulumi.vault.pkiSecret.SecretBackendRoleArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var pki = new Mount(\"pki\", MountArgs.builder() \n .path(\"pki\")\n .type(\"pki\")\n .defaultLeaseTtlSeconds(3600)\n .maxLeaseTtlSeconds(86400)\n .build());\n\n var role = new SecretBackendRole(\"role\", SecretBackendRoleArgs.builder() \n .backend(pki.path())\n .ttl(3600)\n .allowIpSans(true)\n .keyType(\"rsa\")\n .keyBits(4096)\n .allowedDomains( \n \"example.com\",\n \"my.domain\")\n .allowSubdomains(true)\n .build());\n\n }\n}\n```\n```yaml\nresources:\n pki:\n type: vault:Mount\n properties:\n path: pki\n type: pki\n defaultLeaseTtlSeconds: 3600\n maxLeaseTtlSeconds: 86400\n role:\n type: vault:pkiSecret:SecretBackendRole\n properties:\n backend: ${pki.path}\n ttl: 3600\n allowIpSans: true\n keyType: rsa\n keyBits: 4096\n allowedDomains:\n - example.com\n - my.domain\n allowSubdomains: true\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nPKI secret backend roles can be imported using the `path`, e.g.\n\n```sh\n $ pulumi import vault:pkiSecret/secretBackendRole:SecretBackendRole role pki/roles/my_role\n```\n\n ",
+ "description": "Creates a role on an PKI Secret Backend for Vault.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst pki = new vault.Mount(\"pki\", {\n path: \"pki\",\n type: \"pki\",\n defaultLeaseTtlSeconds: 3600,\n maxLeaseTtlSeconds: 86400,\n});\nconst role = new vault.pkisecret.SecretBackendRole(\"role\", {\n backend: pki.path,\n ttl: \"3600\",\n allowIpSans: true,\n keyType: \"rsa\",\n keyBits: 4096,\n allowedDomains: [\n \"example.com\",\n \"my.domain\",\n ],\n allowSubdomains: true,\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\npki = vault.Mount(\"pki\",\n path=\"pki\",\n type=\"pki\",\n default_lease_ttl_seconds=3600,\n max_lease_ttl_seconds=86400)\nrole = vault.pki_secret.SecretBackendRole(\"role\",\n backend=pki.path,\n ttl=\"3600\",\n allow_ip_sans=True,\n key_type=\"rsa\",\n key_bits=4096,\n allowed_domains=[\n \"example.com\",\n \"my.domain\",\n ],\n allow_subdomains=True)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var pki = new Vault.Mount(\"pki\", new()\n {\n Path = \"pki\",\n Type = \"pki\",\n DefaultLeaseTtlSeconds = 3600,\n MaxLeaseTtlSeconds = 86400,\n });\n\n var role = new Vault.PkiSecret.SecretBackendRole(\"role\", new()\n {\n Backend = pki.Path,\n Ttl = \"3600\",\n AllowIpSans = true,\n KeyType = \"rsa\",\n KeyBits = 4096,\n AllowedDomains = new[]\n {\n \"example.com\",\n \"my.domain\",\n },\n AllowSubdomains = true,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault\"\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/pkiSecret\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tpki, err := vault.NewMount(ctx, \"pki\", \u0026vault.MountArgs{\n\t\t\tPath: pulumi.String(\"pki\"),\n\t\t\tType: pulumi.String(\"pki\"),\n\t\t\tDefaultLeaseTtlSeconds: pulumi.Int(3600),\n\t\t\tMaxLeaseTtlSeconds: pulumi.Int(86400),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = pkiSecret.NewSecretBackendRole(ctx, \"role\", \u0026pkiSecret.SecretBackendRoleArgs{\n\t\t\tBackend: pki.Path,\n\t\t\tTtl: pulumi.String(\"3600\"),\n\t\t\tAllowIpSans: pulumi.Bool(true),\n\t\t\tKeyType: pulumi.String(\"rsa\"),\n\t\t\tKeyBits: pulumi.Int(4096),\n\t\t\tAllowedDomains: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"example.com\"),\n\t\t\t\tpulumi.String(\"my.domain\"),\n\t\t\t},\n\t\t\tAllowSubdomains: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.Mount;\nimport com.pulumi.vault.MountArgs;\nimport com.pulumi.vault.pkiSecret.SecretBackendRole;\nimport com.pulumi.vault.pkiSecret.SecretBackendRoleArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var pki = new Mount(\"pki\", MountArgs.builder() \n .path(\"pki\")\n .type(\"pki\")\n .defaultLeaseTtlSeconds(3600)\n .maxLeaseTtlSeconds(86400)\n .build());\n\n var role = new SecretBackendRole(\"role\", SecretBackendRoleArgs.builder() \n .backend(pki.path())\n .ttl(3600)\n .allowIpSans(true)\n .keyType(\"rsa\")\n .keyBits(4096)\n .allowedDomains( \n \"example.com\",\n \"my.domain\")\n .allowSubdomains(true)\n .build());\n\n }\n}\n```\n```yaml\nresources:\n pki:\n type: vault:Mount\n properties:\n path: pki\n type: pki\n defaultLeaseTtlSeconds: 3600\n maxLeaseTtlSeconds: 86400\n role:\n type: vault:pkiSecret:SecretBackendRole\n properties:\n backend: ${pki.path}\n ttl: 3600\n allowIpSans: true\n keyType: rsa\n keyBits: 4096\n allowedDomains:\n - example.com\n - my.domain\n allowSubdomains: true\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nPKI secret backend roles can be imported using the `path`, e.g.\n\n```sh\n $ pulumi import vault:pkiSecret/secretBackendRole:SecretBackendRole role pki/roles/my_role\n```\n ",
"properties": {
"allowAnyName": {
"type": "boolean",
@@ -27360,6 +24589,13 @@
},
"description": "The organization of generated certificates\n"
},
+ "policyIdentifier": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/vault:pkiSecret/SecretBackendRolePolicyIdentifier:SecretBackendRolePolicyIdentifier"
+ },
+ "description": "(Vault 1.11+ only) A block for specifying policy identifers. The `policy_identifier` block can be repeated, and supports the following arguments:\n"
+ },
"policyIdentifiers": {
"type": "array",
"items": {
@@ -27596,6 +24832,13 @@
},
"description": "The organization of generated certificates\n"
},
+ "policyIdentifier": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/vault:pkiSecret/SecretBackendRolePolicyIdentifier:SecretBackendRolePolicyIdentifier"
+ },
+ "description": "(Vault 1.11+ only) A block for specifying policy identifers. The `policy_identifier` block can be repeated, and supports the following arguments:\n"
+ },
"policyIdentifiers": {
"type": "array",
"items": {
@@ -27827,6 +25070,13 @@
},
"description": "The organization of generated certificates\n"
},
+ "policyIdentifier": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/vault:pkiSecret/SecretBackendRolePolicyIdentifier:SecretBackendRolePolicyIdentifier"
+ },
+ "description": "(Vault 1.11+ only) A block for specifying policy identifers. The `policy_identifier` block can be repeated, and supports the following arguments:\n"
+ },
"policyIdentifiers": {
"type": "array",
"items": {
@@ -27880,7 +25130,7 @@
}
},
"vault:pkiSecret/secretBackendRootCert:SecretBackendRootCert": {
- "description": "{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst test = new vault.pkisecret.SecretBackendRootCert(\"test\", {\n backend: vault_mount.pki.path,\n type: \"internal\",\n commonName: \"Root CA\",\n ttl: \"315360000\",\n format: \"pem\",\n privateKeyFormat: \"der\",\n keyType: \"rsa\",\n keyBits: 4096,\n excludeCnFromSans: true,\n ou: \"My OU\",\n organization: \"My organization\",\n}, {\n dependsOn: [vault_mount.pki],\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\ntest = vault.pki_secret.SecretBackendRootCert(\"test\",\n backend=vault_mount[\"pki\"][\"path\"],\n type=\"internal\",\n common_name=\"Root CA\",\n ttl=\"315360000\",\n format=\"pem\",\n private_key_format=\"der\",\n key_type=\"rsa\",\n key_bits=4096,\n exclude_cn_from_sans=True,\n ou=\"My OU\",\n organization=\"My organization\",\n opts=pulumi.ResourceOptions(depends_on=[vault_mount[\"pki\"]]))\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var test = new Vault.PkiSecret.SecretBackendRootCert(\"test\", new()\n {\n Backend = vault_mount.Pki.Path,\n Type = \"internal\",\n CommonName = \"Root CA\",\n Ttl = \"315360000\",\n Format = \"pem\",\n PrivateKeyFormat = \"der\",\n KeyType = \"rsa\",\n KeyBits = 4096,\n ExcludeCnFromSans = true,\n Ou = \"My OU\",\n Organization = \"My organization\",\n }, new CustomResourceOptions\n {\n DependsOn = new[]\n {\n vault_mount.Pki,\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/pkiSecret\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := pkiSecret.NewSecretBackendRootCert(ctx, \"test\", \u0026pkiSecret.SecretBackendRootCertArgs{\n\t\t\tBackend: pulumi.Any(vault_mount.Pki.Path),\n\t\t\tType: pulumi.String(\"internal\"),\n\t\t\tCommonName: pulumi.String(\"Root CA\"),\n\t\t\tTtl: pulumi.String(\"315360000\"),\n\t\t\tFormat: pulumi.String(\"pem\"),\n\t\t\tPrivateKeyFormat: pulumi.String(\"der\"),\n\t\t\tKeyType: pulumi.String(\"rsa\"),\n\t\t\tKeyBits: pulumi.Int(4096),\n\t\t\tExcludeCnFromSans: pulumi.Bool(true),\n\t\t\tOu: pulumi.String(\"My OU\"),\n\t\t\tOrganization: pulumi.String(\"My organization\"),\n\t\t}, pulumi.DependsOn([]pulumi.Resource{\n\t\t\tvault_mount.Pki,\n\t\t}))\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.pkiSecret.SecretBackendRootCert;\nimport com.pulumi.vault.pkiSecret.SecretBackendRootCertArgs;\nimport com.pulumi.resources.CustomResourceOptions;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var test = new SecretBackendRootCert(\"test\", SecretBackendRootCertArgs.builder() \n .backend(vault_mount.pki().path())\n .type(\"internal\")\n .commonName(\"Root CA\")\n .ttl(\"315360000\")\n .format(\"pem\")\n .privateKeyFormat(\"der\")\n .keyType(\"rsa\")\n .keyBits(4096)\n .excludeCnFromSans(true)\n .ou(\"My OU\")\n .organization(\"My organization\")\n .build(), CustomResourceOptions.builder()\n .dependsOn(vault_mount.pki())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n test:\n type: vault:pkiSecret:SecretBackendRootCert\n properties:\n backend: ${vault_mount.pki.path}\n type: internal\n commonName: Root CA\n ttl: 315360000\n format: pem\n privateKeyFormat: der\n keyType: rsa\n keyBits: 4096\n excludeCnFromSans: true\n ou: My OU\n organization: My organization\n options:\n dependson:\n - ${vault_mount.pki}\n```\n{{% /example %}}\n{{% /examples %}}",
+ "description": "{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst test = new vault.pkisecret.SecretBackendRootCert(\"test\", {\n backend: vault_mount.pki.path,\n type: \"internal\",\n commonName: \"Root CA\",\n ttl: \"315360000\",\n format: \"pem\",\n privateKeyFormat: \"der\",\n keyType: \"rsa\",\n keyBits: 4096,\n excludeCnFromSans: true,\n ou: \"My OU\",\n organization: \"My organization\",\n}, {\n dependsOn: [vault_mount.pki],\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\ntest = vault.pki_secret.SecretBackendRootCert(\"test\",\n backend=vault_mount[\"pki\"][\"path\"],\n type=\"internal\",\n common_name=\"Root CA\",\n ttl=\"315360000\",\n format=\"pem\",\n private_key_format=\"der\",\n key_type=\"rsa\",\n key_bits=4096,\n exclude_cn_from_sans=True,\n ou=\"My OU\",\n organization=\"My organization\",\n opts=pulumi.ResourceOptions(depends_on=[vault_mount[\"pki\"]]))\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var test = new Vault.PkiSecret.SecretBackendRootCert(\"test\", new()\n {\n Backend = vault_mount.Pki.Path,\n Type = \"internal\",\n CommonName = \"Root CA\",\n Ttl = \"315360000\",\n Format = \"pem\",\n PrivateKeyFormat = \"der\",\n KeyType = \"rsa\",\n KeyBits = 4096,\n ExcludeCnFromSans = true,\n Ou = \"My OU\",\n Organization = \"My organization\",\n }, new CustomResourceOptions\n {\n DependsOn = new[]\n {\n vault_mount.Pki,\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/pkiSecret\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := pkiSecret.NewSecretBackendRootCert(ctx, \"test\", \u0026pkiSecret.SecretBackendRootCertArgs{\n\t\t\tBackend: pulumi.Any(vault_mount.Pki.Path),\n\t\t\tType: pulumi.String(\"internal\"),\n\t\t\tCommonName: pulumi.String(\"Root CA\"),\n\t\t\tTtl: pulumi.String(\"315360000\"),\n\t\t\tFormat: pulumi.String(\"pem\"),\n\t\t\tPrivateKeyFormat: pulumi.String(\"der\"),\n\t\t\tKeyType: pulumi.String(\"rsa\"),\n\t\t\tKeyBits: pulumi.Int(4096),\n\t\t\tExcludeCnFromSans: pulumi.Bool(true),\n\t\t\tOu: pulumi.String(\"My OU\"),\n\t\t\tOrganization: pulumi.String(\"My organization\"),\n\t\t}, pulumi.DependsOn([]pulumi.Resource{\n\t\t\tvault_mount.Pki,\n\t\t}))\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.pkiSecret.SecretBackendRootCert;\nimport com.pulumi.vault.pkiSecret.SecretBackendRootCertArgs;\nimport com.pulumi.resources.CustomResourceOptions;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var test = new SecretBackendRootCert(\"test\", SecretBackendRootCertArgs.builder() \n .backend(vault_mount.pki().path())\n .type(\"internal\")\n .commonName(\"Root CA\")\n .ttl(\"315360000\")\n .format(\"pem\")\n .privateKeyFormat(\"der\")\n .keyType(\"rsa\")\n .keyBits(4096)\n .excludeCnFromSans(true)\n .ou(\"My OU\")\n .organization(\"My organization\")\n .build(), CustomResourceOptions.builder()\n .dependsOn(vault_mount.pki())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n test:\n type: vault:pkiSecret:SecretBackendRootCert\n properties:\n backend: ${vault_mount.pki.path}\n type: internal\n commonName: Root CA\n ttl: '315360000'\n format: pem\n privateKeyFormat: der\n keyType: rsa\n keyBits: 4096\n excludeCnFromSans: true\n ou: My OU\n organization: My organization\n options:\n dependson:\n - ${vault_mount.pki}\n```\n{{% /example %}}\n{{% /examples %}}",
"properties": {
"altNames": {
"type": "array",
@@ -28401,7 +25651,7 @@
}
},
"vault:pkiSecret/secretBackendRootSignIntermediate:SecretBackendRootSignIntermediate": {
- "description": "Creates PKI certificate.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst root = new vault.pkisecret.SecretBackendRootSignIntermediate(\"root\", {\n backend: vault_mount.root.path,\n csr: vault_pki_secret_backend_intermediate_cert_request.intermediate.csr,\n commonName: \"Intermediate CA\",\n excludeCnFromSans: true,\n ou: \"My OU\",\n organization: \"My organization\",\n}, {\n dependsOn: [vault_pki_secret_backend_intermediate_cert_request.intermediate],\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nroot = vault.pki_secret.SecretBackendRootSignIntermediate(\"root\",\n backend=vault_mount[\"root\"][\"path\"],\n csr=vault_pki_secret_backend_intermediate_cert_request[\"intermediate\"][\"csr\"],\n common_name=\"Intermediate CA\",\n exclude_cn_from_sans=True,\n ou=\"My OU\",\n organization=\"My organization\",\n opts=pulumi.ResourceOptions(depends_on=[vault_pki_secret_backend_intermediate_cert_request[\"intermediate\"]]))\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var root = new Vault.PkiSecret.SecretBackendRootSignIntermediate(\"root\", new()\n {\n Backend = vault_mount.Root.Path,\n Csr = vault_pki_secret_backend_intermediate_cert_request.Intermediate.Csr,\n CommonName = \"Intermediate CA\",\n ExcludeCnFromSans = true,\n Ou = \"My OU\",\n Organization = \"My organization\",\n }, new CustomResourceOptions\n {\n DependsOn = new[]\n {\n vault_pki_secret_backend_intermediate_cert_request.Intermediate,\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/pkiSecret\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := pkiSecret.NewSecretBackendRootSignIntermediate(ctx, \"root\", \u0026pkiSecret.SecretBackendRootSignIntermediateArgs{\n\t\t\tBackend: pulumi.Any(vault_mount.Root.Path),\n\t\t\tCsr: pulumi.Any(vault_pki_secret_backend_intermediate_cert_request.Intermediate.Csr),\n\t\t\tCommonName: pulumi.String(\"Intermediate CA\"),\n\t\t\tExcludeCnFromSans: pulumi.Bool(true),\n\t\t\tOu: pulumi.String(\"My OU\"),\n\t\t\tOrganization: pulumi.String(\"My organization\"),\n\t\t}, pulumi.DependsOn([]pulumi.Resource{\n\t\t\tvault_pki_secret_backend_intermediate_cert_request.Intermediate,\n\t\t}))\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.pkiSecret.SecretBackendRootSignIntermediate;\nimport com.pulumi.vault.pkiSecret.SecretBackendRootSignIntermediateArgs;\nimport com.pulumi.resources.CustomResourceOptions;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var root = new SecretBackendRootSignIntermediate(\"root\", SecretBackendRootSignIntermediateArgs.builder() \n .backend(vault_mount.root().path())\n .csr(vault_pki_secret_backend_intermediate_cert_request.intermediate().csr())\n .commonName(\"Intermediate CA\")\n .excludeCnFromSans(true)\n .ou(\"My OU\")\n .organization(\"My organization\")\n .build(), CustomResourceOptions.builder()\n .dependsOn(vault_pki_secret_backend_intermediate_cert_request.intermediate())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n root:\n type: vault:pkiSecret:SecretBackendRootSignIntermediate\n properties:\n backend: ${vault_mount.root.path}\n csr: ${vault_pki_secret_backend_intermediate_cert_request.intermediate.csr}\n commonName: Intermediate CA\n excludeCnFromSans: true\n ou: My OU\n organization: My organization\n options:\n dependson:\n - ${vault_pki_secret_backend_intermediate_cert_request.intermediate}\n```\n{{% /example %}}\n{{% /examples %}}\n## Deprecations\n\n* `serial` - Use `serial_number` instead.\n",
+ "description": "Creates PKI certificate.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst root = new vault.pkisecret.SecretBackendRootSignIntermediate(\"root\", {\n backend: vault_mount.root.path,\n csr: vault_pki_secret_backend_intermediate_cert_request.intermediate.csr,\n commonName: \"Intermediate CA\",\n excludeCnFromSans: true,\n ou: \"My OU\",\n organization: \"My organization\",\n}, {\n dependsOn: [vault_pki_secret_backend_intermediate_cert_request.intermediate],\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nroot = vault.pki_secret.SecretBackendRootSignIntermediate(\"root\",\n backend=vault_mount[\"root\"][\"path\"],\n csr=vault_pki_secret_backend_intermediate_cert_request[\"intermediate\"][\"csr\"],\n common_name=\"Intermediate CA\",\n exclude_cn_from_sans=True,\n ou=\"My OU\",\n organization=\"My organization\",\n opts=pulumi.ResourceOptions(depends_on=[vault_pki_secret_backend_intermediate_cert_request[\"intermediate\"]]))\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var root = new Vault.PkiSecret.SecretBackendRootSignIntermediate(\"root\", new()\n {\n Backend = vault_mount.Root.Path,\n Csr = vault_pki_secret_backend_intermediate_cert_request.Intermediate.Csr,\n CommonName = \"Intermediate CA\",\n ExcludeCnFromSans = true,\n Ou = \"My OU\",\n Organization = \"My organization\",\n }, new CustomResourceOptions\n {\n DependsOn = new[]\n {\n vault_pki_secret_backend_intermediate_cert_request.Intermediate,\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/pkiSecret\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := pkiSecret.NewSecretBackendRootSignIntermediate(ctx, \"root\", \u0026pkiSecret.SecretBackendRootSignIntermediateArgs{\n\t\t\tBackend: pulumi.Any(vault_mount.Root.Path),\n\t\t\tCsr: pulumi.Any(vault_pki_secret_backend_intermediate_cert_request.Intermediate.Csr),\n\t\t\tCommonName: pulumi.String(\"Intermediate CA\"),\n\t\t\tExcludeCnFromSans: pulumi.Bool(true),\n\t\t\tOu: pulumi.String(\"My OU\"),\n\t\t\tOrganization: pulumi.String(\"My organization\"),\n\t\t}, pulumi.DependsOn([]pulumi.Resource{\n\t\t\tvault_pki_secret_backend_intermediate_cert_request.Intermediate,\n\t\t}))\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.pkiSecret.SecretBackendRootSignIntermediate;\nimport com.pulumi.vault.pkiSecret.SecretBackendRootSignIntermediateArgs;\nimport com.pulumi.resources.CustomResourceOptions;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var root = new SecretBackendRootSignIntermediate(\"root\", SecretBackendRootSignIntermediateArgs.builder() \n .backend(vault_mount.root().path())\n .csr(vault_pki_secret_backend_intermediate_cert_request.intermediate().csr())\n .commonName(\"Intermediate CA\")\n .excludeCnFromSans(true)\n .ou(\"My OU\")\n .organization(\"My organization\")\n .build(), CustomResourceOptions.builder()\n .dependsOn(vault_pki_secret_backend_intermediate_cert_request.intermediate())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n root:\n type: vault:pkiSecret:SecretBackendRootSignIntermediate\n properties:\n backend: ${vault_mount.root.path}\n csr: ${vault_pki_secret_backend_intermediate_cert_request.intermediate.csr}\n commonName: Intermediate CA\n excludeCnFromSans: true\n ou: My OU\n organization: My organization\n options:\n dependson:\n - ${vault_pki_secret_backend_intermediate_cert_request.intermediate}\n```\n{{% /example %}}\n{{% /examples %}}\n## Deprecations\n\n* `serial` - Use `serial_number` instead.\n",
"properties": {
"altNames": {
"type": "array",
@@ -28847,7 +26097,7 @@
}
},
"vault:pkiSecret/secretBackendSign:SecretBackendSign": {
- "description": "{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst test = new vault.pkisecret.SecretBackendSign(\"test\", {\n backend: vault_mount.pki.path,\n csr: `-----BEGIN CERTIFICATE REQUEST-----\nMIIEqDCCApACAQAwYzELMAkGA1UEBhMCQVUxEzARBgNVBAgMClNvbWUtU3RhdGUx\nITAfBgNVBAoMGEludGVybmV0IFdpZGdpdHMgUHR5IEx0ZDEcMBoGA1UEAwwTY2Vy\ndC50ZXN0Lm15LmRvbWFpbjCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIB\nAJupYCQ8UVCWII1Zof1c6YcSSaM9hEaDU78cfKP5RoSeH10BvrWRfT+mzCONVpNP\nCW9Iabtvk6hm0ot6ilnndEyVJbc0g7hdDLBX5BM25D+DGZGJRKUz1V+uBrWmXtIt\nVonj7JTDTe7ViH0GDsB7CvqXFGXO2a2cDYBchLkL6vQiFPshxvUsLtwxuy/qdYgy\nX6ya+AUoZcoQGy1XxNjfH6cPtWSWQGEp1oPR6vL9hU3laTZb3C+VV4jZem+he8/0\nV+qV6fLG92WTXm2hmf8nrtUqqJ+C7mW/RJod+TviviBadIX0OHXW7k5HVsZood01\nte8vMRUNJNiZfa9EMIK5oncbQn0LcM3Wo9VrjpL7jREb/4HCS2gswYGv7hzk9cCS\nkVY4rDucchKbApuI3kfzmO7GFOF5eiSkYZpY/czNn7VVM3WCu6dpOX4+3rhgrZQw\nkY14L930DaLVRUgve/zKVP2D2GHdEOs+MbV7s96UgigT9pXly/yHPj+1sSYqmnaD\n5b7jSeJusmzO/nrwXVGLsnezR87VzHl9Ux9g5s6zh+R+PrZuVxYsLvoUpaasH47O\ngIcBzSb/6pSGZKAUizmYsHsR1k88dAvsQ+FsUDaNokdi9VndEB4QPmiFmjyLV+0I\n1TFoXop4sW11NPz1YCq+IxnYrEaIN3PyhY0GvBJDFY1/AgMBAAGgADANBgkqhkiG\n9w0BAQsFAAOCAgEActuqnqS8Y9UF7e08w7tR3FPzGecWreuvxILrlFEZJxiLPFqL\nIt7uJvtypCVQvz6UQzKdBYO7tMpRaWViB8DrWzXNZjLMrg+QHcpveg8C0Ett4scG\nfnvLk6fTDFYrnGvwHTqiHos5i0y3bFLyS1BGwSpdLAykGtvC+VM8mRyw/Y7CPcKN\n77kebY/9xduW1g2uxWLr0x90RuQDv9psPojT+59tRLGSp5Kt0IeD3QtnAZEFE4aN\nvt+Pd69eg3BgZ8ZeDgoqAw3yppvOkpAFiE5pw2qPZaM4SRphl4d2Lek2zNIMyZqv\ndo5zh356HOgXtDaSg0POnRGrN/Ua+LMCRTg6GEPUnx9uQb/zt8Zu0hIexDGyykp1\nOGqtWlv/Nc8UYuS38v0BeB6bMPeoqQUjkqs8nHlAEFn0KlgYdtDC+7SdQx6wS4te\ndBKRNDfC4lS3jYJgs55jHqonZgkpSi3bamlxpfpW0ukGBcmq91wRe4bOw/4uD/vf\nUwqMWOdCYcU3mdYNjTWy22ORW3SGFQxMBwpUEURCSoeqWr6aJeQ7KAYkx1PrB5T8\nOTEc13lWf+B0PU9UJuGTsmpIuImPDVd0EVDayr3mT5dDbqTVDbe8ppf2IswABmf0\no3DybUeUmknYjl109rdSf+76nuREICHatxXgN3xCMFuBaN4WLO+ksd6Y1Ys=\n-----END CERTIFICATE REQUEST-----\n`,\n commonName: \"test.my.domain\",\n}, {\n dependsOn: [vault_pki_secret_backend_role.admin],\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\ntest = vault.pki_secret.SecretBackendSign(\"test\",\n backend=vault_mount[\"pki\"][\"path\"],\n csr=\"\"\"-----BEGIN CERTIFICATE REQUEST-----\nMIIEqDCCApACAQAwYzELMAkGA1UEBhMCQVUxEzARBgNVBAgMClNvbWUtU3RhdGUx\nITAfBgNVBAoMGEludGVybmV0IFdpZGdpdHMgUHR5IEx0ZDEcMBoGA1UEAwwTY2Vy\ndC50ZXN0Lm15LmRvbWFpbjCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIB\nAJupYCQ8UVCWII1Zof1c6YcSSaM9hEaDU78cfKP5RoSeH10BvrWRfT+mzCONVpNP\nCW9Iabtvk6hm0ot6ilnndEyVJbc0g7hdDLBX5BM25D+DGZGJRKUz1V+uBrWmXtIt\nVonj7JTDTe7ViH0GDsB7CvqXFGXO2a2cDYBchLkL6vQiFPshxvUsLtwxuy/qdYgy\nX6ya+AUoZcoQGy1XxNjfH6cPtWSWQGEp1oPR6vL9hU3laTZb3C+VV4jZem+he8/0\nV+qV6fLG92WTXm2hmf8nrtUqqJ+C7mW/RJod+TviviBadIX0OHXW7k5HVsZood01\nte8vMRUNJNiZfa9EMIK5oncbQn0LcM3Wo9VrjpL7jREb/4HCS2gswYGv7hzk9cCS\nkVY4rDucchKbApuI3kfzmO7GFOF5eiSkYZpY/czNn7VVM3WCu6dpOX4+3rhgrZQw\nkY14L930DaLVRUgve/zKVP2D2GHdEOs+MbV7s96UgigT9pXly/yHPj+1sSYqmnaD\n5b7jSeJusmzO/nrwXVGLsnezR87VzHl9Ux9g5s6zh+R+PrZuVxYsLvoUpaasH47O\ngIcBzSb/6pSGZKAUizmYsHsR1k88dAvsQ+FsUDaNokdi9VndEB4QPmiFmjyLV+0I\n1TFoXop4sW11NPz1YCq+IxnYrEaIN3PyhY0GvBJDFY1/AgMBAAGgADANBgkqhkiG\n9w0BAQsFAAOCAgEActuqnqS8Y9UF7e08w7tR3FPzGecWreuvxILrlFEZJxiLPFqL\nIt7uJvtypCVQvz6UQzKdBYO7tMpRaWViB8DrWzXNZjLMrg+QHcpveg8C0Ett4scG\nfnvLk6fTDFYrnGvwHTqiHos5i0y3bFLyS1BGwSpdLAykGtvC+VM8mRyw/Y7CPcKN\n77kebY/9xduW1g2uxWLr0x90RuQDv9psPojT+59tRLGSp5Kt0IeD3QtnAZEFE4aN\nvt+Pd69eg3BgZ8ZeDgoqAw3yppvOkpAFiE5pw2qPZaM4SRphl4d2Lek2zNIMyZqv\ndo5zh356HOgXtDaSg0POnRGrN/Ua+LMCRTg6GEPUnx9uQb/zt8Zu0hIexDGyykp1\nOGqtWlv/Nc8UYuS38v0BeB6bMPeoqQUjkqs8nHlAEFn0KlgYdtDC+7SdQx6wS4te\ndBKRNDfC4lS3jYJgs55jHqonZgkpSi3bamlxpfpW0ukGBcmq91wRe4bOw/4uD/vf\nUwqMWOdCYcU3mdYNjTWy22ORW3SGFQxMBwpUEURCSoeqWr6aJeQ7KAYkx1PrB5T8\nOTEc13lWf+B0PU9UJuGTsmpIuImPDVd0EVDayr3mT5dDbqTVDbe8ppf2IswABmf0\no3DybUeUmknYjl109rdSf+76nuREICHatxXgN3xCMFuBaN4WLO+ksd6Y1Ys=\n-----END CERTIFICATE REQUEST-----\n\"\"\",\n common_name=\"test.my.domain\",\n opts=pulumi.ResourceOptions(depends_on=[vault_pki_secret_backend_role[\"admin\"]]))\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var test = new Vault.PkiSecret.SecretBackendSign(\"test\", new()\n {\n Backend = vault_mount.Pki.Path,\n Csr = @\"-----BEGIN CERTIFICATE REQUEST-----\nMIIEqDCCApACAQAwYzELMAkGA1UEBhMCQVUxEzARBgNVBAgMClNvbWUtU3RhdGUx\nITAfBgNVBAoMGEludGVybmV0IFdpZGdpdHMgUHR5IEx0ZDEcMBoGA1UEAwwTY2Vy\ndC50ZXN0Lm15LmRvbWFpbjCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIB\nAJupYCQ8UVCWII1Zof1c6YcSSaM9hEaDU78cfKP5RoSeH10BvrWRfT+mzCONVpNP\nCW9Iabtvk6hm0ot6ilnndEyVJbc0g7hdDLBX5BM25D+DGZGJRKUz1V+uBrWmXtIt\nVonj7JTDTe7ViH0GDsB7CvqXFGXO2a2cDYBchLkL6vQiFPshxvUsLtwxuy/qdYgy\nX6ya+AUoZcoQGy1XxNjfH6cPtWSWQGEp1oPR6vL9hU3laTZb3C+VV4jZem+he8/0\nV+qV6fLG92WTXm2hmf8nrtUqqJ+C7mW/RJod+TviviBadIX0OHXW7k5HVsZood01\nte8vMRUNJNiZfa9EMIK5oncbQn0LcM3Wo9VrjpL7jREb/4HCS2gswYGv7hzk9cCS\nkVY4rDucchKbApuI3kfzmO7GFOF5eiSkYZpY/czNn7VVM3WCu6dpOX4+3rhgrZQw\nkY14L930DaLVRUgve/zKVP2D2GHdEOs+MbV7s96UgigT9pXly/yHPj+1sSYqmnaD\n5b7jSeJusmzO/nrwXVGLsnezR87VzHl9Ux9g5s6zh+R+PrZuVxYsLvoUpaasH47O\ngIcBzSb/6pSGZKAUizmYsHsR1k88dAvsQ+FsUDaNokdi9VndEB4QPmiFmjyLV+0I\n1TFoXop4sW11NPz1YCq+IxnYrEaIN3PyhY0GvBJDFY1/AgMBAAGgADANBgkqhkiG\n9w0BAQsFAAOCAgEActuqnqS8Y9UF7e08w7tR3FPzGecWreuvxILrlFEZJxiLPFqL\nIt7uJvtypCVQvz6UQzKdBYO7tMpRaWViB8DrWzXNZjLMrg+QHcpveg8C0Ett4scG\nfnvLk6fTDFYrnGvwHTqiHos5i0y3bFLyS1BGwSpdLAykGtvC+VM8mRyw/Y7CPcKN\n77kebY/9xduW1g2uxWLr0x90RuQDv9psPojT+59tRLGSp5Kt0IeD3QtnAZEFE4aN\nvt+Pd69eg3BgZ8ZeDgoqAw3yppvOkpAFiE5pw2qPZaM4SRphl4d2Lek2zNIMyZqv\ndo5zh356HOgXtDaSg0POnRGrN/Ua+LMCRTg6GEPUnx9uQb/zt8Zu0hIexDGyykp1\nOGqtWlv/Nc8UYuS38v0BeB6bMPeoqQUjkqs8nHlAEFn0KlgYdtDC+7SdQx6wS4te\ndBKRNDfC4lS3jYJgs55jHqonZgkpSi3bamlxpfpW0ukGBcmq91wRe4bOw/4uD/vf\nUwqMWOdCYcU3mdYNjTWy22ORW3SGFQxMBwpUEURCSoeqWr6aJeQ7KAYkx1PrB5T8\nOTEc13lWf+B0PU9UJuGTsmpIuImPDVd0EVDayr3mT5dDbqTVDbe8ppf2IswABmf0\no3DybUeUmknYjl109rdSf+76nuREICHatxXgN3xCMFuBaN4WLO+ksd6Y1Ys=\n-----END CERTIFICATE REQUEST-----\n\",\n CommonName = \"test.my.domain\",\n }, new CustomResourceOptions\n {\n DependsOn = new[]\n {\n vault_pki_secret_backend_role.Admin,\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/pkiSecret\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := pkiSecret.NewSecretBackendSign(ctx, \"test\", \u0026pkiSecret.SecretBackendSignArgs{\n\t\t\tBackend: pulumi.Any(vault_mount.Pki.Path),\n\t\t\tCsr: pulumi.String(\"-----BEGIN CERTIFICATE REQUEST-----\\nMIIEqDCCApACAQAwYzELMAkGA1UEBhMCQVUxEzARBgNVBAgMClNvbWUtU3RhdGUx\\nITAfBgNVBAoMGEludGVybmV0IFdpZGdpdHMgUHR5IEx0ZDEcMBoGA1UEAwwTY2Vy\\ndC50ZXN0Lm15LmRvbWFpbjCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIB\\nAJupYCQ8UVCWII1Zof1c6YcSSaM9hEaDU78cfKP5RoSeH10BvrWRfT+mzCONVpNP\\nCW9Iabtvk6hm0ot6ilnndEyVJbc0g7hdDLBX5BM25D+DGZGJRKUz1V+uBrWmXtIt\\nVonj7JTDTe7ViH0GDsB7CvqXFGXO2a2cDYBchLkL6vQiFPshxvUsLtwxuy/qdYgy\\nX6ya+AUoZcoQGy1XxNjfH6cPtWSWQGEp1oPR6vL9hU3laTZb3C+VV4jZem+he8/0\\nV+qV6fLG92WTXm2hmf8nrtUqqJ+C7mW/RJod+TviviBadIX0OHXW7k5HVsZood01\\nte8vMRUNJNiZfa9EMIK5oncbQn0LcM3Wo9VrjpL7jREb/4HCS2gswYGv7hzk9cCS\\nkVY4rDucchKbApuI3kfzmO7GFOF5eiSkYZpY/czNn7VVM3WCu6dpOX4+3rhgrZQw\\nkY14L930DaLVRUgve/zKVP2D2GHdEOs+MbV7s96UgigT9pXly/yHPj+1sSYqmnaD\\n5b7jSeJusmzO/nrwXVGLsnezR87VzHl9Ux9g5s6zh+R+PrZuVxYsLvoUpaasH47O\\ngIcBzSb/6pSGZKAUizmYsHsR1k88dAvsQ+FsUDaNokdi9VndEB4QPmiFmjyLV+0I\\n1TFoXop4sW11NPz1YCq+IxnYrEaIN3PyhY0GvBJDFY1/AgMBAAGgADANBgkqhkiG\\n9w0BAQsFAAOCAgEActuqnqS8Y9UF7e08w7tR3FPzGecWreuvxILrlFEZJxiLPFqL\\nIt7uJvtypCVQvz6UQzKdBYO7tMpRaWViB8DrWzXNZjLMrg+QHcpveg8C0Ett4scG\\nfnvLk6fTDFYrnGvwHTqiHos5i0y3bFLyS1BGwSpdLAykGtvC+VM8mRyw/Y7CPcKN\\n77kebY/9xduW1g2uxWLr0x90RuQDv9psPojT+59tRLGSp5Kt0IeD3QtnAZEFE4aN\\nvt+Pd69eg3BgZ8ZeDgoqAw3yppvOkpAFiE5pw2qPZaM4SRphl4d2Lek2zNIMyZqv\\ndo5zh356HOgXtDaSg0POnRGrN/Ua+LMCRTg6GEPUnx9uQb/zt8Zu0hIexDGyykp1\\nOGqtWlv/Nc8UYuS38v0BeB6bMPeoqQUjkqs8nHlAEFn0KlgYdtDC+7SdQx6wS4te\\ndBKRNDfC4lS3jYJgs55jHqonZgkpSi3bamlxpfpW0ukGBcmq91wRe4bOw/4uD/vf\\nUwqMWOdCYcU3mdYNjTWy22ORW3SGFQxMBwpUEURCSoeqWr6aJeQ7KAYkx1PrB5T8\\nOTEc13lWf+B0PU9UJuGTsmpIuImPDVd0EVDayr3mT5dDbqTVDbe8ppf2IswABmf0\\no3DybUeUmknYjl109rdSf+76nuREICHatxXgN3xCMFuBaN4WLO+ksd6Y1Ys=\\n-----END CERTIFICATE REQUEST-----\\n\"),\n\t\t\tCommonName: pulumi.String(\"test.my.domain\"),\n\t\t}, pulumi.DependsOn([]pulumi.Resource{\n\t\t\tvault_pki_secret_backend_role.Admin,\n\t\t}))\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.pkiSecret.SecretBackendSign;\nimport com.pulumi.vault.pkiSecret.SecretBackendSignArgs;\nimport com.pulumi.resources.CustomResourceOptions;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var test = new SecretBackendSign(\"test\", SecretBackendSignArgs.builder() \n .backend(vault_mount.pki().path())\n .csr(\"\"\"\n-----BEGIN CERTIFICATE REQUEST-----\nMIIEqDCCApACAQAwYzELMAkGA1UEBhMCQVUxEzARBgNVBAgMClNvbWUtU3RhdGUx\nITAfBgNVBAoMGEludGVybmV0IFdpZGdpdHMgUHR5IEx0ZDEcMBoGA1UEAwwTY2Vy\ndC50ZXN0Lm15LmRvbWFpbjCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIB\nAJupYCQ8UVCWII1Zof1c6YcSSaM9hEaDU78cfKP5RoSeH10BvrWRfT+mzCONVpNP\nCW9Iabtvk6hm0ot6ilnndEyVJbc0g7hdDLBX5BM25D+DGZGJRKUz1V+uBrWmXtIt\nVonj7JTDTe7ViH0GDsB7CvqXFGXO2a2cDYBchLkL6vQiFPshxvUsLtwxuy/qdYgy\nX6ya+AUoZcoQGy1XxNjfH6cPtWSWQGEp1oPR6vL9hU3laTZb3C+VV4jZem+he8/0\nV+qV6fLG92WTXm2hmf8nrtUqqJ+C7mW/RJod+TviviBadIX0OHXW7k5HVsZood01\nte8vMRUNJNiZfa9EMIK5oncbQn0LcM3Wo9VrjpL7jREb/4HCS2gswYGv7hzk9cCS\nkVY4rDucchKbApuI3kfzmO7GFOF5eiSkYZpY/czNn7VVM3WCu6dpOX4+3rhgrZQw\nkY14L930DaLVRUgve/zKVP2D2GHdEOs+MbV7s96UgigT9pXly/yHPj+1sSYqmnaD\n5b7jSeJusmzO/nrwXVGLsnezR87VzHl9Ux9g5s6zh+R+PrZuVxYsLvoUpaasH47O\ngIcBzSb/6pSGZKAUizmYsHsR1k88dAvsQ+FsUDaNokdi9VndEB4QPmiFmjyLV+0I\n1TFoXop4sW11NPz1YCq+IxnYrEaIN3PyhY0GvBJDFY1/AgMBAAGgADANBgkqhkiG\n9w0BAQsFAAOCAgEActuqnqS8Y9UF7e08w7tR3FPzGecWreuvxILrlFEZJxiLPFqL\nIt7uJvtypCVQvz6UQzKdBYO7tMpRaWViB8DrWzXNZjLMrg+QHcpveg8C0Ett4scG\nfnvLk6fTDFYrnGvwHTqiHos5i0y3bFLyS1BGwSpdLAykGtvC+VM8mRyw/Y7CPcKN\n77kebY/9xduW1g2uxWLr0x90RuQDv9psPojT+59tRLGSp5Kt0IeD3QtnAZEFE4aN\nvt+Pd69eg3BgZ8ZeDgoqAw3yppvOkpAFiE5pw2qPZaM4SRphl4d2Lek2zNIMyZqv\ndo5zh356HOgXtDaSg0POnRGrN/Ua+LMCRTg6GEPUnx9uQb/zt8Zu0hIexDGyykp1\nOGqtWlv/Nc8UYuS38v0BeB6bMPeoqQUjkqs8nHlAEFn0KlgYdtDC+7SdQx6wS4te\ndBKRNDfC4lS3jYJgs55jHqonZgkpSi3bamlxpfpW0ukGBcmq91wRe4bOw/4uD/vf\nUwqMWOdCYcU3mdYNjTWy22ORW3SGFQxMBwpUEURCSoeqWr6aJeQ7KAYkx1PrB5T8\nOTEc13lWf+B0PU9UJuGTsmpIuImPDVd0EVDayr3mT5dDbqTVDbe8ppf2IswABmf0\no3DybUeUmknYjl109rdSf+76nuREICHatxXgN3xCMFuBaN4WLO+ksd6Y1Ys=\n-----END CERTIFICATE REQUEST-----\n \"\"\")\n .commonName(\"test.my.domain\")\n .build(), CustomResourceOptions.builder()\n .dependsOn(vault_pki_secret_backend_role.admin())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n test:\n type: vault:pkiSecret:SecretBackendSign\n properties:\n backend: ${vault_mount.pki.path}\n csr: |\n -----BEGIN CERTIFICATE REQUEST-----\n MIIEqDCCApACAQAwYzELMAkGA1UEBhMCQVUxEzARBgNVBAgMClNvbWUtU3RhdGUx\n ITAfBgNVBAoMGEludGVybmV0IFdpZGdpdHMgUHR5IEx0ZDEcMBoGA1UEAwwTY2Vy\n dC50ZXN0Lm15LmRvbWFpbjCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIB\n AJupYCQ8UVCWII1Zof1c6YcSSaM9hEaDU78cfKP5RoSeH10BvrWRfT+mzCONVpNP\n CW9Iabtvk6hm0ot6ilnndEyVJbc0g7hdDLBX5BM25D+DGZGJRKUz1V+uBrWmXtIt\n Vonj7JTDTe7ViH0GDsB7CvqXFGXO2a2cDYBchLkL6vQiFPshxvUsLtwxuy/qdYgy\n X6ya+AUoZcoQGy1XxNjfH6cPtWSWQGEp1oPR6vL9hU3laTZb3C+VV4jZem+he8/0\n V+qV6fLG92WTXm2hmf8nrtUqqJ+C7mW/RJod+TviviBadIX0OHXW7k5HVsZood01\n te8vMRUNJNiZfa9EMIK5oncbQn0LcM3Wo9VrjpL7jREb/4HCS2gswYGv7hzk9cCS\n kVY4rDucchKbApuI3kfzmO7GFOF5eiSkYZpY/czNn7VVM3WCu6dpOX4+3rhgrZQw\n kY14L930DaLVRUgve/zKVP2D2GHdEOs+MbV7s96UgigT9pXly/yHPj+1sSYqmnaD\n 5b7jSeJusmzO/nrwXVGLsnezR87VzHl9Ux9g5s6zh+R+PrZuVxYsLvoUpaasH47O\n gIcBzSb/6pSGZKAUizmYsHsR1k88dAvsQ+FsUDaNokdi9VndEB4QPmiFmjyLV+0I\n 1TFoXop4sW11NPz1YCq+IxnYrEaIN3PyhY0GvBJDFY1/AgMBAAGgADANBgkqhkiG\n 9w0BAQsFAAOCAgEActuqnqS8Y9UF7e08w7tR3FPzGecWreuvxILrlFEZJxiLPFqL\n It7uJvtypCVQvz6UQzKdBYO7tMpRaWViB8DrWzXNZjLMrg+QHcpveg8C0Ett4scG\n fnvLk6fTDFYrnGvwHTqiHos5i0y3bFLyS1BGwSpdLAykGtvC+VM8mRyw/Y7CPcKN\n 77kebY/9xduW1g2uxWLr0x90RuQDv9psPojT+59tRLGSp5Kt0IeD3QtnAZEFE4aN\n vt+Pd69eg3BgZ8ZeDgoqAw3yppvOkpAFiE5pw2qPZaM4SRphl4d2Lek2zNIMyZqv\n do5zh356HOgXtDaSg0POnRGrN/Ua+LMCRTg6GEPUnx9uQb/zt8Zu0hIexDGyykp1\n OGqtWlv/Nc8UYuS38v0BeB6bMPeoqQUjkqs8nHlAEFn0KlgYdtDC+7SdQx6wS4te\n dBKRNDfC4lS3jYJgs55jHqonZgkpSi3bamlxpfpW0ukGBcmq91wRe4bOw/4uD/vf\n UwqMWOdCYcU3mdYNjTWy22ORW3SGFQxMBwpUEURCSoeqWr6aJeQ7KAYkx1PrB5T8\n OTEc13lWf+B0PU9UJuGTsmpIuImPDVd0EVDayr3mT5dDbqTVDbe8ppf2IswABmf0\n o3DybUeUmknYjl109rdSf+76nuREICHatxXgN3xCMFuBaN4WLO+ksd6Y1Ys=\n -----END CERTIFICATE REQUEST-----\n commonName: test.my.domain\n options:\n dependson:\n - ${vault_pki_secret_backend_role.admin}\n```\n{{% /example %}}\n{{% /examples %}}\n## Deprecations\n\n* `serial` - Use `serial_number` instead.\n",
+ "description": "{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst test = new vault.pkisecret.SecretBackendSign(\"test\", {\n backend: vault_mount.pki.path,\n csr: `-----BEGIN CERTIFICATE REQUEST-----\nMIIEqDCCApACAQAwYzELMAkGA1UEBhMCQVUxEzARBgNVBAgMClNvbWUtU3RhdGUx\nITAfBgNVBAoMGEludGVybmV0IFdpZGdpdHMgUHR5IEx0ZDEcMBoGA1UEAwwTY2Vy\ndC50ZXN0Lm15LmRvbWFpbjCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIB\nAJupYCQ8UVCWII1Zof1c6YcSSaM9hEaDU78cfKP5RoSeH10BvrWRfT+mzCONVpNP\nCW9Iabtvk6hm0ot6ilnndEyVJbc0g7hdDLBX5BM25D+DGZGJRKUz1V+uBrWmXtIt\nVonj7JTDTe7ViH0GDsB7CvqXFGXO2a2cDYBchLkL6vQiFPshxvUsLtwxuy/qdYgy\nX6ya+AUoZcoQGy1XxNjfH6cPtWSWQGEp1oPR6vL9hU3laTZb3C+VV4jZem+he8/0\nV+qV6fLG92WTXm2hmf8nrtUqqJ+C7mW/RJod+TviviBadIX0OHXW7k5HVsZood01\nte8vMRUNJNiZfa9EMIK5oncbQn0LcM3Wo9VrjpL7jREb/4HCS2gswYGv7hzk9cCS\nkVY4rDucchKbApuI3kfzmO7GFOF5eiSkYZpY/czNn7VVM3WCu6dpOX4+3rhgrZQw\nkY14L930DaLVRUgve/zKVP2D2GHdEOs+MbV7s96UgigT9pXly/yHPj+1sSYqmnaD\n5b7jSeJusmzO/nrwXVGLsnezR87VzHl9Ux9g5s6zh+R+PrZuVxYsLvoUpaasH47O\ngIcBzSb/6pSGZKAUizmYsHsR1k88dAvsQ+FsUDaNokdi9VndEB4QPmiFmjyLV+0I\n1TFoXop4sW11NPz1YCq+IxnYrEaIN3PyhY0GvBJDFY1/AgMBAAGgADANBgkqhkiG\n9w0BAQsFAAOCAgEActuqnqS8Y9UF7e08w7tR3FPzGecWreuvxILrlFEZJxiLPFqL\nIt7uJvtypCVQvz6UQzKdBYO7tMpRaWViB8DrWzXNZjLMrg+QHcpveg8C0Ett4scG\nfnvLk6fTDFYrnGvwHTqiHos5i0y3bFLyS1BGwSpdLAykGtvC+VM8mRyw/Y7CPcKN\n77kebY/9xduW1g2uxWLr0x90RuQDv9psPojT+59tRLGSp5Kt0IeD3QtnAZEFE4aN\nvt+Pd69eg3BgZ8ZeDgoqAw3yppvOkpAFiE5pw2qPZaM4SRphl4d2Lek2zNIMyZqv\ndo5zh356HOgXtDaSg0POnRGrN/Ua+LMCRTg6GEPUnx9uQb/zt8Zu0hIexDGyykp1\nOGqtWlv/Nc8UYuS38v0BeB6bMPeoqQUjkqs8nHlAEFn0KlgYdtDC+7SdQx6wS4te\ndBKRNDfC4lS3jYJgs55jHqonZgkpSi3bamlxpfpW0ukGBcmq91wRe4bOw/4uD/vf\nUwqMWOdCYcU3mdYNjTWy22ORW3SGFQxMBwpUEURCSoeqWr6aJeQ7KAYkx1PrB5T8\nOTEc13lWf+B0PU9UJuGTsmpIuImPDVd0EVDayr3mT5dDbqTVDbe8ppf2IswABmf0\no3DybUeUmknYjl109rdSf+76nuREICHatxXgN3xCMFuBaN4WLO+ksd6Y1Ys=\n-----END CERTIFICATE REQUEST-----\n`,\n commonName: \"test.my.domain\",\n}, {\n dependsOn: [vault_pki_secret_backend_role.admin],\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\ntest = vault.pki_secret.SecretBackendSign(\"test\",\n backend=vault_mount[\"pki\"][\"path\"],\n csr=\"\"\"-----BEGIN CERTIFICATE REQUEST-----\nMIIEqDCCApACAQAwYzELMAkGA1UEBhMCQVUxEzARBgNVBAgMClNvbWUtU3RhdGUx\nITAfBgNVBAoMGEludGVybmV0IFdpZGdpdHMgUHR5IEx0ZDEcMBoGA1UEAwwTY2Vy\ndC50ZXN0Lm15LmRvbWFpbjCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIB\nAJupYCQ8UVCWII1Zof1c6YcSSaM9hEaDU78cfKP5RoSeH10BvrWRfT+mzCONVpNP\nCW9Iabtvk6hm0ot6ilnndEyVJbc0g7hdDLBX5BM25D+DGZGJRKUz1V+uBrWmXtIt\nVonj7JTDTe7ViH0GDsB7CvqXFGXO2a2cDYBchLkL6vQiFPshxvUsLtwxuy/qdYgy\nX6ya+AUoZcoQGy1XxNjfH6cPtWSWQGEp1oPR6vL9hU3laTZb3C+VV4jZem+he8/0\nV+qV6fLG92WTXm2hmf8nrtUqqJ+C7mW/RJod+TviviBadIX0OHXW7k5HVsZood01\nte8vMRUNJNiZfa9EMIK5oncbQn0LcM3Wo9VrjpL7jREb/4HCS2gswYGv7hzk9cCS\nkVY4rDucchKbApuI3kfzmO7GFOF5eiSkYZpY/czNn7VVM3WCu6dpOX4+3rhgrZQw\nkY14L930DaLVRUgve/zKVP2D2GHdEOs+MbV7s96UgigT9pXly/yHPj+1sSYqmnaD\n5b7jSeJusmzO/nrwXVGLsnezR87VzHl9Ux9g5s6zh+R+PrZuVxYsLvoUpaasH47O\ngIcBzSb/6pSGZKAUizmYsHsR1k88dAvsQ+FsUDaNokdi9VndEB4QPmiFmjyLV+0I\n1TFoXop4sW11NPz1YCq+IxnYrEaIN3PyhY0GvBJDFY1/AgMBAAGgADANBgkqhkiG\n9w0BAQsFAAOCAgEActuqnqS8Y9UF7e08w7tR3FPzGecWreuvxILrlFEZJxiLPFqL\nIt7uJvtypCVQvz6UQzKdBYO7tMpRaWViB8DrWzXNZjLMrg+QHcpveg8C0Ett4scG\nfnvLk6fTDFYrnGvwHTqiHos5i0y3bFLyS1BGwSpdLAykGtvC+VM8mRyw/Y7CPcKN\n77kebY/9xduW1g2uxWLr0x90RuQDv9psPojT+59tRLGSp5Kt0IeD3QtnAZEFE4aN\nvt+Pd69eg3BgZ8ZeDgoqAw3yppvOkpAFiE5pw2qPZaM4SRphl4d2Lek2zNIMyZqv\ndo5zh356HOgXtDaSg0POnRGrN/Ua+LMCRTg6GEPUnx9uQb/zt8Zu0hIexDGyykp1\nOGqtWlv/Nc8UYuS38v0BeB6bMPeoqQUjkqs8nHlAEFn0KlgYdtDC+7SdQx6wS4te\ndBKRNDfC4lS3jYJgs55jHqonZgkpSi3bamlxpfpW0ukGBcmq91wRe4bOw/4uD/vf\nUwqMWOdCYcU3mdYNjTWy22ORW3SGFQxMBwpUEURCSoeqWr6aJeQ7KAYkx1PrB5T8\nOTEc13lWf+B0PU9UJuGTsmpIuImPDVd0EVDayr3mT5dDbqTVDbe8ppf2IswABmf0\no3DybUeUmknYjl109rdSf+76nuREICHatxXgN3xCMFuBaN4WLO+ksd6Y1Ys=\n-----END CERTIFICATE REQUEST-----\n\"\"\",\n common_name=\"test.my.domain\",\n opts=pulumi.ResourceOptions(depends_on=[vault_pki_secret_backend_role[\"admin\"]]))\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var test = new Vault.PkiSecret.SecretBackendSign(\"test\", new()\n {\n Backend = vault_mount.Pki.Path,\n Csr = @\"-----BEGIN CERTIFICATE REQUEST-----\nMIIEqDCCApACAQAwYzELMAkGA1UEBhMCQVUxEzARBgNVBAgMClNvbWUtU3RhdGUx\nITAfBgNVBAoMGEludGVybmV0IFdpZGdpdHMgUHR5IEx0ZDEcMBoGA1UEAwwTY2Vy\ndC50ZXN0Lm15LmRvbWFpbjCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIB\nAJupYCQ8UVCWII1Zof1c6YcSSaM9hEaDU78cfKP5RoSeH10BvrWRfT+mzCONVpNP\nCW9Iabtvk6hm0ot6ilnndEyVJbc0g7hdDLBX5BM25D+DGZGJRKUz1V+uBrWmXtIt\nVonj7JTDTe7ViH0GDsB7CvqXFGXO2a2cDYBchLkL6vQiFPshxvUsLtwxuy/qdYgy\nX6ya+AUoZcoQGy1XxNjfH6cPtWSWQGEp1oPR6vL9hU3laTZb3C+VV4jZem+he8/0\nV+qV6fLG92WTXm2hmf8nrtUqqJ+C7mW/RJod+TviviBadIX0OHXW7k5HVsZood01\nte8vMRUNJNiZfa9EMIK5oncbQn0LcM3Wo9VrjpL7jREb/4HCS2gswYGv7hzk9cCS\nkVY4rDucchKbApuI3kfzmO7GFOF5eiSkYZpY/czNn7VVM3WCu6dpOX4+3rhgrZQw\nkY14L930DaLVRUgve/zKVP2D2GHdEOs+MbV7s96UgigT9pXly/yHPj+1sSYqmnaD\n5b7jSeJusmzO/nrwXVGLsnezR87VzHl9Ux9g5s6zh+R+PrZuVxYsLvoUpaasH47O\ngIcBzSb/6pSGZKAUizmYsHsR1k88dAvsQ+FsUDaNokdi9VndEB4QPmiFmjyLV+0I\n1TFoXop4sW11NPz1YCq+IxnYrEaIN3PyhY0GvBJDFY1/AgMBAAGgADANBgkqhkiG\n9w0BAQsFAAOCAgEActuqnqS8Y9UF7e08w7tR3FPzGecWreuvxILrlFEZJxiLPFqL\nIt7uJvtypCVQvz6UQzKdBYO7tMpRaWViB8DrWzXNZjLMrg+QHcpveg8C0Ett4scG\nfnvLk6fTDFYrnGvwHTqiHos5i0y3bFLyS1BGwSpdLAykGtvC+VM8mRyw/Y7CPcKN\n77kebY/9xduW1g2uxWLr0x90RuQDv9psPojT+59tRLGSp5Kt0IeD3QtnAZEFE4aN\nvt+Pd69eg3BgZ8ZeDgoqAw3yppvOkpAFiE5pw2qPZaM4SRphl4d2Lek2zNIMyZqv\ndo5zh356HOgXtDaSg0POnRGrN/Ua+LMCRTg6GEPUnx9uQb/zt8Zu0hIexDGyykp1\nOGqtWlv/Nc8UYuS38v0BeB6bMPeoqQUjkqs8nHlAEFn0KlgYdtDC+7SdQx6wS4te\ndBKRNDfC4lS3jYJgs55jHqonZgkpSi3bamlxpfpW0ukGBcmq91wRe4bOw/4uD/vf\nUwqMWOdCYcU3mdYNjTWy22ORW3SGFQxMBwpUEURCSoeqWr6aJeQ7KAYkx1PrB5T8\nOTEc13lWf+B0PU9UJuGTsmpIuImPDVd0EVDayr3mT5dDbqTVDbe8ppf2IswABmf0\no3DybUeUmknYjl109rdSf+76nuREICHatxXgN3xCMFuBaN4WLO+ksd6Y1Ys=\n-----END CERTIFICATE REQUEST-----\n\",\n CommonName = \"test.my.domain\",\n }, new CustomResourceOptions\n {\n DependsOn = new[]\n {\n vault_pki_secret_backend_role.Admin,\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/pkiSecret\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := pkiSecret.NewSecretBackendSign(ctx, \"test\", \u0026pkiSecret.SecretBackendSignArgs{\n\t\t\tBackend: pulumi.Any(vault_mount.Pki.Path),\n\t\t\tCsr: pulumi.String(`-----BEGIN CERTIFICATE REQUEST-----\nMIIEqDCCApACAQAwYzELMAkGA1UEBhMCQVUxEzARBgNVBAgMClNvbWUtU3RhdGUx\nITAfBgNVBAoMGEludGVybmV0IFdpZGdpdHMgUHR5IEx0ZDEcMBoGA1UEAwwTY2Vy\ndC50ZXN0Lm15LmRvbWFpbjCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIB\nAJupYCQ8UVCWII1Zof1c6YcSSaM9hEaDU78cfKP5RoSeH10BvrWRfT+mzCONVpNP\nCW9Iabtvk6hm0ot6ilnndEyVJbc0g7hdDLBX5BM25D+DGZGJRKUz1V+uBrWmXtIt\nVonj7JTDTe7ViH0GDsB7CvqXFGXO2a2cDYBchLkL6vQiFPshxvUsLtwxuy/qdYgy\nX6ya+AUoZcoQGy1XxNjfH6cPtWSWQGEp1oPR6vL9hU3laTZb3C+VV4jZem+he8/0\nV+qV6fLG92WTXm2hmf8nrtUqqJ+C7mW/RJod+TviviBadIX0OHXW7k5HVsZood01\nte8vMRUNJNiZfa9EMIK5oncbQn0LcM3Wo9VrjpL7jREb/4HCS2gswYGv7hzk9cCS\nkVY4rDucchKbApuI3kfzmO7GFOF5eiSkYZpY/czNn7VVM3WCu6dpOX4+3rhgrZQw\nkY14L930DaLVRUgve/zKVP2D2GHdEOs+MbV7s96UgigT9pXly/yHPj+1sSYqmnaD\n5b7jSeJusmzO/nrwXVGLsnezR87VzHl9Ux9g5s6zh+R+PrZuVxYsLvoUpaasH47O\ngIcBzSb/6pSGZKAUizmYsHsR1k88dAvsQ+FsUDaNokdi9VndEB4QPmiFmjyLV+0I\n1TFoXop4sW11NPz1YCq+IxnYrEaIN3PyhY0GvBJDFY1/AgMBAAGgADANBgkqhkiG\n9w0BAQsFAAOCAgEActuqnqS8Y9UF7e08w7tR3FPzGecWreuvxILrlFEZJxiLPFqL\nIt7uJvtypCVQvz6UQzKdBYO7tMpRaWViB8DrWzXNZjLMrg+QHcpveg8C0Ett4scG\nfnvLk6fTDFYrnGvwHTqiHos5i0y3bFLyS1BGwSpdLAykGtvC+VM8mRyw/Y7CPcKN\n77kebY/9xduW1g2uxWLr0x90RuQDv9psPojT+59tRLGSp5Kt0IeD3QtnAZEFE4aN\nvt+Pd69eg3BgZ8ZeDgoqAw3yppvOkpAFiE5pw2qPZaM4SRphl4d2Lek2zNIMyZqv\ndo5zh356HOgXtDaSg0POnRGrN/Ua+LMCRTg6GEPUnx9uQb/zt8Zu0hIexDGyykp1\nOGqtWlv/Nc8UYuS38v0BeB6bMPeoqQUjkqs8nHlAEFn0KlgYdtDC+7SdQx6wS4te\ndBKRNDfC4lS3jYJgs55jHqonZgkpSi3bamlxpfpW0ukGBcmq91wRe4bOw/4uD/vf\nUwqMWOdCYcU3mdYNjTWy22ORW3SGFQxMBwpUEURCSoeqWr6aJeQ7KAYkx1PrB5T8\nOTEc13lWf+B0PU9UJuGTsmpIuImPDVd0EVDayr3mT5dDbqTVDbe8ppf2IswABmf0\no3DybUeUmknYjl109rdSf+76nuREICHatxXgN3xCMFuBaN4WLO+ksd6Y1Ys=\n-----END CERTIFICATE REQUEST-----\n`),\n\t\t\tCommonName: pulumi.String(\"test.my.domain\"),\n\t\t}, pulumi.DependsOn([]pulumi.Resource{\n\t\t\tvault_pki_secret_backend_role.Admin,\n\t\t}))\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.pkiSecret.SecretBackendSign;\nimport com.pulumi.vault.pkiSecret.SecretBackendSignArgs;\nimport com.pulumi.resources.CustomResourceOptions;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var test = new SecretBackendSign(\"test\", SecretBackendSignArgs.builder() \n .backend(vault_mount.pki().path())\n .csr(\"\"\"\n-----BEGIN CERTIFICATE REQUEST-----\nMIIEqDCCApACAQAwYzELMAkGA1UEBhMCQVUxEzARBgNVBAgMClNvbWUtU3RhdGUx\nITAfBgNVBAoMGEludGVybmV0IFdpZGdpdHMgUHR5IEx0ZDEcMBoGA1UEAwwTY2Vy\ndC50ZXN0Lm15LmRvbWFpbjCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIB\nAJupYCQ8UVCWII1Zof1c6YcSSaM9hEaDU78cfKP5RoSeH10BvrWRfT+mzCONVpNP\nCW9Iabtvk6hm0ot6ilnndEyVJbc0g7hdDLBX5BM25D+DGZGJRKUz1V+uBrWmXtIt\nVonj7JTDTe7ViH0GDsB7CvqXFGXO2a2cDYBchLkL6vQiFPshxvUsLtwxuy/qdYgy\nX6ya+AUoZcoQGy1XxNjfH6cPtWSWQGEp1oPR6vL9hU3laTZb3C+VV4jZem+he8/0\nV+qV6fLG92WTXm2hmf8nrtUqqJ+C7mW/RJod+TviviBadIX0OHXW7k5HVsZood01\nte8vMRUNJNiZfa9EMIK5oncbQn0LcM3Wo9VrjpL7jREb/4HCS2gswYGv7hzk9cCS\nkVY4rDucchKbApuI3kfzmO7GFOF5eiSkYZpY/czNn7VVM3WCu6dpOX4+3rhgrZQw\nkY14L930DaLVRUgve/zKVP2D2GHdEOs+MbV7s96UgigT9pXly/yHPj+1sSYqmnaD\n5b7jSeJusmzO/nrwXVGLsnezR87VzHl9Ux9g5s6zh+R+PrZuVxYsLvoUpaasH47O\ngIcBzSb/6pSGZKAUizmYsHsR1k88dAvsQ+FsUDaNokdi9VndEB4QPmiFmjyLV+0I\n1TFoXop4sW11NPz1YCq+IxnYrEaIN3PyhY0GvBJDFY1/AgMBAAGgADANBgkqhkiG\n9w0BAQsFAAOCAgEActuqnqS8Y9UF7e08w7tR3FPzGecWreuvxILrlFEZJxiLPFqL\nIt7uJvtypCVQvz6UQzKdBYO7tMpRaWViB8DrWzXNZjLMrg+QHcpveg8C0Ett4scG\nfnvLk6fTDFYrnGvwHTqiHos5i0y3bFLyS1BGwSpdLAykGtvC+VM8mRyw/Y7CPcKN\n77kebY/9xduW1g2uxWLr0x90RuQDv9psPojT+59tRLGSp5Kt0IeD3QtnAZEFE4aN\nvt+Pd69eg3BgZ8ZeDgoqAw3yppvOkpAFiE5pw2qPZaM4SRphl4d2Lek2zNIMyZqv\ndo5zh356HOgXtDaSg0POnRGrN/Ua+LMCRTg6GEPUnx9uQb/zt8Zu0hIexDGyykp1\nOGqtWlv/Nc8UYuS38v0BeB6bMPeoqQUjkqs8nHlAEFn0KlgYdtDC+7SdQx6wS4te\ndBKRNDfC4lS3jYJgs55jHqonZgkpSi3bamlxpfpW0ukGBcmq91wRe4bOw/4uD/vf\nUwqMWOdCYcU3mdYNjTWy22ORW3SGFQxMBwpUEURCSoeqWr6aJeQ7KAYkx1PrB5T8\nOTEc13lWf+B0PU9UJuGTsmpIuImPDVd0EVDayr3mT5dDbqTVDbe8ppf2IswABmf0\no3DybUeUmknYjl109rdSf+76nuREICHatxXgN3xCMFuBaN4WLO+ksd6Y1Ys=\n-----END CERTIFICATE REQUEST-----\n \"\"\")\n .commonName(\"test.my.domain\")\n .build(), CustomResourceOptions.builder()\n .dependsOn(vault_pki_secret_backend_role.admin())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n test:\n type: vault:pkiSecret:SecretBackendSign\n properties:\n backend: ${vault_mount.pki.path}\n csr: |\n -----BEGIN CERTIFICATE REQUEST-----\n MIIEqDCCApACAQAwYzELMAkGA1UEBhMCQVUxEzARBgNVBAgMClNvbWUtU3RhdGUx\n ITAfBgNVBAoMGEludGVybmV0IFdpZGdpdHMgUHR5IEx0ZDEcMBoGA1UEAwwTY2Vy\n dC50ZXN0Lm15LmRvbWFpbjCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIB\n AJupYCQ8UVCWII1Zof1c6YcSSaM9hEaDU78cfKP5RoSeH10BvrWRfT+mzCONVpNP\n CW9Iabtvk6hm0ot6ilnndEyVJbc0g7hdDLBX5BM25D+DGZGJRKUz1V+uBrWmXtIt\n Vonj7JTDTe7ViH0GDsB7CvqXFGXO2a2cDYBchLkL6vQiFPshxvUsLtwxuy/qdYgy\n X6ya+AUoZcoQGy1XxNjfH6cPtWSWQGEp1oPR6vL9hU3laTZb3C+VV4jZem+he8/0\n V+qV6fLG92WTXm2hmf8nrtUqqJ+C7mW/RJod+TviviBadIX0OHXW7k5HVsZood01\n te8vMRUNJNiZfa9EMIK5oncbQn0LcM3Wo9VrjpL7jREb/4HCS2gswYGv7hzk9cCS\n kVY4rDucchKbApuI3kfzmO7GFOF5eiSkYZpY/czNn7VVM3WCu6dpOX4+3rhgrZQw\n kY14L930DaLVRUgve/zKVP2D2GHdEOs+MbV7s96UgigT9pXly/yHPj+1sSYqmnaD\n 5b7jSeJusmzO/nrwXVGLsnezR87VzHl9Ux9g5s6zh+R+PrZuVxYsLvoUpaasH47O\n gIcBzSb/6pSGZKAUizmYsHsR1k88dAvsQ+FsUDaNokdi9VndEB4QPmiFmjyLV+0I\n 1TFoXop4sW11NPz1YCq+IxnYrEaIN3PyhY0GvBJDFY1/AgMBAAGgADANBgkqhkiG\n 9w0BAQsFAAOCAgEActuqnqS8Y9UF7e08w7tR3FPzGecWreuvxILrlFEZJxiLPFqL\n It7uJvtypCVQvz6UQzKdBYO7tMpRaWViB8DrWzXNZjLMrg+QHcpveg8C0Ett4scG\n fnvLk6fTDFYrnGvwHTqiHos5i0y3bFLyS1BGwSpdLAykGtvC+VM8mRyw/Y7CPcKN\n 77kebY/9xduW1g2uxWLr0x90RuQDv9psPojT+59tRLGSp5Kt0IeD3QtnAZEFE4aN\n vt+Pd69eg3BgZ8ZeDgoqAw3yppvOkpAFiE5pw2qPZaM4SRphl4d2Lek2zNIMyZqv\n do5zh356HOgXtDaSg0POnRGrN/Ua+LMCRTg6GEPUnx9uQb/zt8Zu0hIexDGyykp1\n OGqtWlv/Nc8UYuS38v0BeB6bMPeoqQUjkqs8nHlAEFn0KlgYdtDC+7SdQx6wS4te\n dBKRNDfC4lS3jYJgs55jHqonZgkpSi3bamlxpfpW0ukGBcmq91wRe4bOw/4uD/vf\n UwqMWOdCYcU3mdYNjTWy22ORW3SGFQxMBwpUEURCSoeqWr6aJeQ7KAYkx1PrB5T8\n OTEc13lWf+B0PU9UJuGTsmpIuImPDVd0EVDayr3mT5dDbqTVDbe8ppf2IswABmf0\n o3DybUeUmknYjl109rdSf+76nuREICHatxXgN3xCMFuBaN4WLO+ksd6Y1Ys=\n -----END CERTIFICATE REQUEST-----\n commonName: test.my.domain\n options:\n dependson:\n - ${vault_pki_secret_backend_role.admin}\n```\n{{% /example %}}\n{{% /examples %}}\n## Deprecations\n\n* `serial` - Use `serial_number` instead.\n",
"properties": {
"altNames": {
"type": "array",
@@ -29180,7 +26430,7 @@
}
},
"vault:rabbitMq/secretBackend:SecretBackend": {
- "description": "{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst rabbitmq = new vault.rabbitMq.SecretBackend(\"rabbitmq\", {\n connectionUri: \"https://.....\",\n password: \"password\",\n username: \"user\",\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nrabbitmq = vault.rabbit_mq.SecretBackend(\"rabbitmq\",\n connection_uri=\"https://.....\",\n password=\"password\",\n username=\"user\")\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var rabbitmq = new Vault.RabbitMQ.SecretBackend(\"rabbitmq\", new()\n {\n ConnectionUri = \"https://.....\",\n Password = \"password\",\n Username = \"user\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/rabbitMq\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := rabbitMq.NewSecretBackend(ctx, \"rabbitmq\", \u0026rabbitMq.SecretBackendArgs{\n\t\t\tConnectionUri: pulumi.String(\"https://.....\"),\n\t\t\tPassword: pulumi.String(\"password\"),\n\t\t\tUsername: pulumi.String(\"user\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.rabbitMq.SecretBackend;\nimport com.pulumi.vault.rabbitMq.SecretBackendArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var rabbitmq = new SecretBackend(\"rabbitmq\", SecretBackendArgs.builder() \n .connectionUri(\"https://.....\")\n .password(\"password\")\n .username(\"user\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n rabbitmq:\n type: vault:rabbitMq:SecretBackend\n properties:\n connectionUri: https://.....\n password: password\n username: user\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nRabbitMQ secret backends can be imported using the `path`, e.g.\n\n```sh\n $ pulumi import vault:rabbitMq/secretBackend:SecretBackend rabbitmq rabbitmq\n```\n\n ",
+ "description": "{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst rabbitmq = new vault.rabbitmq.SecretBackend(\"rabbitmq\", {\n connectionUri: \"https://.....\",\n password: \"password\",\n username: \"user\",\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nrabbitmq = vault.rabbit_mq.SecretBackend(\"rabbitmq\",\n connection_uri=\"https://.....\",\n password=\"password\",\n username=\"user\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var rabbitmq = new Vault.RabbitMQ.SecretBackend(\"rabbitmq\", new()\n {\n ConnectionUri = \"https://.....\",\n Password = \"password\",\n Username = \"user\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/rabbitMq\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := rabbitMq.NewSecretBackend(ctx, \"rabbitmq\", \u0026rabbitMq.SecretBackendArgs{\n\t\t\tConnectionUri: pulumi.String(\"https://.....\"),\n\t\t\tPassword: pulumi.String(\"password\"),\n\t\t\tUsername: pulumi.String(\"user\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.rabbitMq.SecretBackend;\nimport com.pulumi.vault.rabbitMq.SecretBackendArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var rabbitmq = new SecretBackend(\"rabbitmq\", SecretBackendArgs.builder() \n .connectionUri(\"https://.....\")\n .password(\"password\")\n .username(\"user\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n rabbitmq:\n type: vault:rabbitMq:SecretBackend\n properties:\n connectionUri: https://.....\n password: password\n username: user\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nRabbitMQ secret backends can be imported using the `path`, e.g.\n\n```sh\n $ pulumi import vault:rabbitMq/secretBackend:SecretBackend rabbitmq rabbitmq\n```\n ",
"properties": {
"connectionUri": {
"type": "string",
@@ -29357,7 +26607,7 @@
}
},
"vault:rabbitMq/secretBackendRole:SecretBackendRole": {
- "description": "{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst rabbitmq = new vault.rabbitmq.SecretBackend(\"rabbitmq\", {\n connectionUri: \"https://.....\",\n username: \"user\",\n password: \"password\",\n});\nconst role = new vault.rabbitmq.SecretBackendRole(\"role\", {\n backend: rabbitmq.path,\n tags: \"tag1,tag2\",\n vhosts: [{\n host: \"/\",\n configure: \"\",\n read: \".*\",\n write: \"\",\n }],\n vhostTopics: [{\n vhosts: [{\n topic: \"amq.topic\",\n read: \".*\",\n write: \"\",\n }],\n host: \"/\",\n }],\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nrabbitmq = vault.rabbit_mq.SecretBackend(\"rabbitmq\",\n connection_uri=\"https://.....\",\n username=\"user\",\n password=\"password\")\nrole = vault.rabbit_mq.SecretBackendRole(\"role\",\n backend=rabbitmq.path,\n tags=\"tag1,tag2\",\n vhosts=[vault.rabbit_mq.SecretBackendRoleVhostArgs(\n host=\"/\",\n configure=\"\",\n read=\".*\",\n write=\"\",\n )],\n vhost_topics=[vault.rabbit_mq.SecretBackendRoleVhostTopicArgs(\n vhosts=[vault.rabbit_mq.SecretBackendRoleVhostTopicVhostArgs(\n topic=\"amq.topic\",\n read=\".*\",\n write=\"\",\n )],\n host=\"/\",\n )])\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var rabbitmq = new Vault.RabbitMQ.SecretBackend(\"rabbitmq\", new()\n {\n ConnectionUri = \"https://.....\",\n Username = \"user\",\n Password = \"password\",\n });\n\n var role = new Vault.RabbitMQ.SecretBackendRole(\"role\", new()\n {\n Backend = rabbitmq.Path,\n Tags = \"tag1,tag2\",\n Vhosts = new[]\n {\n new Vault.RabbitMQ.Inputs.SecretBackendRoleVhostArgs\n {\n Host = \"/\",\n Configure = \"\",\n Read = \".*\",\n Write = \"\",\n },\n },\n VhostTopics = new[]\n {\n new Vault.RabbitMQ.Inputs.SecretBackendRoleVhostTopicArgs\n {\n Vhosts = new[]\n {\n new Vault.RabbitMQ.Inputs.SecretBackendRoleVhostTopicVhostArgs\n {\n Topic = \"amq.topic\",\n Read = \".*\",\n Write = \"\",\n },\n },\n Host = \"/\",\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/rabbitMq\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\trabbitmq, err := rabbitMq.NewSecretBackend(ctx, \"rabbitmq\", \u0026rabbitMq.SecretBackendArgs{\n\t\t\tConnectionUri: pulumi.String(\"https://.....\"),\n\t\t\tUsername: pulumi.String(\"user\"),\n\t\t\tPassword: pulumi.String(\"password\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = rabbitMq.NewSecretBackendRole(ctx, \"role\", \u0026rabbitMq.SecretBackendRoleArgs{\n\t\t\tBackend: rabbitmq.Path,\n\t\t\tTags: pulumi.String(\"tag1,tag2\"),\n\t\t\tVhosts: rabbitmq.SecretBackendRoleVhostArray{\n\t\t\t\t\u0026rabbitmq.SecretBackendRoleVhostArgs{\n\t\t\t\t\tHost: pulumi.String(\"/\"),\n\t\t\t\t\tConfigure: pulumi.String(\"\"),\n\t\t\t\t\tRead: pulumi.String(\".*\"),\n\t\t\t\t\tWrite: pulumi.String(\"\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tVhostTopics: rabbitmq.SecretBackendRoleVhostTopicArray{\n\t\t\t\t\u0026rabbitmq.SecretBackendRoleVhostTopicArgs{\n\t\t\t\t\tVhosts: rabbitmq.SecretBackendRoleVhostTopicVhostArray{\n\t\t\t\t\t\t\u0026rabbitmq.SecretBackendRoleVhostTopicVhostArgs{\n\t\t\t\t\t\t\tTopic: pulumi.String(\"amq.topic\"),\n\t\t\t\t\t\t\tRead: pulumi.String(\".*\"),\n\t\t\t\t\t\t\tWrite: pulumi.String(\"\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\tHost: pulumi.String(\"/\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.rabbitMq.SecretBackend;\nimport com.pulumi.vault.rabbitMq.SecretBackendArgs;\nimport com.pulumi.vault.rabbitMq.SecretBackendRole;\nimport com.pulumi.vault.rabbitMq.SecretBackendRoleArgs;\nimport com.pulumi.vault.rabbitMq.inputs.SecretBackendRoleVhostArgs;\nimport com.pulumi.vault.rabbitMq.inputs.SecretBackendRoleVhostTopicArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var rabbitmq = new SecretBackend(\"rabbitmq\", SecretBackendArgs.builder() \n .connectionUri(\"https://.....\")\n .username(\"user\")\n .password(\"password\")\n .build());\n\n var role = new SecretBackendRole(\"role\", SecretBackendRoleArgs.builder() \n .backend(rabbitmq.path())\n .tags(\"tag1,tag2\")\n .vhosts(SecretBackendRoleVhostArgs.builder()\n .host(\"/\")\n .configure(\"\")\n .read(\".*\")\n .write(\"\")\n .build())\n .vhostTopics(SecretBackendRoleVhostTopicArgs.builder()\n .vhosts(SecretBackendRoleVhostTopicVhostArgs.builder()\n .topic(\"amq.topic\")\n .read(\".*\")\n .write(\"\")\n .build())\n .host(\"/\")\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n rabbitmq:\n type: vault:rabbitMq:SecretBackend\n properties:\n connectionUri: https://.....\n username: user\n password: password\n role:\n type: vault:rabbitMq:SecretBackendRole\n properties:\n backend: ${rabbitmq.path}\n tags: tag1,tag2\n vhosts:\n - host: /\n configure:\n read: .*\n write:\n vhostTopics:\n - vhosts:\n - topic: amq.topic\n read: .*\n write:\n host: /\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nRabbitMQ secret backend roles can be imported using the `path`, e.g.\n\n```sh\n $ pulumi import vault:rabbitMq/secretBackendRole:SecretBackendRole role rabbitmq/roles/deploy\n```\n\n ",
+ "description": "{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst rabbitmq = new vault.rabbitmq.SecretBackend(\"rabbitmq\", {\n connectionUri: \"https://.....\",\n username: \"user\",\n password: \"password\",\n});\nconst role = new vault.rabbitmq.SecretBackendRole(\"role\", {\n backend: rabbitmq.path,\n tags: \"tag1,tag2\",\n vhosts: [{\n host: \"/\",\n configure: \"\",\n read: \".*\",\n write: \"\",\n }],\n vhostTopics: [{\n vhosts: [{\n topic: \"amq.topic\",\n read: \".*\",\n write: \"\",\n }],\n host: \"/\",\n }],\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nrabbitmq = vault.rabbit_mq.SecretBackend(\"rabbitmq\",\n connection_uri=\"https://.....\",\n username=\"user\",\n password=\"password\")\nrole = vault.rabbit_mq.SecretBackendRole(\"role\",\n backend=rabbitmq.path,\n tags=\"tag1,tag2\",\n vhosts=[vault.rabbit_mq.SecretBackendRoleVhostArgs(\n host=\"/\",\n configure=\"\",\n read=\".*\",\n write=\"\",\n )],\n vhost_topics=[vault.rabbit_mq.SecretBackendRoleVhostTopicArgs(\n vhosts=[vault.rabbit_mq.SecretBackendRoleVhostTopicVhostArgs(\n topic=\"amq.topic\",\n read=\".*\",\n write=\"\",\n )],\n host=\"/\",\n )])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var rabbitmq = new Vault.RabbitMQ.SecretBackend(\"rabbitmq\", new()\n {\n ConnectionUri = \"https://.....\",\n Username = \"user\",\n Password = \"password\",\n });\n\n var role = new Vault.RabbitMQ.SecretBackendRole(\"role\", new()\n {\n Backend = rabbitmq.Path,\n Tags = \"tag1,tag2\",\n Vhosts = new[]\n {\n new Vault.RabbitMQ.Inputs.SecretBackendRoleVhostArgs\n {\n Host = \"/\",\n Configure = \"\",\n Read = \".*\",\n Write = \"\",\n },\n },\n VhostTopics = new[]\n {\n new Vault.RabbitMQ.Inputs.SecretBackendRoleVhostTopicArgs\n {\n Vhosts = new[]\n {\n new Vault.RabbitMQ.Inputs.SecretBackendRoleVhostTopicVhostArgs\n {\n Topic = \"amq.topic\",\n Read = \".*\",\n Write = \"\",\n },\n },\n Host = \"/\",\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/rabbitMq\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\trabbitmq, err := rabbitMq.NewSecretBackend(ctx, \"rabbitmq\", \u0026rabbitMq.SecretBackendArgs{\n\t\t\tConnectionUri: pulumi.String(\"https://.....\"),\n\t\t\tUsername: pulumi.String(\"user\"),\n\t\t\tPassword: pulumi.String(\"password\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = rabbitMq.NewSecretBackendRole(ctx, \"role\", \u0026rabbitMq.SecretBackendRoleArgs{\n\t\t\tBackend: rabbitmq.Path,\n\t\t\tTags: pulumi.String(\"tag1,tag2\"),\n\t\t\tVhosts: rabbitmq.SecretBackendRoleVhostArray{\n\t\t\t\t\u0026rabbitmq.SecretBackendRoleVhostArgs{\n\t\t\t\t\tHost: pulumi.String(\"/\"),\n\t\t\t\t\tConfigure: pulumi.String(\"\"),\n\t\t\t\t\tRead: pulumi.String(\".*\"),\n\t\t\t\t\tWrite: pulumi.String(\"\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tVhostTopics: rabbitmq.SecretBackendRoleVhostTopicArray{\n\t\t\t\t\u0026rabbitmq.SecretBackendRoleVhostTopicArgs{\n\t\t\t\t\tVhosts: rabbitmq.SecretBackendRoleVhostTopicVhostArray{\n\t\t\t\t\t\t\u0026rabbitmq.SecretBackendRoleVhostTopicVhostArgs{\n\t\t\t\t\t\t\tTopic: pulumi.String(\"amq.topic\"),\n\t\t\t\t\t\t\tRead: pulumi.String(\".*\"),\n\t\t\t\t\t\t\tWrite: pulumi.String(\"\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\tHost: pulumi.String(\"/\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.rabbitMq.SecretBackend;\nimport com.pulumi.vault.rabbitMq.SecretBackendArgs;\nimport com.pulumi.vault.rabbitMq.SecretBackendRole;\nimport com.pulumi.vault.rabbitMq.SecretBackendRoleArgs;\nimport com.pulumi.vault.rabbitMq.inputs.SecretBackendRoleVhostArgs;\nimport com.pulumi.vault.rabbitMq.inputs.SecretBackendRoleVhostTopicArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var rabbitmq = new SecretBackend(\"rabbitmq\", SecretBackendArgs.builder() \n .connectionUri(\"https://.....\")\n .username(\"user\")\n .password(\"password\")\n .build());\n\n var role = new SecretBackendRole(\"role\", SecretBackendRoleArgs.builder() \n .backend(rabbitmq.path())\n .tags(\"tag1,tag2\")\n .vhosts(SecretBackendRoleVhostArgs.builder()\n .host(\"/\")\n .configure(\"\")\n .read(\".*\")\n .write(\"\")\n .build())\n .vhostTopics(SecretBackendRoleVhostTopicArgs.builder()\n .vhosts(SecretBackendRoleVhostTopicVhostArgs.builder()\n .topic(\"amq.topic\")\n .read(\".*\")\n .write(\"\")\n .build())\n .host(\"/\")\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n rabbitmq:\n type: vault:rabbitMq:SecretBackend\n properties:\n connectionUri: https://.....\n username: user\n password: password\n role:\n type: vault:rabbitMq:SecretBackendRole\n properties:\n backend: ${rabbitmq.path}\n tags: tag1,tag2\n vhosts:\n - host: /\n configure:\n read: .*\n write:\n vhostTopics:\n - vhosts:\n - topic: amq.topic\n read: .*\n write:\n host: /\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nRabbitMQ secret backend roles can be imported using the `path`, e.g.\n\n```sh\n $ pulumi import vault:rabbitMq/secretBackendRole:SecretBackendRole role rabbitmq/roles/deploy\n```\n ",
"properties": {
"backend": {
"type": "string",
@@ -29472,232 +26722,534 @@
"type": "object"
}
},
- "vault:ssh/secretBackendCa:SecretBackendCa": {
- "description": "Provides a resource to manage CA information in an SSH secret backend\n[SSH secret backend within Vault](https://www.vaultproject.io/docs/secrets/ssh/index.html).\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst example = new vault.Mount(\"example\", {type: \"ssh\"});\nconst foo = new vault.ssh.SecretBackendCa(\"foo\", {backend: example.path});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nexample = vault.Mount(\"example\", type=\"ssh\")\nfoo = vault.ssh.SecretBackendCa(\"foo\", backend=example.path)\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new Vault.Mount(\"example\", new()\n {\n Type = \"ssh\",\n });\n\n var foo = new Vault.Ssh.SecretBackendCa(\"foo\", new()\n {\n Backend = example.Path,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault\"\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/ssh\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texample, err := vault.NewMount(ctx, \"example\", \u0026vault.MountArgs{\n\t\t\tType: pulumi.String(\"ssh\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = ssh.NewSecretBackendCa(ctx, \"foo\", \u0026ssh.SecretBackendCaArgs{\n\t\t\tBackend: example.Path,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.Mount;\nimport com.pulumi.vault.MountArgs;\nimport com.pulumi.vault.ssh.SecretBackendCa;\nimport com.pulumi.vault.ssh.SecretBackendCaArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new Mount(\"example\", MountArgs.builder() \n .type(\"ssh\")\n .build());\n\n var foo = new SecretBackendCa(\"foo\", SecretBackendCaArgs.builder() \n .backend(example.path())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: vault:Mount\n properties:\n type: ssh\n foo:\n type: vault:ssh:SecretBackendCa\n properties:\n backend: ${example.path}\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nSSH secret backend CAs can be imported using the `path`, e.g.\n\n```sh\n $ pulumi import vault:ssh/secretBackendCa:SecretBackendCa foo ssh\n```\n\n ",
+ "vault:saml/authBackend:AuthBackend": {
+ "description": "Manages a SAML Auth mount in a Vault server. See the [Vault\ndocumentation](https://www.vaultproject.io/docs/auth/saml/) for more\ninformation.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst test = new vault.saml.AuthBackend(\"test\", {\n acsUrls: [\"https://my.vault.primary/v1/auth/saml/callback\"],\n defaultRole: \"admin\",\n entityId: \"https://my.vault/v1/auth/saml\",\n idpMetadataUrl: \"https://company.okta.com/app/abc123eb9xnIfzlaf697/sso/saml/metadata\",\n path: \"saml\",\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\ntest = vault.saml.AuthBackend(\"test\",\n acs_urls=[\"https://my.vault.primary/v1/auth/saml/callback\"],\n default_role=\"admin\",\n entity_id=\"https://my.vault/v1/auth/saml\",\n idp_metadata_url=\"https://company.okta.com/app/abc123eb9xnIfzlaf697/sso/saml/metadata\",\n path=\"saml\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var test = new Vault.Saml.AuthBackend(\"test\", new()\n {\n AcsUrls = new[]\n {\n \"https://my.vault.primary/v1/auth/saml/callback\",\n },\n DefaultRole = \"admin\",\n EntityId = \"https://my.vault/v1/auth/saml\",\n IdpMetadataUrl = \"https://company.okta.com/app/abc123eb9xnIfzlaf697/sso/saml/metadata\",\n Path = \"saml\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/saml\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := saml.NewAuthBackend(ctx, \"test\", \u0026saml.AuthBackendArgs{\n\t\t\tAcsUrls: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"https://my.vault.primary/v1/auth/saml/callback\"),\n\t\t\t},\n\t\t\tDefaultRole: pulumi.String(\"admin\"),\n\t\t\tEntityId: pulumi.String(\"https://my.vault/v1/auth/saml\"),\n\t\t\tIdpMetadataUrl: pulumi.String(\"https://company.okta.com/app/abc123eb9xnIfzlaf697/sso/saml/metadata\"),\n\t\t\tPath: pulumi.String(\"saml\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.saml.AuthBackend;\nimport com.pulumi.vault.saml.AuthBackendArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var test = new AuthBackend(\"test\", AuthBackendArgs.builder() \n .acsUrls(\"https://my.vault.primary/v1/auth/saml/callback\")\n .defaultRole(\"admin\")\n .entityId(\"https://my.vault/v1/auth/saml\")\n .idpMetadataUrl(\"https://company.okta.com/app/abc123eb9xnIfzlaf697/sso/saml/metadata\")\n .path(\"saml\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n test:\n type: vault:saml:AuthBackend\n properties:\n acsUrls:\n - https://my.vault.primary/v1/auth/saml/callback\n defaultRole: admin\n entityId: https://my.vault/v1/auth/saml\n idpMetadataUrl: https://company.okta.com/app/abc123eb9xnIfzlaf697/sso/saml/metadata\n path: saml\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nSAML authentication mounts can be imported using the `path`, e.g.\n\n```sh\n $ pulumi import vault:saml/authBackend:AuthBackend example saml\n```\n ",
"properties": {
- "backend": {
+ "acsUrls": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "The well-formatted URLs of your Assertion Consumer Service (ACS)\nthat should receive a response from the identity provider.\n"
+ },
+ "defaultRole": {
"type": "string",
- "description": "The path where the SSH secret backend is mounted. Defaults to 'ssh'\n"
+ "description": "The role to use if no role is provided during login.\n"
},
- "generateSigningKey": {
+ "disableRemount": {
"type": "boolean",
- "description": "Whether Vault should generate the signing key pair internally. Defaults to true\n"
+ "description": "If set to `true`, opts out of mount migration on path updates.\nSee here for more info on [Mount Migration](https://www.vaultproject.io/docs/concepts/mount-migration)\n"
+ },
+ "entityId": {
+ "type": "string",
+ "description": "The entity ID of the SAML authentication service provider.\n"
+ },
+ "idpCert": {
+ "type": "string",
+ "description": "The PEM encoded certificate of the identity provider. Mutually exclusive\nwith `idp_metadata_url`.\n"
+ },
+ "idpEntityId": {
+ "type": "string",
+ "description": "The entity ID of the identity provider. Mutually exclusive with\n`idp_metadata_url`.\n"
+ },
+ "idpMetadataUrl": {
+ "type": "string",
+ "description": "The metadata URL of the identity provider.\n"
+ },
+ "idpSsoUrl": {
+ "type": "string",
+ "description": "The SSO URL of the identity provider. Mutually exclusive with \n`idp_metadata_url`.\n"
},
"namespace": {
"type": "string",
"description": "The namespace to provision the resource in.\nThe value should not contain leading or trailing forward slashes.\nThe `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault#namespace).\n*Available only for Vault Enterprise*.\n"
},
- "privateKey": {
+ "path": {
"type": "string",
- "description": "The private key part the SSH CA key pair; required if generate_signing_key is false.\n",
- "secret": true
+ "description": "Path where the auth backend will be mounted. Defaults to `auth/saml`\nif not specified.\n"
},
- "publicKey": {
- "type": "string",
- "description": "The public key part the SSH CA key pair; required if generate_signing_key is false.\n"
+ "verboseLogging": {
+ "type": "boolean",
+ "description": "If set to `true`, logs additional, potentially sensitive\ninformation during the SAML exchange according to the current logging level. Not\nrecommended for production.\n"
}
},
"required": [
- "privateKey",
- "publicKey"
+ "acsUrls",
+ "entityId",
+ "verboseLogging"
],
"inputProperties": {
- "backend": {
+ "acsUrls": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "The well-formatted URLs of your Assertion Consumer Service (ACS)\nthat should receive a response from the identity provider.\n"
+ },
+ "defaultRole": {
"type": "string",
- "description": "The path where the SSH secret backend is mounted. Defaults to 'ssh'\n",
- "willReplaceOnChanges": true
+ "description": "The role to use if no role is provided during login.\n"
},
- "generateSigningKey": {
+ "disableRemount": {
"type": "boolean",
- "description": "Whether Vault should generate the signing key pair internally. Defaults to true\n",
- "willReplaceOnChanges": true
+ "description": "If set to `true`, opts out of mount migration on path updates.\nSee here for more info on [Mount Migration](https://www.vaultproject.io/docs/concepts/mount-migration)\n"
+ },
+ "entityId": {
+ "type": "string",
+ "description": "The entity ID of the SAML authentication service provider.\n"
+ },
+ "idpCert": {
+ "type": "string",
+ "description": "The PEM encoded certificate of the identity provider. Mutually exclusive\nwith `idp_metadata_url`.\n"
+ },
+ "idpEntityId": {
+ "type": "string",
+ "description": "The entity ID of the identity provider. Mutually exclusive with\n`idp_metadata_url`.\n"
+ },
+ "idpMetadataUrl": {
+ "type": "string",
+ "description": "The metadata URL of the identity provider.\n"
+ },
+ "idpSsoUrl": {
+ "type": "string",
+ "description": "The SSO URL of the identity provider. Mutually exclusive with \n`idp_metadata_url`.\n"
},
"namespace": {
"type": "string",
"description": "The namespace to provision the resource in.\nThe value should not contain leading or trailing forward slashes.\nThe `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault#namespace).\n*Available only for Vault Enterprise*.\n",
"willReplaceOnChanges": true
},
- "privateKey": {
+ "path": {
"type": "string",
- "description": "The private key part the SSH CA key pair; required if generate_signing_key is false.\n",
- "secret": true,
+ "description": "Path where the auth backend will be mounted. Defaults to `auth/saml`\nif not specified.\n",
"willReplaceOnChanges": true
},
- "publicKey": {
- "type": "string",
- "description": "The public key part the SSH CA key pair; required if generate_signing_key is false.\n",
- "willReplaceOnChanges": true
+ "verboseLogging": {
+ "type": "boolean",
+ "description": "If set to `true`, logs additional, potentially sensitive\ninformation during the SAML exchange according to the current logging level. Not\nrecommended for production.\n"
}
},
+ "requiredInputs": [
+ "acsUrls",
+ "entityId"
+ ],
"stateInputs": {
- "description": "Input properties used for looking up and filtering SecretBackendCa resources.\n",
+ "description": "Input properties used for looking up and filtering AuthBackend resources.\n",
"properties": {
- "backend": {
+ "acsUrls": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "The well-formatted URLs of your Assertion Consumer Service (ACS)\nthat should receive a response from the identity provider.\n"
+ },
+ "defaultRole": {
"type": "string",
- "description": "The path where the SSH secret backend is mounted. Defaults to 'ssh'\n",
- "willReplaceOnChanges": true
+ "description": "The role to use if no role is provided during login.\n"
},
- "generateSigningKey": {
+ "disableRemount": {
"type": "boolean",
- "description": "Whether Vault should generate the signing key pair internally. Defaults to true\n",
- "willReplaceOnChanges": true
+ "description": "If set to `true`, opts out of mount migration on path updates.\nSee here for more info on [Mount Migration](https://www.vaultproject.io/docs/concepts/mount-migration)\n"
+ },
+ "entityId": {
+ "type": "string",
+ "description": "The entity ID of the SAML authentication service provider.\n"
+ },
+ "idpCert": {
+ "type": "string",
+ "description": "The PEM encoded certificate of the identity provider. Mutually exclusive\nwith `idp_metadata_url`.\n"
+ },
+ "idpEntityId": {
+ "type": "string",
+ "description": "The entity ID of the identity provider. Mutually exclusive with\n`idp_metadata_url`.\n"
+ },
+ "idpMetadataUrl": {
+ "type": "string",
+ "description": "The metadata URL of the identity provider.\n"
+ },
+ "idpSsoUrl": {
+ "type": "string",
+ "description": "The SSO URL of the identity provider. Mutually exclusive with \n`idp_metadata_url`.\n"
},
"namespace": {
"type": "string",
"description": "The namespace to provision the resource in.\nThe value should not contain leading or trailing forward slashes.\nThe `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault#namespace).\n*Available only for Vault Enterprise*.\n",
"willReplaceOnChanges": true
},
- "privateKey": {
+ "path": {
"type": "string",
- "description": "The private key part the SSH CA key pair; required if generate_signing_key is false.\n",
- "secret": true,
+ "description": "Path where the auth backend will be mounted. Defaults to `auth/saml`\nif not specified.\n",
"willReplaceOnChanges": true
},
- "publicKey": {
- "type": "string",
- "description": "The public key part the SSH CA key pair; required if generate_signing_key is false.\n",
- "willReplaceOnChanges": true
+ "verboseLogging": {
+ "type": "boolean",
+ "description": "If set to `true`, logs additional, potentially sensitive\ninformation during the SAML exchange according to the current logging level. Not\nrecommended for production.\n"
}
},
"type": "object"
}
},
- "vault:ssh/secretBackendRole:SecretBackendRole": {
- "description": "Provides a resource to manage roles in an SSH secret backend\n[SSH secret backend within Vault](https://www.vaultproject.io/docs/secrets/ssh/index.html).\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst example = new vault.Mount(\"example\", {type: \"ssh\"});\nconst foo = new vault.ssh.SecretBackendRole(\"foo\", {\n backend: example.path,\n keyType: \"ca\",\n allowUserCertificates: true,\n});\nconst bar = new vault.ssh.SecretBackendRole(\"bar\", {\n backend: example.path,\n keyType: \"otp\",\n defaultUser: \"default\",\n allowedUsers: \"default,baz\",\n cidrList: \"0.0.0.0/0\",\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nexample = vault.Mount(\"example\", type=\"ssh\")\nfoo = vault.ssh.SecretBackendRole(\"foo\",\n backend=example.path,\n key_type=\"ca\",\n allow_user_certificates=True)\nbar = vault.ssh.SecretBackendRole(\"bar\",\n backend=example.path,\n key_type=\"otp\",\n default_user=\"default\",\n allowed_users=\"default,baz\",\n cidr_list=\"0.0.0.0/0\")\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new Vault.Mount(\"example\", new()\n {\n Type = \"ssh\",\n });\n\n var foo = new Vault.Ssh.SecretBackendRole(\"foo\", new()\n {\n Backend = example.Path,\n KeyType = \"ca\",\n AllowUserCertificates = true,\n });\n\n var bar = new Vault.Ssh.SecretBackendRole(\"bar\", new()\n {\n Backend = example.Path,\n KeyType = \"otp\",\n DefaultUser = \"default\",\n AllowedUsers = \"default,baz\",\n CidrList = \"0.0.0.0/0\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault\"\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/ssh\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texample, err := vault.NewMount(ctx, \"example\", \u0026vault.MountArgs{\n\t\t\tType: pulumi.String(\"ssh\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = ssh.NewSecretBackendRole(ctx, \"foo\", \u0026ssh.SecretBackendRoleArgs{\n\t\t\tBackend: example.Path,\n\t\t\tKeyType: pulumi.String(\"ca\"),\n\t\t\tAllowUserCertificates: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = ssh.NewSecretBackendRole(ctx, \"bar\", \u0026ssh.SecretBackendRoleArgs{\n\t\t\tBackend: example.Path,\n\t\t\tKeyType: pulumi.String(\"otp\"),\n\t\t\tDefaultUser: pulumi.String(\"default\"),\n\t\t\tAllowedUsers: pulumi.String(\"default,baz\"),\n\t\t\tCidrList: pulumi.String(\"0.0.0.0/0\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.Mount;\nimport com.pulumi.vault.MountArgs;\nimport com.pulumi.vault.ssh.SecretBackendRole;\nimport com.pulumi.vault.ssh.SecretBackendRoleArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new Mount(\"example\", MountArgs.builder() \n .type(\"ssh\")\n .build());\n\n var foo = new SecretBackendRole(\"foo\", SecretBackendRoleArgs.builder() \n .backend(example.path())\n .keyType(\"ca\")\n .allowUserCertificates(true)\n .build());\n\n var bar = new SecretBackendRole(\"bar\", SecretBackendRoleArgs.builder() \n .backend(example.path())\n .keyType(\"otp\")\n .defaultUser(\"default\")\n .allowedUsers(\"default,baz\")\n .cidrList(\"0.0.0.0/0\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: vault:Mount\n properties:\n type: ssh\n foo:\n type: vault:ssh:SecretBackendRole\n properties:\n backend: ${example.path}\n keyType: ca\n allowUserCertificates: true\n bar:\n type: vault:ssh:SecretBackendRole\n properties:\n backend: ${example.path}\n keyType: otp\n defaultUser: default\n allowedUsers: default,baz\n cidrList: 0.0.0.0/0\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nSSH secret backend roles can be imported using the `path`, e.g.\n\n```sh\n $ pulumi import vault:ssh/secretBackendRole:SecretBackendRole foo ssh/roles/my-role\n```\n\n ",
+ "vault:saml/authBackendRole:AuthBackendRole": {
+ "description": "Manages an SAML auth backend role in a Vault server. See the [Vault\ndocumentation](https://www.vaultproject.io/docs/auth/saml.html) for more\ninformation.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst exampleAuthBackend = new vault.saml.AuthBackend(\"exampleAuthBackend\", {\n path: \"saml\",\n idpMetadataUrl: \"https://company.okta.com/app/abc123eb9xnIfzlaf697/sso/saml/metadata\",\n entityId: \"https://my.vault/v1/auth/saml\",\n acsUrls: [\"https://my.vault.primary/v1/auth/saml/callback\"],\n defaultRole: \"default-role\",\n});\nconst exampleAuthBackendRole = new vault.saml.AuthBackendRole(\"exampleAuthBackendRole\", {\n path: exampleAuthBackend.path,\n groupsAttribute: \"groups\",\n boundAttributes: {\n group: \"admin\",\n },\n boundSubjects: [\"*example.com\"],\n tokenPolicies: [\"writer\"],\n tokenTtl: 86400,\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nexample_auth_backend = vault.saml.AuthBackend(\"exampleAuthBackend\",\n path=\"saml\",\n idp_metadata_url=\"https://company.okta.com/app/abc123eb9xnIfzlaf697/sso/saml/metadata\",\n entity_id=\"https://my.vault/v1/auth/saml\",\n acs_urls=[\"https://my.vault.primary/v1/auth/saml/callback\"],\n default_role=\"default-role\")\nexample_auth_backend_role = vault.saml.AuthBackendRole(\"exampleAuthBackendRole\",\n path=example_auth_backend.path,\n groups_attribute=\"groups\",\n bound_attributes={\n \"group\": \"admin\",\n },\n bound_subjects=[\"*example.com\"],\n token_policies=[\"writer\"],\n token_ttl=86400)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var exampleAuthBackend = new Vault.Saml.AuthBackend(\"exampleAuthBackend\", new()\n {\n Path = \"saml\",\n IdpMetadataUrl = \"https://company.okta.com/app/abc123eb9xnIfzlaf697/sso/saml/metadata\",\n EntityId = \"https://my.vault/v1/auth/saml\",\n AcsUrls = new[]\n {\n \"https://my.vault.primary/v1/auth/saml/callback\",\n },\n DefaultRole = \"default-role\",\n });\n\n var exampleAuthBackendRole = new Vault.Saml.AuthBackendRole(\"exampleAuthBackendRole\", new()\n {\n Path = exampleAuthBackend.Path,\n GroupsAttribute = \"groups\",\n BoundAttributes = \n {\n { \"group\", \"admin\" },\n },\n BoundSubjects = new[]\n {\n \"*example.com\",\n },\n TokenPolicies = new[]\n {\n \"writer\",\n },\n TokenTtl = 86400,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/saml\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texampleAuthBackend, err := saml.NewAuthBackend(ctx, \"exampleAuthBackend\", \u0026saml.AuthBackendArgs{\n\t\t\tPath: pulumi.String(\"saml\"),\n\t\t\tIdpMetadataUrl: pulumi.String(\"https://company.okta.com/app/abc123eb9xnIfzlaf697/sso/saml/metadata\"),\n\t\t\tEntityId: pulumi.String(\"https://my.vault/v1/auth/saml\"),\n\t\t\tAcsUrls: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"https://my.vault.primary/v1/auth/saml/callback\"),\n\t\t\t},\n\t\t\tDefaultRole: pulumi.String(\"default-role\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = saml.NewAuthBackendRole(ctx, \"exampleAuthBackendRole\", \u0026saml.AuthBackendRoleArgs{\n\t\t\tPath: exampleAuthBackend.Path,\n\t\t\tGroupsAttribute: pulumi.String(\"groups\"),\n\t\t\tBoundAttributes: pulumi.Map{\n\t\t\t\t\"group\": pulumi.Any(\"admin\"),\n\t\t\t},\n\t\t\tBoundSubjects: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"*example.com\"),\n\t\t\t},\n\t\t\tTokenPolicies: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"writer\"),\n\t\t\t},\n\t\t\tTokenTtl: pulumi.Int(86400),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.saml.AuthBackend;\nimport com.pulumi.vault.saml.AuthBackendArgs;\nimport com.pulumi.vault.saml.AuthBackendRole;\nimport com.pulumi.vault.saml.AuthBackendRoleArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var exampleAuthBackend = new AuthBackend(\"exampleAuthBackend\", AuthBackendArgs.builder() \n .path(\"saml\")\n .idpMetadataUrl(\"https://company.okta.com/app/abc123eb9xnIfzlaf697/sso/saml/metadata\")\n .entityId(\"https://my.vault/v1/auth/saml\")\n .acsUrls(\"https://my.vault.primary/v1/auth/saml/callback\")\n .defaultRole(\"default-role\")\n .build());\n\n var exampleAuthBackendRole = new AuthBackendRole(\"exampleAuthBackendRole\", AuthBackendRoleArgs.builder() \n .path(exampleAuthBackend.path())\n .groupsAttribute(\"groups\")\n .boundAttributes(Map.of(\"group\", \"admin\"))\n .boundSubjects(\"*example.com\")\n .tokenPolicies(\"writer\")\n .tokenTtl(86400)\n .build());\n\n }\n}\n```\n```yaml\nresources:\n exampleAuthBackend:\n type: vault:saml:AuthBackend\n properties:\n path: saml\n idpMetadataUrl: https://company.okta.com/app/abc123eb9xnIfzlaf697/sso/saml/metadata\n entityId: https://my.vault/v1/auth/saml\n acsUrls:\n - https://my.vault.primary/v1/auth/saml/callback\n defaultRole: default-role\n exampleAuthBackendRole:\n type: vault:saml:AuthBackendRole\n properties:\n path: ${exampleAuthBackend.path}\n groupsAttribute: groups\n boundAttributes:\n group: admin\n boundSubjects:\n - '*example.com'\n tokenPolicies:\n - writer\n tokenTtl: 86400\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nSAML authentication backend roles can be imported using the `path`, e.g.\n\n```sh\n $ pulumi import vault:saml/authBackendRole:AuthBackendRole example auth/saml/role/my-role\n```\n ",
"properties": {
- "algorithmSigner": {
- "type": "string",
- "description": "When supplied, this value specifies a signing algorithm for the key. Possible values: ssh-rsa, rsa-sha2-256, rsa-sha2-512.\n"
- },
- "allowBareDomains": {
- "type": "boolean",
- "description": "Specifies if host certificates that are requested are allowed to use the base domains listed in `allowed_domains`.\n"
- },
- "allowHostCertificates": {
- "type": "boolean",
- "description": "Specifies if certificates are allowed to be signed for use as a 'host'.\n"
+ "boundAttributes": {
+ "type": "object",
+ "additionalProperties": {
+ "$ref": "pulumi.json#/Any"
+ },
+ "description": "Mapping of attribute names to values that are expected to\nexist in the SAML assertion.\n"
},
- "allowSubdomains": {
- "type": "boolean",
- "description": "Specifies if host certificates that are requested are allowed to be subdomains of those listed in `allowed_domains`.\n"
+ "boundAttributesType": {
+ "type": "string",
+ "description": "The type of matching assertion to perform on\n`bound_attributes_type`.\n"
},
- "allowUserCertificates": {
- "type": "boolean",
- "description": "Specifies if certificates are allowed to be signed for use as a 'user'.\n"
+ "boundSubjects": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "List of subjects being asserted for SAML authentication.\n"
},
- "allowUserKeyIds": {
- "type": "boolean",
- "description": "Specifies if users can override the key ID for a signed certificate with the `key_id` field.\n"
+ "boundSubjectsType": {
+ "type": "string",
+ "description": "The type of matching assertion to perform on `bound_subjects`.\n"
},
- "allowedCriticalOptions": {
+ "groupsAttribute": {
"type": "string",
- "description": "Specifies a comma-separated list of critical options that certificates can have when signed.\n"
+ "description": "The attribute to use to identify the set of groups to which the\nuser belongs.\n"
},
- "allowedDomains": {
+ "name": {
"type": "string",
- "description": "The list of domains for which a client can request a host certificate.\n"
+ "description": "Unique name of the role.\n"
},
- "allowedDomainsTemplate": {
- "type": "boolean",
- "description": "Specifies if `allowed_domains` can be declared using\nidentity template policies. Non-templated domains are also permitted.\n"
+ "namespace": {
+ "type": "string",
+ "description": "The namespace to provision the resource in.\nThe value should not contain leading or trailing forward slashes.\nThe `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault#namespace).\n*Available only for Vault Enterprise*.\n"
},
- "allowedExtensions": {
+ "path": {
"type": "string",
- "description": "Specifies a comma-separated list of extensions that certificates can have when signed.\n"
+ "description": "Path where the auth backend is mounted.\n"
},
- "allowedUserKeyConfigs": {
+ "tokenBoundCidrs": {
"type": "array",
"items": {
- "$ref": "#/types/vault:ssh/SecretBackendRoleAllowedUserKeyConfig:SecretBackendRoleAllowedUserKeyConfig"
+ "type": "string"
},
- "description": "Set of configuration blocks to define allowed \nuser key configuration, like key type and their lengths. Can be specified multiple times.\n*See Configuration-Options for more info*\n"
+ "description": "List of CIDR blocks; if set, specifies blocks of IP\naddresses which can authenticate successfully, and ties the resulting token to these blocks\nas well.\n"
},
- "allowedUserKeyLengths": {
- "type": "object",
- "additionalProperties": {
- "type": "integer"
- },
- "description": "Specifies a map of ssh key types and their expected sizes which \nare allowed to be signed by the CA type.\n*Deprecated: use* allowed_user_key_config *instead*\n",
- "deprecationMessage": "Set in allowed_user_key_config"
+ "tokenExplicitMaxTtl": {
+ "type": "integer",
+ "description": "If set, will encode an\n[explicit max TTL](https://www.vaultproject.io/docs/concepts/tokens.html#token-time-to-live-periodic-tokens-and-explicit-max-ttls)\nonto the token in number of seconds. This is a hard cap even if `token_ttl` and\n`token_max_ttl` would otherwise allow a renewal.\n"
},
- "allowedUsers": {
- "type": "string",
- "description": "Specifies a comma-separated list of usernames that are to be allowed, only if certain usernames are to be allowed.\n"
+ "tokenMaxTtl": {
+ "type": "integer",
+ "description": "The maximum lifetime for generated tokens in number of seconds.\nIts current value will be referenced at renewal time.\n"
},
- "allowedUsersTemplate": {
+ "tokenNoDefaultPolicy": {
"type": "boolean",
- "description": "Specifies if `allowed_users` can be declared using identity template policies. Non-templated users are also permitted.\n"
+ "description": "If set, the default policy will not be set on\ngenerated tokens; otherwise it will be added to the policies set in token_policies.\n"
},
- "backend": {
- "type": "string",
- "description": "The path where the SSH secret backend is mounted.\n"
+ "tokenNumUses": {
+ "type": "integer",
+ "description": "The [maximum number](https://developer.hashicorp.com/vault/api-docs/auth/saml#token_num_uses)\nof times a generated token may be used (within its lifetime); 0 means unlimited.\n"
},
- "cidrList": {
- "type": "string",
- "description": "The comma-separated string of CIDR blocks for which this role is applicable.\n"
+ "tokenPeriod": {
+ "type": "integer",
+ "description": "If set, indicates that the\ntoken generated using this role should never expire. The token should be renewed within the\nduration specified by this value. At each renewal, the token's TTL will be set to the\nvalue of this field. Specified in seconds.\n"
},
- "defaultCriticalOptions": {
- "type": "object",
- "additionalProperties": {
- "$ref": "pulumi.json#/Any"
+ "tokenPolicies": {
+ "type": "array",
+ "items": {
+ "type": "string"
},
- "description": "Specifies a map of critical options that certificates have when signed.\n"
+ "description": "List of policies to encode onto generated tokens. Depending\non the auth method, this list may be supplemented by user/group/other values.\n"
},
- "defaultExtensions": {
+ "tokenTtl": {
+ "type": "integer",
+ "description": "The incremental lifetime for generated tokens in number of seconds.\nIts current value will be referenced at renewal time.\n"
+ },
+ "tokenType": {
+ "type": "string",
+ "description": "The type of token that should be generated. Can be `service`,\n`batch`, or `default` to use the mount's tuned default (which unless changed will be\n`service` tokens). For token store roles, there are two additional possibilities:\n`default-service` and `default-batch` which specify the type to return unless the client\nrequests a different type at generation time.\n"
+ }
+ },
+ "required": [
+ "boundAttributesType",
+ "boundSubjectsType",
+ "name",
+ "path"
+ ],
+ "inputProperties": {
+ "boundAttributes": {
"type": "object",
"additionalProperties": {
"$ref": "pulumi.json#/Any"
},
- "description": "Specifies a map of extensions that certificates have when signed.\n"
+ "description": "Mapping of attribute names to values that are expected to\nexist in the SAML assertion.\n"
},
- "defaultUser": {
+ "boundAttributesType": {
"type": "string",
- "description": "Specifies the default username for which a credential will be generated.\n"
- },
- "defaultUserTemplate": {
- "type": "boolean",
- "description": "If set, `default_users` can be specified using identity template values. A non-templated user is also permitted.\n"
+ "description": "The type of matching assertion to perform on\n`bound_attributes_type`.\n"
},
- "keyIdFormat": {
- "type": "string",
- "description": "Specifies a custom format for the key id of a signed certificate.\n"
+ "boundSubjects": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "List of subjects being asserted for SAML authentication.\n"
},
- "keyType": {
+ "boundSubjectsType": {
"type": "string",
- "description": "Specifies the type of credentials generated by this role. This can be either `otp`, `dynamic` or `ca`.\n"
+ "description": "The type of matching assertion to perform on `bound_subjects`.\n"
},
- "maxTtl": {
+ "groupsAttribute": {
"type": "string",
- "description": "Specifies the maximum Time To Live value.\n"
+ "description": "The attribute to use to identify the set of groups to which the\nuser belongs.\n"
},
"name": {
"type": "string",
- "description": "Specifies the name of the role to create.\n"
+ "description": "Unique name of the role.\n",
+ "willReplaceOnChanges": true
},
"namespace": {
"type": "string",
- "description": "The namespace to provision the resource in.\nThe value should not contain leading or trailing forward slashes.\nThe `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault#namespace).\n*Available only for Vault Enterprise*.\n"
+ "description": "The namespace to provision the resource in.\nThe value should not contain leading or trailing forward slashes.\nThe `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault#namespace).\n*Available only for Vault Enterprise*.\n",
+ "willReplaceOnChanges": true
},
- "notBeforeDuration": {
+ "path": {
"type": "string",
- "description": "Specifies the duration by which to backdate the ValidAfter property.\nUses [duration format strings](https://developer.hashicorp.com/vault/docs/concepts/duration-format).\n"
+ "description": "Path where the auth backend is mounted.\n",
+ "willReplaceOnChanges": true
},
- "ttl": {
+ "tokenBoundCidrs": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "List of CIDR blocks; if set, specifies blocks of IP\naddresses which can authenticate successfully, and ties the resulting token to these blocks\nas well.\n"
+ },
+ "tokenExplicitMaxTtl": {
+ "type": "integer",
+ "description": "If set, will encode an\n[explicit max TTL](https://www.vaultproject.io/docs/concepts/tokens.html#token-time-to-live-periodic-tokens-and-explicit-max-ttls)\nonto the token in number of seconds. This is a hard cap even if `token_ttl` and\n`token_max_ttl` would otherwise allow a renewal.\n"
+ },
+ "tokenMaxTtl": {
+ "type": "integer",
+ "description": "The maximum lifetime for generated tokens in number of seconds.\nIts current value will be referenced at renewal time.\n"
+ },
+ "tokenNoDefaultPolicy": {
+ "type": "boolean",
+ "description": "If set, the default policy will not be set on\ngenerated tokens; otherwise it will be added to the policies set in token_policies.\n"
+ },
+ "tokenNumUses": {
+ "type": "integer",
+ "description": "The [maximum number](https://developer.hashicorp.com/vault/api-docs/auth/saml#token_num_uses)\nof times a generated token may be used (within its lifetime); 0 means unlimited.\n"
+ },
+ "tokenPeriod": {
+ "type": "integer",
+ "description": "If set, indicates that the\ntoken generated using this role should never expire. The token should be renewed within the\nduration specified by this value. At each renewal, the token's TTL will be set to the\nvalue of this field. Specified in seconds.\n"
+ },
+ "tokenPolicies": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "List of policies to encode onto generated tokens. Depending\non the auth method, this list may be supplemented by user/group/other values.\n"
+ },
+ "tokenTtl": {
+ "type": "integer",
+ "description": "The incremental lifetime for generated tokens in number of seconds.\nIts current value will be referenced at renewal time.\n"
+ },
+ "tokenType": {
"type": "string",
- "description": "Specifies the Time To Live value.\n"
+ "description": "The type of token that should be generated. Can be `service`,\n`batch`, or `default` to use the mount's tuned default (which unless changed will be\n`service` tokens). For token store roles, there are two additional possibilities:\n`default-service` and `default-batch` which specify the type to return unless the client\nrequests a different type at generation time.\n"
+ }
+ },
+ "requiredInputs": [
+ "path"
+ ],
+ "stateInputs": {
+ "description": "Input properties used for looking up and filtering AuthBackendRole resources.\n",
+ "properties": {
+ "boundAttributes": {
+ "type": "object",
+ "additionalProperties": {
+ "$ref": "pulumi.json#/Any"
+ },
+ "description": "Mapping of attribute names to values that are expected to\nexist in the SAML assertion.\n"
+ },
+ "boundAttributesType": {
+ "type": "string",
+ "description": "The type of matching assertion to perform on\n`bound_attributes_type`.\n"
+ },
+ "boundSubjects": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "List of subjects being asserted for SAML authentication.\n"
+ },
+ "boundSubjectsType": {
+ "type": "string",
+ "description": "The type of matching assertion to perform on `bound_subjects`.\n"
+ },
+ "groupsAttribute": {
+ "type": "string",
+ "description": "The attribute to use to identify the set of groups to which the\nuser belongs.\n"
+ },
+ "name": {
+ "type": "string",
+ "description": "Unique name of the role.\n",
+ "willReplaceOnChanges": true
+ },
+ "namespace": {
+ "type": "string",
+ "description": "The namespace to provision the resource in.\nThe value should not contain leading or trailing forward slashes.\nThe `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault#namespace).\n*Available only for Vault Enterprise*.\n",
+ "willReplaceOnChanges": true
+ },
+ "path": {
+ "type": "string",
+ "description": "Path where the auth backend is mounted.\n",
+ "willReplaceOnChanges": true
+ },
+ "tokenBoundCidrs": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "List of CIDR blocks; if set, specifies blocks of IP\naddresses which can authenticate successfully, and ties the resulting token to these blocks\nas well.\n"
+ },
+ "tokenExplicitMaxTtl": {
+ "type": "integer",
+ "description": "If set, will encode an\n[explicit max TTL](https://www.vaultproject.io/docs/concepts/tokens.html#token-time-to-live-periodic-tokens-and-explicit-max-ttls)\nonto the token in number of seconds. This is a hard cap even if `token_ttl` and\n`token_max_ttl` would otherwise allow a renewal.\n"
+ },
+ "tokenMaxTtl": {
+ "type": "integer",
+ "description": "The maximum lifetime for generated tokens in number of seconds.\nIts current value will be referenced at renewal time.\n"
+ },
+ "tokenNoDefaultPolicy": {
+ "type": "boolean",
+ "description": "If set, the default policy will not be set on\ngenerated tokens; otherwise it will be added to the policies set in token_policies.\n"
+ },
+ "tokenNumUses": {
+ "type": "integer",
+ "description": "The [maximum number](https://developer.hashicorp.com/vault/api-docs/auth/saml#token_num_uses)\nof times a generated token may be used (within its lifetime); 0 means unlimited.\n"
+ },
+ "tokenPeriod": {
+ "type": "integer",
+ "description": "If set, indicates that the\ntoken generated using this role should never expire. The token should be renewed within the\nduration specified by this value. At each renewal, the token's TTL will be set to the\nvalue of this field. Specified in seconds.\n"
+ },
+ "tokenPolicies": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "List of policies to encode onto generated tokens. Depending\non the auth method, this list may be supplemented by user/group/other values.\n"
+ },
+ "tokenTtl": {
+ "type": "integer",
+ "description": "The incremental lifetime for generated tokens in number of seconds.\nIts current value will be referenced at renewal time.\n"
+ },
+ "tokenType": {
+ "type": "string",
+ "description": "The type of token that should be generated. Can be `service`,\n`batch`, or `default` to use the mount's tuned default (which unless changed will be\n`service` tokens). For token store roles, there are two additional possibilities:\n`default-service` and `default-batch` which specify the type to return unless the client\nrequests a different type at generation time.\n"
+ }
+ },
+ "type": "object"
+ }
+ },
+ "vault:ssh/secretBackendCa:SecretBackendCa": {
+ "description": "Provides a resource to manage CA information in an SSH secret backend\n[SSH secret backend within Vault](https://www.vaultproject.io/docs/secrets/ssh/index.html).\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst example = new vault.Mount(\"example\", {type: \"ssh\"});\nconst foo = new vault.ssh.SecretBackendCa(\"foo\", {backend: example.path});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nexample = vault.Mount(\"example\", type=\"ssh\")\nfoo = vault.ssh.SecretBackendCa(\"foo\", backend=example.path)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new Vault.Mount(\"example\", new()\n {\n Type = \"ssh\",\n });\n\n var foo = new Vault.Ssh.SecretBackendCa(\"foo\", new()\n {\n Backend = example.Path,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault\"\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/ssh\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texample, err := vault.NewMount(ctx, \"example\", \u0026vault.MountArgs{\n\t\t\tType: pulumi.String(\"ssh\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = ssh.NewSecretBackendCa(ctx, \"foo\", \u0026ssh.SecretBackendCaArgs{\n\t\t\tBackend: example.Path,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.Mount;\nimport com.pulumi.vault.MountArgs;\nimport com.pulumi.vault.ssh.SecretBackendCa;\nimport com.pulumi.vault.ssh.SecretBackendCaArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new Mount(\"example\", MountArgs.builder() \n .type(\"ssh\")\n .build());\n\n var foo = new SecretBackendCa(\"foo\", SecretBackendCaArgs.builder() \n .backend(example.path())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: vault:Mount\n properties:\n type: ssh\n foo:\n type: vault:ssh:SecretBackendCa\n properties:\n backend: ${example.path}\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nSSH secret backend CAs can be imported using the `path`, e.g.\n\n```sh\n $ pulumi import vault:ssh/secretBackendCa:SecretBackendCa foo ssh\n```\n ",
+ "properties": {
+ "backend": {
+ "type": "string",
+ "description": "The path where the SSH secret backend is mounted. Defaults to 'ssh'\n"
+ },
+ "generateSigningKey": {
+ "type": "boolean",
+ "description": "Whether Vault should generate the signing key pair internally. Defaults to true\n"
+ },
+ "namespace": {
+ "type": "string",
+ "description": "The namespace to provision the resource in.\nThe value should not contain leading or trailing forward slashes.\nThe `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault#namespace).\n*Available only for Vault Enterprise*.\n"
+ },
+ "privateKey": {
+ "type": "string",
+ "description": "Private key part the SSH CA key pair; required if generate_signing_key is false.\n",
+ "secret": true
+ },
+ "publicKey": {
+ "type": "string",
+ "description": "The public key part the SSH CA key pair; required if generate_signing_key is false.\n"
}
},
"required": [
- "algorithmSigner",
- "allowedDomainsTemplate",
- "backend",
- "keyType",
- "maxTtl",
- "name",
- "notBeforeDuration",
- "ttl"
+ "privateKey",
+ "publicKey"
],
"inputProperties": {
+ "backend": {
+ "type": "string",
+ "description": "The path where the SSH secret backend is mounted. Defaults to 'ssh'\n",
+ "willReplaceOnChanges": true
+ },
+ "generateSigningKey": {
+ "type": "boolean",
+ "description": "Whether Vault should generate the signing key pair internally. Defaults to true\n",
+ "willReplaceOnChanges": true
+ },
+ "namespace": {
+ "type": "string",
+ "description": "The namespace to provision the resource in.\nThe value should not contain leading or trailing forward slashes.\nThe `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault#namespace).\n*Available only for Vault Enterprise*.\n",
+ "willReplaceOnChanges": true
+ },
+ "privateKey": {
+ "type": "string",
+ "description": "Private key part the SSH CA key pair; required if generate_signing_key is false.\n",
+ "secret": true,
+ "willReplaceOnChanges": true
+ },
+ "publicKey": {
+ "type": "string",
+ "description": "The public key part the SSH CA key pair; required if generate_signing_key is false.\n",
+ "willReplaceOnChanges": true
+ }
+ },
+ "stateInputs": {
+ "description": "Input properties used for looking up and filtering SecretBackendCa resources.\n",
+ "properties": {
+ "backend": {
+ "type": "string",
+ "description": "The path where the SSH secret backend is mounted. Defaults to 'ssh'\n",
+ "willReplaceOnChanges": true
+ },
+ "generateSigningKey": {
+ "type": "boolean",
+ "description": "Whether Vault should generate the signing key pair internally. Defaults to true\n",
+ "willReplaceOnChanges": true
+ },
+ "namespace": {
+ "type": "string",
+ "description": "The namespace to provision the resource in.\nThe value should not contain leading or trailing forward slashes.\nThe `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault#namespace).\n*Available only for Vault Enterprise*.\n",
+ "willReplaceOnChanges": true
+ },
+ "privateKey": {
+ "type": "string",
+ "description": "Private key part the SSH CA key pair; required if generate_signing_key is false.\n",
+ "secret": true,
+ "willReplaceOnChanges": true
+ },
+ "publicKey": {
+ "type": "string",
+ "description": "The public key part the SSH CA key pair; required if generate_signing_key is false.\n",
+ "willReplaceOnChanges": true
+ }
+ },
+ "type": "object"
+ }
+ },
+ "vault:ssh/secretBackendRole:SecretBackendRole": {
+ "description": "Provides a resource to manage roles in an SSH secret backend\n[SSH secret backend within Vault](https://www.vaultproject.io/docs/secrets/ssh/index.html).\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst example = new vault.Mount(\"example\", {type: \"ssh\"});\nconst foo = new vault.ssh.SecretBackendRole(\"foo\", {\n backend: example.path,\n keyType: \"ca\",\n allowUserCertificates: true,\n});\nconst bar = new vault.ssh.SecretBackendRole(\"bar\", {\n backend: example.path,\n keyType: \"otp\",\n defaultUser: \"default\",\n allowedUsers: \"default,baz\",\n cidrList: \"0.0.0.0/0\",\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nexample = vault.Mount(\"example\", type=\"ssh\")\nfoo = vault.ssh.SecretBackendRole(\"foo\",\n backend=example.path,\n key_type=\"ca\",\n allow_user_certificates=True)\nbar = vault.ssh.SecretBackendRole(\"bar\",\n backend=example.path,\n key_type=\"otp\",\n default_user=\"default\",\n allowed_users=\"default,baz\",\n cidr_list=\"0.0.0.0/0\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new Vault.Mount(\"example\", new()\n {\n Type = \"ssh\",\n });\n\n var foo = new Vault.Ssh.SecretBackendRole(\"foo\", new()\n {\n Backend = example.Path,\n KeyType = \"ca\",\n AllowUserCertificates = true,\n });\n\n var bar = new Vault.Ssh.SecretBackendRole(\"bar\", new()\n {\n Backend = example.Path,\n KeyType = \"otp\",\n DefaultUser = \"default\",\n AllowedUsers = \"default,baz\",\n CidrList = \"0.0.0.0/0\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault\"\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/ssh\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texample, err := vault.NewMount(ctx, \"example\", \u0026vault.MountArgs{\n\t\t\tType: pulumi.String(\"ssh\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = ssh.NewSecretBackendRole(ctx, \"foo\", \u0026ssh.SecretBackendRoleArgs{\n\t\t\tBackend: example.Path,\n\t\t\tKeyType: pulumi.String(\"ca\"),\n\t\t\tAllowUserCertificates: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = ssh.NewSecretBackendRole(ctx, \"bar\", \u0026ssh.SecretBackendRoleArgs{\n\t\t\tBackend: example.Path,\n\t\t\tKeyType: pulumi.String(\"otp\"),\n\t\t\tDefaultUser: pulumi.String(\"default\"),\n\t\t\tAllowedUsers: pulumi.String(\"default,baz\"),\n\t\t\tCidrList: pulumi.String(\"0.0.0.0/0\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.Mount;\nimport com.pulumi.vault.MountArgs;\nimport com.pulumi.vault.ssh.SecretBackendRole;\nimport com.pulumi.vault.ssh.SecretBackendRoleArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new Mount(\"example\", MountArgs.builder() \n .type(\"ssh\")\n .build());\n\n var foo = new SecretBackendRole(\"foo\", SecretBackendRoleArgs.builder() \n .backend(example.path())\n .keyType(\"ca\")\n .allowUserCertificates(true)\n .build());\n\n var bar = new SecretBackendRole(\"bar\", SecretBackendRoleArgs.builder() \n .backend(example.path())\n .keyType(\"otp\")\n .defaultUser(\"default\")\n .allowedUsers(\"default,baz\")\n .cidrList(\"0.0.0.0/0\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: vault:Mount\n properties:\n type: ssh\n foo:\n type: vault:ssh:SecretBackendRole\n properties:\n backend: ${example.path}\n keyType: ca\n allowUserCertificates: true\n bar:\n type: vault:ssh:SecretBackendRole\n properties:\n backend: ${example.path}\n keyType: otp\n defaultUser: default\n allowedUsers: default,baz\n cidrList: 0.0.0.0/0\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nSSH secret backend roles can be imported using the `path`, e.g.\n\n```sh\n $ pulumi import vault:ssh/secretBackendRole:SecretBackendRole foo ssh/roles/my-role\n```\n ",
+ "properties": {
"algorithmSigner": {
"type": "string",
"description": "When supplied, this value specifies a signing algorithm for the key. Possible values: ssh-rsa, rsa-sha2-256, rsa-sha2-512.\n"
@@ -29763,8 +27315,7 @@
},
"backend": {
"type": "string",
- "description": "The path where the SSH secret backend is mounted.\n",
- "willReplaceOnChanges": true
+ "description": "The path where the SSH secret backend is mounted.\n"
},
"cidrList": {
"type": "string",
@@ -29806,13 +27357,11 @@
},
"name": {
"type": "string",
- "description": "Specifies the name of the role to create.\n",
- "willReplaceOnChanges": true
+ "description": "Specifies the name of the role to create.\n"
},
"namespace": {
"type": "string",
- "description": "The namespace to provision the resource in.\nThe value should not contain leading or trailing forward slashes.\nThe `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault#namespace).\n*Available only for Vault Enterprise*.\n",
- "willReplaceOnChanges": true
+ "description": "The namespace to provision the resource in.\nThe value should not contain leading or trailing forward slashes.\nThe `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault#namespace).\n*Available only for Vault Enterprise*.\n"
},
"notBeforeDuration": {
"type": "string",
@@ -29823,32 +27372,168 @@
"description": "Specifies the Time To Live value.\n"
}
},
- "requiredInputs": [
+ "required": [
+ "algorithmSigner",
+ "allowedDomainsTemplate",
"backend",
- "keyType"
+ "keyType",
+ "maxTtl",
+ "name",
+ "notBeforeDuration",
+ "ttl"
],
- "stateInputs": {
- "description": "Input properties used for looking up and filtering SecretBackendRole resources.\n",
- "properties": {
- "algorithmSigner": {
- "type": "string",
- "description": "When supplied, this value specifies a signing algorithm for the key. Possible values: ssh-rsa, rsa-sha2-256, rsa-sha2-512.\n"
- },
- "allowBareDomains": {
- "type": "boolean",
- "description": "Specifies if host certificates that are requested are allowed to use the base domains listed in `allowed_domains`.\n"
- },
- "allowHostCertificates": {
- "type": "boolean",
- "description": "Specifies if certificates are allowed to be signed for use as a 'host'.\n"
- },
- "allowSubdomains": {
- "type": "boolean",
- "description": "Specifies if host certificates that are requested are allowed to be subdomains of those listed in `allowed_domains`.\n"
- },
- "allowUserCertificates": {
- "type": "boolean",
- "description": "Specifies if certificates are allowed to be signed for use as a 'user'.\n"
+ "inputProperties": {
+ "algorithmSigner": {
+ "type": "string",
+ "description": "When supplied, this value specifies a signing algorithm for the key. Possible values: ssh-rsa, rsa-sha2-256, rsa-sha2-512.\n"
+ },
+ "allowBareDomains": {
+ "type": "boolean",
+ "description": "Specifies if host certificates that are requested are allowed to use the base domains listed in `allowed_domains`.\n"
+ },
+ "allowHostCertificates": {
+ "type": "boolean",
+ "description": "Specifies if certificates are allowed to be signed for use as a 'host'.\n"
+ },
+ "allowSubdomains": {
+ "type": "boolean",
+ "description": "Specifies if host certificates that are requested are allowed to be subdomains of those listed in `allowed_domains`.\n"
+ },
+ "allowUserCertificates": {
+ "type": "boolean",
+ "description": "Specifies if certificates are allowed to be signed for use as a 'user'.\n"
+ },
+ "allowUserKeyIds": {
+ "type": "boolean",
+ "description": "Specifies if users can override the key ID for a signed certificate with the `key_id` field.\n"
+ },
+ "allowedCriticalOptions": {
+ "type": "string",
+ "description": "Specifies a comma-separated list of critical options that certificates can have when signed.\n"
+ },
+ "allowedDomains": {
+ "type": "string",
+ "description": "The list of domains for which a client can request a host certificate.\n"
+ },
+ "allowedDomainsTemplate": {
+ "type": "boolean",
+ "description": "Specifies if `allowed_domains` can be declared using\nidentity template policies. Non-templated domains are also permitted.\n"
+ },
+ "allowedExtensions": {
+ "type": "string",
+ "description": "Specifies a comma-separated list of extensions that certificates can have when signed.\n"
+ },
+ "allowedUserKeyConfigs": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/vault:ssh/SecretBackendRoleAllowedUserKeyConfig:SecretBackendRoleAllowedUserKeyConfig"
+ },
+ "description": "Set of configuration blocks to define allowed \nuser key configuration, like key type and their lengths. Can be specified multiple times.\n*See Configuration-Options for more info*\n"
+ },
+ "allowedUserKeyLengths": {
+ "type": "object",
+ "additionalProperties": {
+ "type": "integer"
+ },
+ "description": "Specifies a map of ssh key types and their expected sizes which \nare allowed to be signed by the CA type.\n*Deprecated: use* allowed_user_key_config *instead*\n",
+ "deprecationMessage": "Set in allowed_user_key_config"
+ },
+ "allowedUsers": {
+ "type": "string",
+ "description": "Specifies a comma-separated list of usernames that are to be allowed, only if certain usernames are to be allowed.\n"
+ },
+ "allowedUsersTemplate": {
+ "type": "boolean",
+ "description": "Specifies if `allowed_users` can be declared using identity template policies. Non-templated users are also permitted.\n"
+ },
+ "backend": {
+ "type": "string",
+ "description": "The path where the SSH secret backend is mounted.\n",
+ "willReplaceOnChanges": true
+ },
+ "cidrList": {
+ "type": "string",
+ "description": "The comma-separated string of CIDR blocks for which this role is applicable.\n"
+ },
+ "defaultCriticalOptions": {
+ "type": "object",
+ "additionalProperties": {
+ "$ref": "pulumi.json#/Any"
+ },
+ "description": "Specifies a map of critical options that certificates have when signed.\n"
+ },
+ "defaultExtensions": {
+ "type": "object",
+ "additionalProperties": {
+ "$ref": "pulumi.json#/Any"
+ },
+ "description": "Specifies a map of extensions that certificates have when signed.\n"
+ },
+ "defaultUser": {
+ "type": "string",
+ "description": "Specifies the default username for which a credential will be generated.\n"
+ },
+ "defaultUserTemplate": {
+ "type": "boolean",
+ "description": "If set, `default_users` can be specified using identity template values. A non-templated user is also permitted.\n"
+ },
+ "keyIdFormat": {
+ "type": "string",
+ "description": "Specifies a custom format for the key id of a signed certificate.\n"
+ },
+ "keyType": {
+ "type": "string",
+ "description": "Specifies the type of credentials generated by this role. This can be either `otp`, `dynamic` or `ca`.\n"
+ },
+ "maxTtl": {
+ "type": "string",
+ "description": "Specifies the maximum Time To Live value.\n"
+ },
+ "name": {
+ "type": "string",
+ "description": "Specifies the name of the role to create.\n",
+ "willReplaceOnChanges": true
+ },
+ "namespace": {
+ "type": "string",
+ "description": "The namespace to provision the resource in.\nThe value should not contain leading or trailing forward slashes.\nThe `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault#namespace).\n*Available only for Vault Enterprise*.\n",
+ "willReplaceOnChanges": true
+ },
+ "notBeforeDuration": {
+ "type": "string",
+ "description": "Specifies the duration by which to backdate the ValidAfter property.\nUses [duration format strings](https://developer.hashicorp.com/vault/docs/concepts/duration-format).\n"
+ },
+ "ttl": {
+ "type": "string",
+ "description": "Specifies the Time To Live value.\n"
+ }
+ },
+ "requiredInputs": [
+ "backend",
+ "keyType"
+ ],
+ "stateInputs": {
+ "description": "Input properties used for looking up and filtering SecretBackendRole resources.\n",
+ "properties": {
+ "algorithmSigner": {
+ "type": "string",
+ "description": "When supplied, this value specifies a signing algorithm for the key. Possible values: ssh-rsa, rsa-sha2-256, rsa-sha2-512.\n"
+ },
+ "allowBareDomains": {
+ "type": "boolean",
+ "description": "Specifies if host certificates that are requested are allowed to use the base domains listed in `allowed_domains`.\n"
+ },
+ "allowHostCertificates": {
+ "type": "boolean",
+ "description": "Specifies if certificates are allowed to be signed for use as a 'host'.\n"
+ },
+ "allowSubdomains": {
+ "type": "boolean",
+ "description": "Specifies if host certificates that are requested are allowed to be subdomains of those listed in `allowed_domains`.\n"
+ },
+ "allowUserCertificates": {
+ "type": "boolean",
+ "description": "Specifies if certificates are allowed to be signed for use as a 'user'.\n"
},
"allowUserKeyIds": {
"type": "boolean",
@@ -29959,7 +27644,7 @@
}
},
"vault:terraformcloud/secretBackend:SecretBackend": {
- "description": "{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst test = new vault.terraformcloud.SecretBackend(\"test\", {\n backend: \"terraform\",\n description: \"Manages the Terraform Cloud backend\",\n token: \"V0idfhi2iksSDU234ucdbi2nidsi...\",\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\ntest = vault.terraformcloud.SecretBackend(\"test\",\n backend=\"terraform\",\n description=\"Manages the Terraform Cloud backend\",\n token=\"V0idfhi2iksSDU234ucdbi2nidsi...\")\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var test = new Vault.TerraformCloud.SecretBackend(\"test\", new()\n {\n Backend = \"terraform\",\n Description = \"Manages the Terraform Cloud backend\",\n Token = \"V0idfhi2iksSDU234ucdbi2nidsi...\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/terraformcloud\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := terraformcloud.NewSecretBackend(ctx, \"test\", \u0026terraformcloud.SecretBackendArgs{\n\t\t\tBackend: pulumi.String(\"terraform\"),\n\t\t\tDescription: pulumi.String(\"Manages the Terraform Cloud backend\"),\n\t\t\tToken: pulumi.String(\"V0idfhi2iksSDU234ucdbi2nidsi...\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.terraformcloud.SecretBackend;\nimport com.pulumi.vault.terraformcloud.SecretBackendArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var test = new SecretBackend(\"test\", SecretBackendArgs.builder() \n .backend(\"terraform\")\n .description(\"Manages the Terraform Cloud backend\")\n .token(\"V0idfhi2iksSDU234ucdbi2nidsi...\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n test:\n type: vault:terraformcloud:SecretBackend\n properties:\n backend: terraform\n description: Manages the Terraform Cloud backend\n token: V0idfhi2iksSDU234ucdbi2nidsi...\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nTerraform Cloud secret backends can be imported using the `backend`, e.g.\n\n```sh\n $ pulumi import vault:terraformcloud/secretBackend:SecretBackend example terraform\n```\n\n ",
+ "description": "{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst test = new vault.terraformcloud.SecretBackend(\"test\", {\n backend: \"terraform\",\n description: \"Manages the Terraform Cloud backend\",\n token: \"V0idfhi2iksSDU234ucdbi2nidsi...\",\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\ntest = vault.terraformcloud.SecretBackend(\"test\",\n backend=\"terraform\",\n description=\"Manages the Terraform Cloud backend\",\n token=\"V0idfhi2iksSDU234ucdbi2nidsi...\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var test = new Vault.TerraformCloud.SecretBackend(\"test\", new()\n {\n Backend = \"terraform\",\n Description = \"Manages the Terraform Cloud backend\",\n Token = \"V0idfhi2iksSDU234ucdbi2nidsi...\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/terraformcloud\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := terraformcloud.NewSecretBackend(ctx, \"test\", \u0026terraformcloud.SecretBackendArgs{\n\t\t\tBackend: pulumi.String(\"terraform\"),\n\t\t\tDescription: pulumi.String(\"Manages the Terraform Cloud backend\"),\n\t\t\tToken: pulumi.String(\"V0idfhi2iksSDU234ucdbi2nidsi...\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.terraformcloud.SecretBackend;\nimport com.pulumi.vault.terraformcloud.SecretBackendArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var test = new SecretBackend(\"test\", SecretBackendArgs.builder() \n .backend(\"terraform\")\n .description(\"Manages the Terraform Cloud backend\")\n .token(\"V0idfhi2iksSDU234ucdbi2nidsi...\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n test:\n type: vault:terraformcloud:SecretBackend\n properties:\n backend: terraform\n description: Manages the Terraform Cloud backend\n token: V0idfhi2iksSDU234ucdbi2nidsi...\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nTerraform Cloud secret backends can be imported using the `backend`, e.g.\n\n```sh\n $ pulumi import vault:terraformcloud/secretBackend:SecretBackend example terraform\n```\n ",
"properties": {
"address": {
"type": "string",
@@ -30085,7 +27770,7 @@
}
},
"vault:terraformcloud/secretCreds:SecretCreds": {
- "description": "{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst test = new vault.terraformcloud.SecretBackend(\"test\", {\n backend: \"terraform\",\n description: \"Manages the Terraform Cloud backend\",\n token: \"V0idfhi2iksSDU234ucdbi2nidsi...\",\n});\nconst example = new vault.terraformcloud.SecretRole(\"example\", {\n backend: test.backend,\n organization: \"example-organization-name\",\n teamId: \"team-ieF4isC...\",\n});\nconst token = new vault.terraformcloud.SecretCreds(\"token\", {\n backend: test.backend,\n role: example.name,\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\ntest = vault.terraformcloud.SecretBackend(\"test\",\n backend=\"terraform\",\n description=\"Manages the Terraform Cloud backend\",\n token=\"V0idfhi2iksSDU234ucdbi2nidsi...\")\nexample = vault.terraformcloud.SecretRole(\"example\",\n backend=test.backend,\n organization=\"example-organization-name\",\n team_id=\"team-ieF4isC...\")\ntoken = vault.terraformcloud.SecretCreds(\"token\",\n backend=test.backend,\n role=example.name)\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var test = new Vault.TerraformCloud.SecretBackend(\"test\", new()\n {\n Backend = \"terraform\",\n Description = \"Manages the Terraform Cloud backend\",\n Token = \"V0idfhi2iksSDU234ucdbi2nidsi...\",\n });\n\n var example = new Vault.TerraformCloud.SecretRole(\"example\", new()\n {\n Backend = test.Backend,\n Organization = \"example-organization-name\",\n TeamId = \"team-ieF4isC...\",\n });\n\n var token = new Vault.TerraformCloud.SecretCreds(\"token\", new()\n {\n Backend = test.Backend,\n Role = example.Name,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/terraformcloud\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\ttest, err := terraformcloud.NewSecretBackend(ctx, \"test\", \u0026terraformcloud.SecretBackendArgs{\n\t\t\tBackend: pulumi.String(\"terraform\"),\n\t\t\tDescription: pulumi.String(\"Manages the Terraform Cloud backend\"),\n\t\t\tToken: pulumi.String(\"V0idfhi2iksSDU234ucdbi2nidsi...\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texample, err := terraformcloud.NewSecretRole(ctx, \"example\", \u0026terraformcloud.SecretRoleArgs{\n\t\t\tBackend: test.Backend,\n\t\t\tOrganization: pulumi.String(\"example-organization-name\"),\n\t\t\tTeamId: pulumi.String(\"team-ieF4isC...\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = terraformcloud.NewSecretCreds(ctx, \"token\", \u0026terraformcloud.SecretCredsArgs{\n\t\t\tBackend: test.Backend,\n\t\t\tRole: example.Name,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.terraformcloud.SecretBackend;\nimport com.pulumi.vault.terraformcloud.SecretBackendArgs;\nimport com.pulumi.vault.terraformcloud.SecretRole;\nimport com.pulumi.vault.terraformcloud.SecretRoleArgs;\nimport com.pulumi.vault.terraformcloud.SecretCreds;\nimport com.pulumi.vault.terraformcloud.SecretCredsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var test = new SecretBackend(\"test\", SecretBackendArgs.builder() \n .backend(\"terraform\")\n .description(\"Manages the Terraform Cloud backend\")\n .token(\"V0idfhi2iksSDU234ucdbi2nidsi...\")\n .build());\n\n var example = new SecretRole(\"example\", SecretRoleArgs.builder() \n .backend(test.backend())\n .organization(\"example-organization-name\")\n .teamId(\"team-ieF4isC...\")\n .build());\n\n var token = new SecretCreds(\"token\", SecretCredsArgs.builder() \n .backend(test.backend())\n .role(example.name())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n test:\n type: vault:terraformcloud:SecretBackend\n properties:\n backend: terraform\n description: Manages the Terraform Cloud backend\n token: V0idfhi2iksSDU234ucdbi2nidsi...\n example:\n type: vault:terraformcloud:SecretRole\n properties:\n backend: ${test.backend}\n organization: example-organization-name\n teamId: team-ieF4isC...\n token:\n type: vault:terraformcloud:SecretCreds\n properties:\n backend: ${test.backend}\n role: ${example.name}\n```\n{{% /example %}}\n{{% /examples %}}",
+ "description": "{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst test = new vault.terraformcloud.SecretBackend(\"test\", {\n backend: \"terraform\",\n description: \"Manages the Terraform Cloud backend\",\n token: \"V0idfhi2iksSDU234ucdbi2nidsi...\",\n});\nconst example = new vault.terraformcloud.SecretRole(\"example\", {\n backend: test.backend,\n organization: \"example-organization-name\",\n teamId: \"team-ieF4isC...\",\n});\nconst token = new vault.terraformcloud.SecretCreds(\"token\", {\n backend: test.backend,\n role: example.name,\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\ntest = vault.terraformcloud.SecretBackend(\"test\",\n backend=\"terraform\",\n description=\"Manages the Terraform Cloud backend\",\n token=\"V0idfhi2iksSDU234ucdbi2nidsi...\")\nexample = vault.terraformcloud.SecretRole(\"example\",\n backend=test.backend,\n organization=\"example-organization-name\",\n team_id=\"team-ieF4isC...\")\ntoken = vault.terraformcloud.SecretCreds(\"token\",\n backend=test.backend,\n role=example.name)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var test = new Vault.TerraformCloud.SecretBackend(\"test\", new()\n {\n Backend = \"terraform\",\n Description = \"Manages the Terraform Cloud backend\",\n Token = \"V0idfhi2iksSDU234ucdbi2nidsi...\",\n });\n\n var example = new Vault.TerraformCloud.SecretRole(\"example\", new()\n {\n Backend = test.Backend,\n Organization = \"example-organization-name\",\n TeamId = \"team-ieF4isC...\",\n });\n\n var token = new Vault.TerraformCloud.SecretCreds(\"token\", new()\n {\n Backend = test.Backend,\n Role = example.Name,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/terraformcloud\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\ttest, err := terraformcloud.NewSecretBackend(ctx, \"test\", \u0026terraformcloud.SecretBackendArgs{\n\t\t\tBackend: pulumi.String(\"terraform\"),\n\t\t\tDescription: pulumi.String(\"Manages the Terraform Cloud backend\"),\n\t\t\tToken: pulumi.String(\"V0idfhi2iksSDU234ucdbi2nidsi...\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texample, err := terraformcloud.NewSecretRole(ctx, \"example\", \u0026terraformcloud.SecretRoleArgs{\n\t\t\tBackend: test.Backend,\n\t\t\tOrganization: pulumi.String(\"example-organization-name\"),\n\t\t\tTeamId: pulumi.String(\"team-ieF4isC...\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = terraformcloud.NewSecretCreds(ctx, \"token\", \u0026terraformcloud.SecretCredsArgs{\n\t\t\tBackend: test.Backend,\n\t\t\tRole: example.Name,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.terraformcloud.SecretBackend;\nimport com.pulumi.vault.terraformcloud.SecretBackendArgs;\nimport com.pulumi.vault.terraformcloud.SecretRole;\nimport com.pulumi.vault.terraformcloud.SecretRoleArgs;\nimport com.pulumi.vault.terraformcloud.SecretCreds;\nimport com.pulumi.vault.terraformcloud.SecretCredsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var test = new SecretBackend(\"test\", SecretBackendArgs.builder() \n .backend(\"terraform\")\n .description(\"Manages the Terraform Cloud backend\")\n .token(\"V0idfhi2iksSDU234ucdbi2nidsi...\")\n .build());\n\n var example = new SecretRole(\"example\", SecretRoleArgs.builder() \n .backend(test.backend())\n .organization(\"example-organization-name\")\n .teamId(\"team-ieF4isC...\")\n .build());\n\n var token = new SecretCreds(\"token\", SecretCredsArgs.builder() \n .backend(test.backend())\n .role(example.name())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n test:\n type: vault:terraformcloud:SecretBackend\n properties:\n backend: terraform\n description: Manages the Terraform Cloud backend\n token: V0idfhi2iksSDU234ucdbi2nidsi...\n example:\n type: vault:terraformcloud:SecretRole\n properties:\n backend: ${test.backend}\n organization: example-organization-name\n teamId: team-ieF4isC...\n token:\n type: vault:terraformcloud:SecretCreds\n properties:\n backend: ${test.backend}\n role: ${example.name}\n```\n{{% /example %}}\n{{% /examples %}}",
"properties": {
"backend": {
"type": "string",
@@ -30195,7 +27880,7 @@
}
},
"vault:terraformcloud/secretRole:SecretRole": {
- "description": "{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst test = new vault.terraformcloud.SecretBackend(\"test\", {\n backend: \"terraform\",\n description: \"Manages the Terraform Cloud backend\",\n token: \"V0idfhi2iksSDU234ucdbi2nidsi...\",\n});\nconst example = new vault.terraformcloud.SecretRole(\"example\", {\n backend: test.backend,\n organization: \"example-organization-name\",\n teamId: \"team-ieF4isC...\",\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\ntest = vault.terraformcloud.SecretBackend(\"test\",\n backend=\"terraform\",\n description=\"Manages the Terraform Cloud backend\",\n token=\"V0idfhi2iksSDU234ucdbi2nidsi...\")\nexample = vault.terraformcloud.SecretRole(\"example\",\n backend=test.backend,\n organization=\"example-organization-name\",\n team_id=\"team-ieF4isC...\")\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var test = new Vault.TerraformCloud.SecretBackend(\"test\", new()\n {\n Backend = \"terraform\",\n Description = \"Manages the Terraform Cloud backend\",\n Token = \"V0idfhi2iksSDU234ucdbi2nidsi...\",\n });\n\n var example = new Vault.TerraformCloud.SecretRole(\"example\", new()\n {\n Backend = test.Backend,\n Organization = \"example-organization-name\",\n TeamId = \"team-ieF4isC...\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/terraformcloud\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\ttest, err := terraformcloud.NewSecretBackend(ctx, \"test\", \u0026terraformcloud.SecretBackendArgs{\n\t\t\tBackend: pulumi.String(\"terraform\"),\n\t\t\tDescription: pulumi.String(\"Manages the Terraform Cloud backend\"),\n\t\t\tToken: pulumi.String(\"V0idfhi2iksSDU234ucdbi2nidsi...\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = terraformcloud.NewSecretRole(ctx, \"example\", \u0026terraformcloud.SecretRoleArgs{\n\t\t\tBackend: test.Backend,\n\t\t\tOrganization: pulumi.String(\"example-organization-name\"),\n\t\t\tTeamId: pulumi.String(\"team-ieF4isC...\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.terraformcloud.SecretBackend;\nimport com.pulumi.vault.terraformcloud.SecretBackendArgs;\nimport com.pulumi.vault.terraformcloud.SecretRole;\nimport com.pulumi.vault.terraformcloud.SecretRoleArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var test = new SecretBackend(\"test\", SecretBackendArgs.builder() \n .backend(\"terraform\")\n .description(\"Manages the Terraform Cloud backend\")\n .token(\"V0idfhi2iksSDU234ucdbi2nidsi...\")\n .build());\n\n var example = new SecretRole(\"example\", SecretRoleArgs.builder() \n .backend(test.backend())\n .organization(\"example-organization-name\")\n .teamId(\"team-ieF4isC...\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n test:\n type: vault:terraformcloud:SecretBackend\n properties:\n backend: terraform\n description: Manages the Terraform Cloud backend\n token: V0idfhi2iksSDU234ucdbi2nidsi...\n example:\n type: vault:terraformcloud:SecretRole\n properties:\n backend: ${test.backend}\n organization: example-organization-name\n teamId: team-ieF4isC...\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nTerraform Cloud secret backend roles can be imported using the `backend`, `/roles/`, and the `name` e.g.\n\n```sh\n $ pulumi import vault:terraformcloud/secretRole:SecretRole example terraform/roles/my-role\n```\n\n ",
+ "description": "{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst test = new vault.terraformcloud.SecretBackend(\"test\", {\n backend: \"terraform\",\n description: \"Manages the Terraform Cloud backend\",\n token: \"V0idfhi2iksSDU234ucdbi2nidsi...\",\n});\nconst example = new vault.terraformcloud.SecretRole(\"example\", {\n backend: test.backend,\n organization: \"example-organization-name\",\n teamId: \"team-ieF4isC...\",\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\ntest = vault.terraformcloud.SecretBackend(\"test\",\n backend=\"terraform\",\n description=\"Manages the Terraform Cloud backend\",\n token=\"V0idfhi2iksSDU234ucdbi2nidsi...\")\nexample = vault.terraformcloud.SecretRole(\"example\",\n backend=test.backend,\n organization=\"example-organization-name\",\n team_id=\"team-ieF4isC...\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var test = new Vault.TerraformCloud.SecretBackend(\"test\", new()\n {\n Backend = \"terraform\",\n Description = \"Manages the Terraform Cloud backend\",\n Token = \"V0idfhi2iksSDU234ucdbi2nidsi...\",\n });\n\n var example = new Vault.TerraformCloud.SecretRole(\"example\", new()\n {\n Backend = test.Backend,\n Organization = \"example-organization-name\",\n TeamId = \"team-ieF4isC...\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/terraformcloud\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\ttest, err := terraformcloud.NewSecretBackend(ctx, \"test\", \u0026terraformcloud.SecretBackendArgs{\n\t\t\tBackend: pulumi.String(\"terraform\"),\n\t\t\tDescription: pulumi.String(\"Manages the Terraform Cloud backend\"),\n\t\t\tToken: pulumi.String(\"V0idfhi2iksSDU234ucdbi2nidsi...\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = terraformcloud.NewSecretRole(ctx, \"example\", \u0026terraformcloud.SecretRoleArgs{\n\t\t\tBackend: test.Backend,\n\t\t\tOrganization: pulumi.String(\"example-organization-name\"),\n\t\t\tTeamId: pulumi.String(\"team-ieF4isC...\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.terraformcloud.SecretBackend;\nimport com.pulumi.vault.terraformcloud.SecretBackendArgs;\nimport com.pulumi.vault.terraformcloud.SecretRole;\nimport com.pulumi.vault.terraformcloud.SecretRoleArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var test = new SecretBackend(\"test\", SecretBackendArgs.builder() \n .backend(\"terraform\")\n .description(\"Manages the Terraform Cloud backend\")\n .token(\"V0idfhi2iksSDU234ucdbi2nidsi...\")\n .build());\n\n var example = new SecretRole(\"example\", SecretRoleArgs.builder() \n .backend(test.backend())\n .organization(\"example-organization-name\")\n .teamId(\"team-ieF4isC...\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n test:\n type: vault:terraformcloud:SecretBackend\n properties:\n backend: terraform\n description: Manages the Terraform Cloud backend\n token: V0idfhi2iksSDU234ucdbi2nidsi...\n example:\n type: vault:terraformcloud:SecretRole\n properties:\n backend: ${test.backend}\n organization: example-organization-name\n teamId: team-ieF4isC...\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nTerraform Cloud secret backend roles can be imported using the `backend`, `/roles/`, and the `name` e.g.\n\n```sh\n $ pulumi import vault:terraformcloud/secretRole:SecretRole example terraform/roles/my-role\n```\n ",
"properties": {
"backend": {
"type": "string",
@@ -30313,7 +27998,7 @@
}
},
"vault:tokenauth/authBackendRole:AuthBackendRole": {
- "description": "Manages Token auth backend role in a Vault server. See the [Vault\ndocumentation](https://www.vaultproject.io/docs/auth/token.html) for more\ninformation.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst example = new vault.tokenauth.AuthBackendRole(\"example\", {\n allowedEntityAliases: [\"test_entity\"],\n allowedPolicies: [\n \"dev\",\n \"test\",\n ],\n disallowedPolicies: [\"default\"],\n orphan: true,\n pathSuffix: \"path-suffix\",\n renewable: true,\n roleName: \"my-role\",\n tokenExplicitMaxTtl: 115200,\n tokenPeriod: 86400,\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nexample = vault.tokenauth.AuthBackendRole(\"example\",\n allowed_entity_aliases=[\"test_entity\"],\n allowed_policies=[\n \"dev\",\n \"test\",\n ],\n disallowed_policies=[\"default\"],\n orphan=True,\n path_suffix=\"path-suffix\",\n renewable=True,\n role_name=\"my-role\",\n token_explicit_max_ttl=115200,\n token_period=86400)\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new Vault.TokenAuth.AuthBackendRole(\"example\", new()\n {\n AllowedEntityAliases = new[]\n {\n \"test_entity\",\n },\n AllowedPolicies = new[]\n {\n \"dev\",\n \"test\",\n },\n DisallowedPolicies = new[]\n {\n \"default\",\n },\n Orphan = true,\n PathSuffix = \"path-suffix\",\n Renewable = true,\n RoleName = \"my-role\",\n TokenExplicitMaxTtl = 115200,\n TokenPeriod = 86400,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/tokenauth\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := tokenauth.NewAuthBackendRole(ctx, \"example\", \u0026tokenauth.AuthBackendRoleArgs{\n\t\t\tAllowedEntityAliases: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"test_entity\"),\n\t\t\t},\n\t\t\tAllowedPolicies: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"dev\"),\n\t\t\t\tpulumi.String(\"test\"),\n\t\t\t},\n\t\t\tDisallowedPolicies: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"default\"),\n\t\t\t},\n\t\t\tOrphan: pulumi.Bool(true),\n\t\t\tPathSuffix: pulumi.String(\"path-suffix\"),\n\t\t\tRenewable: pulumi.Bool(true),\n\t\t\tRoleName: pulumi.String(\"my-role\"),\n\t\t\tTokenExplicitMaxTtl: pulumi.Int(115200),\n\t\t\tTokenPeriod: pulumi.Int(86400),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.tokenauth.AuthBackendRole;\nimport com.pulumi.vault.tokenauth.AuthBackendRoleArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new AuthBackendRole(\"example\", AuthBackendRoleArgs.builder() \n .allowedEntityAliases(\"test_entity\")\n .allowedPolicies( \n \"dev\",\n \"test\")\n .disallowedPolicies(\"default\")\n .orphan(true)\n .pathSuffix(\"path-suffix\")\n .renewable(true)\n .roleName(\"my-role\")\n .tokenExplicitMaxTtl(\"115200\")\n .tokenPeriod(\"86400\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: vault:tokenauth:AuthBackendRole\n properties:\n allowedEntityAliases:\n - test_entity\n allowedPolicies:\n - dev\n - test\n disallowedPolicies:\n - default\n orphan: true\n pathSuffix: path-suffix\n renewable: true\n roleName: my-role\n tokenExplicitMaxTtl: 115200\n tokenPeriod: 86400\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nToken auth backend roles can be imported with `auth/token/roles/` followed by the `role_name`, e.g.\n\n```sh\n $ pulumi import vault:tokenauth/authBackendRole:AuthBackendRole example auth/token/roles/my-role\n```\n\n ",
+ "description": "Manages Token auth backend role in a Vault server. See the [Vault\ndocumentation](https://www.vaultproject.io/docs/auth/token.html) for more\ninformation.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst example = new vault.tokenauth.AuthBackendRole(\"example\", {\n allowedEntityAliases: [\"test_entity\"],\n allowedPolicies: [\n \"dev\",\n \"test\",\n ],\n disallowedPolicies: [\"default\"],\n orphan: true,\n pathSuffix: \"path-suffix\",\n renewable: true,\n roleName: \"my-role\",\n tokenExplicitMaxTtl: 115200,\n tokenPeriod: 86400,\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nexample = vault.tokenauth.AuthBackendRole(\"example\",\n allowed_entity_aliases=[\"test_entity\"],\n allowed_policies=[\n \"dev\",\n \"test\",\n ],\n disallowed_policies=[\"default\"],\n orphan=True,\n path_suffix=\"path-suffix\",\n renewable=True,\n role_name=\"my-role\",\n token_explicit_max_ttl=115200,\n token_period=86400)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new Vault.TokenAuth.AuthBackendRole(\"example\", new()\n {\n AllowedEntityAliases = new[]\n {\n \"test_entity\",\n },\n AllowedPolicies = new[]\n {\n \"dev\",\n \"test\",\n },\n DisallowedPolicies = new[]\n {\n \"default\",\n },\n Orphan = true,\n PathSuffix = \"path-suffix\",\n Renewable = true,\n RoleName = \"my-role\",\n TokenExplicitMaxTtl = 115200,\n TokenPeriod = 86400,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/tokenauth\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := tokenauth.NewAuthBackendRole(ctx, \"example\", \u0026tokenauth.AuthBackendRoleArgs{\n\t\t\tAllowedEntityAliases: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"test_entity\"),\n\t\t\t},\n\t\t\tAllowedPolicies: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"dev\"),\n\t\t\t\tpulumi.String(\"test\"),\n\t\t\t},\n\t\t\tDisallowedPolicies: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"default\"),\n\t\t\t},\n\t\t\tOrphan: pulumi.Bool(true),\n\t\t\tPathSuffix: pulumi.String(\"path-suffix\"),\n\t\t\tRenewable: pulumi.Bool(true),\n\t\t\tRoleName: pulumi.String(\"my-role\"),\n\t\t\tTokenExplicitMaxTtl: pulumi.Int(115200),\n\t\t\tTokenPeriod: pulumi.Int(86400),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.tokenauth.AuthBackendRole;\nimport com.pulumi.vault.tokenauth.AuthBackendRoleArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new AuthBackendRole(\"example\", AuthBackendRoleArgs.builder() \n .allowedEntityAliases(\"test_entity\")\n .allowedPolicies( \n \"dev\",\n \"test\")\n .disallowedPolicies(\"default\")\n .orphan(true)\n .pathSuffix(\"path-suffix\")\n .renewable(true)\n .roleName(\"my-role\")\n .tokenExplicitMaxTtl(\"115200\")\n .tokenPeriod(\"86400\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: vault:tokenauth:AuthBackendRole\n properties:\n allowedEntityAliases:\n - test_entity\n allowedPolicies:\n - dev\n - test\n disallowedPolicies:\n - default\n orphan: true\n pathSuffix: path-suffix\n renewable: true\n roleName: my-role\n tokenExplicitMaxTtl: '115200'\n tokenPeriod: '86400'\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nToken auth backend roles can be imported with `auth/token/roles/` followed by the `role_name`, e.g.\n\n```sh\n $ pulumi import vault:tokenauth/authBackendRole:AuthBackendRole example auth/token/roles/my-role\n```\n ",
"properties": {
"allowedEntityAliases": {
"type": "array",
@@ -30360,7 +28045,7 @@
},
"pathSuffix": {
"type": "string",
- "description": "Tokens created against this role will have the given suffix as part of their path in addition to the role name.\n"
+ "description": "Tokens created against this role will have the given suffix as part of their path in addition to the role name.\n\n\u003e Due to a bug the resource. This *will* cause all existing tokens issued by this role to be revoked.\n"
},
"renewable": {
"type": "boolean",
@@ -30463,7 +28148,7 @@
},
"pathSuffix": {
"type": "string",
- "description": "Tokens created against this role will have the given suffix as part of their path in addition to the role name.\n"
+ "description": "Tokens created against this role will have the given suffix as part of their path in addition to the role name.\n\n\u003e Due to a bug the resource. This *will* cause all existing tokens issued by this role to be revoked.\n"
},
"renewable": {
"type": "boolean",
@@ -30569,7 +28254,7 @@
},
"pathSuffix": {
"type": "string",
- "description": "Tokens created against this role will have the given suffix as part of their path in addition to the role name.\n"
+ "description": "Tokens created against this role will have the given suffix as part of their path in addition to the role name.\n\n\u003e Due to a bug the resource. This *will* cause all existing tokens issued by this role to be revoked.\n"
},
"renewable": {
"type": "boolean",
@@ -30627,7 +28312,7 @@
}
},
"vault:transform/alphabet:Alphabet": {
- "description": "This resource supports the \"/transform/alphabet/{name}\" Vault endpoint.\n\nIt queries an existing alphabet by the given name.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst mountTransform = new vault.Mount(\"mountTransform\", {\n path: \"transform\",\n type: \"transform\",\n});\nconst test = new vault.transform.Alphabet(\"test\", {\n path: mountTransform.path,\n alphabet: \"0123456789\",\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nmount_transform = vault.Mount(\"mountTransform\",\n path=\"transform\",\n type=\"transform\")\ntest = vault.transform.Alphabet(\"test\",\n path=mount_transform.path,\n alphabet=\"0123456789\")\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var mountTransform = new Vault.Mount(\"mountTransform\", new()\n {\n Path = \"transform\",\n Type = \"transform\",\n });\n\n var test = new Vault.Transform.Alphabet(\"test\", new()\n {\n Path = mountTransform.Path,\n AlphabetSet = \"0123456789\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault\"\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/transform\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tmountTransform, err := vault.NewMount(ctx, \"mountTransform\", \u0026vault.MountArgs{\n\t\t\tPath: pulumi.String(\"transform\"),\n\t\t\tType: pulumi.String(\"transform\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = transform.NewAlphabet(ctx, \"test\", \u0026transform.AlphabetArgs{\n\t\t\tPath: mountTransform.Path,\n\t\t\tAlphabet: pulumi.String(\"0123456789\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.Mount;\nimport com.pulumi.vault.MountArgs;\nimport com.pulumi.vault.transform.Alphabet;\nimport com.pulumi.vault.transform.AlphabetArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var mountTransform = new Mount(\"mountTransform\", MountArgs.builder() \n .path(\"transform\")\n .type(\"transform\")\n .build());\n\n var test = new Alphabet(\"test\", AlphabetArgs.builder() \n .path(mountTransform.path())\n .alphabet(\"0123456789\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n mountTransform:\n type: vault:Mount\n properties:\n path: transform\n type: transform\n test:\n type: vault:transform:Alphabet\n properties:\n path: ${mountTransform.path}\n alphabet: 0123456789\n```\n{{% /example %}}\n{{% /examples %}}",
+ "description": "This resource supports the \"/transform/alphabet/{name}\" Vault endpoint.\n\nIt queries an existing alphabet by the given name.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst mountTransform = new vault.Mount(\"mountTransform\", {\n path: \"transform\",\n type: \"transform\",\n});\nconst test = new vault.transform.Alphabet(\"test\", {\n path: mountTransform.path,\n alphabet: \"0123456789\",\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nmount_transform = vault.Mount(\"mountTransform\",\n path=\"transform\",\n type=\"transform\")\ntest = vault.transform.Alphabet(\"test\",\n path=mount_transform.path,\n alphabet=\"0123456789\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var mountTransform = new Vault.Mount(\"mountTransform\", new()\n {\n Path = \"transform\",\n Type = \"transform\",\n });\n\n var test = new Vault.Transform.Alphabet(\"test\", new()\n {\n Path = mountTransform.Path,\n AlphabetSet = \"0123456789\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault\"\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/transform\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tmountTransform, err := vault.NewMount(ctx, \"mountTransform\", \u0026vault.MountArgs{\n\t\t\tPath: pulumi.String(\"transform\"),\n\t\t\tType: pulumi.String(\"transform\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = transform.NewAlphabet(ctx, \"test\", \u0026transform.AlphabetArgs{\n\t\t\tPath: mountTransform.Path,\n\t\t\tAlphabet: pulumi.String(\"0123456789\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.Mount;\nimport com.pulumi.vault.MountArgs;\nimport com.pulumi.vault.transform.Alphabet;\nimport com.pulumi.vault.transform.AlphabetArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var mountTransform = new Mount(\"mountTransform\", MountArgs.builder() \n .path(\"transform\")\n .type(\"transform\")\n .build());\n\n var test = new Alphabet(\"test\", AlphabetArgs.builder() \n .path(mountTransform.path())\n .alphabet(\"0123456789\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n mountTransform:\n type: vault:Mount\n properties:\n path: transform\n type: transform\n test:\n type: vault:transform:Alphabet\n properties:\n path: ${mountTransform.path}\n alphabet: '0123456789'\n```\n{{% /example %}}\n{{% /examples %}}",
"properties": {
"alphabet": {
"type": "string",
@@ -30642,6 +28327,10 @@
"type": "string",
"description": "The name of the alphabet.\n"
},
+ "namespace": {
+ "type": "string",
+ "description": "The namespace to provision the resource in.\nThe value should not contain leading or trailing forward slashes.\nThe `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault#namespace).\n*Available only for Vault Enterprise*.\n"
+ },
"path": {
"type": "string",
"description": "Path to where the back-end is mounted within Vault.\n"
@@ -30666,6 +28355,11 @@
"description": "The name of the alphabet.\n",
"willReplaceOnChanges": true
},
+ "namespace": {
+ "type": "string",
+ "description": "The namespace to provision the resource in.\nThe value should not contain leading or trailing forward slashes.\nThe `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault#namespace).\n*Available only for Vault Enterprise*.\n",
+ "willReplaceOnChanges": true
+ },
"path": {
"type": "string",
"description": "Path to where the back-end is mounted within Vault.\n",
@@ -30692,6 +28386,11 @@
"description": "The name of the alphabet.\n",
"willReplaceOnChanges": true
},
+ "namespace": {
+ "type": "string",
+ "description": "The namespace to provision the resource in.\nThe value should not contain leading or trailing forward slashes.\nThe `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault#namespace).\n*Available only for Vault Enterprise*.\n",
+ "willReplaceOnChanges": true
+ },
"path": {
"type": "string",
"description": "Path to where the back-end is mounted within Vault.\n",
@@ -30702,12 +28401,16 @@
}
},
"vault:transform/role:Role": {
- "description": "This resource supports the \"/transform/role/{name}\" Vault endpoint.\n\nIt creates or updates the role with the given name. If a role with the name does not exist, it will be created.\nIf the role exists, it will be updated with the new attributes.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst mountTransform = new vault.Mount(\"mountTransform\", {\n path: \"transform\",\n type: \"transform\",\n});\nconst test = new vault.transform.Role(\"test\", {\n path: mountTransform.path,\n transformations: [\"ccn-fpe\"],\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nmount_transform = vault.Mount(\"mountTransform\",\n path=\"transform\",\n type=\"transform\")\ntest = vault.transform.Role(\"test\",\n path=mount_transform.path,\n transformations=[\"ccn-fpe\"])\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var mountTransform = new Vault.Mount(\"mountTransform\", new()\n {\n Path = \"transform\",\n Type = \"transform\",\n });\n\n var test = new Vault.Transform.Role(\"test\", new()\n {\n Path = mountTransform.Path,\n Transformations = new[]\n {\n \"ccn-fpe\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault\"\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/transform\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tmountTransform, err := vault.NewMount(ctx, \"mountTransform\", \u0026vault.MountArgs{\n\t\t\tPath: pulumi.String(\"transform\"),\n\t\t\tType: pulumi.String(\"transform\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = transform.NewRole(ctx, \"test\", \u0026transform.RoleArgs{\n\t\t\tPath: mountTransform.Path,\n\t\t\tTransformations: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"ccn-fpe\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.Mount;\nimport com.pulumi.vault.MountArgs;\nimport com.pulumi.vault.transform.Role;\nimport com.pulumi.vault.transform.RoleArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var mountTransform = new Mount(\"mountTransform\", MountArgs.builder() \n .path(\"transform\")\n .type(\"transform\")\n .build());\n\n var test = new Role(\"test\", RoleArgs.builder() \n .path(mountTransform.path())\n .transformations(\"ccn-fpe\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n mountTransform:\n type: vault:Mount\n properties:\n path: transform\n type: transform\n test:\n type: vault:transform:Role\n properties:\n path: ${mountTransform.path}\n transformations:\n - ccn-fpe\n```\n{{% /example %}}\n{{% /examples %}}",
+ "description": "This resource supports the \"/transform/role/{name}\" Vault endpoint.\n\nIt creates or updates the role with the given name. If a role with the name does not exist, it will be created.\nIf the role exists, it will be updated with the new attributes.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst mountTransform = new vault.Mount(\"mountTransform\", {\n path: \"transform\",\n type: \"transform\",\n});\nconst test = new vault.transform.Role(\"test\", {\n path: mountTransform.path,\n transformations: [\"ccn-fpe\"],\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nmount_transform = vault.Mount(\"mountTransform\",\n path=\"transform\",\n type=\"transform\")\ntest = vault.transform.Role(\"test\",\n path=mount_transform.path,\n transformations=[\"ccn-fpe\"])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var mountTransform = new Vault.Mount(\"mountTransform\", new()\n {\n Path = \"transform\",\n Type = \"transform\",\n });\n\n var test = new Vault.Transform.Role(\"test\", new()\n {\n Path = mountTransform.Path,\n Transformations = new[]\n {\n \"ccn-fpe\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault\"\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/transform\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tmountTransform, err := vault.NewMount(ctx, \"mountTransform\", \u0026vault.MountArgs{\n\t\t\tPath: pulumi.String(\"transform\"),\n\t\t\tType: pulumi.String(\"transform\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = transform.NewRole(ctx, \"test\", \u0026transform.RoleArgs{\n\t\t\tPath: mountTransform.Path,\n\t\t\tTransformations: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"ccn-fpe\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.Mount;\nimport com.pulumi.vault.MountArgs;\nimport com.pulumi.vault.transform.Role;\nimport com.pulumi.vault.transform.RoleArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var mountTransform = new Mount(\"mountTransform\", MountArgs.builder() \n .path(\"transform\")\n .type(\"transform\")\n .build());\n\n var test = new Role(\"test\", RoleArgs.builder() \n .path(mountTransform.path())\n .transformations(\"ccn-fpe\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n mountTransform:\n type: vault:Mount\n properties:\n path: transform\n type: transform\n test:\n type: vault:transform:Role\n properties:\n path: ${mountTransform.path}\n transformations:\n - ccn-fpe\n```\n{{% /example %}}\n{{% /examples %}}",
"properties": {
"name": {
"type": "string",
"description": "The name of the role.\n"
},
+ "namespace": {
+ "type": "string",
+ "description": "The namespace to provision the resource in.\nThe value should not contain leading or trailing forward slashes.\nThe `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault#namespace).\n*Available only for Vault Enterprise*.\n"
+ },
"path": {
"type": "string",
"description": "Path to where the back-end is mounted within Vault.\n"
@@ -30730,6 +28433,11 @@
"description": "The name of the role.\n",
"willReplaceOnChanges": true
},
+ "namespace": {
+ "type": "string",
+ "description": "The namespace to provision the resource in.\nThe value should not contain leading or trailing forward slashes.\nThe `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault#namespace).\n*Available only for Vault Enterprise*.\n",
+ "willReplaceOnChanges": true
+ },
"path": {
"type": "string",
"description": "Path to where the back-end is mounted within Vault.\n",
@@ -30754,6 +28462,11 @@
"description": "The name of the role.\n",
"willReplaceOnChanges": true
},
+ "namespace": {
+ "type": "string",
+ "description": "The namespace to provision the resource in.\nThe value should not contain leading or trailing forward slashes.\nThe `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault#namespace).\n*Available only for Vault Enterprise*.\n",
+ "willReplaceOnChanges": true
+ },
"path": {
"type": "string",
"description": "Path to where the back-end is mounted within Vault.\n",
@@ -30771,6 +28484,7 @@
}
},
"vault:transform/template:Template": {
+ "description": "This resource supports the `/transform/template/{name}` Vault endpoint.\n\nIt creates or updates a template with the given name. If a template with the name does not exist,\nit will be created. If the template exists, it will be updated with the new attributes.\n\n\u003e Requires _Vault Enterprise with the Advanced Data Protection Transform Module_.\nSee [Transform Secrets Engine](https://www.vaultproject.io/docs/secrets/transform)\nfor more information.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\nPlease note that the `pattern` below holds a regex. The regex shown\nis identical to the one in our [Setup](https://www.vaultproject.io/docs/secrets/transform#setup)\ndocs, `(\\d{4})-(\\d{4})-(\\d{4})-(\\d{4})`. However, due to HCL, the\nbackslashes must be escaped to appear correctly in Vault. For further\nassistance escaping your own custom regex, see String Literals.\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst transform = new vault.Mount(\"transform\", {\n path: \"transform\",\n type: \"transform\",\n});\nconst numerics = new vault.transform.Alphabet(\"numerics\", {\n path: transform.path,\n alphabet: \"0123456789\",\n});\nconst test = new vault.transform.Template(\"test\", {\n path: numerics.path,\n type: \"regex\",\n pattern: \"(\\\\d{4})[- ](\\\\d{4})[- ](\\\\d{4})[- ](\\\\d{4})\",\n alphabet: \"numerics\",\n encodeFormat: \"$1-$2-$3-$4\",\n decodeFormats: {\n \"last-four-digits\": \"$4\",\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\ntransform = vault.Mount(\"transform\",\n path=\"transform\",\n type=\"transform\")\nnumerics = vault.transform.Alphabet(\"numerics\",\n path=transform.path,\n alphabet=\"0123456789\")\ntest = vault.transform.Template(\"test\",\n path=numerics.path,\n type=\"regex\",\n pattern=\"(\\\\d{4})[- ](\\\\d{4})[- ](\\\\d{4})[- ](\\\\d{4})\",\n alphabet=\"numerics\",\n encode_format=\"$1-$2-$3-$4\",\n decode_formats={\n \"last-four-digits\": \"$4\",\n })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var transform = new Vault.Mount(\"transform\", new()\n {\n Path = \"transform\",\n Type = \"transform\",\n });\n\n var numerics = new Vault.Transform.Alphabet(\"numerics\", new()\n {\n Path = transform.Path,\n AlphabetSet = \"0123456789\",\n });\n\n var test = new Vault.Transform.Template(\"test\", new()\n {\n Path = numerics.Path,\n Type = \"regex\",\n Pattern = \"(\\\\d{4})[- ](\\\\d{4})[- ](\\\\d{4})[- ](\\\\d{4})\",\n Alphabet = \"numerics\",\n EncodeFormat = \"$1-$2-$3-$4\",\n DecodeFormats = \n {\n { \"last-four-digits\", \"$4\" },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault\"\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/transform\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\ttransform, err := vault.NewMount(ctx, \"transform\", \u0026vault.MountArgs{\n\t\t\tPath: pulumi.String(\"transform\"),\n\t\t\tType: pulumi.String(\"transform\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tnumerics, err := transform.NewAlphabet(ctx, \"numerics\", \u0026transform.AlphabetArgs{\n\t\t\tPath: transform.Path,\n\t\t\tAlphabet: pulumi.String(\"0123456789\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = transform.NewTemplate(ctx, \"test\", \u0026transform.TemplateArgs{\n\t\t\tPath: numerics.Path,\n\t\t\tType: pulumi.String(\"regex\"),\n\t\t\tPattern: pulumi.String(\"(\\\\d{4})[- ](\\\\d{4})[- ](\\\\d{4})[- ](\\\\d{4})\"),\n\t\t\tAlphabet: pulumi.String(\"numerics\"),\n\t\t\tEncodeFormat: pulumi.String(\"$1-$2-$3-$4\"),\n\t\t\tDecodeFormats: pulumi.Map{\n\t\t\t\t\"last-four-digits\": pulumi.Any(\"$4\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.Mount;\nimport com.pulumi.vault.MountArgs;\nimport com.pulumi.vault.transform.Alphabet;\nimport com.pulumi.vault.transform.AlphabetArgs;\nimport com.pulumi.vault.transform.Template;\nimport com.pulumi.vault.transform.TemplateArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var transform = new Mount(\"transform\", MountArgs.builder() \n .path(\"transform\")\n .type(\"transform\")\n .build());\n\n var numerics = new Alphabet(\"numerics\", AlphabetArgs.builder() \n .path(transform.path())\n .alphabet(\"0123456789\")\n .build());\n\n var test = new Template(\"test\", TemplateArgs.builder() \n .path(numerics.path())\n .type(\"regex\")\n .pattern(\"(\\\\d{4})[- ](\\\\d{4})[- ](\\\\d{4})[- ](\\\\d{4})\")\n .alphabet(\"numerics\")\n .encodeFormat(\"$1-$2-$3-$4\")\n .decodeFormats(Map.of(\"last-four-digits\", \"$4\"))\n .build());\n\n }\n}\n```\n```yaml\nresources:\n transform:\n type: vault:Mount\n properties:\n path: transform\n type: transform\n numerics:\n type: vault:transform:Alphabet\n properties:\n path: ${transform.path}\n alphabet: '0123456789'\n test:\n type: vault:transform:Template\n properties:\n path: ${numerics.path}\n type: regex\n pattern: (\\d{4})[- ](\\d{4})[- ](\\d{4})[- ](\\d{4})\n alphabet: numerics\n encodeFormat: $1-$2-$3-$4\n decodeFormats:\n last-four-digits: $4\n```\n{{% /example %}}\n{{% /examples %}}",
"properties": {
"alphabet": {
"type": "string",
@@ -30781,16 +28495,20 @@
"additionalProperties": {
"$ref": "pulumi.json#/Any"
},
- "description": "- Optional mapping of name to regular expression template, used to customize\nthe decoded output. (requires Vault Enterprise 1.9+)\n"
+ "description": "Optional mapping of name to regular expression template, used to customize\nthe decoded output. (requires Vault Enterprise 1.9+)\n"
},
"encodeFormat": {
"type": "string",
- "description": "- The regular expression template used to format encoded values.\n(requires Vault Enterprise 1.9+)\n"
+ "description": "The regular expression template used to format encoded values.\n(requires Vault Enterprise 1.9+)\n"
},
"name": {
"type": "string",
"description": "The name of the template.\n"
},
+ "namespace": {
+ "type": "string",
+ "description": "The namespace to provision the resource in.\nThe value should not contain leading or trailing forward slashes.\nThe `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault#namespace).\n*Available only for Vault Enterprise*.\n"
+ },
"path": {
"type": "string",
"description": "Path to where the back-end is mounted within Vault.\n"
@@ -30818,17 +28536,22 @@
"additionalProperties": {
"$ref": "pulumi.json#/Any"
},
- "description": "- Optional mapping of name to regular expression template, used to customize\nthe decoded output. (requires Vault Enterprise 1.9+)\n"
+ "description": "Optional mapping of name to regular expression template, used to customize\nthe decoded output. (requires Vault Enterprise 1.9+)\n"
},
"encodeFormat": {
"type": "string",
- "description": "- The regular expression template used to format encoded values.\n(requires Vault Enterprise 1.9+)\n"
+ "description": "The regular expression template used to format encoded values.\n(requires Vault Enterprise 1.9+)\n"
},
"name": {
"type": "string",
"description": "The name of the template.\n",
"willReplaceOnChanges": true
},
+ "namespace": {
+ "type": "string",
+ "description": "The namespace to provision the resource in.\nThe value should not contain leading or trailing forward slashes.\nThe `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault#namespace).\n*Available only for Vault Enterprise*.\n",
+ "willReplaceOnChanges": true
+ },
"path": {
"type": "string",
"description": "Path to where the back-end is mounted within Vault.\n",
@@ -30858,17 +28581,22 @@
"additionalProperties": {
"$ref": "pulumi.json#/Any"
},
- "description": "- Optional mapping of name to regular expression template, used to customize\nthe decoded output. (requires Vault Enterprise 1.9+)\n"
+ "description": "Optional mapping of name to regular expression template, used to customize\nthe decoded output. (requires Vault Enterprise 1.9+)\n"
},
"encodeFormat": {
"type": "string",
- "description": "- The regular expression template used to format encoded values.\n(requires Vault Enterprise 1.9+)\n"
+ "description": "The regular expression template used to format encoded values.\n(requires Vault Enterprise 1.9+)\n"
},
"name": {
"type": "string",
"description": "The name of the template.\n",
"willReplaceOnChanges": true
},
+ "namespace": {
+ "type": "string",
+ "description": "The namespace to provision the resource in.\nThe value should not contain leading or trailing forward slashes.\nThe `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault#namespace).\n*Available only for Vault Enterprise*.\n",
+ "willReplaceOnChanges": true
+ },
"path": {
"type": "string",
"description": "Path to where the back-end is mounted within Vault.\n",
@@ -30907,6 +28635,10 @@
"type": "string",
"description": "The name of the transformation.\n"
},
+ "namespace": {
+ "type": "string",
+ "description": "The namespace to provision the resource in.\nThe value should not contain leading or trailing forward slashes.\nThe `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault#namespace).\n*Available only for Vault Enterprise*.\n"
+ },
"path": {
"type": "string",
"description": "Path to where the back-end is mounted within Vault.\n"
@@ -30957,6 +28689,11 @@
"description": "The name of the transformation.\n",
"willReplaceOnChanges": true
},
+ "namespace": {
+ "type": "string",
+ "description": "The namespace to provision the resource in.\nThe value should not contain leading or trailing forward slashes.\nThe `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault#namespace).\n*Available only for Vault Enterprise*.\n",
+ "willReplaceOnChanges": true
+ },
"path": {
"type": "string",
"description": "Path to where the back-end is mounted within Vault.\n",
@@ -31008,6 +28745,11 @@
"description": "The name of the transformation.\n",
"willReplaceOnChanges": true
},
+ "namespace": {
+ "type": "string",
+ "description": "The namespace to provision the resource in.\nThe value should not contain leading or trailing forward slashes.\nThe `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault#namespace).\n*Available only for Vault Enterprise*.\n",
+ "willReplaceOnChanges": true
+ },
"path": {
"type": "string",
"description": "Path to where the back-end is mounted within Vault.\n",
@@ -31037,7 +28779,7 @@
}
},
"vault:transit/secretBackendKey:SecretBackendKey": {
- "description": "Creates an Encryption Keyring on a Transit Secret Backend for Vault.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst transit = new vault.Mount(\"transit\", {\n path: \"transit\",\n type: \"transit\",\n description: \"Example description\",\n defaultLeaseTtlSeconds: 3600,\n maxLeaseTtlSeconds: 86400,\n});\nconst key = new vault.transit.SecretBackendKey(\"key\", {backend: transit.path});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\ntransit = vault.Mount(\"transit\",\n path=\"transit\",\n type=\"transit\",\n description=\"Example description\",\n default_lease_ttl_seconds=3600,\n max_lease_ttl_seconds=86400)\nkey = vault.transit.SecretBackendKey(\"key\", backend=transit.path)\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var transit = new Vault.Mount(\"transit\", new()\n {\n Path = \"transit\",\n Type = \"transit\",\n Description = \"Example description\",\n DefaultLeaseTtlSeconds = 3600,\n MaxLeaseTtlSeconds = 86400,\n });\n\n var key = new Vault.Transit.SecretBackendKey(\"key\", new()\n {\n Backend = transit.Path,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault\"\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/transit\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\ttransit, err := vault.NewMount(ctx, \"transit\", \u0026vault.MountArgs{\n\t\t\tPath: pulumi.String(\"transit\"),\n\t\t\tType: pulumi.String(\"transit\"),\n\t\t\tDescription: pulumi.String(\"Example description\"),\n\t\t\tDefaultLeaseTtlSeconds: pulumi.Int(3600),\n\t\t\tMaxLeaseTtlSeconds: pulumi.Int(86400),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = transit.NewSecretBackendKey(ctx, \"key\", \u0026transit.SecretBackendKeyArgs{\n\t\t\tBackend: transit.Path,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.Mount;\nimport com.pulumi.vault.MountArgs;\nimport com.pulumi.vault.transit.SecretBackendKey;\nimport com.pulumi.vault.transit.SecretBackendKeyArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var transit = new Mount(\"transit\", MountArgs.builder() \n .path(\"transit\")\n .type(\"transit\")\n .description(\"Example description\")\n .defaultLeaseTtlSeconds(3600)\n .maxLeaseTtlSeconds(86400)\n .build());\n\n var key = new SecretBackendKey(\"key\", SecretBackendKeyArgs.builder() \n .backend(transit.path())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n transit:\n type: vault:Mount\n properties:\n path: transit\n type: transit\n description: Example description\n defaultLeaseTtlSeconds: 3600\n maxLeaseTtlSeconds: 86400\n key:\n type: vault:transit:SecretBackendKey\n properties:\n backend: ${transit.path}\n```\n{{% /example %}}\n{{% /examples %}}\n## Deprecations\n\n* `auto_rotate_interval` - Replaced by `auto_rotate_period`.\n\n\n## Import\n\nTransit secret backend keys can be imported using the `path`, e.g.\n\n```sh\n $ pulumi import vault:transit/secretBackendKey:SecretBackendKey key transit/keys/my_key\n```\n\n ",
+ "description": "Creates an Encryption Keyring on a Transit Secret Backend for Vault.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst transit = new vault.Mount(\"transit\", {\n path: \"transit\",\n type: \"transit\",\n description: \"Example description\",\n defaultLeaseTtlSeconds: 3600,\n maxLeaseTtlSeconds: 86400,\n});\nconst key = new vault.transit.SecretBackendKey(\"key\", {backend: transit.path});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\ntransit = vault.Mount(\"transit\",\n path=\"transit\",\n type=\"transit\",\n description=\"Example description\",\n default_lease_ttl_seconds=3600,\n max_lease_ttl_seconds=86400)\nkey = vault.transit.SecretBackendKey(\"key\", backend=transit.path)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var transit = new Vault.Mount(\"transit\", new()\n {\n Path = \"transit\",\n Type = \"transit\",\n Description = \"Example description\",\n DefaultLeaseTtlSeconds = 3600,\n MaxLeaseTtlSeconds = 86400,\n });\n\n var key = new Vault.Transit.SecretBackendKey(\"key\", new()\n {\n Backend = transit.Path,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault\"\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/transit\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\ttransit, err := vault.NewMount(ctx, \"transit\", \u0026vault.MountArgs{\n\t\t\tPath: pulumi.String(\"transit\"),\n\t\t\tType: pulumi.String(\"transit\"),\n\t\t\tDescription: pulumi.String(\"Example description\"),\n\t\t\tDefaultLeaseTtlSeconds: pulumi.Int(3600),\n\t\t\tMaxLeaseTtlSeconds: pulumi.Int(86400),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = transit.NewSecretBackendKey(ctx, \"key\", \u0026transit.SecretBackendKeyArgs{\n\t\t\tBackend: transit.Path,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.Mount;\nimport com.pulumi.vault.MountArgs;\nimport com.pulumi.vault.transit.SecretBackendKey;\nimport com.pulumi.vault.transit.SecretBackendKeyArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var transit = new Mount(\"transit\", MountArgs.builder() \n .path(\"transit\")\n .type(\"transit\")\n .description(\"Example description\")\n .defaultLeaseTtlSeconds(3600)\n .maxLeaseTtlSeconds(86400)\n .build());\n\n var key = new SecretBackendKey(\"key\", SecretBackendKeyArgs.builder() \n .backend(transit.path())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n transit:\n type: vault:Mount\n properties:\n path: transit\n type: transit\n description: Example description\n defaultLeaseTtlSeconds: 3600\n maxLeaseTtlSeconds: 86400\n key:\n type: vault:transit:SecretBackendKey\n properties:\n backend: ${transit.path}\n```\n{{% /example %}}\n{{% /examples %}}\n## Deprecations\n\n* `auto_rotate_interval` - Replaced by `auto_rotate_period`.\n\n\n## Import\n\nTransit secret backend keys can be imported using the `path`, e.g.\n\n```sh\n $ pulumi import vault:transit/secretBackendKey:SecretBackendKey key transit/keys/my_key\n```\n ",
"properties": {
"allowPlaintextBackup": {
"type": "boolean",
@@ -31317,7 +29059,7 @@
}
},
"vault:transit/secretCacheConfig:SecretCacheConfig": {
- "description": "Configure the cache for the Transit Secret Backend in Vault.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst transit = new vault.Mount(\"transit\", {\n path: \"transit\",\n type: \"transit\",\n description: \"Example description\",\n defaultLeaseTtlSeconds: 3600,\n maxLeaseTtlSeconds: 86400,\n});\nconst cfg = new vault.transit.SecretCacheConfig(\"cfg\", {\n backend: transit.path,\n size: 500,\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\ntransit = vault.Mount(\"transit\",\n path=\"transit\",\n type=\"transit\",\n description=\"Example description\",\n default_lease_ttl_seconds=3600,\n max_lease_ttl_seconds=86400)\ncfg = vault.transit.SecretCacheConfig(\"cfg\",\n backend=transit.path,\n size=500)\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var transit = new Vault.Mount(\"transit\", new()\n {\n Path = \"transit\",\n Type = \"transit\",\n Description = \"Example description\",\n DefaultLeaseTtlSeconds = 3600,\n MaxLeaseTtlSeconds = 86400,\n });\n\n var cfg = new Vault.Transit.SecretCacheConfig(\"cfg\", new()\n {\n Backend = transit.Path,\n Size = 500,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault\"\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/transit\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\ttransit, err := vault.NewMount(ctx, \"transit\", \u0026vault.MountArgs{\n\t\t\tPath: pulumi.String(\"transit\"),\n\t\t\tType: pulumi.String(\"transit\"),\n\t\t\tDescription: pulumi.String(\"Example description\"),\n\t\t\tDefaultLeaseTtlSeconds: pulumi.Int(3600),\n\t\t\tMaxLeaseTtlSeconds: pulumi.Int(86400),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = transit.NewSecretCacheConfig(ctx, \"cfg\", \u0026transit.SecretCacheConfigArgs{\n\t\t\tBackend: transit.Path,\n\t\t\tSize: pulumi.Int(500),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.Mount;\nimport com.pulumi.vault.MountArgs;\nimport com.pulumi.vault.transit.SecretCacheConfig;\nimport com.pulumi.vault.transit.SecretCacheConfigArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var transit = new Mount(\"transit\", MountArgs.builder() \n .path(\"transit\")\n .type(\"transit\")\n .description(\"Example description\")\n .defaultLeaseTtlSeconds(3600)\n .maxLeaseTtlSeconds(86400)\n .build());\n\n var cfg = new SecretCacheConfig(\"cfg\", SecretCacheConfigArgs.builder() \n .backend(transit.path())\n .size(500)\n .build());\n\n }\n}\n```\n```yaml\nresources:\n transit:\n type: vault:Mount\n properties:\n path: transit\n type: transit\n description: Example description\n defaultLeaseTtlSeconds: 3600\n maxLeaseTtlSeconds: 86400\n cfg:\n type: vault:transit:SecretCacheConfig\n properties:\n backend: ${transit.path}\n size: 500\n```\n{{% /example %}}\n{{% /examples %}}",
+ "description": "Configure the cache for the Transit Secret Backend in Vault.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst transit = new vault.Mount(\"transit\", {\n path: \"transit\",\n type: \"transit\",\n description: \"Example description\",\n defaultLeaseTtlSeconds: 3600,\n maxLeaseTtlSeconds: 86400,\n});\nconst cfg = new vault.transit.SecretCacheConfig(\"cfg\", {\n backend: transit.path,\n size: 500,\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\ntransit = vault.Mount(\"transit\",\n path=\"transit\",\n type=\"transit\",\n description=\"Example description\",\n default_lease_ttl_seconds=3600,\n max_lease_ttl_seconds=86400)\ncfg = vault.transit.SecretCacheConfig(\"cfg\",\n backend=transit.path,\n size=500)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var transit = new Vault.Mount(\"transit\", new()\n {\n Path = \"transit\",\n Type = \"transit\",\n Description = \"Example description\",\n DefaultLeaseTtlSeconds = 3600,\n MaxLeaseTtlSeconds = 86400,\n });\n\n var cfg = new Vault.Transit.SecretCacheConfig(\"cfg\", new()\n {\n Backend = transit.Path,\n Size = 500,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault\"\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/transit\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\ttransit, err := vault.NewMount(ctx, \"transit\", \u0026vault.MountArgs{\n\t\t\tPath: pulumi.String(\"transit\"),\n\t\t\tType: pulumi.String(\"transit\"),\n\t\t\tDescription: pulumi.String(\"Example description\"),\n\t\t\tDefaultLeaseTtlSeconds: pulumi.Int(3600),\n\t\t\tMaxLeaseTtlSeconds: pulumi.Int(86400),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = transit.NewSecretCacheConfig(ctx, \"cfg\", \u0026transit.SecretCacheConfigArgs{\n\t\t\tBackend: transit.Path,\n\t\t\tSize: pulumi.Int(500),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.Mount;\nimport com.pulumi.vault.MountArgs;\nimport com.pulumi.vault.transit.SecretCacheConfig;\nimport com.pulumi.vault.transit.SecretCacheConfigArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var transit = new Mount(\"transit\", MountArgs.builder() \n .path(\"transit\")\n .type(\"transit\")\n .description(\"Example description\")\n .defaultLeaseTtlSeconds(3600)\n .maxLeaseTtlSeconds(86400)\n .build());\n\n var cfg = new SecretCacheConfig(\"cfg\", SecretCacheConfigArgs.builder() \n .backend(transit.path())\n .size(500)\n .build());\n\n }\n}\n```\n```yaml\nresources:\n transit:\n type: vault:Mount\n properties:\n path: transit\n type: transit\n description: Example description\n defaultLeaseTtlSeconds: 3600\n maxLeaseTtlSeconds: 86400\n cfg:\n type: vault:transit:SecretCacheConfig\n properties:\n backend: ${transit.path}\n size: 500\n```\n{{% /example %}}\n{{% /examples %}}",
"properties": {
"backend": {
"type": "string",
@@ -31447,7 +29189,7 @@
}
},
"vault:appRole/getAuthBackendRoleId:getAuthBackendRoleId": {
- "description": "Reads the Role ID of an AppRole from a Vault server.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nexport = async () =\u003e {\n const role = await vault.appRole.getAuthBackendRoleId({\n backend: \"my-approle-backend\",\n roleName: \"my-role\",\n });\n const role_id = role.roleId;\n return {\n \"role-id\": role_id,\n };\n}\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nrole = vault.appRole.get_auth_backend_role_id(backend=\"my-approle-backend\",\n role_name=\"my-role\")\npulumi.export(\"role-id\", role.role_id)\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var role = Vault.AppRole.GetAuthBackendRoleId.Invoke(new()\n {\n Backend = \"my-approle-backend\",\n RoleName = \"my-role\",\n });\n\n return new Dictionary\u003cstring, object?\u003e\n {\n [\"role-id\"] = role.Apply(getAuthBackendRoleIdResult =\u003e getAuthBackendRoleIdResult.RoleId),\n };\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/appRole\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\trole, err := appRole.GetAuthBackendRoleId(ctx, \u0026approle.GetAuthBackendRoleIdArgs{\n\t\t\tBackend: pulumi.StringRef(\"my-approle-backend\"),\n\t\t\tRoleName: \"my-role\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tctx.Export(\"role-id\", role.RoleId)\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.appRole.AppRoleFunctions;\nimport com.pulumi.vault.appRole.inputs.GetAuthBackendRoleIdArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var role = AppRoleFunctions.getAuthBackendRoleId(GetAuthBackendRoleIdArgs.builder()\n .backend(\"my-approle-backend\")\n .roleName(\"my-role\")\n .build());\n\n ctx.export(\"role-id\", role.applyValue(getAuthBackendRoleIdResult -\u003e getAuthBackendRoleIdResult.roleId()));\n }\n}\n```\n```yaml\nvariables:\n role:\n Fn::Invoke:\n Function: vault:appRole:getAuthBackendRoleId\n Arguments:\n backend: my-approle-backend\n roleName: my-role\noutputs:\n role-id: ${role.roleId}\n```\n{{% /example %}}\n{{% /examples %}}",
+ "description": "Reads the Role ID of an AppRole from a Vault server.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nexport = async () =\u003e {\n const role = await vault.appRole.getAuthBackendRoleId({\n backend: \"my-approle-backend\",\n roleName: \"my-role\",\n });\n return {\n \"role-id\": role.roleId,\n };\n}\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nrole = vault.appRole.get_auth_backend_role_id(backend=\"my-approle-backend\",\n role_name=\"my-role\")\npulumi.export(\"role-id\", role.role_id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var role = Vault.AppRole.GetAuthBackendRoleId.Invoke(new()\n {\n Backend = \"my-approle-backend\",\n RoleName = \"my-role\",\n });\n\n return new Dictionary\u003cstring, object?\u003e\n {\n [\"role-id\"] = role.Apply(getAuthBackendRoleIdResult =\u003e getAuthBackendRoleIdResult.RoleId),\n };\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/appRole\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\trole, err := appRole.GetAuthBackendRoleId(ctx, \u0026approle.GetAuthBackendRoleIdArgs{\n\t\t\tBackend: pulumi.StringRef(\"my-approle-backend\"),\n\t\t\tRoleName: \"my-role\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tctx.Export(\"role-id\", role.RoleId)\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.appRole.AppRoleFunctions;\nimport com.pulumi.vault.appRole.inputs.GetAuthBackendRoleIdArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var role = AppRoleFunctions.getAuthBackendRoleId(GetAuthBackendRoleIdArgs.builder()\n .backend(\"my-approle-backend\")\n .roleName(\"my-role\")\n .build());\n\n ctx.export(\"role-id\", role.applyValue(getAuthBackendRoleIdResult -\u003e getAuthBackendRoleIdResult.roleId()));\n }\n}\n```\n```yaml\nvariables:\n role:\n fn::invoke:\n Function: vault:appRole:getAuthBackendRoleId\n Arguments:\n backend: my-approle-backend\n roleName: my-role\noutputs:\n role-id: ${role.roleId}\n```\n{{% /example %}}\n{{% /examples %}}",
"inputs": {
"description": "A collection of arguments for invoking getAuthBackendRoleId.\n",
"properties": {
@@ -31502,7 +29244,7 @@
}
},
"vault:aws/getAccessCredentials:getAccessCredentials": {
- "description": "{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.aws.SecretBackend;\nimport com.pulumi.vault.aws.SecretBackendArgs;\nimport com.pulumi.vault.aws.SecretBackendRole;\nimport com.pulumi.vault.aws.SecretBackendRoleArgs;\nimport com.pulumi.vault.aws.AwsFunctions;\nimport com.pulumi.vault.ad.inputs.GetAccessCredentialsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var aws = new SecretBackend(\"aws\", SecretBackendArgs.builder() \n .accessKey(\"AKIA.....\")\n .secretKey(\"SECRETKEYFROMAWS\")\n .build());\n\n var role = new SecretBackendRole(\"role\", SecretBackendRoleArgs.builder() \n .backend(aws.path())\n .policy(\"\"\"\n{\n \"Version\": \"2012-10-17\",\n \"Statement\": [\n {\n \"Effect\": \"Allow\",\n \"Action\": \"iam:*\",\n \"Resource\": \"*\"\n }\n ]\n}\n \"\"\")\n .build());\n\n final var creds = AwsFunctions.getAccessCredentials(GetAccessCredentialsArgs.builder()\n .backend(aws.path())\n .role(role.name())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n aws:\n type: vault:aws:SecretBackend\n properties:\n accessKey: AKIA.....\n secretKey: SECRETKEYFROMAWS\n role:\n type: vault:aws:SecretBackendRole\n properties:\n backend: ${aws.path}\n policy: |\n {\n \"Version\": \"2012-10-17\",\n \"Statement\": [\n {\n \"Effect\": \"Allow\",\n \"Action\": \"iam:*\",\n \"Resource\": \"*\"\n }\n ]\n }\nvariables:\n creds:\n Fn::Invoke:\n Function: vault:aws:getAccessCredentials\n Arguments:\n backend: ${aws.path}\n role: ${role.name}\n```\n{{% /example %}}\n{{% /examples %}}",
+ "description": "{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.aws.SecretBackend;\nimport com.pulumi.vault.aws.SecretBackendArgs;\nimport com.pulumi.vault.aws.SecretBackendRole;\nimport com.pulumi.vault.aws.SecretBackendRoleArgs;\nimport com.pulumi.vault.aws.AwsFunctions;\nimport com.pulumi.vault.aws.inputs.GetAccessCredentialsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var aws = new SecretBackend(\"aws\", SecretBackendArgs.builder() \n .accessKey(\"AKIA.....\")\n .secretKey(\"SECRETKEYFROMAWS\")\n .build());\n\n var role = new SecretBackendRole(\"role\", SecretBackendRoleArgs.builder() \n .backend(aws.path())\n .policy(\"\"\"\n{\n \"Version\": \"2012-10-17\",\n \"Statement\": [\n {\n \"Effect\": \"Allow\",\n \"Action\": \"iam:*\",\n \"Resource\": \"*\"\n }\n ]\n}\n \"\"\")\n .build());\n\n final var creds = AwsFunctions.getAccessCredentials(GetAccessCredentialsArgs.builder()\n .backend(aws.path())\n .role(role.name())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n aws:\n type: vault:aws:SecretBackend\n properties:\n accessKey: AKIA.....\n secretKey: SECRETKEYFROMAWS\n role:\n type: vault:aws:SecretBackendRole\n properties:\n backend: ${aws.path}\n policy: |\n {\n \"Version\": \"2012-10-17\",\n \"Statement\": [\n {\n \"Effect\": \"Allow\",\n \"Action\": \"iam:*\",\n \"Resource\": \"*\"\n }\n ]\n }\nvariables:\n creds:\n fn::invoke:\n Function: vault:aws:getAccessCredentials\n Arguments:\n backend: ${aws.path}\n role: ${role.name}\n```\n{{% /example %}}\n{{% /examples %}}",
"inputs": {
"description": "A collection of arguments for invoking getAccessCredentials.\n",
"properties": {
@@ -31615,68 +29357,125 @@
]
}
},
- "vault:azure/getAccessCredentials:getAccessCredentials": {
- "description": "{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst creds = vault.azure.getAccessCredentials({\n role: \"my-role\",\n validateCreds: true,\n numSequentialSuccesses: 8,\n numSecondsBetweenTests: 1,\n maxCredValidationSeconds: 300,\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\ncreds = vault.azure.get_access_credentials(role=\"my-role\",\n validate_creds=True,\n num_sequential_successes=8,\n num_seconds_between_tests=1,\n max_cred_validation_seconds=300)\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var creds = Vault.Azure.GetAccessCredentials.Invoke(new()\n {\n Role = \"my-role\",\n ValidateCreds = true,\n NumSequentialSuccesses = 8,\n NumSecondsBetweenTests = 1,\n MaxCredValidationSeconds = 300,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/azure\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := azure.GetAccessCredentials(ctx, \u0026azure.GetAccessCredentialsArgs{\n\t\t\tRole: \"my-role\",\n\t\t\tValidateCreds: pulumi.BoolRef(true),\n\t\t\tNumSequentialSuccesses: pulumi.IntRef(8),\n\t\t\tNumSecondsBetweenTests: pulumi.IntRef(1),\n\t\t\tMaxCredValidationSeconds: pulumi.IntRef(300),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.azure.AzureFunctions;\nimport com.pulumi.vault.ad.inputs.GetAccessCredentialsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var creds = AzureFunctions.getAccessCredentials(GetAccessCredentialsArgs.builder()\n .role(\"my-role\")\n .validateCreds(true)\n .numSequentialSuccesses(8)\n .numSecondsBetweenTests(1)\n .maxCredValidationSeconds(300)\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n creds:\n Fn::Invoke:\n Function: vault:azure:getAccessCredentials\n Arguments:\n role: my-role\n validateCreds: true\n numSequentialSuccesses: 8\n numSecondsBetweenTests: 1\n maxCredValidationSeconds: 300\n```\n{{% /example %}}\n{{% /examples %}}\n## Caveats\n\nThe `validate_creds` option requires read-access to the `backend` config endpoint.\nIf the effective Vault role does not have the required permissions then valid values \nare required to be set for: `subscription_id`, `tenant_id`, `environment`.\n",
+ "vault:aws/getStaticAccessCredentials:getStaticAccessCredentials": {
"inputs": {
- "description": "A collection of arguments for invoking getAccessCredentials.\n",
+ "description": "A collection of arguments for invoking getStaticAccessCredentials.\n",
"properties": {
"backend": {
- "type": "string",
- "description": "The path to the Azure secret backend to\nread credentials from, with no leading or trailing `/`s.\n"
+ "type": "string"
},
- "environment": {
+ "name": {
"type": "string",
- "description": "The Azure environment to use during credential validation.\nDefaults to the environment configured in the Vault backend.\nSome possible values: `AzurePublicCloud`, `AzureGovernmentCloud`\n*See the caveats section for more information on this field.*\n"
- },
- "maxCredValidationSeconds": {
- "type": "integer",
- "description": "If 'validate_creds' is true, \nthe number of seconds after which to give up validating credentials. Defaults\nto 300.\n"
+ "willReplaceOnChanges": true
},
"namespace": {
"type": "string",
- "description": "The namespace of the target resource.\nThe value should not contain leading or trailing forward slashes.\nThe `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault#namespace).\n*Available only for Vault Enterprise*.\n",
"willReplaceOnChanges": true
- },
- "numSecondsBetweenTests": {
- "type": "integer",
- "description": "If 'validate_creds' is true, \nthe number of seconds to wait between each test of generated credentials.\nDefaults to 1.\n"
- },
- "numSequentialSuccesses": {
- "type": "integer",
- "description": "If 'validate_creds' is true, \nthe number of sequential successes required to validate generated\ncredentials. Defaults to 8.\n"
- },
- "role": {
- "type": "string",
- "description": "The name of the Azure secret backend role to read\ncredentials from, with no leading or trailing `/`s.\n"
- },
- "subscriptionId": {
- "type": "string",
- "description": "The subscription ID to use during credential\nvalidation. Defaults to the subscription ID configured in the Vault `backend`.\n*See the caveats section for more information on this field.*\n"
- },
- "tenantId": {
- "type": "string",
- "description": "The tenant ID to use during credential validation.\nDefaults to the tenant ID configured in the Vault `backend`.\n*See the caveats section for more information on this field.*\n"
- },
- "validateCreds": {
- "type": "boolean",
- "description": "Whether generated credentials should be \nvalidated before being returned. Defaults to `false`, which returns\ncredentials without checking whether they have fully propagated throughout\nAzure Active Directory. Designating `true` activates testing.\n"
}
},
"type": "object",
"required": [
"backend",
- "role"
+ "name"
]
},
"outputs": {
- "description": "A collection of values returned by getAccessCredentials.\n",
+ "description": "A collection of values returned by getStaticAccessCredentials.\n",
"properties": {
+ "accessKey": {
+ "type": "string",
+ "secret": true
+ },
"backend": {
"type": "string"
},
- "clientId": {
+ "id": {
"type": "string",
- "description": "The client id for credentials to query the Azure APIs.\n"
+ "description": "The provider-assigned unique ID for this managed resource.\n"
+ },
+ "name": {
+ "type": "string"
+ },
+ "namespace": {
+ "type": "string"
+ },
+ "secretKey": {
+ "type": "string",
+ "secret": true
+ }
+ },
+ "type": "object",
+ "required": [
+ "accessKey",
+ "backend",
+ "name",
+ "secretKey",
+ "id"
+ ]
+ }
+ },
+ "vault:azure/getAccessCredentials:getAccessCredentials": {
+ "description": "{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst creds = vault.azure.getAccessCredentials({\n role: \"my-role\",\n validateCreds: true,\n numSequentialSuccesses: 8,\n numSecondsBetweenTests: 1,\n maxCredValidationSeconds: 300,\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\ncreds = vault.azure.get_access_credentials(role=\"my-role\",\n validate_creds=True,\n num_sequential_successes=8,\n num_seconds_between_tests=1,\n max_cred_validation_seconds=300)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var creds = Vault.Azure.GetAccessCredentials.Invoke(new()\n {\n Role = \"my-role\",\n ValidateCreds = true,\n NumSequentialSuccesses = 8,\n NumSecondsBetweenTests = 1,\n MaxCredValidationSeconds = 300,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/azure\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := azure.GetAccessCredentials(ctx, \u0026azure.GetAccessCredentialsArgs{\n\t\t\tRole: \"my-role\",\n\t\t\tValidateCreds: pulumi.BoolRef(true),\n\t\t\tNumSequentialSuccesses: pulumi.IntRef(8),\n\t\t\tNumSecondsBetweenTests: pulumi.IntRef(1),\n\t\t\tMaxCredValidationSeconds: pulumi.IntRef(300),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.azure.AzureFunctions;\nimport com.pulumi.vault.azure.inputs.GetAccessCredentialsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var creds = AzureFunctions.getAccessCredentials(GetAccessCredentialsArgs.builder()\n .role(\"my-role\")\n .validateCreds(true)\n .numSequentialSuccesses(8)\n .numSecondsBetweenTests(1)\n .maxCredValidationSeconds(300)\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n creds:\n fn::invoke:\n Function: vault:azure:getAccessCredentials\n Arguments:\n role: my-role\n validateCreds: true\n numSequentialSuccesses: 8\n numSecondsBetweenTests: 1\n maxCredValidationSeconds: 300\n```\n{{% /example %}}\n{{% /examples %}}\n## Caveats\n\nThe `validate_creds` option requires read-access to the `backend` config endpoint.\nIf the effective Vault role does not have the required permissions then valid values \nare required to be set for: `subscription_id`, `tenant_id`, `environment`.\n",
+ "inputs": {
+ "description": "A collection of arguments for invoking getAccessCredentials.\n",
+ "properties": {
+ "backend": {
+ "type": "string",
+ "description": "The path to the Azure secret backend to\nread credentials from, with no leading or trailing `/`s.\n"
+ },
+ "environment": {
+ "type": "string",
+ "description": "The Azure environment to use during credential validation.\nDefaults to the environment configured in the Vault backend.\nSome possible values: `AzurePublicCloud`, `AzureGovernmentCloud`\n*See the caveats section for more information on this field.*\n"
+ },
+ "maxCredValidationSeconds": {
+ "type": "integer",
+ "description": "If 'validate_creds' is true, \nthe number of seconds after which to give up validating credentials. Defaults\nto 300.\n"
+ },
+ "namespace": {
+ "type": "string",
+ "description": "The namespace of the target resource.\nThe value should not contain leading or trailing forward slashes.\nThe `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault#namespace).\n*Available only for Vault Enterprise*.\n",
+ "willReplaceOnChanges": true
+ },
+ "numSecondsBetweenTests": {
+ "type": "integer",
+ "description": "If 'validate_creds' is true, \nthe number of seconds to wait between each test of generated credentials.\nDefaults to 1.\n"
+ },
+ "numSequentialSuccesses": {
+ "type": "integer",
+ "description": "If 'validate_creds' is true, \nthe number of sequential successes required to validate generated\ncredentials. Defaults to 8.\n"
+ },
+ "role": {
+ "type": "string",
+ "description": "The name of the Azure secret backend role to read\ncredentials from, with no leading or trailing `/`s.\n"
+ },
+ "subscriptionId": {
+ "type": "string",
+ "description": "The subscription ID to use during credential\nvalidation. Defaults to the subscription ID configured in the Vault `backend`.\n*See the caveats section for more information on this field.*\n"
+ },
+ "tenantId": {
+ "type": "string",
+ "description": "The tenant ID to use during credential validation.\nDefaults to the tenant ID configured in the Vault `backend`.\n*See the caveats section for more information on this field.*\n"
+ },
+ "validateCreds": {
+ "type": "boolean",
+ "description": "Whether generated credentials should be \nvalidated before being returned. Defaults to `false`, which returns\ncredentials without checking whether they have fully propagated throughout\nAzure Active Directory. Designating `true` activates testing.\n"
+ }
+ },
+ "type": "object",
+ "required": [
+ "backend",
+ "role"
+ ]
+ },
+ "outputs": {
+ "description": "A collection of values returned by getAccessCredentials.\n",
+ "properties": {
+ "backend": {
+ "type": "string"
+ },
+ "clientId": {
+ "type": "string",
+ "description": "The client id for credentials to query the Azure APIs.\n"
},
"clientSecret": {
"type": "string",
@@ -31744,7 +29543,7 @@
}
},
"vault:gcp/getAuthBackendRole:getAuthBackendRole": {
- "description": "Reads a GCP auth role from a Vault server.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst role = pulumi.output(vault.gcp.getAuthBackendRole({\n backend: \"my-gcp-backend\",\n roleName: \"my-role\",\n}));\n\nexport const role_id = role.roleId;\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nrole = vault.gcp.get_auth_backend_role(backend=\"my-gcp-backend\",\n role_name=\"my-role\")\npulumi.export(\"role-id\", role.role_id)\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var role = Vault.Gcp.GetAuthBackendRole.Invoke(new()\n {\n Backend = \"my-gcp-backend\",\n RoleName = \"my-role\",\n });\n\n return new Dictionary\u003cstring, object?\u003e\n {\n [\"role-id\"] = role.Apply(getAuthBackendRoleResult =\u003e getAuthBackendRoleResult.RoleId),\n };\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/gcp\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\trole, err := gcp.LookupAuthBackendRole(ctx, \u0026gcp.LookupAuthBackendRoleArgs{\n\t\t\tBackend: pulumi.StringRef(\"my-gcp-backend\"),\n\t\t\tRoleName: \"my-role\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tctx.Export(\"role-id\", role.RoleId)\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.gcp.GcpFunctions;\nimport com.pulumi.vault.gcp.inputs.GetAuthBackendRoleArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var role = GcpFunctions.getAuthBackendRole(GetAuthBackendRoleArgs.builder()\n .backend(\"my-gcp-backend\")\n .roleName(\"my-role\")\n .build());\n\n ctx.export(\"role-id\", role.applyValue(getAuthBackendRoleResult -\u003e getAuthBackendRoleResult.roleId()));\n }\n}\n```\n```yaml\nvariables:\n role:\n Fn::Invoke:\n Function: vault:gcp:getAuthBackendRole\n Arguments:\n backend: my-gcp-backend\n roleName: my-role\noutputs:\n role-id: ${role.roleId}\n```\n{{% /example %}}\n{{% /examples %}}",
+ "description": "Reads a GCP auth role from a Vault server.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nexport = async () =\u003e {\n const role = await vault.gcp.getAuthBackendRole({\n backend: \"my-gcp-backend\",\n roleName: \"my-role\",\n });\n return {\n \"role-id\": role.roleId,\n };\n}\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nrole = vault.gcp.get_auth_backend_role(backend=\"my-gcp-backend\",\n role_name=\"my-role\")\npulumi.export(\"role-id\", role.role_id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var role = Vault.Gcp.GetAuthBackendRole.Invoke(new()\n {\n Backend = \"my-gcp-backend\",\n RoleName = \"my-role\",\n });\n\n return new Dictionary\u003cstring, object?\u003e\n {\n [\"role-id\"] = role.Apply(getAuthBackendRoleResult =\u003e getAuthBackendRoleResult.RoleId),\n };\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/gcp\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\trole, err := gcp.LookupAuthBackendRole(ctx, \u0026gcp.LookupAuthBackendRoleArgs{\n\t\t\tBackend: pulumi.StringRef(\"my-gcp-backend\"),\n\t\t\tRoleName: \"my-role\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tctx.Export(\"role-id\", role.RoleId)\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.gcp.GcpFunctions;\nimport com.pulumi.vault.gcp.inputs.GetAuthBackendRoleArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var role = GcpFunctions.getAuthBackendRole(GetAuthBackendRoleArgs.builder()\n .backend(\"my-gcp-backend\")\n .roleName(\"my-role\")\n .build());\n\n ctx.export(\"role-id\", role.applyValue(getAuthBackendRoleResult -\u003e getAuthBackendRoleResult.roleId()));\n }\n}\n```\n```yaml\nvariables:\n role:\n fn::invoke:\n Function: vault:gcp:getAuthBackendRole\n Arguments:\n backend: my-gcp-backend\n roleName: my-role\noutputs:\n role-id: ${role.roleId}\n```\n{{% /example %}}\n{{% /examples %}}",
"inputs": {
"description": "A collection of arguments for invoking getAuthBackendRole.\n",
"properties": {
@@ -31936,7 +29735,7 @@
}
},
"vault:generic/getSecret:getSecret": {
- "description": "{{% examples %}}\n## Example Usage\n{{% example %}}\n### Generic secret\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst rundeckAuth = vault.generic.getSecret({\n path: \"secret/rundeck_auth\",\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nrundeck_auth = vault.generic.get_secret(path=\"secret/rundeck_auth\")\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var rundeckAuth = Vault.Generic.GetSecret.Invoke(new()\n {\n Path = \"secret/rundeck_auth\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/generic\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := generic.LookupSecret(ctx, \u0026generic.LookupSecretArgs{\n\t\t\tPath: \"secret/rundeck_auth\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.generic.GenericFunctions;\nimport com.pulumi.vault.generic.inputs.GetSecretArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var rundeckAuth = GenericFunctions.getSecret(GetSecretArgs.builder()\n .path(\"secret/rundeck_auth\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n rundeckAuth: # Rundeck Provider, for example\n # For this example, in Vault there is a key named \"auth_token\" and the value is the token we need to keep secret.\n # In general usage, replace \"auth_token\" with the key you wish to extract from Vault.\n Fn::Invoke:\n Function: vault:generic:getSecret\n Arguments:\n path: secret/rundeck_auth\n```\n{{% /example %}}\n{{% /examples %}}\n## Required Vault Capabilities\n\nUse of this resource requires the `read` capability on the given path.\n",
+ "description": "{{% examples %}}\n## Example Usage\n{{% example %}}\n### Generic secret\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst rundeckAuth = vault.generic.getSecret({\n path: \"secret/rundeck_auth\",\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nrundeck_auth = vault.generic.get_secret(path=\"secret/rundeck_auth\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var rundeckAuth = Vault.Generic.GetSecret.Invoke(new()\n {\n Path = \"secret/rundeck_auth\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/generic\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := generic.LookupSecret(ctx, \u0026generic.LookupSecretArgs{\n\t\t\tPath: \"secret/rundeck_auth\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.generic.GenericFunctions;\nimport com.pulumi.vault.generic.inputs.GetSecretArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var rundeckAuth = GenericFunctions.getSecret(GetSecretArgs.builder()\n .path(\"secret/rundeck_auth\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n rundeckAuth: # Rundeck Provider, for example\n # For this example, in Vault there is a key named \"auth_token\" and the value is the token we need to keep secret.\n # In general usage, replace \"auth_token\" with the key you wish to extract from Vault.\n fn::invoke:\n Function: vault:generic:getSecret\n Arguments:\n path: secret/rundeck_auth\n```\n{{% /example %}}\n{{% /examples %}}\n## Required Vault Capabilities\n\nUse of this resource requires the `read` capability on the given path.\n",
"inputs": {
"description": "A collection of arguments for invoking getSecret.\n",
"properties": {
@@ -31954,7 +29753,8 @@
"description": "The version of the secret to read. This is used by the\nVault KV secrets engine - version 2 to indicate which version of the secret\nto read.\n"
},
"withLeaseStartTime": {
- "type": "boolean"
+ "type": "boolean",
+ "description": "If set to true, stores `lease_start_time` in the TF state.\nNote that storing the `lease_start_time` in the TF state will cause a persistent drift\non every `pulumi preview` and will require a `pulumi up`.\n"
}
},
"type": "object",
@@ -32023,7 +29823,7 @@
}
},
"vault:identity/getEntity:getEntity": {
- "description": "{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst entity = pulumi.output(vault.identity.getEntity({\n entityName: \"entity_12345\",\n}));\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nentity = vault.identity.get_entity(entity_name=\"entity_12345\")\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var entity = Vault.Identity.GetEntity.Invoke(new()\n {\n EntityName = \"entity_12345\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/identity\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := identity.LookupEntity(ctx, \u0026identity.LookupEntityArgs{\n\t\t\tEntityName: pulumi.StringRef(\"entity_12345\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.identity.IdentityFunctions;\nimport com.pulumi.vault.identity.inputs.GetEntityArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var entity = IdentityFunctions.getEntity(GetEntityArgs.builder()\n .entityName(\"entity_12345\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n entity:\n Fn::Invoke:\n Function: vault:identity:getEntity\n Arguments:\n entityName: entity_12345\n```\n{{% /example %}}\n{{% /examples %}}\n## Required Vault Capabilities\n\nUse of this resource requires the `create` capability on `/identity/lookup/entity`.\n",
+ "description": "{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst entity = vault.identity.getEntity({\n entityName: \"entity_12345\",\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nentity = vault.identity.get_entity(entity_name=\"entity_12345\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var entity = Vault.Identity.GetEntity.Invoke(new()\n {\n EntityName = \"entity_12345\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/identity\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := identity.LookupEntity(ctx, \u0026identity.LookupEntityArgs{\n\t\t\tEntityName: pulumi.StringRef(\"entity_12345\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.identity.IdentityFunctions;\nimport com.pulumi.vault.identity.inputs.GetEntityArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var entity = IdentityFunctions.getEntity(GetEntityArgs.builder()\n .entityName(\"entity_12345\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n entity:\n fn::invoke:\n Function: vault:identity:getEntity\n Arguments:\n entityName: entity_12345\n```\n{{% /example %}}\n{{% /examples %}}\n## Required Vault Capabilities\n\nUse of this resource requires the `create` capability on `/identity/lookup/entity`.\n",
"inputs": {
"description": "A collection of arguments for invoking getEntity.\n",
"properties": {
@@ -32033,7 +29833,7 @@
},
"aliasMountAccessor": {
"type": "string",
- "description": "Accessor of the mount to which the alias belongs to.\nThis should be supplied in conjunction with `alias_name`.\n"
+ "description": "Accessor of the mount to which the alias belongs to.\nThis should be supplied in conjunction with `alias_name`.\n\nThe lookup criteria can be `entity_name`, `entity_id`, `alias_id`, or a combination of\n`alias_name` and `alias_mount_accessor`.\n"
},
"aliasName": {
"type": "string",
@@ -32174,7 +29974,7 @@
}
},
"vault:identity/getGroup:getGroup": {
- "description": "{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst group = pulumi.output(vault.identity.getGroup({\n groupName: \"user\",\n}));\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\ngroup = vault.identity.get_group(group_name=\"user\")\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @group = Vault.Identity.GetGroup.Invoke(new()\n {\n GroupName = \"user\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/identity\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := identity.LookupGroup(ctx, \u0026identity.LookupGroupArgs{\n\t\t\tGroupName: pulumi.StringRef(\"user\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.identity.IdentityFunctions;\nimport com.pulumi.vault.identity.inputs.GetGroupArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var group = IdentityFunctions.getGroup(GetGroupArgs.builder()\n .groupName(\"user\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n group:\n Fn::Invoke:\n Function: vault:identity:getGroup\n Arguments:\n groupName: user\n```\n{{% /example %}}\n{{% /examples %}}\n## Required Vault Capabilities\n\nUse of this resource requires the `create` capability on `/identity/lookup/group`.\n",
+ "description": "{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst group = vault.identity.getGroup({\n groupName: \"user\",\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\ngroup = vault.identity.get_group(group_name=\"user\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @group = Vault.Identity.GetGroup.Invoke(new()\n {\n GroupName = \"user\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/identity\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := identity.LookupGroup(ctx, \u0026identity.LookupGroupArgs{\n\t\t\tGroupName: pulumi.StringRef(\"user\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.identity.IdentityFunctions;\nimport com.pulumi.vault.identity.inputs.GetGroupArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var group = IdentityFunctions.getGroup(GetGroupArgs.builder()\n .groupName(\"user\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n group:\n fn::invoke:\n Function: vault:identity:getGroup\n Arguments:\n groupName: user\n```\n{{% /example %}}\n{{% /examples %}}\n## Required Vault Capabilities\n\nUse of this resource requires the `create` capability on `/identity/lookup/group`.\n",
"inputs": {
"description": "A collection of arguments for invoking getGroup.\n",
"properties": {
@@ -32184,7 +29984,7 @@
},
"aliasMountAccessor": {
"type": "string",
- "description": "Accessor of the mount to which the alias belongs to.\nThis should be supplied in conjunction with `alias_name`.\n"
+ "description": "Accessor of the mount to which the alias belongs to.\nThis should be supplied in conjunction with `alias_name`.\n\nThe lookup criteria can be `group_name`, `group_id`, `alias_id`, or a combination of\n`alias_name` and `alias_mount_accessor`.\n"
},
"aliasName": {
"type": "string",
@@ -32355,7 +30155,7 @@
}
},
"vault:identity/getOidcClientCreds:getOidcClientCreds": {
- "description": "{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst app = new vault.identity.OidcClient(\"app\", {\n redirectUris: [\n \"http://127.0.0.1:9200/v1/auth-methods/oidc:authenticate:callback\",\n \"http://127.0.0.1:8251/callback\",\n \"http://127.0.0.1:8080/callback\",\n ],\n idTokenTtl: 2400,\n accessTokenTtl: 7200,\n});\nconst creds = vault.identity.getOidcClientCredsOutput({\n name: app.name,\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\napp = vault.identity.OidcClient(\"app\",\n redirect_uris=[\n \"http://127.0.0.1:9200/v1/auth-methods/oidc:authenticate:callback\",\n \"http://127.0.0.1:8251/callback\",\n \"http://127.0.0.1:8080/callback\",\n ],\n id_token_ttl=2400,\n access_token_ttl=7200)\ncreds = vault.identity.get_oidc_client_creds_output(name=app.name)\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var app = new Vault.Identity.OidcClient(\"app\", new()\n {\n RedirectUris = new[]\n {\n \"http://127.0.0.1:9200/v1/auth-methods/oidc:authenticate:callback\",\n \"http://127.0.0.1:8251/callback\",\n \"http://127.0.0.1:8080/callback\",\n },\n IdTokenTtl = 2400,\n AccessTokenTtl = 7200,\n });\n\n var creds = Vault.Identity.GetOidcClientCreds.Invoke(new()\n {\n Name = app.Name,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/identity\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tapp, err := identity.NewOidcClient(ctx, \"app\", \u0026identity.OidcClientArgs{\n\t\t\tRedirectUris: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"http://127.0.0.1:9200/v1/auth-methods/oidc:authenticate:callback\"),\n\t\t\t\tpulumi.String(\"http://127.0.0.1:8251/callback\"),\n\t\t\t\tpulumi.String(\"http://127.0.0.1:8080/callback\"),\n\t\t\t},\n\t\t\tIdTokenTtl: pulumi.Int(2400),\n\t\t\tAccessTokenTtl: pulumi.Int(7200),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_ = identity.GetOidcClientCredsOutput(ctx, identity.GetOidcClientCredsOutputArgs{\n\t\t\tName: app.Name,\n\t\t}, nil)\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.identity.OidcClient;\nimport com.pulumi.vault.identity.OidcClientArgs;\nimport com.pulumi.vault.identity.IdentityFunctions;\nimport com.pulumi.vault.identity.inputs.GetOidcClientCredsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var app = new OidcClient(\"app\", OidcClientArgs.builder() \n .redirectUris( \n \"http://127.0.0.1:9200/v1/auth-methods/oidc:authenticate:callback\",\n \"http://127.0.0.1:8251/callback\",\n \"http://127.0.0.1:8080/callback\")\n .idTokenTtl(2400)\n .accessTokenTtl(7200)\n .build());\n\n final var creds = IdentityFunctions.getOidcClientCreds(GetOidcClientCredsArgs.builder()\n .name(app.name())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n app:\n type: vault:identity:OidcClient\n properties:\n redirectUris:\n - http://127.0.0.1:9200/v1/auth-methods/oidc:authenticate:callback\n - http://127.0.0.1:8251/callback\n - http://127.0.0.1:8080/callback\n idTokenTtl: 2400\n accessTokenTtl: 7200\nvariables:\n creds:\n Fn::Invoke:\n Function: vault:identity:getOidcClientCreds\n Arguments:\n name: ${app.name}\n```\n{{% /example %}}\n{{% /examples %}}",
+ "description": "{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst app = new vault.identity.OidcClient(\"app\", {\n redirectUris: [\n \"http://127.0.0.1:9200/v1/auth-methods/oidc:authenticate:callback\",\n \"http://127.0.0.1:8251/callback\",\n \"http://127.0.0.1:8080/callback\",\n ],\n idTokenTtl: 2400,\n accessTokenTtl: 7200,\n});\nconst creds = vault.identity.getOidcClientCredsOutput({\n name: app.name,\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\napp = vault.identity.OidcClient(\"app\",\n redirect_uris=[\n \"http://127.0.0.1:9200/v1/auth-methods/oidc:authenticate:callback\",\n \"http://127.0.0.1:8251/callback\",\n \"http://127.0.0.1:8080/callback\",\n ],\n id_token_ttl=2400,\n access_token_ttl=7200)\ncreds = vault.identity.get_oidc_client_creds_output(name=app.name)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var app = new Vault.Identity.OidcClient(\"app\", new()\n {\n RedirectUris = new[]\n {\n \"http://127.0.0.1:9200/v1/auth-methods/oidc:authenticate:callback\",\n \"http://127.0.0.1:8251/callback\",\n \"http://127.0.0.1:8080/callback\",\n },\n IdTokenTtl = 2400,\n AccessTokenTtl = 7200,\n });\n\n var creds = Vault.Identity.GetOidcClientCreds.Invoke(new()\n {\n Name = app.Name,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/identity\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tapp, err := identity.NewOidcClient(ctx, \"app\", \u0026identity.OidcClientArgs{\n\t\t\tRedirectUris: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"http://127.0.0.1:9200/v1/auth-methods/oidc:authenticate:callback\"),\n\t\t\t\tpulumi.String(\"http://127.0.0.1:8251/callback\"),\n\t\t\t\tpulumi.String(\"http://127.0.0.1:8080/callback\"),\n\t\t\t},\n\t\t\tIdTokenTtl: pulumi.Int(2400),\n\t\t\tAccessTokenTtl: pulumi.Int(7200),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_ = identity.GetOidcClientCredsOutput(ctx, identity.GetOidcClientCredsOutputArgs{\n\t\t\tName: app.Name,\n\t\t}, nil)\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.identity.OidcClient;\nimport com.pulumi.vault.identity.OidcClientArgs;\nimport com.pulumi.vault.identity.IdentityFunctions;\nimport com.pulumi.vault.identity.inputs.GetOidcClientCredsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var app = new OidcClient(\"app\", OidcClientArgs.builder() \n .redirectUris( \n \"http://127.0.0.1:9200/v1/auth-methods/oidc:authenticate:callback\",\n \"http://127.0.0.1:8251/callback\",\n \"http://127.0.0.1:8080/callback\")\n .idTokenTtl(2400)\n .accessTokenTtl(7200)\n .build());\n\n final var creds = IdentityFunctions.getOidcClientCreds(GetOidcClientCredsArgs.builder()\n .name(app.name())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n app:\n type: vault:identity:OidcClient\n properties:\n redirectUris:\n - http://127.0.0.1:9200/v1/auth-methods/oidc:authenticate:callback\n - http://127.0.0.1:8251/callback\n - http://127.0.0.1:8080/callback\n idTokenTtl: 2400\n accessTokenTtl: 7200\nvariables:\n creds:\n fn::invoke:\n Function: vault:identity:getOidcClientCreds\n Arguments:\n name: ${app.name}\n```\n{{% /example %}}\n{{% /examples %}}",
"inputs": {
"description": "A collection of arguments for invoking getOidcClientCreds.\n",
"properties": {
@@ -32383,7 +30183,7 @@
},
"clientSecret": {
"type": "string",
- "description": "The Client Secret Key returned by Vault.\n",
+ "description": "The Client Secret Key returned by Vault.\nFor public OpenID Clients `client_secret` is set to an empty string `\"\"`\n",
"secret": true
},
"id": {
@@ -32407,7 +30207,7 @@
}
},
"vault:identity/getOidcOpenidConfig:getOidcOpenidConfig": {
- "description": "{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst key = new vault.identity.OidcKey(\"key\", {\n allowedClientIds: [\"*\"],\n rotationPeriod: 3600,\n verificationTtl: 3600,\n});\nconst app = new vault.identity.OidcClient(\"app\", {\n key: key.name,\n redirectUris: [\n \"http://127.0.0.1:9200/v1/auth-methods/oidc:authenticate:callback\",\n \"http://127.0.0.1:8251/callback\",\n \"http://127.0.0.1:8080/callback\",\n ],\n idTokenTtl: 2400,\n accessTokenTtl: 7200,\n});\nconst provider = new vault.identity.OidcProvider(\"provider\", {allowedClientIds: [vault_identity_oidc_client.test.client_id]});\nconst config = vault.identity.getOidcOpenidConfigOutput({\n name: provider.name,\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nkey = vault.identity.OidcKey(\"key\",\n allowed_client_ids=[\"*\"],\n rotation_period=3600,\n verification_ttl=3600)\napp = vault.identity.OidcClient(\"app\",\n key=key.name,\n redirect_uris=[\n \"http://127.0.0.1:9200/v1/auth-methods/oidc:authenticate:callback\",\n \"http://127.0.0.1:8251/callback\",\n \"http://127.0.0.1:8080/callback\",\n ],\n id_token_ttl=2400,\n access_token_ttl=7200)\nprovider = vault.identity.OidcProvider(\"provider\", allowed_client_ids=[vault_identity_oidc_client[\"test\"][\"client_id\"]])\nconfig = vault.identity.get_oidc_openid_config_output(name=provider.name)\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var key = new Vault.Identity.OidcKey(\"key\", new()\n {\n AllowedClientIds = new[]\n {\n \"*\",\n },\n RotationPeriod = 3600,\n VerificationTtl = 3600,\n });\n\n var app = new Vault.Identity.OidcClient(\"app\", new()\n {\n Key = key.Name,\n RedirectUris = new[]\n {\n \"http://127.0.0.1:9200/v1/auth-methods/oidc:authenticate:callback\",\n \"http://127.0.0.1:8251/callback\",\n \"http://127.0.0.1:8080/callback\",\n },\n IdTokenTtl = 2400,\n AccessTokenTtl = 7200,\n });\n\n var provider = new Vault.Identity.OidcProvider(\"provider\", new()\n {\n AllowedClientIds = new[]\n {\n vault_identity_oidc_client.Test.Client_id,\n },\n });\n\n var config = Vault.Identity.GetOidcOpenidConfig.Invoke(new()\n {\n Name = provider.Name,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/identity\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tkey, err := identity.NewOidcKey(ctx, \"key\", \u0026identity.OidcKeyArgs{\n\t\t\tAllowedClientIds: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"*\"),\n\t\t\t},\n\t\t\tRotationPeriod: pulumi.Int(3600),\n\t\t\tVerificationTtl: pulumi.Int(3600),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = identity.NewOidcClient(ctx, \"app\", \u0026identity.OidcClientArgs{\n\t\t\tKey: key.Name,\n\t\t\tRedirectUris: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"http://127.0.0.1:9200/v1/auth-methods/oidc:authenticate:callback\"),\n\t\t\t\tpulumi.String(\"http://127.0.0.1:8251/callback\"),\n\t\t\t\tpulumi.String(\"http://127.0.0.1:8080/callback\"),\n\t\t\t},\n\t\t\tIdTokenTtl: pulumi.Int(2400),\n\t\t\tAccessTokenTtl: pulumi.Int(7200),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tprovider, err := identity.NewOidcProvider(ctx, \"provider\", \u0026identity.OidcProviderArgs{\n\t\t\tAllowedClientIds: pulumi.StringArray{\n\t\t\t\tpulumi.Any(vault_identity_oidc_client.Test.Client_id),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_ = identity.GetOidcOpenidConfigOutput(ctx, identity.GetOidcOpenidConfigOutputArgs{\n\t\t\tName: provider.Name,\n\t\t}, nil)\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.identity.OidcKey;\nimport com.pulumi.vault.identity.OidcKeyArgs;\nimport com.pulumi.vault.identity.OidcClient;\nimport com.pulumi.vault.identity.OidcClientArgs;\nimport com.pulumi.vault.identity.OidcProvider;\nimport com.pulumi.vault.identity.OidcProviderArgs;\nimport com.pulumi.vault.identity.IdentityFunctions;\nimport com.pulumi.vault.identity.inputs.GetOidcOpenidConfigArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var key = new OidcKey(\"key\", OidcKeyArgs.builder() \n .allowedClientIds(\"*\")\n .rotationPeriod(3600)\n .verificationTtl(3600)\n .build());\n\n var app = new OidcClient(\"app\", OidcClientArgs.builder() \n .key(key.name())\n .redirectUris( \n \"http://127.0.0.1:9200/v1/auth-methods/oidc:authenticate:callback\",\n \"http://127.0.0.1:8251/callback\",\n \"http://127.0.0.1:8080/callback\")\n .idTokenTtl(2400)\n .accessTokenTtl(7200)\n .build());\n\n var provider = new OidcProvider(\"provider\", OidcProviderArgs.builder() \n .allowedClientIds(vault_identity_oidc_client.test().client_id())\n .build());\n\n final var config = IdentityFunctions.getOidcOpenidConfig(GetOidcOpenidConfigArgs.builder()\n .name(provider.name())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n key:\n type: vault:identity:OidcKey\n properties:\n allowedClientIds:\n - '*'\n rotationPeriod: 3600\n verificationTtl: 3600\n app:\n type: vault:identity:OidcClient\n properties:\n key: ${key.name}\n redirectUris:\n - http://127.0.0.1:9200/v1/auth-methods/oidc:authenticate:callback\n - http://127.0.0.1:8251/callback\n - http://127.0.0.1:8080/callback\n idTokenTtl: 2400\n accessTokenTtl: 7200\n provider:\n type: vault:identity:OidcProvider\n properties:\n allowedClientIds:\n - ${vault_identity_oidc_client.test.client_id}\nvariables:\n config:\n Fn::Invoke:\n Function: vault:identity:getOidcOpenidConfig\n Arguments:\n name: ${provider.name}\n```\n{{% /example %}}\n{{% /examples %}}",
+ "description": "{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst key = new vault.identity.OidcKey(\"key\", {\n allowedClientIds: [\"*\"],\n rotationPeriod: 3600,\n verificationTtl: 3600,\n});\nconst app = new vault.identity.OidcClient(\"app\", {\n key: key.name,\n redirectUris: [\n \"http://127.0.0.1:9200/v1/auth-methods/oidc:authenticate:callback\",\n \"http://127.0.0.1:8251/callback\",\n \"http://127.0.0.1:8080/callback\",\n ],\n idTokenTtl: 2400,\n accessTokenTtl: 7200,\n});\nconst provider = new vault.identity.OidcProvider(\"provider\", {allowedClientIds: [vault_identity_oidc_client.test.client_id]});\nconst config = vault.identity.getOidcOpenidConfigOutput({\n name: provider.name,\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nkey = vault.identity.OidcKey(\"key\",\n allowed_client_ids=[\"*\"],\n rotation_period=3600,\n verification_ttl=3600)\napp = vault.identity.OidcClient(\"app\",\n key=key.name,\n redirect_uris=[\n \"http://127.0.0.1:9200/v1/auth-methods/oidc:authenticate:callback\",\n \"http://127.0.0.1:8251/callback\",\n \"http://127.0.0.1:8080/callback\",\n ],\n id_token_ttl=2400,\n access_token_ttl=7200)\nprovider = vault.identity.OidcProvider(\"provider\", allowed_client_ids=[vault_identity_oidc_client[\"test\"][\"client_id\"]])\nconfig = vault.identity.get_oidc_openid_config_output(name=provider.name)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var key = new Vault.Identity.OidcKey(\"key\", new()\n {\n AllowedClientIds = new[]\n {\n \"*\",\n },\n RotationPeriod = 3600,\n VerificationTtl = 3600,\n });\n\n var app = new Vault.Identity.OidcClient(\"app\", new()\n {\n Key = key.Name,\n RedirectUris = new[]\n {\n \"http://127.0.0.1:9200/v1/auth-methods/oidc:authenticate:callback\",\n \"http://127.0.0.1:8251/callback\",\n \"http://127.0.0.1:8080/callback\",\n },\n IdTokenTtl = 2400,\n AccessTokenTtl = 7200,\n });\n\n var provider = new Vault.Identity.OidcProvider(\"provider\", new()\n {\n AllowedClientIds = new[]\n {\n vault_identity_oidc_client.Test.Client_id,\n },\n });\n\n var config = Vault.Identity.GetOidcOpenidConfig.Invoke(new()\n {\n Name = provider.Name,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/identity\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tkey, err := identity.NewOidcKey(ctx, \"key\", \u0026identity.OidcKeyArgs{\n\t\t\tAllowedClientIds: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"*\"),\n\t\t\t},\n\t\t\tRotationPeriod: pulumi.Int(3600),\n\t\t\tVerificationTtl: pulumi.Int(3600),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = identity.NewOidcClient(ctx, \"app\", \u0026identity.OidcClientArgs{\n\t\t\tKey: key.Name,\n\t\t\tRedirectUris: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"http://127.0.0.1:9200/v1/auth-methods/oidc:authenticate:callback\"),\n\t\t\t\tpulumi.String(\"http://127.0.0.1:8251/callback\"),\n\t\t\t\tpulumi.String(\"http://127.0.0.1:8080/callback\"),\n\t\t\t},\n\t\t\tIdTokenTtl: pulumi.Int(2400),\n\t\t\tAccessTokenTtl: pulumi.Int(7200),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tprovider, err := identity.NewOidcProvider(ctx, \"provider\", \u0026identity.OidcProviderArgs{\n\t\t\tAllowedClientIds: pulumi.StringArray{\n\t\t\t\tvault_identity_oidc_client.Test.Client_id,\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_ = identity.GetOidcOpenidConfigOutput(ctx, identity.GetOidcOpenidConfigOutputArgs{\n\t\t\tName: provider.Name,\n\t\t}, nil)\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.identity.OidcKey;\nimport com.pulumi.vault.identity.OidcKeyArgs;\nimport com.pulumi.vault.identity.OidcClient;\nimport com.pulumi.vault.identity.OidcClientArgs;\nimport com.pulumi.vault.identity.OidcProvider;\nimport com.pulumi.vault.identity.OidcProviderArgs;\nimport com.pulumi.vault.identity.IdentityFunctions;\nimport com.pulumi.vault.identity.inputs.GetOidcOpenidConfigArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var key = new OidcKey(\"key\", OidcKeyArgs.builder() \n .allowedClientIds(\"*\")\n .rotationPeriod(3600)\n .verificationTtl(3600)\n .build());\n\n var app = new OidcClient(\"app\", OidcClientArgs.builder() \n .key(key.name())\n .redirectUris( \n \"http://127.0.0.1:9200/v1/auth-methods/oidc:authenticate:callback\",\n \"http://127.0.0.1:8251/callback\",\n \"http://127.0.0.1:8080/callback\")\n .idTokenTtl(2400)\n .accessTokenTtl(7200)\n .build());\n\n var provider = new OidcProvider(\"provider\", OidcProviderArgs.builder() \n .allowedClientIds(vault_identity_oidc_client.test().client_id())\n .build());\n\n final var config = IdentityFunctions.getOidcOpenidConfig(GetOidcOpenidConfigArgs.builder()\n .name(provider.name())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n key:\n type: vault:identity:OidcKey\n properties:\n allowedClientIds:\n - '*'\n rotationPeriod: 3600\n verificationTtl: 3600\n app:\n type: vault:identity:OidcClient\n properties:\n key: ${key.name}\n redirectUris:\n - http://127.0.0.1:9200/v1/auth-methods/oidc:authenticate:callback\n - http://127.0.0.1:8251/callback\n - http://127.0.0.1:8080/callback\n idTokenTtl: 2400\n accessTokenTtl: 7200\n provider:\n type: vault:identity:OidcProvider\n properties:\n allowedClientIds:\n - ${vault_identity_oidc_client.test.client_id}\nvariables:\n config:\n fn::invoke:\n Function: vault:identity:getOidcOpenidConfig\n Arguments:\n name: ${provider.name}\n```\n{{% /example %}}\n{{% /examples %}}",
"inputs": {
"description": "A collection of arguments for invoking getOidcOpenidConfig.\n",
"properties": {
@@ -32526,7 +30326,7 @@
}
},
"vault:identity/getOidcPublicKeys:getOidcPublicKeys": {
- "description": "{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst key = new vault.identity.OidcKey(\"key\", {\n allowedClientIds: [\"*\"],\n rotationPeriod: 3600,\n verificationTtl: 3600,\n});\nconst app = new vault.identity.OidcClient(\"app\", {\n key: key.name,\n redirectUris: [\n \"http://127.0.0.1:9200/v1/auth-methods/oidc:authenticate:callback\",\n \"http://127.0.0.1:8251/callback\",\n \"http://127.0.0.1:8080/callback\",\n ],\n idTokenTtl: 2400,\n accessTokenTtl: 7200,\n});\nconst provider = new vault.identity.OidcProvider(\"provider\", {allowedClientIds: [vault_identity_oidc_client.test.client_id]});\nconst publicKeys = vault.identity.getOidcPublicKeysOutput({\n name: provider.name,\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nkey = vault.identity.OidcKey(\"key\",\n allowed_client_ids=[\"*\"],\n rotation_period=3600,\n verification_ttl=3600)\napp = vault.identity.OidcClient(\"app\",\n key=key.name,\n redirect_uris=[\n \"http://127.0.0.1:9200/v1/auth-methods/oidc:authenticate:callback\",\n \"http://127.0.0.1:8251/callback\",\n \"http://127.0.0.1:8080/callback\",\n ],\n id_token_ttl=2400,\n access_token_ttl=7200)\nprovider = vault.identity.OidcProvider(\"provider\", allowed_client_ids=[vault_identity_oidc_client[\"test\"][\"client_id\"]])\npublic_keys = vault.identity.get_oidc_public_keys_output(name=provider.name)\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var key = new Vault.Identity.OidcKey(\"key\", new()\n {\n AllowedClientIds = new[]\n {\n \"*\",\n },\n RotationPeriod = 3600,\n VerificationTtl = 3600,\n });\n\n var app = new Vault.Identity.OidcClient(\"app\", new()\n {\n Key = key.Name,\n RedirectUris = new[]\n {\n \"http://127.0.0.1:9200/v1/auth-methods/oidc:authenticate:callback\",\n \"http://127.0.0.1:8251/callback\",\n \"http://127.0.0.1:8080/callback\",\n },\n IdTokenTtl = 2400,\n AccessTokenTtl = 7200,\n });\n\n var provider = new Vault.Identity.OidcProvider(\"provider\", new()\n {\n AllowedClientIds = new[]\n {\n vault_identity_oidc_client.Test.Client_id,\n },\n });\n\n var publicKeys = Vault.Identity.GetOidcPublicKeys.Invoke(new()\n {\n Name = provider.Name,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/identity\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tkey, err := identity.NewOidcKey(ctx, \"key\", \u0026identity.OidcKeyArgs{\n\t\t\tAllowedClientIds: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"*\"),\n\t\t\t},\n\t\t\tRotationPeriod: pulumi.Int(3600),\n\t\t\tVerificationTtl: pulumi.Int(3600),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = identity.NewOidcClient(ctx, \"app\", \u0026identity.OidcClientArgs{\n\t\t\tKey: key.Name,\n\t\t\tRedirectUris: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"http://127.0.0.1:9200/v1/auth-methods/oidc:authenticate:callback\"),\n\t\t\t\tpulumi.String(\"http://127.0.0.1:8251/callback\"),\n\t\t\t\tpulumi.String(\"http://127.0.0.1:8080/callback\"),\n\t\t\t},\n\t\t\tIdTokenTtl: pulumi.Int(2400),\n\t\t\tAccessTokenTtl: pulumi.Int(7200),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tprovider, err := identity.NewOidcProvider(ctx, \"provider\", \u0026identity.OidcProviderArgs{\n\t\t\tAllowedClientIds: pulumi.StringArray{\n\t\t\t\tpulumi.Any(vault_identity_oidc_client.Test.Client_id),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_ = identity.GetOidcPublicKeysOutput(ctx, identity.GetOidcPublicKeysOutputArgs{\n\t\t\tName: provider.Name,\n\t\t}, nil)\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.identity.OidcKey;\nimport com.pulumi.vault.identity.OidcKeyArgs;\nimport com.pulumi.vault.identity.OidcClient;\nimport com.pulumi.vault.identity.OidcClientArgs;\nimport com.pulumi.vault.identity.OidcProvider;\nimport com.pulumi.vault.identity.OidcProviderArgs;\nimport com.pulumi.vault.identity.IdentityFunctions;\nimport com.pulumi.vault.identity.inputs.GetOidcPublicKeysArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var key = new OidcKey(\"key\", OidcKeyArgs.builder() \n .allowedClientIds(\"*\")\n .rotationPeriod(3600)\n .verificationTtl(3600)\n .build());\n\n var app = new OidcClient(\"app\", OidcClientArgs.builder() \n .key(key.name())\n .redirectUris( \n \"http://127.0.0.1:9200/v1/auth-methods/oidc:authenticate:callback\",\n \"http://127.0.0.1:8251/callback\",\n \"http://127.0.0.1:8080/callback\")\n .idTokenTtl(2400)\n .accessTokenTtl(7200)\n .build());\n\n var provider = new OidcProvider(\"provider\", OidcProviderArgs.builder() \n .allowedClientIds(vault_identity_oidc_client.test().client_id())\n .build());\n\n final var publicKeys = IdentityFunctions.getOidcPublicKeys(GetOidcPublicKeysArgs.builder()\n .name(provider.name())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n key:\n type: vault:identity:OidcKey\n properties:\n allowedClientIds:\n - '*'\n rotationPeriod: 3600\n verificationTtl: 3600\n app:\n type: vault:identity:OidcClient\n properties:\n key: ${key.name}\n redirectUris:\n - http://127.0.0.1:9200/v1/auth-methods/oidc:authenticate:callback\n - http://127.0.0.1:8251/callback\n - http://127.0.0.1:8080/callback\n idTokenTtl: 2400\n accessTokenTtl: 7200\n provider:\n type: vault:identity:OidcProvider\n properties:\n allowedClientIds:\n - ${vault_identity_oidc_client.test.client_id}\nvariables:\n publicKeys:\n Fn::Invoke:\n Function: vault:identity:getOidcPublicKeys\n Arguments:\n name: ${provider.name}\n```\n{{% /example %}}\n{{% /examples %}}",
+ "description": "{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst key = new vault.identity.OidcKey(\"key\", {\n allowedClientIds: [\"*\"],\n rotationPeriod: 3600,\n verificationTtl: 3600,\n});\nconst app = new vault.identity.OidcClient(\"app\", {\n key: key.name,\n redirectUris: [\n \"http://127.0.0.1:9200/v1/auth-methods/oidc:authenticate:callback\",\n \"http://127.0.0.1:8251/callback\",\n \"http://127.0.0.1:8080/callback\",\n ],\n idTokenTtl: 2400,\n accessTokenTtl: 7200,\n});\nconst provider = new vault.identity.OidcProvider(\"provider\", {allowedClientIds: [vault_identity_oidc_client.test.client_id]});\nconst publicKeys = vault.identity.getOidcPublicKeysOutput({\n name: provider.name,\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nkey = vault.identity.OidcKey(\"key\",\n allowed_client_ids=[\"*\"],\n rotation_period=3600,\n verification_ttl=3600)\napp = vault.identity.OidcClient(\"app\",\n key=key.name,\n redirect_uris=[\n \"http://127.0.0.1:9200/v1/auth-methods/oidc:authenticate:callback\",\n \"http://127.0.0.1:8251/callback\",\n \"http://127.0.0.1:8080/callback\",\n ],\n id_token_ttl=2400,\n access_token_ttl=7200)\nprovider = vault.identity.OidcProvider(\"provider\", allowed_client_ids=[vault_identity_oidc_client[\"test\"][\"client_id\"]])\npublic_keys = vault.identity.get_oidc_public_keys_output(name=provider.name)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var key = new Vault.Identity.OidcKey(\"key\", new()\n {\n AllowedClientIds = new[]\n {\n \"*\",\n },\n RotationPeriod = 3600,\n VerificationTtl = 3600,\n });\n\n var app = new Vault.Identity.OidcClient(\"app\", new()\n {\n Key = key.Name,\n RedirectUris = new[]\n {\n \"http://127.0.0.1:9200/v1/auth-methods/oidc:authenticate:callback\",\n \"http://127.0.0.1:8251/callback\",\n \"http://127.0.0.1:8080/callback\",\n },\n IdTokenTtl = 2400,\n AccessTokenTtl = 7200,\n });\n\n var provider = new Vault.Identity.OidcProvider(\"provider\", new()\n {\n AllowedClientIds = new[]\n {\n vault_identity_oidc_client.Test.Client_id,\n },\n });\n\n var publicKeys = Vault.Identity.GetOidcPublicKeys.Invoke(new()\n {\n Name = provider.Name,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/identity\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tkey, err := identity.NewOidcKey(ctx, \"key\", \u0026identity.OidcKeyArgs{\n\t\t\tAllowedClientIds: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"*\"),\n\t\t\t},\n\t\t\tRotationPeriod: pulumi.Int(3600),\n\t\t\tVerificationTtl: pulumi.Int(3600),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = identity.NewOidcClient(ctx, \"app\", \u0026identity.OidcClientArgs{\n\t\t\tKey: key.Name,\n\t\t\tRedirectUris: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"http://127.0.0.1:9200/v1/auth-methods/oidc:authenticate:callback\"),\n\t\t\t\tpulumi.String(\"http://127.0.0.1:8251/callback\"),\n\t\t\t\tpulumi.String(\"http://127.0.0.1:8080/callback\"),\n\t\t\t},\n\t\t\tIdTokenTtl: pulumi.Int(2400),\n\t\t\tAccessTokenTtl: pulumi.Int(7200),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tprovider, err := identity.NewOidcProvider(ctx, \"provider\", \u0026identity.OidcProviderArgs{\n\t\t\tAllowedClientIds: pulumi.StringArray{\n\t\t\t\tvault_identity_oidc_client.Test.Client_id,\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_ = identity.GetOidcPublicKeysOutput(ctx, identity.GetOidcPublicKeysOutputArgs{\n\t\t\tName: provider.Name,\n\t\t}, nil)\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.identity.OidcKey;\nimport com.pulumi.vault.identity.OidcKeyArgs;\nimport com.pulumi.vault.identity.OidcClient;\nimport com.pulumi.vault.identity.OidcClientArgs;\nimport com.pulumi.vault.identity.OidcProvider;\nimport com.pulumi.vault.identity.OidcProviderArgs;\nimport com.pulumi.vault.identity.IdentityFunctions;\nimport com.pulumi.vault.identity.inputs.GetOidcPublicKeysArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var key = new OidcKey(\"key\", OidcKeyArgs.builder() \n .allowedClientIds(\"*\")\n .rotationPeriod(3600)\n .verificationTtl(3600)\n .build());\n\n var app = new OidcClient(\"app\", OidcClientArgs.builder() \n .key(key.name())\n .redirectUris( \n \"http://127.0.0.1:9200/v1/auth-methods/oidc:authenticate:callback\",\n \"http://127.0.0.1:8251/callback\",\n \"http://127.0.0.1:8080/callback\")\n .idTokenTtl(2400)\n .accessTokenTtl(7200)\n .build());\n\n var provider = new OidcProvider(\"provider\", OidcProviderArgs.builder() \n .allowedClientIds(vault_identity_oidc_client.test().client_id())\n .build());\n\n final var publicKeys = IdentityFunctions.getOidcPublicKeys(GetOidcPublicKeysArgs.builder()\n .name(provider.name())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n key:\n type: vault:identity:OidcKey\n properties:\n allowedClientIds:\n - '*'\n rotationPeriod: 3600\n verificationTtl: 3600\n app:\n type: vault:identity:OidcClient\n properties:\n key: ${key.name}\n redirectUris:\n - http://127.0.0.1:9200/v1/auth-methods/oidc:authenticate:callback\n - http://127.0.0.1:8251/callback\n - http://127.0.0.1:8080/callback\n idTokenTtl: 2400\n accessTokenTtl: 7200\n provider:\n type: vault:identity:OidcProvider\n properties:\n allowedClientIds:\n - ${vault_identity_oidc_client.test.client_id}\nvariables:\n publicKeys:\n fn::invoke:\n Function: vault:identity:getOidcPublicKeys\n Arguments:\n name: ${provider.name}\n```\n{{% /example %}}\n{{% /examples %}}",
"inputs": {
"description": "A collection of arguments for invoking getOidcPublicKeys.\n",
"properties": {
@@ -32578,7 +30378,7 @@
}
},
"vault:index/getAuthBackend:getAuthBackend": {
- "description": "{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst example = pulumi.output(vault.getAuthBackend({\n path: \"userpass\",\n}));\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nexample = vault.get_auth_backend(path=\"userpass\")\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = Vault.GetAuthBackend.Invoke(new()\n {\n Path = \"userpass\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := vault.LookupAuthBackend(ctx, \u0026GetAuthBackendArgs{\n\t\t\tPath: \"userpass\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.VaultFunctions;\nimport com.pulumi.vault.inputs.GetAuthBackendArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var example = VaultFunctions.getAuthBackend(GetAuthBackendArgs.builder()\n .path(\"userpass\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n example:\n Fn::Invoke:\n Function: vault:getAuthBackend\n Arguments:\n path: userpass\n```\n{{% /example %}}\n{{% /examples %}}",
+ "description": "{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst example = vault.getAuthBackend({\n path: \"userpass\",\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nexample = vault.get_auth_backend(path=\"userpass\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = Vault.GetAuthBackend.Invoke(new()\n {\n Path = \"userpass\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := vault.LookupAuthBackend(ctx, \u0026vault.LookupAuthBackendArgs{\n\t\t\tPath: \"userpass\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.VaultFunctions;\nimport com.pulumi.vault.inputs.GetAuthBackendArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var example = VaultFunctions.getAuthBackend(GetAuthBackendArgs.builder()\n .path(\"userpass\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n example:\n fn::invoke:\n Function: vault:getAuthBackend\n Arguments:\n path: userpass\n```\n{{% /example %}}\n{{% /examples %}}",
"inputs": {
"description": "A collection of arguments for invoking getAuthBackend.\n",
"properties": {
@@ -32653,8 +30453,60 @@
]
}
},
+ "vault:index/getAuthBackends:getAuthBackends": {
+ "inputs": {
+ "description": "A collection of arguments for invoking getAuthBackends.\n",
+ "properties": {
+ "namespace": {
+ "type": "string",
+ "description": "The namespace of the target resource.\nThe value should not contain leading or trailing forward slashes.\nThe `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault#namespace).\n*Available only for Vault Enterprise*.\n",
+ "willReplaceOnChanges": true
+ },
+ "type": {
+ "type": "string",
+ "description": "The name of the auth method type. Allows filtering of backends returned by type.\n"
+ }
+ },
+ "type": "object"
+ },
+ "outputs": {
+ "description": "A collection of values returned by getAuthBackends.\n",
+ "properties": {
+ "accessors": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "The accessor IDs for the auth methods.\n"
+ },
+ "id": {
+ "type": "string",
+ "description": "The provider-assigned unique ID for this managed resource.\n"
+ },
+ "namespace": {
+ "type": "string"
+ },
+ "paths": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "List of auth backend mount points.\n"
+ },
+ "type": {
+ "type": "string"
+ }
+ },
+ "type": "object",
+ "required": [
+ "accessors",
+ "paths",
+ "id"
+ ]
+ }
+ },
"vault:index/getNomadAccessToken:getNomadAccessToken": {
- "description": "{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst config = new vault.NomadSecretBackend(\"config\", {\n backend: \"nomad\",\n description: \"test description\",\n defaultLeaseTtlSeconds: 3600,\n maxLeaseTtlSeconds: 7200,\n address: \"https://127.0.0.1:4646\",\n token: \"ae20ceaa-...\",\n});\nconst test = new vault.NomadSecretRole(\"test\", {\n backend: config.backend,\n role: \"test\",\n type: \"client\",\n policies: [\"readonly\"],\n});\nconst token = pulumi.all([config.backend, test.role]).apply(([backend, role]) =\u003e vault.getNomadAccessTokenOutput({\n backend: backend,\n role: role,\n}));\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nconfig = vault.NomadSecretBackend(\"config\",\n backend=\"nomad\",\n description=\"test description\",\n default_lease_ttl_seconds=3600,\n max_lease_ttl_seconds=7200,\n address=\"https://127.0.0.1:4646\",\n token=\"ae20ceaa-...\")\ntest = vault.NomadSecretRole(\"test\",\n backend=config.backend,\n role=\"test\",\n type=\"client\",\n policies=[\"readonly\"])\ntoken = pulumi.Output.all(config.backend, test.role).apply(lambda backend, role: vault.get_nomad_access_token_output(backend=backend,\n role=role))\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Vault.NomadSecretBackend(\"config\", new()\n {\n Backend = \"nomad\",\n Description = \"test description\",\n DefaultLeaseTtlSeconds = 3600,\n MaxLeaseTtlSeconds = 7200,\n Address = \"https://127.0.0.1:4646\",\n Token = \"ae20ceaa-...\",\n });\n\n var test = new Vault.NomadSecretRole(\"test\", new()\n {\n Backend = config.Backend,\n Role = \"test\",\n Type = \"client\",\n Policies = new[]\n {\n \"readonly\",\n },\n });\n\n var token = Vault.GetNomadAccessToken.Invoke(new()\n {\n Backend = config.Backend,\n Role = test.Role,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tconfig, err := vault.NewNomadSecretBackend(ctx, \"config\", \u0026vault.NomadSecretBackendArgs{\n\t\t\tBackend: pulumi.String(\"nomad\"),\n\t\t\tDescription: pulumi.String(\"test description\"),\n\t\t\tDefaultLeaseTtlSeconds: pulumi.Int(3600),\n\t\t\tMaxLeaseTtlSeconds: pulumi.Int(7200),\n\t\t\tAddress: pulumi.String(\"https://127.0.0.1:4646\"),\n\t\t\tToken: pulumi.String(\"ae20ceaa-...\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\ttest, err := vault.NewNomadSecretRole(ctx, \"test\", \u0026vault.NomadSecretRoleArgs{\n\t\t\tBackend: config.Backend,\n\t\t\tRole: pulumi.String(\"test\"),\n\t\t\tType: pulumi.String(\"client\"),\n\t\t\tPolicies: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"readonly\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.NomadSecretBackend;\nimport com.pulumi.vault.NomadSecretBackendArgs;\nimport com.pulumi.vault.NomadSecretRole;\nimport com.pulumi.vault.NomadSecretRoleArgs;\nimport com.pulumi.vault.VaultFunctions;\nimport com.pulumi.vault.inputs.GetNomadAccessTokenArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var config = new NomadSecretBackend(\"config\", NomadSecretBackendArgs.builder() \n .backend(\"nomad\")\n .description(\"test description\")\n .defaultLeaseTtlSeconds(\"3600\")\n .maxLeaseTtlSeconds(\"7200\")\n .address(\"https://127.0.0.1:4646\")\n .token(\"ae20ceaa-...\")\n .build());\n\n var test = new NomadSecretRole(\"test\", NomadSecretRoleArgs.builder() \n .backend(config.backend())\n .role(\"test\")\n .type(\"client\")\n .policies(\"readonly\")\n .build());\n\n final var token = VaultFunctions.getNomadAccessToken(GetNomadAccessTokenArgs.builder()\n .backend(config.backend())\n .role(test.role())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n config:\n type: vault:NomadSecretBackend\n properties:\n backend: nomad\n description: test description\n defaultLeaseTtlSeconds: 3600\n maxLeaseTtlSeconds: 7200\n address: https://127.0.0.1:4646\n token: ae20ceaa-...\n test:\n type: vault:NomadSecretRole\n properties:\n backend: ${config.backend}\n role: test\n type: client\n policies:\n - readonly\nvariables:\n token:\n Fn::Invoke:\n Function: vault:getNomadAccessToken\n Arguments:\n backend: ${config.backend}\n role: ${test.role}\n```\n{{% /example %}}\n{{% /examples %}}",
+ "description": "{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst config = new vault.NomadSecretBackend(\"config\", {\n backend: \"nomad\",\n description: \"test description\",\n defaultLeaseTtlSeconds: 3600,\n maxLeaseTtlSeconds: 7200,\n address: \"https://127.0.0.1:4646\",\n token: \"ae20ceaa-...\",\n});\nconst test = new vault.NomadSecretRole(\"test\", {\n backend: config.backend,\n role: \"test\",\n type: \"client\",\n policies: [\"readonly\"],\n});\nconst token = pulumi.all([config.backend, test.role]).apply(([backend, role]) =\u003e vault.getNomadAccessTokenOutput({\n backend: backend,\n role: role,\n}));\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nconfig = vault.NomadSecretBackend(\"config\",\n backend=\"nomad\",\n description=\"test description\",\n default_lease_ttl_seconds=3600,\n max_lease_ttl_seconds=7200,\n address=\"https://127.0.0.1:4646\",\n token=\"ae20ceaa-...\")\ntest = vault.NomadSecretRole(\"test\",\n backend=config.backend,\n role=\"test\",\n type=\"client\",\n policies=[\"readonly\"])\ntoken = pulumi.Output.all(config.backend, test.role).apply(lambda backend, role: vault.get_nomad_access_token_output(backend=backend,\n role=role))\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Vault.NomadSecretBackend(\"config\", new()\n {\n Backend = \"nomad\",\n Description = \"test description\",\n DefaultLeaseTtlSeconds = 3600,\n MaxLeaseTtlSeconds = 7200,\n Address = \"https://127.0.0.1:4646\",\n Token = \"ae20ceaa-...\",\n });\n\n var test = new Vault.NomadSecretRole(\"test\", new()\n {\n Backend = config.Backend,\n Role = \"test\",\n Type = \"client\",\n Policies = new[]\n {\n \"readonly\",\n },\n });\n\n var token = Vault.GetNomadAccessToken.Invoke(new()\n {\n Backend = config.Backend,\n Role = test.Role,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tconfig, err := vault.NewNomadSecretBackend(ctx, \"config\", \u0026vault.NomadSecretBackendArgs{\n\t\t\tBackend: pulumi.String(\"nomad\"),\n\t\t\tDescription: pulumi.String(\"test description\"),\n\t\t\tDefaultLeaseTtlSeconds: pulumi.Int(3600),\n\t\t\tMaxLeaseTtlSeconds: pulumi.Int(7200),\n\t\t\tAddress: pulumi.String(\"https://127.0.0.1:4646\"),\n\t\t\tToken: pulumi.String(\"ae20ceaa-...\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\ttest, err := vault.NewNomadSecretRole(ctx, \"test\", \u0026vault.NomadSecretRoleArgs{\n\t\t\tBackend: config.Backend,\n\t\t\tRole: pulumi.String(\"test\"),\n\t\t\tType: pulumi.String(\"client\"),\n\t\t\tPolicies: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"readonly\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_ = pulumi.All(config.Backend, test.Role).ApplyT(func(_args []interface{}) (vault.GetNomadAccessTokenResult, error) {\n\t\t\tbackend := _args[0].(*string)\n\t\t\trole := _args[1].(string)\n\t\t\treturn vault.GetNomadAccessTokenOutput(ctx, vault.GetNomadAccessTokenOutputArgs{\n\t\t\t\tBackend: backend,\n\t\t\t\tRole: role,\n\t\t\t}, nil), nil\n\t\t}).(vault.GetNomadAccessTokenResultOutput)\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.NomadSecretBackend;\nimport com.pulumi.vault.NomadSecretBackendArgs;\nimport com.pulumi.vault.NomadSecretRole;\nimport com.pulumi.vault.NomadSecretRoleArgs;\nimport com.pulumi.vault.VaultFunctions;\nimport com.pulumi.vault.inputs.GetNomadAccessTokenArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var config = new NomadSecretBackend(\"config\", NomadSecretBackendArgs.builder() \n .backend(\"nomad\")\n .description(\"test description\")\n .defaultLeaseTtlSeconds(\"3600\")\n .maxLeaseTtlSeconds(\"7200\")\n .address(\"https://127.0.0.1:4646\")\n .token(\"ae20ceaa-...\")\n .build());\n\n var test = new NomadSecretRole(\"test\", NomadSecretRoleArgs.builder() \n .backend(config.backend())\n .role(\"test\")\n .type(\"client\")\n .policies(\"readonly\")\n .build());\n\n final var token = VaultFunctions.getNomadAccessToken(GetNomadAccessTokenArgs.builder()\n .backend(config.backend())\n .role(test.role())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n config:\n type: vault:NomadSecretBackend\n properties:\n backend: nomad\n description: test description\n defaultLeaseTtlSeconds: '3600'\n maxLeaseTtlSeconds: '7200'\n address: https://127.0.0.1:4646\n token: ae20ceaa-...\n test:\n type: vault:NomadSecretRole\n properties:\n backend: ${config.backend}\n role: test\n type: client\n policies:\n - readonly\nvariables:\n token:\n fn::invoke:\n Function: vault:getNomadAccessToken\n Arguments:\n backend: ${config.backend}\n role: ${test.role}\n```\n{{% /example %}}\n{{% /examples %}}",
"inputs": {
"description": "A collection of arguments for invoking getNomadAccessToken.\n",
"properties": {
@@ -32716,7 +30568,7 @@
}
},
"vault:index/getPolicyDocument:getPolicyDocument": {
- "description": "This is a data source which can be used to construct a HCL representation of an Vault policy document, for use with resources which expect policy documents, such as the `vault.Policy` resource.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst examplePolicyDocument = vault.getPolicyDocument({\n rules: [{\n path: \"secret/*\",\n capabilities: [\n \"create\",\n \"read\",\n \"update\",\n \"delete\",\n \"list\",\n ],\n description: \"allow all on secrets\",\n }],\n});\nconst examplePolicy = new vault.Policy(\"examplePolicy\", {policy: examplePolicyDocument.then(examplePolicyDocument =\u003e examplePolicyDocument.hcl)});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nexample_policy_document = vault.get_policy_document(rules=[vault.GetPolicyDocumentRuleArgs(\n path=\"secret/*\",\n capabilities=[\n \"create\",\n \"read\",\n \"update\",\n \"delete\",\n \"list\",\n ],\n description=\"allow all on secrets\",\n)])\nexample_policy = vault.Policy(\"examplePolicy\", policy=example_policy_document.hcl)\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var examplePolicyDocument = Vault.GetPolicyDocument.Invoke(new()\n {\n Rules = new[]\n {\n new Vault.Inputs.GetPolicyDocumentRuleInputArgs\n {\n Path = \"secret/*\",\n Capabilities = new[]\n {\n \"create\",\n \"read\",\n \"update\",\n \"delete\",\n \"list\",\n },\n Description = \"allow all on secrets\",\n },\n },\n });\n\n var examplePolicy = new Vault.Policy(\"examplePolicy\", new()\n {\n PolicyContents = examplePolicyDocument.Apply(getPolicyDocumentResult =\u003e getPolicyDocumentResult.Hcl),\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texamplePolicyDocument, err := vault.GetPolicyDocument(ctx, \u0026GetPolicyDocumentArgs{\n\t\t\tRules: []GetPolicyDocumentRule{\n\t\t\t\tGetPolicyDocumentRule{\n\t\t\t\t\tPath: \"secret/*\",\n\t\t\t\t\tCapabilities: []string{\n\t\t\t\t\t\t\"create\",\n\t\t\t\t\t\t\"read\",\n\t\t\t\t\t\t\"update\",\n\t\t\t\t\t\t\"delete\",\n\t\t\t\t\t\t\"list\",\n\t\t\t\t\t},\n\t\t\t\t\tDescription: pulumi.StringRef(\"allow all on secrets\"),\n\t\t\t\t},\n\t\t\t},\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = vault.NewPolicy(ctx, \"examplePolicy\", \u0026vault.PolicyArgs{\n\t\t\tPolicy: pulumi.String(examplePolicyDocument.Hcl),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.VaultFunctions;\nimport com.pulumi.vault.inputs.GetPolicyDocumentArgs;\nimport com.pulumi.vault.Policy;\nimport com.pulumi.vault.PolicyArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var examplePolicyDocument = VaultFunctions.getPolicyDocument(GetPolicyDocumentArgs.builder()\n .rules(GetPolicyDocumentRuleArgs.builder()\n .path(\"secret/*\")\n .capabilities( \n \"create\",\n \"read\",\n \"update\",\n \"delete\",\n \"list\")\n .description(\"allow all on secrets\")\n .build())\n .build());\n\n var examplePolicy = new Policy(\"examplePolicy\", PolicyArgs.builder() \n .policy(examplePolicyDocument.applyValue(getPolicyDocumentResult -\u003e getPolicyDocumentResult.hcl()))\n .build());\n\n }\n}\n```\n```yaml\nresources:\n examplePolicy:\n type: vault:Policy\n properties:\n policy: ${examplePolicyDocument.hcl}\nvariables:\n examplePolicyDocument:\n Fn::Invoke:\n Function: vault:getPolicyDocument\n Arguments:\n rules:\n - path: secret/*\n capabilities:\n - create\n - read\n - update\n - delete\n - list\n description: allow all on secrets\n```\n{{% /example %}}\n{{% /examples %}}",
+ "description": "This is a data source which can be used to construct a HCL representation of an Vault policy document, for use with resources which expect policy documents, such as the `vault.Policy` resource.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst examplePolicyDocument = vault.getPolicyDocument({\n rules: [{\n path: \"secret/*\",\n capabilities: [\n \"create\",\n \"read\",\n \"update\",\n \"delete\",\n \"list\",\n ],\n description: \"allow all on secrets\",\n }],\n});\nconst examplePolicy = new vault.Policy(\"examplePolicy\", {policy: examplePolicyDocument.then(examplePolicyDocument =\u003e examplePolicyDocument.hcl)});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nexample_policy_document = vault.get_policy_document(rules=[vault.GetPolicyDocumentRuleArgs(\n path=\"secret/*\",\n capabilities=[\n \"create\",\n \"read\",\n \"update\",\n \"delete\",\n \"list\",\n ],\n description=\"allow all on secrets\",\n)])\nexample_policy = vault.Policy(\"examplePolicy\", policy=example_policy_document.hcl)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var examplePolicyDocument = Vault.GetPolicyDocument.Invoke(new()\n {\n Rules = new[]\n {\n new Vault.Inputs.GetPolicyDocumentRuleInputArgs\n {\n Path = \"secret/*\",\n Capabilities = new[]\n {\n \"create\",\n \"read\",\n \"update\",\n \"delete\",\n \"list\",\n },\n Description = \"allow all on secrets\",\n },\n },\n });\n\n var examplePolicy = new Vault.Policy(\"examplePolicy\", new()\n {\n PolicyContents = examplePolicyDocument.Apply(getPolicyDocumentResult =\u003e getPolicyDocumentResult.Hcl),\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texamplePolicyDocument, err := vault.GetPolicyDocument(ctx, \u0026vault.GetPolicyDocumentArgs{\n\t\t\tRules: []vault.GetPolicyDocumentRule{\n\t\t\t\t{\n\t\t\t\t\tPath: \"secret/*\",\n\t\t\t\t\tCapabilities: []string{\n\t\t\t\t\t\t\"create\",\n\t\t\t\t\t\t\"read\",\n\t\t\t\t\t\t\"update\",\n\t\t\t\t\t\t\"delete\",\n\t\t\t\t\t\t\"list\",\n\t\t\t\t\t},\n\t\t\t\t\tDescription: pulumi.StringRef(\"allow all on secrets\"),\n\t\t\t\t},\n\t\t\t},\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = vault.NewPolicy(ctx, \"examplePolicy\", \u0026vault.PolicyArgs{\n\t\t\tPolicy: *pulumi.String(examplePolicyDocument.Hcl),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.VaultFunctions;\nimport com.pulumi.vault.inputs.GetPolicyDocumentArgs;\nimport com.pulumi.vault.Policy;\nimport com.pulumi.vault.PolicyArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var examplePolicyDocument = VaultFunctions.getPolicyDocument(GetPolicyDocumentArgs.builder()\n .rules(GetPolicyDocumentRuleArgs.builder()\n .path(\"secret/*\")\n .capabilities( \n \"create\",\n \"read\",\n \"update\",\n \"delete\",\n \"list\")\n .description(\"allow all on secrets\")\n .build())\n .build());\n\n var examplePolicy = new Policy(\"examplePolicy\", PolicyArgs.builder() \n .policy(examplePolicyDocument.applyValue(getPolicyDocumentResult -\u003e getPolicyDocumentResult.hcl()))\n .build());\n\n }\n}\n```\n```yaml\nresources:\n examplePolicy:\n type: vault:Policy\n properties:\n policy: ${examplePolicyDocument.hcl}\nvariables:\n examplePolicyDocument:\n fn::invoke:\n Function: vault:getPolicyDocument\n Arguments:\n rules:\n - path: secret/*\n capabilities:\n - create\n - read\n - update\n - delete\n - list\n description: allow all on secrets\n```\n{{% /example %}}\n{{% /examples %}}",
"inputs": {
"description": "A collection of arguments for invoking getPolicyDocument.\n",
"properties": {
@@ -32762,6 +30614,103 @@
]
}
},
+ "vault:index/getRaftAutopilotState:getRaftAutopilotState": {
+ "description": "Displays the state of the raft cluster under integrated storage as seen by\nautopilot. It shows whether autopilot thinks the cluster is healthy or not, and\nhow many nodes could fail before the cluster becomes unhealthy (\"Failure\nTolerance\"). For more information, please refer to the\n[Vault documentation](https://developer.hashicorp.com/vault/api-docs/system/storage/raftautopilot#get-cluster-state).\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nexport = async () =\u003e {\n const main = await vault.getRaftAutopilotState({});\n return {\n \"failure-tolerance\": main.failureTolerance,\n };\n}\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nmain = vault.get_raft_autopilot_state()\npulumi.export(\"failure-tolerance\", main.failure_tolerance)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var main = Vault.GetRaftAutopilotState.Invoke();\n\n return new Dictionary\u003cstring, object?\u003e\n {\n [\"failure-tolerance\"] = main.Apply(getRaftAutopilotStateResult =\u003e getRaftAutopilotStateResult.FailureTolerance),\n };\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tmain, err := vault.GetRaftAutopilotState(ctx, nil, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tctx.Export(\"failure-tolerance\", main.FailureTolerance)\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.VaultFunctions;\nimport com.pulumi.vault.inputs.GetRaftAutopilotStateArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var main = VaultFunctions.getRaftAutopilotState();\n\n ctx.export(\"failure-tolerance\", main.applyValue(getRaftAutopilotStateResult -\u003e getRaftAutopilotStateResult.failureTolerance()));\n }\n}\n```\n```yaml\nvariables:\n main:\n fn::invoke:\n Function: vault:getRaftAutopilotState\n Arguments: {}\noutputs:\n failure-tolerance: ${main.failureTolerance}\n```\n{{% /example %}}\n{{% /examples %}}",
+ "inputs": {
+ "description": "A collection of arguments for invoking getRaftAutopilotState.\n",
+ "properties": {
+ "namespace": {
+ "type": "string",
+ "description": "The namespace of the target resource.\nThe value should not contain leading or trailing forward slashes.\nThe `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault#namespace).\n*Available only for Vault Enterprise*.\n",
+ "willReplaceOnChanges": true
+ }
+ },
+ "type": "object"
+ },
+ "outputs": {
+ "description": "A collection of values returned by getRaftAutopilotState.\n",
+ "properties": {
+ "failureTolerance": {
+ "type": "integer",
+ "description": "How many nodes could fail before the cluster becomes unhealthy.\n"
+ },
+ "healthy": {
+ "type": "boolean",
+ "description": "Cluster health status.\n"
+ },
+ "id": {
+ "type": "string",
+ "description": "The provider-assigned unique ID for this managed resource.\n"
+ },
+ "leader": {
+ "type": "string",
+ "description": "The current leader of Vault.\n"
+ },
+ "namespace": {
+ "type": "string"
+ },
+ "optimisticFailureTolerance": {
+ "type": "integer",
+ "description": "The cluster-level optimistic failure tolerance.\n"
+ },
+ "redundancyZones": {
+ "type": "object",
+ "additionalProperties": {
+ "$ref": "pulumi.json#/Any"
+ },
+ "description": "Additional output related to redundancy zones stored as a serialized map of strings.\n"
+ },
+ "redundancyZonesJson": {
+ "type": "string",
+ "description": "Additional output related to redundancy zones.\n"
+ },
+ "servers": {
+ "type": "object",
+ "additionalProperties": {
+ "$ref": "pulumi.json#/Any"
+ },
+ "description": "Additionaly output related to servers in the cluster stored as a serialized map of strings.\n"
+ },
+ "serversJson": {
+ "type": "string",
+ "description": "Additionaly output related to servers in the cluster.\n"
+ },
+ "upgradeInfo": {
+ "type": "object",
+ "additionalProperties": {
+ "$ref": "pulumi.json#/Any"
+ },
+ "description": "Additional output related to upgrade information stored as a serialized map of strings.\n"
+ },
+ "upgradeInfoJson": {
+ "type": "string",
+ "description": "Additional output related to upgrade information.\n"
+ },
+ "voters": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "The voters in the Vault cluster.\n"
+ }
+ },
+ "type": "object",
+ "required": [
+ "failureTolerance",
+ "healthy",
+ "leader",
+ "optimisticFailureTolerance",
+ "redundancyZones",
+ "redundancyZonesJson",
+ "servers",
+ "serversJson",
+ "upgradeInfo",
+ "upgradeInfoJson",
+ "voters",
+ "id"
+ ]
+ }
+ },
"vault:kubernetes/getAuthBackendConfig:getAuthBackendConfig": {
"description": "Reads the Role of an Kubernetes from a Vault server. See the [Vault\ndocumentation](https://www.vaultproject.io/api-docs/auth/kubernetes#read-config) for more\ninformation.\n",
"inputs": {
@@ -33020,7 +30969,7 @@
}
},
"vault:kubernetes/getServiceAccountToken:getServiceAccountToken": {
- "description": "{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as fs from \"fs\";\nimport * as vault from \"@pulumi/vault\";\n\nconst config = new vault.kubernetes.SecretBackend(\"config\", {\n path: \"kubernetes\",\n description: \"kubernetes secrets engine description\",\n kubernetesHost: \"https://127.0.0.1:61233\",\n kubernetesCaCert: fs.readFileSync(\"/path/to/cert\"),\n serviceAccountJwt: fs.readFileSync(\"/path/to/token\"),\n disableLocalCaJwt: false,\n});\nconst role = new vault.kubernetes.SecretBackendRole(\"role\", {\n backend: config.path,\n allowedKubernetesNamespaces: [\"*\"],\n tokenMaxTtl: 43200,\n tokenDefaultTtl: 21600,\n serviceAccountName: \"test-service-account-with-generated-token\",\n extraLabels: {\n id: \"abc123\",\n name: \"some_name\",\n },\n extraAnnotations: {\n env: \"development\",\n location: \"earth\",\n },\n});\nconst token = vault.kubernetes.getServiceAccountTokenOutput({\n backend: config.path,\n role: role.name,\n kubernetesNamespace: \"test\",\n clusterRoleBinding: false,\n ttl: \"1h\",\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nconfig = vault.kubernetes.SecretBackend(\"config\",\n path=\"kubernetes\",\n description=\"kubernetes secrets engine description\",\n kubernetes_host=\"https://127.0.0.1:61233\",\n kubernetes_ca_cert=(lambda path: open(path).read())(\"/path/to/cert\"),\n service_account_jwt=(lambda path: open(path).read())(\"/path/to/token\"),\n disable_local_ca_jwt=False)\nrole = vault.kubernetes.SecretBackendRole(\"role\",\n backend=config.path,\n allowed_kubernetes_namespaces=[\"*\"],\n token_max_ttl=43200,\n token_default_ttl=21600,\n service_account_name=\"test-service-account-with-generated-token\",\n extra_labels={\n \"id\": \"abc123\",\n \"name\": \"some_name\",\n },\n extra_annotations={\n \"env\": \"development\",\n \"location\": \"earth\",\n })\ntoken = vault.kubernetes.get_service_account_token_output(backend=config.path,\n role=role.name,\n kubernetes_namespace=\"test\",\n cluster_role_binding=False,\n ttl=\"1h\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.IO;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Vault.Kubernetes.SecretBackend(\"config\", new()\n {\n Path = \"kubernetes\",\n Description = \"kubernetes secrets engine description\",\n KubernetesHost = \"https://127.0.0.1:61233\",\n KubernetesCaCert = File.ReadAllText(\"/path/to/cert\"),\n ServiceAccountJwt = File.ReadAllText(\"/path/to/token\"),\n DisableLocalCaJwt = false,\n });\n\n var role = new Vault.Kubernetes.SecretBackendRole(\"role\", new()\n {\n Backend = config.Path,\n AllowedKubernetesNamespaces = new[]\n {\n \"*\",\n },\n TokenMaxTtl = 43200,\n TokenDefaultTtl = 21600,\n ServiceAccountName = \"test-service-account-with-generated-token\",\n ExtraLabels = \n {\n { \"id\", \"abc123\" },\n { \"name\", \"some_name\" },\n },\n ExtraAnnotations = \n {\n { \"env\", \"development\" },\n { \"location\", \"earth\" },\n },\n });\n\n var token = Vault.Kubernetes.GetServiceAccountToken.Invoke(new()\n {\n Backend = config.Path,\n Role = role.Name,\n KubernetesNamespace = \"test\",\n ClusterRoleBinding = false,\n Ttl = \"1h\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"io/ioutil\"\n\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/kubernetes\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc readFileOrPanic(path string) pulumi.StringPtrInput {\n\tdata, err := ioutil.ReadFile(path)\n\tif err != nil {\n\t\tpanic(err.Error())\n\t}\n\treturn pulumi.String(string(data))\n}\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tconfig, err := kubernetes.NewSecretBackend(ctx, \"config\", \u0026kubernetes.SecretBackendArgs{\n\t\t\tPath: pulumi.String(\"kubernetes\"),\n\t\t\tDescription: pulumi.String(\"kubernetes secrets engine description\"),\n\t\t\tKubernetesHost: pulumi.String(\"https://127.0.0.1:61233\"),\n\t\t\tKubernetesCaCert: readFileOrPanic(\"/path/to/cert\"),\n\t\t\tServiceAccountJwt: readFileOrPanic(\"/path/to/token\"),\n\t\t\tDisableLocalCaJwt: pulumi.Bool(false),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\trole, err := kubernetes.NewSecretBackendRole(ctx, \"role\", \u0026kubernetes.SecretBackendRoleArgs{\n\t\t\tBackend: config.Path,\n\t\t\tAllowedKubernetesNamespaces: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"*\"),\n\t\t\t},\n\t\t\tTokenMaxTtl: pulumi.Int(43200),\n\t\t\tTokenDefaultTtl: pulumi.Int(21600),\n\t\t\tServiceAccountName: pulumi.String(\"test-service-account-with-generated-token\"),\n\t\t\tExtraLabels: pulumi.StringMap{\n\t\t\t\t\"id\": pulumi.String(\"abc123\"),\n\t\t\t\t\"name\": pulumi.String(\"some_name\"),\n\t\t\t},\n\t\t\tExtraAnnotations: pulumi.StringMap{\n\t\t\t\t\"env\": pulumi.String(\"development\"),\n\t\t\t\t\"location\": pulumi.String(\"earth\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_ = kubernetes.GetServiceAccountTokenOutput(ctx, kubernetes.GetServiceAccountTokenOutputArgs{\n\t\t\tBackend: config.Path,\n\t\t\tRole: role.Name,\n\t\t\tKubernetesNamespace: pulumi.String(\"test\"),\n\t\t\tClusterRoleBinding: pulumi.Bool(false),\n\t\t\tTtl: pulumi.String(\"1h\"),\n\t\t}, nil)\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.kubernetes.SecretBackend;\nimport com.pulumi.vault.kubernetes.SecretBackendArgs;\nimport com.pulumi.vault.kubernetes.SecretBackendRole;\nimport com.pulumi.vault.kubernetes.SecretBackendRoleArgs;\nimport com.pulumi.vault.kubernetes.KubernetesFunctions;\nimport com.pulumi.vault.kubernetes.inputs.GetServiceAccountTokenArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var config = new SecretBackend(\"config\", SecretBackendArgs.builder() \n .path(\"kubernetes\")\n .description(\"kubernetes secrets engine description\")\n .kubernetesHost(\"https://127.0.0.1:61233\")\n .kubernetesCaCert(Files.readString(Paths.get(\"/path/to/cert\")))\n .serviceAccountJwt(Files.readString(Paths.get(\"/path/to/token\")))\n .disableLocalCaJwt(false)\n .build());\n\n var role = new SecretBackendRole(\"role\", SecretBackendRoleArgs.builder() \n .backend(config.path())\n .allowedKubernetesNamespaces(\"*\")\n .tokenMaxTtl(43200)\n .tokenDefaultTtl(21600)\n .serviceAccountName(\"test-service-account-with-generated-token\")\n .extraLabels(Map.ofEntries(\n Map.entry(\"id\", \"abc123\"),\n Map.entry(\"name\", \"some_name\")\n ))\n .extraAnnotations(Map.ofEntries(\n Map.entry(\"env\", \"development\"),\n Map.entry(\"location\", \"earth\")\n ))\n .build());\n\n final var token = KubernetesFunctions.getServiceAccountToken(GetServiceAccountTokenArgs.builder()\n .backend(config.path())\n .role(role.name())\n .kubernetesNamespace(\"test\")\n .clusterRoleBinding(false)\n .ttl(\"1h\")\n .build());\n\n }\n}\n```\n{{% /example %}}\n{{% /examples %}}",
+ "description": "{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as fs from \"fs\";\nimport * as vault from \"@pulumi/vault\";\n\nconst config = new vault.kubernetes.SecretBackend(\"config\", {\n path: \"kubernetes\",\n description: \"kubernetes secrets engine description\",\n kubernetesHost: \"https://127.0.0.1:61233\",\n kubernetesCaCert: fs.readFileSync(\"/path/to/cert\"),\n serviceAccountJwt: fs.readFileSync(\"/path/to/token\"),\n disableLocalCaJwt: false,\n});\nconst role = new vault.kubernetes.SecretBackendRole(\"role\", {\n backend: config.path,\n allowedKubernetesNamespaces: [\"*\"],\n tokenMaxTtl: 43200,\n tokenDefaultTtl: 21600,\n serviceAccountName: \"test-service-account-with-generated-token\",\n extraLabels: {\n id: \"abc123\",\n name: \"some_name\",\n },\n extraAnnotations: {\n env: \"development\",\n location: \"earth\",\n },\n});\nconst token = vault.kubernetes.getServiceAccountTokenOutput({\n backend: config.path,\n role: role.name,\n kubernetesNamespace: \"test\",\n clusterRoleBinding: false,\n ttl: \"1h\",\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\nconfig = vault.kubernetes.SecretBackend(\"config\",\n path=\"kubernetes\",\n description=\"kubernetes secrets engine description\",\n kubernetes_host=\"https://127.0.0.1:61233\",\n kubernetes_ca_cert=(lambda path: open(path).read())(\"/path/to/cert\"),\n service_account_jwt=(lambda path: open(path).read())(\"/path/to/token\"),\n disable_local_ca_jwt=False)\nrole = vault.kubernetes.SecretBackendRole(\"role\",\n backend=config.path,\n allowed_kubernetes_namespaces=[\"*\"],\n token_max_ttl=43200,\n token_default_ttl=21600,\n service_account_name=\"test-service-account-with-generated-token\",\n extra_labels={\n \"id\": \"abc123\",\n \"name\": \"some_name\",\n },\n extra_annotations={\n \"env\": \"development\",\n \"location\": \"earth\",\n })\ntoken = vault.kubernetes.get_service_account_token_output(backend=config.path,\n role=role.name,\n kubernetes_namespace=\"test\",\n cluster_role_binding=False,\n ttl=\"1h\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.IO;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Vault.Kubernetes.SecretBackend(\"config\", new()\n {\n Path = \"kubernetes\",\n Description = \"kubernetes secrets engine description\",\n KubernetesHost = \"https://127.0.0.1:61233\",\n KubernetesCaCert = File.ReadAllText(\"/path/to/cert\"),\n ServiceAccountJwt = File.ReadAllText(\"/path/to/token\"),\n DisableLocalCaJwt = false,\n });\n\n var role = new Vault.Kubernetes.SecretBackendRole(\"role\", new()\n {\n Backend = config.Path,\n AllowedKubernetesNamespaces = new[]\n {\n \"*\",\n },\n TokenMaxTtl = 43200,\n TokenDefaultTtl = 21600,\n ServiceAccountName = \"test-service-account-with-generated-token\",\n ExtraLabels = \n {\n { \"id\", \"abc123\" },\n { \"name\", \"some_name\" },\n },\n ExtraAnnotations = \n {\n { \"env\", \"development\" },\n { \"location\", \"earth\" },\n },\n });\n\n var token = Vault.Kubernetes.GetServiceAccountToken.Invoke(new()\n {\n Backend = config.Path,\n Role = role.Name,\n KubernetesNamespace = \"test\",\n ClusterRoleBinding = false,\n Ttl = \"1h\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"os\"\n\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/kubernetes\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc readFileOrPanic(path string) pulumi.StringPtrInput {\n\tdata, err := os.ReadFile(path)\n\tif err != nil {\n\t\tpanic(err.Error())\n\t}\n\treturn pulumi.String(string(data))\n}\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tconfig, err := kubernetes.NewSecretBackend(ctx, \"config\", \u0026kubernetes.SecretBackendArgs{\n\t\t\tPath: pulumi.String(\"kubernetes\"),\n\t\t\tDescription: pulumi.String(\"kubernetes secrets engine description\"),\n\t\t\tKubernetesHost: pulumi.String(\"https://127.0.0.1:61233\"),\n\t\t\tKubernetesCaCert: readFileOrPanic(\"/path/to/cert\"),\n\t\t\tServiceAccountJwt: readFileOrPanic(\"/path/to/token\"),\n\t\t\tDisableLocalCaJwt: pulumi.Bool(false),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\trole, err := kubernetes.NewSecretBackendRole(ctx, \"role\", \u0026kubernetes.SecretBackendRoleArgs{\n\t\t\tBackend: config.Path,\n\t\t\tAllowedKubernetesNamespaces: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"*\"),\n\t\t\t},\n\t\t\tTokenMaxTtl: pulumi.Int(43200),\n\t\t\tTokenDefaultTtl: pulumi.Int(21600),\n\t\t\tServiceAccountName: pulumi.String(\"test-service-account-with-generated-token\"),\n\t\t\tExtraLabels: pulumi.StringMap{\n\t\t\t\t\"id\": pulumi.String(\"abc123\"),\n\t\t\t\t\"name\": pulumi.String(\"some_name\"),\n\t\t\t},\n\t\t\tExtraAnnotations: pulumi.StringMap{\n\t\t\t\t\"env\": pulumi.String(\"development\"),\n\t\t\t\t\"location\": pulumi.String(\"earth\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_ = kubernetes.GetServiceAccountTokenOutput(ctx, kubernetes.GetServiceAccountTokenOutputArgs{\n\t\t\tBackend: config.Path,\n\t\t\tRole: role.Name,\n\t\t\tKubernetesNamespace: pulumi.String(\"test\"),\n\t\t\tClusterRoleBinding: pulumi.Bool(false),\n\t\t\tTtl: pulumi.String(\"1h\"),\n\t\t}, nil)\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.kubernetes.SecretBackend;\nimport com.pulumi.vault.kubernetes.SecretBackendArgs;\nimport com.pulumi.vault.kubernetes.SecretBackendRole;\nimport com.pulumi.vault.kubernetes.SecretBackendRoleArgs;\nimport com.pulumi.vault.kubernetes.KubernetesFunctions;\nimport com.pulumi.vault.kubernetes.inputs.GetServiceAccountTokenArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var config = new SecretBackend(\"config\", SecretBackendArgs.builder() \n .path(\"kubernetes\")\n .description(\"kubernetes secrets engine description\")\n .kubernetesHost(\"https://127.0.0.1:61233\")\n .kubernetesCaCert(Files.readString(Paths.get(\"/path/to/cert\")))\n .serviceAccountJwt(Files.readString(Paths.get(\"/path/to/token\")))\n .disableLocalCaJwt(false)\n .build());\n\n var role = new SecretBackendRole(\"role\", SecretBackendRoleArgs.builder() \n .backend(config.path())\n .allowedKubernetesNamespaces(\"*\")\n .tokenMaxTtl(43200)\n .tokenDefaultTtl(21600)\n .serviceAccountName(\"test-service-account-with-generated-token\")\n .extraLabels(Map.ofEntries(\n Map.entry(\"id\", \"abc123\"),\n Map.entry(\"name\", \"some_name\")\n ))\n .extraAnnotations(Map.ofEntries(\n Map.entry(\"env\", \"development\"),\n Map.entry(\"location\", \"earth\")\n ))\n .build());\n\n final var token = KubernetesFunctions.getServiceAccountToken(GetServiceAccountTokenArgs.builder()\n .backend(config.path())\n .role(role.name())\n .kubernetesNamespace(\"test\")\n .clusterRoleBinding(false)\n .ttl(\"1h\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n config:\n type: vault:kubernetes:SecretBackend\n properties:\n path: kubernetes\n description: kubernetes secrets engine description\n kubernetesHost: https://127.0.0.1:61233\n kubernetesCaCert:\n fn::readFile: /path/to/cert\n serviceAccountJwt:\n fn::readFile: /path/to/token\n disableLocalCaJwt: false\n role:\n type: vault:kubernetes:SecretBackendRole\n properties:\n backend: ${config.path}\n allowedKubernetesNamespaces:\n - '*'\n tokenMaxTtl: 43200\n tokenDefaultTtl: 21600\n serviceAccountName: test-service-account-with-generated-token\n extraLabels:\n id: abc123\n name: some_name\n extraAnnotations:\n env: development\n location: earth\nvariables:\n token:\n fn::invoke:\n Function: vault:kubernetes:getServiceAccountToken\n Arguments:\n backend: ${config.path}\n role: ${role.name}\n kubernetesNamespace: test\n clusterRoleBinding: false\n ttl: 1h\n```\n{{% /example %}}\n{{% /examples %}}",
"inputs": {
"description": "A collection of arguments for invoking getServiceAccountToken.\n",
"properties": {
@@ -33124,7 +31073,7 @@
}
},
"vault:kv/getSecret:getSecret": {
- "description": "{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst kvv1 = new vault.Mount(\"kvv1\", {\n path: \"kvv1\",\n type: \"kv\",\n options: {\n version: \"1\",\n },\n description: \"KV Version 1 secret engine mount\",\n});\nconst secret = new vault.kv.Secret(\"secret\", {\n path: pulumi.interpolate`${kvv1.path}/secret`,\n dataJson: JSON.stringify({\n zip: \"zap\",\n foo: \"bar\",\n }),\n});\nconst secretData = vault.kv.getSecretOutput({\n path: secret.path,\n});\n```\n```python\nimport pulumi\nimport json\nimport pulumi_vault as vault\n\nkvv1 = vault.Mount(\"kvv1\",\n path=\"kvv1\",\n type=\"kv\",\n options={\n \"version\": \"1\",\n },\n description=\"KV Version 1 secret engine mount\")\nsecret = vault.kv.Secret(\"secret\",\n path=kvv1.path.apply(lambda path: f\"{path}/secret\"),\n data_json=json.dumps({\n \"zip\": \"zap\",\n \"foo\": \"bar\",\n }))\nsecret_data = vault.kv.get_secret_output(path=secret.path)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Text.Json;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var kvv1 = new Vault.Mount(\"kvv1\", new()\n {\n Path = \"kvv1\",\n Type = \"kv\",\n Options = \n {\n { \"version\", \"1\" },\n },\n Description = \"KV Version 1 secret engine mount\",\n });\n\n var secret = new Vault.Kv.Secret(\"secret\", new()\n {\n Path = kvv1.Path.Apply(path =\u003e $\"{path}/secret\"),\n DataJson = JsonSerializer.Serialize(new Dictionary\u003cstring, object?\u003e\n {\n [\"zip\"] = \"zap\",\n [\"foo\"] = \"bar\",\n }),\n });\n\n var secretData = Vault.kv.GetSecret.Invoke(new()\n {\n Path = secret.Path,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"encoding/json\"\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault\"\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/kv\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tkvv1, err := vault.NewMount(ctx, \"kvv1\", \u0026vault.MountArgs{\n\t\t\tPath: pulumi.String(\"kvv1\"),\n\t\t\tType: pulumi.String(\"kv\"),\n\t\t\tOptions: pulumi.AnyMap{\n\t\t\t\t\"version\": pulumi.Any(\"1\"),\n\t\t\t},\n\t\t\tDescription: pulumi.String(\"KV Version 1 secret engine mount\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\ttmpJSON0, err := json.Marshal(map[string]interface{}{\n\t\t\t\"zip\": \"zap\",\n\t\t\t\"foo\": \"bar\",\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tjson0 := string(tmpJSON0)\n\t\tsecret, err := kv.NewSecret(ctx, \"secret\", \u0026kv.SecretArgs{\n\t\t\tPath: kvv1.Path.ApplyT(func(path string) (string, error) {\n\t\t\t\treturn fmt.Sprintf(\"%v/secret\", path), nil\n\t\t\t}).(pulumi.StringOutput),\n\t\t\tDataJson: pulumi.String(json0),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_ = kv.LookupSecretOutput(ctx, kv.GetSecretOutputArgs{\n\t\t\tPath: secret.Path,\n\t\t}, nil)\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.Mount;\nimport com.pulumi.vault.MountArgs;\nimport com.pulumi.vault.kv.Secret;\nimport com.pulumi.vault.kv.SecretArgs;\nimport com.pulumi.vault.kv.KvFunctions;\nimport com.pulumi.vault.generic.inputs.GetSecretArgs;\nimport static com.pulumi.codegen.internal.Serialization.*;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var kvv1 = new Mount(\"kvv1\", MountArgs.builder() \n .path(\"kvv1\")\n .type(\"kv\")\n .options(Map.of(\"version\", \"1\"))\n .description(\"KV Version 1 secret engine mount\")\n .build());\n\n var secret = new Secret(\"secret\", SecretArgs.builder() \n .path(kvv1.path().applyValue(path -\u003e String.format(\"%s/secret\", path)))\n .dataJson(serializeJson(\n jsonObject(\n jsonProperty(\"zip\", \"zap\"),\n jsonProperty(\"foo\", \"bar\")\n )))\n .build());\n\n final var secretData = KvFunctions.getSecret(GetSecretArgs.builder()\n .path(secret.path())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n kvv1:\n type: vault:Mount\n properties:\n path: kvv1\n type: kv\n options:\n version: 1\n description: KV Version 1 secret engine mount\n secret:\n type: vault:kv:Secret\n properties:\n path: ${kvv1.path}/secret\n dataJson:\n Fn::ToJSON:\n zip: zap\n foo: bar\nvariables:\n secretData:\n Fn::Invoke:\n Function: vault:kv:getSecret\n Arguments:\n path: ${secret.path}\n```\n{{% /example %}}\n{{% /examples %}}\n## Required Vault Capabilities\n\nUse of this resource requires the `read` capability on the given path.\n",
+ "description": "{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst kvv1 = new vault.Mount(\"kvv1\", {\n path: \"kvv1\",\n type: \"kv\",\n options: {\n version: \"1\",\n },\n description: \"KV Version 1 secret engine mount\",\n});\nconst secret = new vault.kv.Secret(\"secret\", {\n path: pulumi.interpolate`${kvv1.path}/secret`,\n dataJson: JSON.stringify({\n zip: \"zap\",\n foo: \"bar\",\n }),\n});\nconst secretData = vault.kv.getSecretOutput({\n path: secret.path,\n});\n```\n```python\nimport pulumi\nimport json\nimport pulumi_vault as vault\n\nkvv1 = vault.Mount(\"kvv1\",\n path=\"kvv1\",\n type=\"kv\",\n options={\n \"version\": \"1\",\n },\n description=\"KV Version 1 secret engine mount\")\nsecret = vault.kv.Secret(\"secret\",\n path=kvv1.path.apply(lambda path: f\"{path}/secret\"),\n data_json=json.dumps({\n \"zip\": \"zap\",\n \"foo\": \"bar\",\n }))\nsecret_data = vault.kv.get_secret_output(path=secret.path)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text.Json;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var kvv1 = new Vault.Mount(\"kvv1\", new()\n {\n Path = \"kvv1\",\n Type = \"kv\",\n Options = \n {\n { \"version\", \"1\" },\n },\n Description = \"KV Version 1 secret engine mount\",\n });\n\n var secret = new Vault.Kv.Secret(\"secret\", new()\n {\n Path = kvv1.Path.Apply(path =\u003e $\"{path}/secret\"),\n DataJson = JsonSerializer.Serialize(new Dictionary\u003cstring, object?\u003e\n {\n [\"zip\"] = \"zap\",\n [\"foo\"] = \"bar\",\n }),\n });\n\n var secretData = Vault.kv.GetSecret.Invoke(new()\n {\n Path = secret.Path,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"encoding/json\"\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault\"\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/kv\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tkvv1, err := vault.NewMount(ctx, \"kvv1\", \u0026vault.MountArgs{\n\t\t\tPath: pulumi.String(\"kvv1\"),\n\t\t\tType: pulumi.String(\"kv\"),\n\t\t\tOptions: pulumi.Map{\n\t\t\t\t\"version\": pulumi.Any(\"1\"),\n\t\t\t},\n\t\t\tDescription: pulumi.String(\"KV Version 1 secret engine mount\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\ttmpJSON0, err := json.Marshal(map[string]interface{}{\n\t\t\t\"zip\": \"zap\",\n\t\t\t\"foo\": \"bar\",\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tjson0 := string(tmpJSON0)\n\t\tsecret, err := kv.NewSecret(ctx, \"secret\", \u0026kv.SecretArgs{\n\t\t\tPath: kvv1.Path.ApplyT(func(path string) (string, error) {\n\t\t\t\treturn fmt.Sprintf(\"%v/secret\", path), nil\n\t\t\t}).(pulumi.StringOutput),\n\t\t\tDataJson: pulumi.String(json0),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_ = kv.LookupSecretOutput(ctx, kv.GetSecretOutputArgs{\n\t\t\tPath: secret.Path,\n\t\t}, nil)\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.Mount;\nimport com.pulumi.vault.MountArgs;\nimport com.pulumi.vault.kv.Secret;\nimport com.pulumi.vault.kv.SecretArgs;\nimport com.pulumi.vault.kv.KvFunctions;\nimport com.pulumi.vault.kv.inputs.GetSecretArgs;\nimport static com.pulumi.codegen.internal.Serialization.*;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var kvv1 = new Mount(\"kvv1\", MountArgs.builder() \n .path(\"kvv1\")\n .type(\"kv\")\n .options(Map.of(\"version\", \"1\"))\n .description(\"KV Version 1 secret engine mount\")\n .build());\n\n var secret = new Secret(\"secret\", SecretArgs.builder() \n .path(kvv1.path().applyValue(path -\u003e String.format(\"%s/secret\", path)))\n .dataJson(serializeJson(\n jsonObject(\n jsonProperty(\"zip\", \"zap\"),\n jsonProperty(\"foo\", \"bar\")\n )))\n .build());\n\n final var secretData = KvFunctions.getSecret(GetSecretArgs.builder()\n .path(secret.path())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n kvv1:\n type: vault:Mount\n properties:\n path: kvv1\n type: kv\n options:\n version: '1'\n description: KV Version 1 secret engine mount\n secret:\n type: vault:kv:Secret\n properties:\n path: ${kvv1.path}/secret\n dataJson:\n fn::toJSON:\n zip: zap\n foo: bar\nvariables:\n secretData:\n fn::invoke:\n Function: vault:kv:getSecret\n Arguments:\n path: ${secret.path}\n```\n{{% /example %}}\n{{% /examples %}}\n## Required Vault Capabilities\n\nUse of this resource requires the `read` capability on the given path.\n",
"inputs": {
"description": "A collection of arguments for invoking getSecret.\n",
"properties": {
@@ -33195,251 +31144,689 @@
]
}
},
- "vault:kv/getSecretSubkeysV2:getSecretSubkeysV2": {
- "description": "{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst kvv2 = new vault.Mount(\"kvv2\", {\n path: \"kvv2\",\n type: \"kv\",\n options: {\n version: \"2\",\n },\n description: \"KV Version 2 secret engine mount\",\n});\nconst awsSecret = new vault.kv.SecretV2(\"awsSecret\", {\n mount: kvv2.path,\n dataJson: JSON.stringify({\n zip: \"zap\",\n foo: \"bar\",\n }),\n});\nconst test = vault.kv.getSecretSubkeysV2Output({\n mount: kvv2.path,\n name: awsSecret.name,\n});\n```\n```python\nimport pulumi\nimport json\nimport pulumi_vault as vault\n\nkvv2 = vault.Mount(\"kvv2\",\n path=\"kvv2\",\n type=\"kv\",\n options={\n \"version\": \"2\",\n },\n description=\"KV Version 2 secret engine mount\")\naws_secret = vault.kv.SecretV2(\"awsSecret\",\n mount=kvv2.path,\n data_json=json.dumps({\n \"zip\": \"zap\",\n \"foo\": \"bar\",\n }))\ntest = vault.kv.get_secret_subkeys_v2_output(mount=kvv2.path,\n name=aws_secret.name)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Text.Json;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var kvv2 = new Vault.Mount(\"kvv2\", new()\n {\n Path = \"kvv2\",\n Type = \"kv\",\n Options = \n {\n { \"version\", \"2\" },\n },\n Description = \"KV Version 2 secret engine mount\",\n });\n\n var awsSecret = new Vault.Kv.SecretV2(\"awsSecret\", new()\n {\n Mount = kvv2.Path,\n DataJson = JsonSerializer.Serialize(new Dictionary\u003cstring, object?\u003e\n {\n [\"zip\"] = \"zap\",\n [\"foo\"] = \"bar\",\n }),\n });\n\n var test = Vault.kv.GetSecretSubkeysV2.Invoke(new()\n {\n Mount = kvv2.Path,\n Name = awsSecret.Name,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"encoding/json\"\n\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault\"\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/kv\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tkvv2, err := vault.NewMount(ctx, \"kvv2\", \u0026vault.MountArgs{\n\t\t\tPath: pulumi.String(\"kvv2\"),\n\t\t\tType: pulumi.String(\"kv\"),\n\t\t\tOptions: pulumi.AnyMap{\n\t\t\t\t\"version\": pulumi.Any(\"2\"),\n\t\t\t},\n\t\t\tDescription: pulumi.String(\"KV Version 2 secret engine mount\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\ttmpJSON0, err := json.Marshal(map[string]interface{}{\n\t\t\t\"zip\": \"zap\",\n\t\t\t\"foo\": \"bar\",\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tjson0 := string(tmpJSON0)\n\t\tawsSecret, err := kv.NewSecretV2(ctx, \"awsSecret\", \u0026kv.SecretV2Args{\n\t\t\tMount: kvv2.Path,\n\t\t\tDataJson: pulumi.String(json0),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_ = kv.GetSecretSubkeysV2Output(ctx, kv.GetSecretSubkeysV2OutputArgs{\n\t\t\tMount: kvv2.Path,\n\t\t\tName: awsSecret.Name,\n\t\t}, nil)\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.Mount;\nimport com.pulumi.vault.MountArgs;\nimport com.pulumi.vault.kv.SecretV2;\nimport com.pulumi.vault.kv.SecretV2Args;\nimport com.pulumi.vault.kv.KvFunctions;\nimport com.pulumi.vault.kv.inputs.GetSecretSubkeysV2Args;\nimport static com.pulumi.codegen.internal.Serialization.*;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var kvv2 = new Mount(\"kvv2\", MountArgs.builder() \n .path(\"kvv2\")\n .type(\"kv\")\n .options(Map.of(\"version\", \"2\"))\n .description(\"KV Version 2 secret engine mount\")\n .build());\n\n var awsSecret = new SecretV2(\"awsSecret\", SecretV2Args.builder() \n .mount(kvv2.path())\n .dataJson(serializeJson(\n jsonObject(\n jsonProperty(\"zip\", \"zap\"),\n jsonProperty(\"foo\", \"bar\")\n )))\n .build());\n\n final var test = KvFunctions.getSecretSubkeysV2(GetSecretSubkeysV2Args.builder()\n .mount(kvv2.path())\n .name(awsSecret.name())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n kvv2:\n type: vault:Mount\n properties:\n path: kvv2\n type: kv\n options:\n version: 2\n description: KV Version 2 secret engine mount\n awsSecret:\n type: vault:kv:SecretV2\n properties:\n mount: ${kvv2.path}\n dataJson:\n Fn::ToJSON:\n zip: zap\n foo: bar\nvariables:\n test:\n Fn::Invoke:\n Function: vault:kv:getSecretSubkeysV2\n Arguments:\n mount: ${kvv2.path}\n name: ${awsSecret.name}\n```\n{{% /example %}}\n{{% /examples %}}\n## Required Vault Capabilities\n\nUse of this resource requires the `read` capability on the given path.\n",
+ "vault:kv/getSecretSubkeysV2:getSecretSubkeysV2": {
+ "description": "{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst kvv2 = new vault.Mount(\"kvv2\", {\n path: \"kvv2\",\n type: \"kv\",\n options: {\n version: \"2\",\n },\n description: \"KV Version 2 secret engine mount\",\n});\nconst awsSecret = new vault.kv.SecretV2(\"awsSecret\", {\n mount: kvv2.path,\n dataJson: JSON.stringify({\n zip: \"zap\",\n foo: \"bar\",\n }),\n});\nconst test = vault.kv.getSecretSubkeysV2Output({\n mount: kvv2.path,\n name: awsSecret.name,\n});\n```\n```python\nimport pulumi\nimport json\nimport pulumi_vault as vault\n\nkvv2 = vault.Mount(\"kvv2\",\n path=\"kvv2\",\n type=\"kv\",\n options={\n \"version\": \"2\",\n },\n description=\"KV Version 2 secret engine mount\")\naws_secret = vault.kv.SecretV2(\"awsSecret\",\n mount=kvv2.path,\n data_json=json.dumps({\n \"zip\": \"zap\",\n \"foo\": \"bar\",\n }))\ntest = vault.kv.get_secret_subkeys_v2_output(mount=kvv2.path,\n name=aws_secret.name)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text.Json;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var kvv2 = new Vault.Mount(\"kvv2\", new()\n {\n Path = \"kvv2\",\n Type = \"kv\",\n Options = \n {\n { \"version\", \"2\" },\n },\n Description = \"KV Version 2 secret engine mount\",\n });\n\n var awsSecret = new Vault.Kv.SecretV2(\"awsSecret\", new()\n {\n Mount = kvv2.Path,\n DataJson = JsonSerializer.Serialize(new Dictionary\u003cstring, object?\u003e\n {\n [\"zip\"] = \"zap\",\n [\"foo\"] = \"bar\",\n }),\n });\n\n var test = Vault.kv.GetSecretSubkeysV2.Invoke(new()\n {\n Mount = kvv2.Path,\n Name = awsSecret.Name,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"encoding/json\"\n\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault\"\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/kv\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tkvv2, err := vault.NewMount(ctx, \"kvv2\", \u0026vault.MountArgs{\n\t\t\tPath: pulumi.String(\"kvv2\"),\n\t\t\tType: pulumi.String(\"kv\"),\n\t\t\tOptions: pulumi.Map{\n\t\t\t\t\"version\": pulumi.Any(\"2\"),\n\t\t\t},\n\t\t\tDescription: pulumi.String(\"KV Version 2 secret engine mount\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\ttmpJSON0, err := json.Marshal(map[string]interface{}{\n\t\t\t\"zip\": \"zap\",\n\t\t\t\"foo\": \"bar\",\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tjson0 := string(tmpJSON0)\n\t\tawsSecret, err := kv.NewSecretV2(ctx, \"awsSecret\", \u0026kv.SecretV2Args{\n\t\t\tMount: kvv2.Path,\n\t\t\tDataJson: pulumi.String(json0),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_ = kv.GetSecretSubkeysV2Output(ctx, kv.GetSecretSubkeysV2OutputArgs{\n\t\t\tMount: kvv2.Path,\n\t\t\tName: awsSecret.Name,\n\t\t}, nil)\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.Mount;\nimport com.pulumi.vault.MountArgs;\nimport com.pulumi.vault.kv.SecretV2;\nimport com.pulumi.vault.kv.SecretV2Args;\nimport com.pulumi.vault.kv.KvFunctions;\nimport com.pulumi.vault.kv.inputs.GetSecretSubkeysV2Args;\nimport static com.pulumi.codegen.internal.Serialization.*;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var kvv2 = new Mount(\"kvv2\", MountArgs.builder() \n .path(\"kvv2\")\n .type(\"kv\")\n .options(Map.of(\"version\", \"2\"))\n .description(\"KV Version 2 secret engine mount\")\n .build());\n\n var awsSecret = new SecretV2(\"awsSecret\", SecretV2Args.builder() \n .mount(kvv2.path())\n .dataJson(serializeJson(\n jsonObject(\n jsonProperty(\"zip\", \"zap\"),\n jsonProperty(\"foo\", \"bar\")\n )))\n .build());\n\n final var test = KvFunctions.getSecretSubkeysV2(GetSecretSubkeysV2Args.builder()\n .mount(kvv2.path())\n .name(awsSecret.name())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n kvv2:\n type: vault:Mount\n properties:\n path: kvv2\n type: kv\n options:\n version: '2'\n description: KV Version 2 secret engine mount\n awsSecret:\n type: vault:kv:SecretV2\n properties:\n mount: ${kvv2.path}\n dataJson:\n fn::toJSON:\n zip: zap\n foo: bar\nvariables:\n test:\n fn::invoke:\n Function: vault:kv:getSecretSubkeysV2\n Arguments:\n mount: ${kvv2.path}\n name: ${awsSecret.name}\n```\n{{% /example %}}\n{{% /examples %}}\n## Required Vault Capabilities\n\nUse of this resource requires the `read` capability on the given path.\n",
+ "inputs": {
+ "description": "A collection of arguments for invoking getSecretSubkeysV2.\n",
+ "properties": {
+ "depth": {
+ "type": "integer",
+ "description": "Specifies the deepest nesting level to provide in the output.\nIf non-zero, keys that reside at the specified depth value will be\nartificially treated as leaves and will thus be `null` even if further\nunderlying sub-keys exist.\n"
+ },
+ "mount": {
+ "type": "string",
+ "description": "Path where KV-V2 engine is mounted.\n"
+ },
+ "name": {
+ "type": "string",
+ "description": "Full name of the secret. For a nested secret\nthe name is the nested path excluding the mount and data\nprefix. For example, for a secret at `kvv2/data/foo/bar/baz`\nthe name is `foo/bar/baz`.\n"
+ },
+ "namespace": {
+ "type": "string",
+ "description": "The namespace of the target resource.\nThe value should not contain leading or trailing forward slashes.\nThe `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault#namespace).\n*Available only for Vault Enterprise*.\n",
+ "willReplaceOnChanges": true
+ },
+ "version": {
+ "type": "integer",
+ "description": "Specifies the version to return. If not \nset the latest version is returned.\n"
+ }
+ },
+ "type": "object",
+ "required": [
+ "mount",
+ "name"
+ ]
+ },
+ "outputs": {
+ "description": "A collection of values returned by getSecretSubkeysV2.\n",
+ "properties": {
+ "data": {
+ "type": "object",
+ "additionalProperties": {
+ "$ref": "pulumi.json#/Any"
+ },
+ "description": "Subkeys for the KV-V2 secret stored as a serialized map of strings.\n",
+ "secret": true
+ },
+ "dataJson": {
+ "type": "string",
+ "description": "Subkeys for the KV-V2 secret read from Vault.\n"
+ },
+ "depth": {
+ "type": "integer"
+ },
+ "id": {
+ "type": "string",
+ "description": "The provider-assigned unique ID for this managed resource.\n"
+ },
+ "mount": {
+ "type": "string"
+ },
+ "name": {
+ "type": "string"
+ },
+ "namespace": {
+ "type": "string"
+ },
+ "path": {
+ "type": "string",
+ "description": "Full path where the KV-V2 secrets are listed.\n"
+ },
+ "version": {
+ "type": "integer"
+ }
+ },
+ "type": "object",
+ "required": [
+ "data",
+ "dataJson",
+ "mount",
+ "name",
+ "path",
+ "id"
+ ]
+ }
+ },
+ "vault:kv/getSecretV2:getSecretV2": {
+ "description": "## Required Vault Capabilities\n\nUse of this resource requires the `read` capability on the given path.\n",
+ "inputs": {
+ "description": "A collection of arguments for invoking getSecretV2.\n",
+ "properties": {
+ "mount": {
+ "type": "string",
+ "description": "Path where KV-V2 engine is mounted.\n"
+ },
+ "name": {
+ "type": "string",
+ "description": "Full name of the secret. For a nested secret\nthe name is the nested path excluding the mount and data\nprefix. For example, for a secret at `kvv2/data/foo/bar/baz`\nthe name is `foo/bar/baz`.\n"
+ },
+ "namespace": {
+ "type": "string",
+ "description": "The namespace of the target resource.\nThe value should not contain leading or trailing forward slashes.\nThe `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault#namespace).\n*Available only for Vault Enterprise*.\n",
+ "willReplaceOnChanges": true
+ },
+ "version": {
+ "type": "integer",
+ "description": "Version of the secret to retrieve.\n"
+ }
+ },
+ "type": "object",
+ "required": [
+ "mount",
+ "name"
+ ]
+ },
+ "outputs": {
+ "description": "A collection of values returned by getSecretV2.\n",
+ "properties": {
+ "createdTime": {
+ "type": "string",
+ "description": "Time at which secret was created.\n"
+ },
+ "customMetadata": {
+ "type": "object",
+ "additionalProperties": {
+ "$ref": "pulumi.json#/Any"
+ },
+ "description": "Custom metadata for the secret.\n"
+ },
+ "data": {
+ "type": "object",
+ "additionalProperties": {
+ "$ref": "pulumi.json#/Any"
+ },
+ "description": "A mapping whose keys are the top-level data keys returned from\nVault and whose values are the corresponding values. This map can only\nrepresent string data, so any non-string values returned from Vault are\nserialized as JSON.\n",
+ "secret": true
+ },
+ "dataJson": {
+ "type": "string",
+ "description": "JSON-encoded string that that is\nread as the secret data at the given path.\n",
+ "secret": true
+ },
+ "deletionTime": {
+ "type": "string",
+ "description": "Deletion time for the secret.\n"
+ },
+ "destroyed": {
+ "type": "boolean",
+ "description": "Indicates whether the secret has been destroyed.\n"
+ },
+ "id": {
+ "type": "string",
+ "description": "The provider-assigned unique ID for this managed resource.\n"
+ },
+ "mount": {
+ "type": "string"
+ },
+ "name": {
+ "type": "string"
+ },
+ "namespace": {
+ "type": "string"
+ },
+ "path": {
+ "type": "string",
+ "description": "Full path where the KVV2 secret is written.\n"
+ },
+ "version": {
+ "type": "integer"
+ }
+ },
+ "type": "object",
+ "required": [
+ "createdTime",
+ "customMetadata",
+ "data",
+ "dataJson",
+ "deletionTime",
+ "destroyed",
+ "mount",
+ "name",
+ "path",
+ "id"
+ ]
+ }
+ },
+ "vault:kv/getSecretsList:getSecretsList": {
+ "description": "{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst kvv1 = new vault.Mount(\"kvv1\", {\n path: \"kvv1\",\n type: \"kv\",\n options: {\n version: \"1\",\n },\n description: \"KV Version 1 secret engine mount\",\n});\nconst awsSecret = new vault.kv.Secret(\"awsSecret\", {\n path: pulumi.interpolate`${kvv1.path}/aws-secret`,\n dataJson: JSON.stringify({\n zip: \"zap\",\n }),\n});\nconst azureSecret = new vault.kv.Secret(\"azureSecret\", {\n path: pulumi.interpolate`${kvv1.path}/azure-secret`,\n dataJson: JSON.stringify({\n foo: \"bar\",\n }),\n});\nconst secrets = vault.kv.getSecretsListOutput({\n path: kvv1.path,\n});\n```\n```python\nimport pulumi\nimport json\nimport pulumi_vault as vault\n\nkvv1 = vault.Mount(\"kvv1\",\n path=\"kvv1\",\n type=\"kv\",\n options={\n \"version\": \"1\",\n },\n description=\"KV Version 1 secret engine mount\")\naws_secret = vault.kv.Secret(\"awsSecret\",\n path=kvv1.path.apply(lambda path: f\"{path}/aws-secret\"),\n data_json=json.dumps({\n \"zip\": \"zap\",\n }))\nazure_secret = vault.kv.Secret(\"azureSecret\",\n path=kvv1.path.apply(lambda path: f\"{path}/azure-secret\"),\n data_json=json.dumps({\n \"foo\": \"bar\",\n }))\nsecrets = vault.kv.get_secrets_list_output(path=kvv1.path)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text.Json;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var kvv1 = new Vault.Mount(\"kvv1\", new()\n {\n Path = \"kvv1\",\n Type = \"kv\",\n Options = \n {\n { \"version\", \"1\" },\n },\n Description = \"KV Version 1 secret engine mount\",\n });\n\n var awsSecret = new Vault.Kv.Secret(\"awsSecret\", new()\n {\n Path = kvv1.Path.Apply(path =\u003e $\"{path}/aws-secret\"),\n DataJson = JsonSerializer.Serialize(new Dictionary\u003cstring, object?\u003e\n {\n [\"zip\"] = \"zap\",\n }),\n });\n\n var azureSecret = new Vault.Kv.Secret(\"azureSecret\", new()\n {\n Path = kvv1.Path.Apply(path =\u003e $\"{path}/azure-secret\"),\n DataJson = JsonSerializer.Serialize(new Dictionary\u003cstring, object?\u003e\n {\n [\"foo\"] = \"bar\",\n }),\n });\n\n var secrets = Vault.kv.GetSecretsList.Invoke(new()\n {\n Path = kvv1.Path,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"encoding/json\"\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault\"\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/kv\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tkvv1, err := vault.NewMount(ctx, \"kvv1\", \u0026vault.MountArgs{\n\t\t\tPath: pulumi.String(\"kvv1\"),\n\t\t\tType: pulumi.String(\"kv\"),\n\t\t\tOptions: pulumi.Map{\n\t\t\t\t\"version\": pulumi.Any(\"1\"),\n\t\t\t},\n\t\t\tDescription: pulumi.String(\"KV Version 1 secret engine mount\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\ttmpJSON0, err := json.Marshal(map[string]interface{}{\n\t\t\t\"zip\": \"zap\",\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tjson0 := string(tmpJSON0)\n\t\t_, err = kv.NewSecret(ctx, \"awsSecret\", \u0026kv.SecretArgs{\n\t\t\tPath: kvv1.Path.ApplyT(func(path string) (string, error) {\n\t\t\t\treturn fmt.Sprintf(\"%v/aws-secret\", path), nil\n\t\t\t}).(pulumi.StringOutput),\n\t\t\tDataJson: pulumi.String(json0),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\ttmpJSON1, err := json.Marshal(map[string]interface{}{\n\t\t\t\"foo\": \"bar\",\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tjson1 := string(tmpJSON1)\n\t\t_, err = kv.NewSecret(ctx, \"azureSecret\", \u0026kv.SecretArgs{\n\t\t\tPath: kvv1.Path.ApplyT(func(path string) (string, error) {\n\t\t\t\treturn fmt.Sprintf(\"%v/azure-secret\", path), nil\n\t\t\t}).(pulumi.StringOutput),\n\t\t\tDataJson: pulumi.String(json1),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_ = kv.GetSecretsListOutput(ctx, kv.GetSecretsListOutputArgs{\n\t\t\tPath: kvv1.Path,\n\t\t}, nil)\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.Mount;\nimport com.pulumi.vault.MountArgs;\nimport com.pulumi.vault.kv.Secret;\nimport com.pulumi.vault.kv.SecretArgs;\nimport com.pulumi.vault.kv.KvFunctions;\nimport com.pulumi.vault.kv.inputs.GetSecretsListArgs;\nimport static com.pulumi.codegen.internal.Serialization.*;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var kvv1 = new Mount(\"kvv1\", MountArgs.builder() \n .path(\"kvv1\")\n .type(\"kv\")\n .options(Map.of(\"version\", \"1\"))\n .description(\"KV Version 1 secret engine mount\")\n .build());\n\n var awsSecret = new Secret(\"awsSecret\", SecretArgs.builder() \n .path(kvv1.path().applyValue(path -\u003e String.format(\"%s/aws-secret\", path)))\n .dataJson(serializeJson(\n jsonObject(\n jsonProperty(\"zip\", \"zap\")\n )))\n .build());\n\n var azureSecret = new Secret(\"azureSecret\", SecretArgs.builder() \n .path(kvv1.path().applyValue(path -\u003e String.format(\"%s/azure-secret\", path)))\n .dataJson(serializeJson(\n jsonObject(\n jsonProperty(\"foo\", \"bar\")\n )))\n .build());\n\n final var secrets = KvFunctions.getSecretsList(GetSecretsListArgs.builder()\n .path(kvv1.path())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n kvv1:\n type: vault:Mount\n properties:\n path: kvv1\n type: kv\n options:\n version: '1'\n description: KV Version 1 secret engine mount\n awsSecret:\n type: vault:kv:Secret\n properties:\n path: ${kvv1.path}/aws-secret\n dataJson:\n fn::toJSON:\n zip: zap\n azureSecret:\n type: vault:kv:Secret\n properties:\n path: ${kvv1.path}/azure-secret\n dataJson:\n fn::toJSON:\n foo: bar\nvariables:\n secrets:\n fn::invoke:\n Function: vault:kv:getSecretsList\n Arguments:\n path: ${kvv1.path}\n```\n{{% /example %}}\n{{% /examples %}}\n## Required Vault Capabilities\n\nUse of this resource requires the `read` capability on the given path.\n",
+ "inputs": {
+ "description": "A collection of arguments for invoking getSecretsList.\n",
+ "properties": {
+ "namespace": {
+ "type": "string",
+ "description": "The namespace of the target resource.\nThe value should not contain leading or trailing forward slashes.\nThe `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault#namespace).\n*Available only for Vault Enterprise*.\n",
+ "willReplaceOnChanges": true
+ },
+ "path": {
+ "type": "string",
+ "description": "Full KV-V1 path where secrets will be listed.\n"
+ }
+ },
+ "type": "object",
+ "required": [
+ "path"
+ ]
+ },
+ "outputs": {
+ "description": "A collection of values returned by getSecretsList.\n",
+ "properties": {
+ "id": {
+ "type": "string",
+ "description": "The provider-assigned unique ID for this managed resource.\n"
+ },
+ "names": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "List of all secret names listed under the given path.\n",
+ "secret": true
+ },
+ "namespace": {
+ "type": "string"
+ },
+ "path": {
+ "type": "string"
+ }
+ },
+ "type": "object",
+ "required": [
+ "names",
+ "path",
+ "id"
+ ]
+ }
+ },
+ "vault:kv/getSecretsListV2:getSecretsListV2": {
+ "description": "{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst kvv2 = new vault.Mount(\"kvv2\", {\n path: \"kvv2\",\n type: \"kv\",\n options: {\n version: \"2\",\n },\n description: \"KV Version 2 secret engine mount\",\n});\nconst awsSecret = new vault.kv.SecretV2(\"awsSecret\", {\n mount: kvv2.path,\n dataJson: JSON.stringify({\n zip: \"zap\",\n }),\n});\nconst azureSecret = new vault.kv.SecretV2(\"azureSecret\", {\n mount: kvv2.path,\n dataJson: JSON.stringify({\n foo: \"bar\",\n }),\n});\nconst nestedSecret = new vault.kv.SecretV2(\"nestedSecret\", {\n mount: kvv2.path,\n dataJson: JSON.stringify({\n password: \"test\",\n }),\n});\nconst secrets = vault.kv.getSecretsListV2Output({\n mount: kvv2.path,\n});\nconst nestedSecrets = kvv2.path.apply(path =\u003e vault.kv.getSecretsListV2Output({\n mount: path,\n name: vault_kv_secret_v2.test_2.name,\n}));\n```\n```python\nimport pulumi\nimport json\nimport pulumi_vault as vault\n\nkvv2 = vault.Mount(\"kvv2\",\n path=\"kvv2\",\n type=\"kv\",\n options={\n \"version\": \"2\",\n },\n description=\"KV Version 2 secret engine mount\")\naws_secret = vault.kv.SecretV2(\"awsSecret\",\n mount=kvv2.path,\n data_json=json.dumps({\n \"zip\": \"zap\",\n }))\nazure_secret = vault.kv.SecretV2(\"azureSecret\",\n mount=kvv2.path,\n data_json=json.dumps({\n \"foo\": \"bar\",\n }))\nnested_secret = vault.kv.SecretV2(\"nestedSecret\",\n mount=kvv2.path,\n data_json=json.dumps({\n \"password\": \"test\",\n }))\nsecrets = vault.kv.get_secrets_list_v2_output(mount=kvv2.path)\nnested_secrets = kvv2.path.apply(lambda path: vault.kv.get_secrets_list_v2_output(mount=path,\n name=vault_kv_secret_v2[\"test_2\"][\"name\"]))\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text.Json;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var kvv2 = new Vault.Mount(\"kvv2\", new()\n {\n Path = \"kvv2\",\n Type = \"kv\",\n Options = \n {\n { \"version\", \"2\" },\n },\n Description = \"KV Version 2 secret engine mount\",\n });\n\n var awsSecret = new Vault.Kv.SecretV2(\"awsSecret\", new()\n {\n Mount = kvv2.Path,\n DataJson = JsonSerializer.Serialize(new Dictionary\u003cstring, object?\u003e\n {\n [\"zip\"] = \"zap\",\n }),\n });\n\n var azureSecret = new Vault.Kv.SecretV2(\"azureSecret\", new()\n {\n Mount = kvv2.Path,\n DataJson = JsonSerializer.Serialize(new Dictionary\u003cstring, object?\u003e\n {\n [\"foo\"] = \"bar\",\n }),\n });\n\n var nestedSecret = new Vault.Kv.SecretV2(\"nestedSecret\", new()\n {\n Mount = kvv2.Path,\n DataJson = JsonSerializer.Serialize(new Dictionary\u003cstring, object?\u003e\n {\n [\"password\"] = \"test\",\n }),\n });\n\n var secrets = Vault.kv.GetSecretsListV2.Invoke(new()\n {\n Mount = kvv2.Path,\n });\n\n var nestedSecrets = Vault.kv.GetSecretsListV2.Invoke(new()\n {\n Mount = kvv2.Path,\n Name = vault_kv_secret_v2.Test_2.Name,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"encoding/json\"\n\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault\"\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/kv\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tkvv2, err := vault.NewMount(ctx, \"kvv2\", \u0026vault.MountArgs{\n\t\t\tPath: pulumi.String(\"kvv2\"),\n\t\t\tType: pulumi.String(\"kv\"),\n\t\t\tOptions: pulumi.Map{\n\t\t\t\t\"version\": pulumi.Any(\"2\"),\n\t\t\t},\n\t\t\tDescription: pulumi.String(\"KV Version 2 secret engine mount\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\ttmpJSON0, err := json.Marshal(map[string]interface{}{\n\t\t\t\"zip\": \"zap\",\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tjson0 := string(tmpJSON0)\n\t\t_, err = kv.NewSecretV2(ctx, \"awsSecret\", \u0026kv.SecretV2Args{\n\t\t\tMount: kvv2.Path,\n\t\t\tDataJson: pulumi.String(json0),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\ttmpJSON1, err := json.Marshal(map[string]interface{}{\n\t\t\t\"foo\": \"bar\",\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tjson1 := string(tmpJSON1)\n\t\t_, err = kv.NewSecretV2(ctx, \"azureSecret\", \u0026kv.SecretV2Args{\n\t\t\tMount: kvv2.Path,\n\t\t\tDataJson: pulumi.String(json1),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\ttmpJSON2, err := json.Marshal(map[string]interface{}{\n\t\t\t\"password\": \"test\",\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tjson2 := string(tmpJSON2)\n\t\t_, err = kv.NewSecretV2(ctx, \"nestedSecret\", \u0026kv.SecretV2Args{\n\t\t\tMount: kvv2.Path,\n\t\t\tDataJson: pulumi.String(json2),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_ = kv.GetSecretsListV2Output(ctx, kv.GetSecretsListV2OutputArgs{\n\t\t\tMount: kvv2.Path,\n\t\t}, nil)\n\t\t_ = kvv2.Path.ApplyT(func(path string) (kv.GetSecretsListV2Result, error) {\n\t\t\treturn kv.GetSecretsListV2Output(ctx, kv.GetSecretsListV2OutputArgs{\n\t\t\t\tMount: path,\n\t\t\t\tName: vault_kv_secret_v2.Test_2.Name,\n\t\t\t}, nil), nil\n\t\t}).(kv.GetSecretsListV2ResultOutput)\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.Mount;\nimport com.pulumi.vault.MountArgs;\nimport com.pulumi.vault.kv.SecretV2;\nimport com.pulumi.vault.kv.SecretV2Args;\nimport com.pulumi.vault.kv.KvFunctions;\nimport com.pulumi.vault.kv.inputs.GetSecretsListV2Args;\nimport static com.pulumi.codegen.internal.Serialization.*;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var kvv2 = new Mount(\"kvv2\", MountArgs.builder() \n .path(\"kvv2\")\n .type(\"kv\")\n .options(Map.of(\"version\", \"2\"))\n .description(\"KV Version 2 secret engine mount\")\n .build());\n\n var awsSecret = new SecretV2(\"awsSecret\", SecretV2Args.builder() \n .mount(kvv2.path())\n .dataJson(serializeJson(\n jsonObject(\n jsonProperty(\"zip\", \"zap\")\n )))\n .build());\n\n var azureSecret = new SecretV2(\"azureSecret\", SecretV2Args.builder() \n .mount(kvv2.path())\n .dataJson(serializeJson(\n jsonObject(\n jsonProperty(\"foo\", \"bar\")\n )))\n .build());\n\n var nestedSecret = new SecretV2(\"nestedSecret\", SecretV2Args.builder() \n .mount(kvv2.path())\n .dataJson(serializeJson(\n jsonObject(\n jsonProperty(\"password\", \"test\")\n )))\n .build());\n\n final var secrets = KvFunctions.getSecretsListV2(GetSecretsListV2Args.builder()\n .mount(kvv2.path())\n .build());\n\n final var nestedSecrets = KvFunctions.getSecretsListV2(GetSecretsListV2Args.builder()\n .mount(kvv2.path())\n .name(vault_kv_secret_v2.test_2().name())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n kvv2:\n type: vault:Mount\n properties:\n path: kvv2\n type: kv\n options:\n version: '2'\n description: KV Version 2 secret engine mount\n awsSecret:\n type: vault:kv:SecretV2\n properties:\n mount: ${kvv2.path}\n dataJson:\n fn::toJSON:\n zip: zap\n azureSecret:\n type: vault:kv:SecretV2\n properties:\n mount: ${kvv2.path}\n dataJson:\n fn::toJSON:\n foo: bar\n nestedSecret:\n type: vault:kv:SecretV2\n properties:\n mount: ${kvv2.path}\n dataJson:\n fn::toJSON:\n password: test\nvariables:\n secrets:\n fn::invoke:\n Function: vault:kv:getSecretsListV2\n Arguments:\n mount: ${kvv2.path}\n nestedSecrets:\n fn::invoke:\n Function: vault:kv:getSecretsListV2\n Arguments:\n mount: ${kvv2.path}\n name: ${vault_kv_secret_v2.test_2.name}\n```\n{{% /example %}}\n{{% /examples %}}\n## Required Vault Capabilities\n\nUse of this resource requires the `read` capability on the given path.\n",
+ "inputs": {
+ "description": "A collection of arguments for invoking getSecretsListV2.\n",
+ "properties": {
+ "mount": {
+ "type": "string",
+ "description": "Path where KV-V2 engine is mounted.\n"
+ },
+ "name": {
+ "type": "string",
+ "description": "Full name of the secret. For a nested secret\nthe name is the nested path excluding the mount and data\nprefix. For example, for a secret at `kvv2/data/foo/bar/baz`\nthe name is `foo/bar/baz`.\n"
+ },
+ "namespace": {
+ "type": "string",
+ "description": "The namespace of the target resource.\nThe value should not contain leading or trailing forward slashes.\nThe `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault#namespace).\n*Available only for Vault Enterprise*.\n",
+ "willReplaceOnChanges": true
+ }
+ },
+ "type": "object",
+ "required": [
+ "mount"
+ ]
+ },
+ "outputs": {
+ "description": "A collection of values returned by getSecretsListV2.\n",
+ "properties": {
+ "id": {
+ "type": "string",
+ "description": "The provider-assigned unique ID for this managed resource.\n"
+ },
+ "mount": {
+ "type": "string"
+ },
+ "name": {
+ "type": "string"
+ },
+ "names": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "List of all secret names listed under the given path.\n",
+ "secret": true
+ },
+ "namespace": {
+ "type": "string"
+ },
+ "path": {
+ "type": "string",
+ "description": "Full path where the KV-V2 secrets are listed.\n"
+ }
+ },
+ "type": "object",
+ "required": [
+ "mount",
+ "names",
+ "path",
+ "id"
+ ]
+ }
+ },
+ "vault:ldap/getDynamicCredentials:getDynamicCredentials": {
+ "inputs": {
+ "description": "A collection of arguments for invoking getDynamicCredentials.\n",
+ "properties": {
+ "mount": {
+ "type": "string"
+ },
+ "namespace": {
+ "type": "string",
+ "willReplaceOnChanges": true
+ },
+ "roleName": {
+ "type": "string",
+ "willReplaceOnChanges": true
+ }
+ },
+ "type": "object",
+ "required": [
+ "mount",
+ "roleName"
+ ]
+ },
+ "outputs": {
+ "description": "A collection of values returned by getDynamicCredentials.\n",
+ "properties": {
+ "distinguishedNames": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "id": {
+ "type": "string",
+ "description": "The provider-assigned unique ID for this managed resource.\n"
+ },
+ "leaseDuration": {
+ "type": "integer"
+ },
+ "leaseId": {
+ "type": "string"
+ },
+ "leaseRenewable": {
+ "type": "boolean"
+ },
+ "mount": {
+ "type": "string"
+ },
+ "namespace": {
+ "type": "string"
+ },
+ "password": {
+ "type": "string",
+ "secret": true
+ },
+ "roleName": {
+ "type": "string"
+ },
+ "username": {
+ "type": "string"
+ }
+ },
+ "type": "object",
+ "required": [
+ "distinguishedNames",
+ "leaseDuration",
+ "leaseId",
+ "leaseRenewable",
+ "mount",
+ "password",
+ "roleName",
+ "username",
+ "id"
+ ]
+ }
+ },
+ "vault:ldap/getStaticCredentials:getStaticCredentials": {
+ "inputs": {
+ "description": "A collection of arguments for invoking getStaticCredentials.\n",
+ "properties": {
+ "mount": {
+ "type": "string"
+ },
+ "namespace": {
+ "type": "string",
+ "willReplaceOnChanges": true
+ },
+ "roleName": {
+ "type": "string",
+ "willReplaceOnChanges": true
+ }
+ },
+ "type": "object",
+ "required": [
+ "mount",
+ "roleName"
+ ]
+ },
+ "outputs": {
+ "description": "A collection of values returned by getStaticCredentials.\n",
+ "properties": {
+ "dn": {
+ "type": "string"
+ },
+ "id": {
+ "type": "string",
+ "description": "The provider-assigned unique ID for this managed resource.\n"
+ },
+ "lastPassword": {
+ "type": "string",
+ "secret": true
+ },
+ "lastVaultRotation": {
+ "type": "string"
+ },
+ "mount": {
+ "type": "string"
+ },
+ "namespace": {
+ "type": "string"
+ },
+ "password": {
+ "type": "string",
+ "secret": true
+ },
+ "roleName": {
+ "type": "string"
+ },
+ "rotationPeriod": {
+ "type": "integer"
+ },
+ "ttl": {
+ "type": "integer"
+ },
+ "username": {
+ "type": "string"
+ }
+ },
+ "type": "object",
+ "required": [
+ "dn",
+ "lastPassword",
+ "lastVaultRotation",
+ "mount",
+ "password",
+ "roleName",
+ "rotationPeriod",
+ "ttl",
+ "username",
+ "id"
+ ]
+ }
+ },
+ "vault:pkiSecret/getBackendIssuer:getBackendIssuer": {
"inputs": {
- "description": "A collection of arguments for invoking getSecretSubkeysV2.\n",
+ "description": "A collection of arguments for invoking getBackendIssuer.\n",
"properties": {
- "depth": {
- "type": "integer",
- "description": "Specifies the deepest nesting level to provide in the output.\nIf non-zero, keys that reside at the specified depth value will be\nartificially treated as leaves and will thus be `null` even if further\nunderlying sub-keys exist.\n"
- },
- "mount": {
+ "backend": {
"type": "string",
- "description": "Path where KV-V2 engine is mounted.\n"
+ "description": "The path to the PKI secret backend to\nread the issuer from, with no leading or trailing `/`s.\n",
+ "willReplaceOnChanges": true
},
- "name": {
+ "issuerRef": {
"type": "string",
- "description": "Full name of the secret. For a nested secret\nthe name is the nested path excluding the mount and data\nprefix. For example, for a secret at `kvv2/data/foo/bar/baz`\nthe name is `foo/bar/baz`.\n"
+ "description": "Reference to an existing issuer.\n",
+ "willReplaceOnChanges": true
},
"namespace": {
"type": "string",
"description": "The namespace of the target resource.\nThe value should not contain leading or trailing forward slashes.\nThe `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault#namespace).\n*Available only for Vault Enterprise*.\n",
"willReplaceOnChanges": true
- },
- "version": {
- "type": "integer",
- "description": "Specifies the version to return. If not \nset the latest version is returned.\n"
}
},
"type": "object",
"required": [
- "mount",
- "name"
+ "backend",
+ "issuerRef"
]
},
"outputs": {
- "description": "A collection of values returned by getSecretSubkeysV2.\n",
+ "description": "A collection of values returned by getBackendIssuer.\n",
"properties": {
- "data": {
- "type": "object",
- "additionalProperties": {
- "$ref": "pulumi.json#/Any"
+ "backend": {
+ "type": "string"
+ },
+ "caChains": {
+ "type": "array",
+ "items": {
+ "type": "string"
},
- "description": "Subkeys for the KV-V2 secret stored as a serialized map of strings.\n",
- "secret": true
+ "description": "The CA chain as a list of format specific certificates.\n"
},
- "dataJson": {
+ "certificate": {
"type": "string",
- "description": "Subkeys for the KV-V2 secret read from Vault.\n"
- },
- "depth": {
- "type": "integer"
+ "description": "Certificate associated with this issuer.\n"
},
"id": {
"type": "string",
"description": "The provider-assigned unique ID for this managed resource.\n"
},
- "mount": {
- "type": "string"
+ "issuerId": {
+ "type": "string",
+ "description": "ID of the issuer.\n"
},
- "name": {
+ "issuerName": {
+ "type": "string",
+ "description": "Name of the issuer.\n"
+ },
+ "issuerRef": {
"type": "string"
},
+ "keyId": {
+ "type": "string",
+ "description": "ID of the key used by the issuer.\n"
+ },
+ "leafNotAfterBehavior": {
+ "type": "string",
+ "description": "Behavior of a leaf's NotAfter field during issuance.\n"
+ },
+ "manualChains": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "Chain of issuer references to build this issuer's computed \nCAChain field from, when non-empty.\n"
+ },
"namespace": {
"type": "string"
},
- "path": {
+ "usage": {
"type": "string",
- "description": "Full path where the KV-V2 secrets are listed.\n"
- },
- "version": {
- "type": "integer"
+ "description": "Allowed usages for this issuer.\n"
}
},
"type": "object",
"required": [
- "data",
- "dataJson",
- "mount",
- "name",
- "path",
+ "backend",
+ "caChains",
+ "certificate",
+ "issuerId",
+ "issuerName",
+ "issuerRef",
+ "keyId",
+ "leafNotAfterBehavior",
+ "manualChains",
+ "usage",
"id"
]
}
},
- "vault:kv/getSecretV2:getSecretV2": {
- "description": "## Required Vault Capabilities\n\nUse of this resource requires the `read` capability on the given path.\n",
+ "vault:pkiSecret/getBackendIssuers:getBackendIssuers": {
+ "description": "{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst pki = new vault.Mount(\"pki\", {\n path: \"pki\",\n type: \"pki\",\n description: \"PKI secret engine mount\",\n});\nconst root = new vault.pkisecret.SecretBackendRootCert(\"root\", {\n backend: pki.path,\n type: \"internal\",\n commonName: \"example\",\n ttl: \"86400\",\n issuerName: \"example\",\n});\nconst test = vault.pkiSecret.getBackendIssuersOutput({\n backend: root.backend,\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\npki = vault.Mount(\"pki\",\n path=\"pki\",\n type=\"pki\",\n description=\"PKI secret engine mount\")\nroot = vault.pki_secret.SecretBackendRootCert(\"root\",\n backend=pki.path,\n type=\"internal\",\n common_name=\"example\",\n ttl=\"86400\",\n issuer_name=\"example\")\ntest = vault.pkiSecret.get_backend_issuers_output(backend=root.backend)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var pki = new Vault.Mount(\"pki\", new()\n {\n Path = \"pki\",\n Type = \"pki\",\n Description = \"PKI secret engine mount\",\n });\n\n var root = new Vault.PkiSecret.SecretBackendRootCert(\"root\", new()\n {\n Backend = pki.Path,\n Type = \"internal\",\n CommonName = \"example\",\n Ttl = \"86400\",\n IssuerName = \"example\",\n });\n\n var test = Vault.PkiSecret.GetBackendIssuers.Invoke(new()\n {\n Backend = root.Backend,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault\"\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/pkiSecret\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tpki, err := vault.NewMount(ctx, \"pki\", \u0026vault.MountArgs{\n\t\t\tPath: pulumi.String(\"pki\"),\n\t\t\tType: pulumi.String(\"pki\"),\n\t\t\tDescription: pulumi.String(\"PKI secret engine mount\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\troot, err := pkiSecret.NewSecretBackendRootCert(ctx, \"root\", \u0026pkiSecret.SecretBackendRootCertArgs{\n\t\t\tBackend: pki.Path,\n\t\t\tType: pulumi.String(\"internal\"),\n\t\t\tCommonName: pulumi.String(\"example\"),\n\t\t\tTtl: pulumi.String(\"86400\"),\n\t\t\tIssuerName: pulumi.String(\"example\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_ = pkiSecret.GetBackendIssuersOutput(ctx, pkisecret.GetBackendIssuersOutputArgs{\n\t\t\tBackend: root.Backend,\n\t\t}, nil)\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.Mount;\nimport com.pulumi.vault.MountArgs;\nimport com.pulumi.vault.pkiSecret.SecretBackendRootCert;\nimport com.pulumi.vault.pkiSecret.SecretBackendRootCertArgs;\nimport com.pulumi.vault.pkiSecret.PkiSecretFunctions;\nimport com.pulumi.vault.pkiSecret.inputs.GetBackendIssuersArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var pki = new Mount(\"pki\", MountArgs.builder() \n .path(\"pki\")\n .type(\"pki\")\n .description(\"PKI secret engine mount\")\n .build());\n\n var root = new SecretBackendRootCert(\"root\", SecretBackendRootCertArgs.builder() \n .backend(pki.path())\n .type(\"internal\")\n .commonName(\"example\")\n .ttl(\"86400\")\n .issuerName(\"example\")\n .build());\n\n final var test = PkiSecretFunctions.getBackendIssuers(GetBackendIssuersArgs.builder()\n .backend(root.backend())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n pki:\n type: vault:Mount\n properties:\n path: pki\n type: pki\n description: PKI secret engine mount\n root:\n type: vault:pkiSecret:SecretBackendRootCert\n properties:\n backend: ${pki.path}\n type: internal\n commonName: example\n ttl: '86400'\n issuerName: example\nvariables:\n test:\n fn::invoke:\n Function: vault:pkiSecret:getBackendIssuers\n Arguments:\n backend: ${root.backend}\n```\n{{% /example %}}\n{{% /examples %}}",
"inputs": {
- "description": "A collection of arguments for invoking getSecretV2.\n",
+ "description": "A collection of arguments for invoking getBackendIssuers.\n",
"properties": {
- "mount": {
- "type": "string",
- "description": "Path where KV-V2 engine is mounted.\n"
- },
- "name": {
+ "backend": {
"type": "string",
- "description": "Full name of the secret. For a nested secret\nthe name is the nested path excluding the mount and data\nprefix. For example, for a secret at `kvv2/data/foo/bar/baz`\nthe name is `foo/bar/baz`.\n"
+ "description": "The path to the PKI secret backend to\nread the issuers from, with no leading or trailing `/`s.\n",
+ "willReplaceOnChanges": true
},
"namespace": {
"type": "string",
"description": "The namespace of the target resource.\nThe value should not contain leading or trailing forward slashes.\nThe `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault#namespace).\n*Available only for Vault Enterprise*.\n",
"willReplaceOnChanges": true
- },
- "version": {
- "type": "integer",
- "description": "Version of the secret to retrieve.\n"
}
},
"type": "object",
"required": [
- "mount",
- "name"
+ "backend"
]
},
"outputs": {
- "description": "A collection of values returned by getSecretV2.\n",
+ "description": "A collection of values returned by getBackendIssuers.\n",
"properties": {
- "createdTime": {
- "type": "string",
- "description": "Time at which secret was created.\n"
+ "backend": {
+ "type": "string"
},
- "customMetadata": {
- "type": "object",
- "additionalProperties": {
- "$ref": "pulumi.json#/Any"
- },
- "description": "Custom metadata for the secret.\n"
+ "id": {
+ "type": "string",
+ "description": "The provider-assigned unique ID for this managed resource.\n"
},
- "data": {
+ "keyInfo": {
"type": "object",
"additionalProperties": {
"$ref": "pulumi.json#/Any"
},
- "description": "A mapping whose keys are the top-level data keys returned from\nVault and whose values are the corresponding values. This map can only\nrepresent string data, so any non-string values returned from Vault are\nserialized as JSON.\n",
- "secret": true
- },
- "dataJson": {
- "type": "string",
- "description": "JSON-encoded string that that is\nread as the secret data at the given path.\n",
- "secret": true
- },
- "deletionTime": {
- "type": "string",
- "description": "Deletion time for the secret.\n"
- },
- "destroyed": {
- "type": "boolean",
- "description": "Indicates whether the secret has been destroyed.\n"
+ "description": "Map of issuer strings read from Vault.\n"
},
- "id": {
+ "keyInfoJson": {
"type": "string",
- "description": "The provider-assigned unique ID for this managed resource.\n"
- },
- "mount": {
- "type": "string"
+ "description": "JSON-encoded issuer data read from Vault.\n"
},
- "name": {
- "type": "string"
+ "keys": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "Keys used by issuers under the backend path.\n"
},
"namespace": {
"type": "string"
- },
- "path": {
- "type": "string",
- "description": "Full path where the KVV2 secret is written.\n"
- },
- "version": {
- "type": "integer"
}
},
"type": "object",
"required": [
- "createdTime",
- "customMetadata",
- "data",
- "dataJson",
- "deletionTime",
- "destroyed",
- "mount",
- "name",
- "path",
+ "backend",
+ "keyInfo",
+ "keyInfoJson",
+ "keys",
"id"
]
}
},
- "vault:kv/getSecretsList:getSecretsList": {
- "description": "{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst kvv1 = new vault.Mount(\"kvv1\", {\n path: \"kvv1\",\n type: \"kv\",\n options: {\n version: \"1\",\n },\n description: \"KV Version 1 secret engine mount\",\n});\nconst awsSecret = new vault.kv.Secret(\"awsSecret\", {\n path: pulumi.interpolate`${kvv1.path}/aws-secret`,\n dataJson: JSON.stringify({\n zip: \"zap\",\n }),\n});\nconst azureSecret = new vault.kv.Secret(\"azureSecret\", {\n path: pulumi.interpolate`${kvv1.path}/azure-secret`,\n dataJson: JSON.stringify({\n foo: \"bar\",\n }),\n});\nconst secrets = vault.kv.getSecretsListOutput({\n path: kvv1.path,\n});\n```\n```python\nimport pulumi\nimport json\nimport pulumi_vault as vault\n\nkvv1 = vault.Mount(\"kvv1\",\n path=\"kvv1\",\n type=\"kv\",\n options={\n \"version\": \"1\",\n },\n description=\"KV Version 1 secret engine mount\")\naws_secret = vault.kv.Secret(\"awsSecret\",\n path=kvv1.path.apply(lambda path: f\"{path}/aws-secret\"),\n data_json=json.dumps({\n \"zip\": \"zap\",\n }))\nazure_secret = vault.kv.Secret(\"azureSecret\",\n path=kvv1.path.apply(lambda path: f\"{path}/azure-secret\"),\n data_json=json.dumps({\n \"foo\": \"bar\",\n }))\nsecrets = vault.kv.get_secrets_list_output(path=kvv1.path)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Text.Json;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var kvv1 = new Vault.Mount(\"kvv1\", new()\n {\n Path = \"kvv1\",\n Type = \"kv\",\n Options = \n {\n { \"version\", \"1\" },\n },\n Description = \"KV Version 1 secret engine mount\",\n });\n\n var awsSecret = new Vault.Kv.Secret(\"awsSecret\", new()\n {\n Path = kvv1.Path.Apply(path =\u003e $\"{path}/aws-secret\"),\n DataJson = JsonSerializer.Serialize(new Dictionary\u003cstring, object?\u003e\n {\n [\"zip\"] = \"zap\",\n }),\n });\n\n var azureSecret = new Vault.Kv.Secret(\"azureSecret\", new()\n {\n Path = kvv1.Path.Apply(path =\u003e $\"{path}/azure-secret\"),\n DataJson = JsonSerializer.Serialize(new Dictionary\u003cstring, object?\u003e\n {\n [\"foo\"] = \"bar\",\n }),\n });\n\n var secrets = Vault.kv.GetSecretsList.Invoke(new()\n {\n Path = kvv1.Path,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"encoding/json\"\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault\"\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/kv\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tkvv1, err := vault.NewMount(ctx, \"kvv1\", \u0026vault.MountArgs{\n\t\t\tPath: pulumi.String(\"kvv1\"),\n\t\t\tType: pulumi.String(\"kv\"),\n\t\t\tOptions: pulumi.AnyMap{\n\t\t\t\t\"version\": pulumi.Any(\"1\"),\n\t\t\t},\n\t\t\tDescription: pulumi.String(\"KV Version 1 secret engine mount\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\ttmpJSON0, err := json.Marshal(map[string]interface{}{\n\t\t\t\"zip\": \"zap\",\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tjson0 := string(tmpJSON0)\n\t\t_, err = kv.NewSecret(ctx, \"awsSecret\", \u0026kv.SecretArgs{\n\t\t\tPath: kvv1.Path.ApplyT(func(path string) (string, error) {\n\t\t\t\treturn fmt.Sprintf(\"%v/aws-secret\", path), nil\n\t\t\t}).(pulumi.StringOutput),\n\t\t\tDataJson: pulumi.String(json0),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\ttmpJSON1, err := json.Marshal(map[string]interface{}{\n\t\t\t\"foo\": \"bar\",\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tjson1 := string(tmpJSON1)\n\t\t_, err = kv.NewSecret(ctx, \"azureSecret\", \u0026kv.SecretArgs{\n\t\t\tPath: kvv1.Path.ApplyT(func(path string) (string, error) {\n\t\t\t\treturn fmt.Sprintf(\"%v/azure-secret\", path), nil\n\t\t\t}).(pulumi.StringOutput),\n\t\t\tDataJson: pulumi.String(json1),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_ = kv.GetSecretsListOutput(ctx, kv.GetSecretsListOutputArgs{\n\t\t\tPath: kvv1.Path,\n\t\t}, nil)\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.Mount;\nimport com.pulumi.vault.MountArgs;\nimport com.pulumi.vault.kv.Secret;\nimport com.pulumi.vault.kv.SecretArgs;\nimport com.pulumi.vault.kv.KvFunctions;\nimport com.pulumi.vault.kv.inputs.GetSecretsListArgs;\nimport static com.pulumi.codegen.internal.Serialization.*;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var kvv1 = new Mount(\"kvv1\", MountArgs.builder() \n .path(\"kvv1\")\n .type(\"kv\")\n .options(Map.of(\"version\", \"1\"))\n .description(\"KV Version 1 secret engine mount\")\n .build());\n\n var awsSecret = new Secret(\"awsSecret\", SecretArgs.builder() \n .path(kvv1.path().applyValue(path -\u003e String.format(\"%s/aws-secret\", path)))\n .dataJson(serializeJson(\n jsonObject(\n jsonProperty(\"zip\", \"zap\")\n )))\n .build());\n\n var azureSecret = new Secret(\"azureSecret\", SecretArgs.builder() \n .path(kvv1.path().applyValue(path -\u003e String.format(\"%s/azure-secret\", path)))\n .dataJson(serializeJson(\n jsonObject(\n jsonProperty(\"foo\", \"bar\")\n )))\n .build());\n\n final var secrets = KvFunctions.getSecretsList(GetSecretsListArgs.builder()\n .path(kvv1.path())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n kvv1:\n type: vault:Mount\n properties:\n path: kvv1\n type: kv\n options:\n version: 1\n description: KV Version 1 secret engine mount\n awsSecret:\n type: vault:kv:Secret\n properties:\n path: ${kvv1.path}/aws-secret\n dataJson:\n Fn::ToJSON:\n zip: zap\n azureSecret:\n type: vault:kv:Secret\n properties:\n path: ${kvv1.path}/azure-secret\n dataJson:\n Fn::ToJSON:\n foo: bar\nvariables:\n secrets:\n Fn::Invoke:\n Function: vault:kv:getSecretsList\n Arguments:\n path: ${kvv1.path}\n```\n{{% /example %}}\n{{% /examples %}}\n## Required Vault Capabilities\n\nUse of this resource requires the `read` capability on the given path.\n",
+ "vault:pkiSecret/getBackendKey:getBackendKey": {
+ "description": "{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst pki = new vault.Mount(\"pki\", {\n path: \"pki\",\n type: \"pki\",\n description: \"PKI secret engine mount\",\n});\nconst key = new vault.pkisecret.SecretBackendKey(\"key\", {\n backend: pki.path,\n type: \"internal\",\n keyName: \"example\",\n keyType: \"rsa\",\n keyBits: 4096,\n});\nconst example = key.keyId.apply(keyId =\u003e vault.pkiSecret.getBackendKeyOutput({\n backend: vault_mount.key.path,\n keyRef: keyId,\n}));\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\npki = vault.Mount(\"pki\",\n path=\"pki\",\n type=\"pki\",\n description=\"PKI secret engine mount\")\nkey = vault.pki_secret.SecretBackendKey(\"key\",\n backend=pki.path,\n type=\"internal\",\n key_name=\"example\",\n key_type=\"rsa\",\n key_bits=4096)\nexample = key.key_id.apply(lambda key_id: vault.pkiSecret.get_backend_key_output(backend=vault_mount[\"key\"][\"path\"],\n key_ref=key_id))\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var pki = new Vault.Mount(\"pki\", new()\n {\n Path = \"pki\",\n Type = \"pki\",\n Description = \"PKI secret engine mount\",\n });\n\n var key = new Vault.PkiSecret.SecretBackendKey(\"key\", new()\n {\n Backend = pki.Path,\n Type = \"internal\",\n KeyName = \"example\",\n KeyType = \"rsa\",\n KeyBits = 4096,\n });\n\n var example = Vault.PkiSecret.GetBackendKey.Invoke(new()\n {\n Backend = vault_mount.Key.Path,\n KeyRef = key.KeyId,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault\"\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/pkiSecret\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tpki, err := vault.NewMount(ctx, \"pki\", \u0026vault.MountArgs{\n\t\t\tPath: pulumi.String(\"pki\"),\n\t\t\tType: pulumi.String(\"pki\"),\n\t\t\tDescription: pulumi.String(\"PKI secret engine mount\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tkey, err := pkiSecret.NewSecretBackendKey(ctx, \"key\", \u0026pkiSecret.SecretBackendKeyArgs{\n\t\t\tBackend: pki.Path,\n\t\t\tType: pulumi.String(\"internal\"),\n\t\t\tKeyName: pulumi.String(\"example\"),\n\t\t\tKeyType: pulumi.String(\"rsa\"),\n\t\t\tKeyBits: pulumi.Int(4096),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_ = key.KeyId.ApplyT(func(keyId string) (pkisecret.GetBackendKeyResult, error) {\n\t\t\treturn pkiSecret.GetBackendKeyOutput(ctx, pkisecret.GetBackendKeyOutputArgs{\n\t\t\t\tBackend: vault_mount.Key.Path,\n\t\t\t\tKeyRef: keyId,\n\t\t\t}, nil), nil\n\t\t}).(pkisecret.GetBackendKeyResultOutput)\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.Mount;\nimport com.pulumi.vault.MountArgs;\nimport com.pulumi.vault.pkiSecret.SecretBackendKey;\nimport com.pulumi.vault.pkiSecret.SecretBackendKeyArgs;\nimport com.pulumi.vault.pkiSecret.PkiSecretFunctions;\nimport com.pulumi.vault.pkiSecret.inputs.GetBackendKeyArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var pki = new Mount(\"pki\", MountArgs.builder() \n .path(\"pki\")\n .type(\"pki\")\n .description(\"PKI secret engine mount\")\n .build());\n\n var key = new SecretBackendKey(\"key\", SecretBackendKeyArgs.builder() \n .backend(pki.path())\n .type(\"internal\")\n .keyName(\"example\")\n .keyType(\"rsa\")\n .keyBits(\"4096\")\n .build());\n\n final var example = PkiSecretFunctions.getBackendKey(GetBackendKeyArgs.builder()\n .backend(vault_mount.key().path())\n .keyRef(key.keyId())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n pki:\n type: vault:Mount\n properties:\n path: pki\n type: pki\n description: PKI secret engine mount\n key:\n type: vault:pkiSecret:SecretBackendKey\n properties:\n backend: ${pki.path}\n type: internal\n keyName: example\n keyType: rsa\n keyBits: '4096'\nvariables:\n example:\n fn::invoke:\n Function: vault:pkiSecret:getBackendKey\n Arguments:\n backend: ${vault_mount.key.path}\n keyRef: ${key.keyId}\n```\n{{% /example %}}\n{{% /examples %}}",
"inputs": {
- "description": "A collection of arguments for invoking getSecretsList.\n",
+ "description": "A collection of arguments for invoking getBackendKey.\n",
"properties": {
- "namespace": {
+ "backend": {
"type": "string",
- "description": "The namespace of the target resource.\nThe value should not contain leading or trailing forward slashes.\nThe `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault#namespace).\n*Available only for Vault Enterprise*.\n",
+ "description": "The path to the PKI secret backend to\nread the key from, with no leading or trailing `/`s.\n",
"willReplaceOnChanges": true
},
- "path": {
+ "keyRef": {
"type": "string",
- "description": "Full KV-V1 path where secrets will be listed.\n"
+ "description": "Reference to an existing key.\n",
+ "willReplaceOnChanges": true
+ },
+ "namespace": {
+ "type": "string",
+ "description": "The namespace of the target resource.\nThe value should not contain leading or trailing forward slashes.\nThe `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault#namespace).\n*Available only for Vault Enterprise*.\n",
+ "willReplaceOnChanges": true
}
},
"type": "object",
"required": [
- "path"
+ "backend",
+ "keyRef"
]
},
"outputs": {
- "description": "A collection of values returned by getSecretsList.\n",
+ "description": "A collection of values returned by getBackendKey.\n",
"properties": {
+ "backend": {
+ "type": "string"
+ },
"id": {
"type": "string",
"description": "The provider-assigned unique ID for this managed resource.\n"
},
- "names": {
- "type": "array",
- "items": {
- "type": "string"
- },
- "description": "List of all secret names listed under the given path.\n",
- "secret": true
+ "keyId": {
+ "type": "string",
+ "description": "ID of the key.\n"
},
- "namespace": {
+ "keyName": {
+ "type": "string",
+ "description": "Name of the key.\n"
+ },
+ "keyRef": {
"type": "string"
},
- "path": {
+ "keyType": {
+ "type": "string",
+ "description": "Type of the key.\n"
+ },
+ "namespace": {
"type": "string"
}
},
"type": "object",
"required": [
- "names",
- "path",
+ "backend",
+ "keyId",
+ "keyName",
+ "keyRef",
+ "keyType",
"id"
]
}
},
- "vault:kv/getSecretsListV2:getSecretsListV2": {
- "description": "{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst kvv2 = new vault.Mount(\"kvv2\", {\n path: \"kvv2\",\n type: \"kv\",\n options: {\n version: \"2\",\n },\n description: \"KV Version 2 secret engine mount\",\n});\nconst awsSecret = new vault.kv.SecretV2(\"awsSecret\", {\n mount: kvv2.path,\n dataJson: JSON.stringify({\n zip: \"zap\",\n }),\n});\nconst azureSecret = new vault.kv.SecretV2(\"azureSecret\", {\n mount: kvv2.path,\n dataJson: JSON.stringify({\n foo: \"bar\",\n }),\n});\nconst nestedSecret = new vault.kv.SecretV2(\"nestedSecret\", {\n mount: kvv2.path,\n dataJson: JSON.stringify({\n password: \"test\",\n }),\n});\nconst secrets = vault.kv.getSecretsListV2Output({\n mount: kvv2.path,\n});\nconst nestedSecrets = kvv2.path.apply(path =\u003e vault.kv.getSecretsListV2Output({\n mount: path,\n name: vault_kv_secret_v2.test_2.name,\n}));\n```\n```python\nimport pulumi\nimport json\nimport pulumi_vault as vault\n\nkvv2 = vault.Mount(\"kvv2\",\n path=\"kvv2\",\n type=\"kv\",\n options={\n \"version\": \"2\",\n },\n description=\"KV Version 2 secret engine mount\")\naws_secret = vault.kv.SecretV2(\"awsSecret\",\n mount=kvv2.path,\n data_json=json.dumps({\n \"zip\": \"zap\",\n }))\nazure_secret = vault.kv.SecretV2(\"azureSecret\",\n mount=kvv2.path,\n data_json=json.dumps({\n \"foo\": \"bar\",\n }))\nnested_secret = vault.kv.SecretV2(\"nestedSecret\",\n mount=kvv2.path,\n data_json=json.dumps({\n \"password\": \"test\",\n }))\nsecrets = vault.kv.get_secrets_list_v2_output(mount=kvv2.path)\nnested_secrets = kvv2.path.apply(lambda path: vault.kv.get_secrets_list_v2_output(mount=path,\n name=vault_kv_secret_v2[\"test_2\"][\"name\"]))\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Text.Json;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var kvv2 = new Vault.Mount(\"kvv2\", new()\n {\n Path = \"kvv2\",\n Type = \"kv\",\n Options = \n {\n { \"version\", \"2\" },\n },\n Description = \"KV Version 2 secret engine mount\",\n });\n\n var awsSecret = new Vault.Kv.SecretV2(\"awsSecret\", new()\n {\n Mount = kvv2.Path,\n DataJson = JsonSerializer.Serialize(new Dictionary\u003cstring, object?\u003e\n {\n [\"zip\"] = \"zap\",\n }),\n });\n\n var azureSecret = new Vault.Kv.SecretV2(\"azureSecret\", new()\n {\n Mount = kvv2.Path,\n DataJson = JsonSerializer.Serialize(new Dictionary\u003cstring, object?\u003e\n {\n [\"foo\"] = \"bar\",\n }),\n });\n\n var nestedSecret = new Vault.Kv.SecretV2(\"nestedSecret\", new()\n {\n Mount = kvv2.Path,\n DataJson = JsonSerializer.Serialize(new Dictionary\u003cstring, object?\u003e\n {\n [\"password\"] = \"test\",\n }),\n });\n\n var secrets = Vault.kv.GetSecretsListV2.Invoke(new()\n {\n Mount = kvv2.Path,\n });\n\n var nestedSecrets = Vault.kv.GetSecretsListV2.Invoke(new()\n {\n Mount = kvv2.Path,\n Name = vault_kv_secret_v2.Test_2.Name,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"encoding/json\"\n\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault\"\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/kv\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tkvv2, err := vault.NewMount(ctx, \"kvv2\", \u0026vault.MountArgs{\n\t\t\tPath: pulumi.String(\"kvv2\"),\n\t\t\tType: pulumi.String(\"kv\"),\n\t\t\tOptions: pulumi.AnyMap{\n\t\t\t\t\"version\": pulumi.Any(\"2\"),\n\t\t\t},\n\t\t\tDescription: pulumi.String(\"KV Version 2 secret engine mount\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\ttmpJSON0, err := json.Marshal(map[string]interface{}{\n\t\t\t\"zip\": \"zap\",\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tjson0 := string(tmpJSON0)\n\t\t_, err = kv.NewSecretV2(ctx, \"awsSecret\", \u0026kv.SecretV2Args{\n\t\t\tMount: kvv2.Path,\n\t\t\tDataJson: pulumi.String(json0),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\ttmpJSON1, err := json.Marshal(map[string]interface{}{\n\t\t\t\"foo\": \"bar\",\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tjson1 := string(tmpJSON1)\n\t\t_, err = kv.NewSecretV2(ctx, \"azureSecret\", \u0026kv.SecretV2Args{\n\t\t\tMount: kvv2.Path,\n\t\t\tDataJson: pulumi.String(json1),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\ttmpJSON2, err := json.Marshal(map[string]interface{}{\n\t\t\t\"password\": \"test\",\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tjson2 := string(tmpJSON2)\n\t\t_, err = kv.NewSecretV2(ctx, \"nestedSecret\", \u0026kv.SecretV2Args{\n\t\t\tMount: kvv2.Path,\n\t\t\tDataJson: pulumi.String(json2),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_ = kv.GetSecretsListV2Output(ctx, kv.GetSecretsListV2OutputArgs{\n\t\t\tMount: kvv2.Path,\n\t\t}, nil)\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.Mount;\nimport com.pulumi.vault.MountArgs;\nimport com.pulumi.vault.kv.SecretV2;\nimport com.pulumi.vault.kv.SecretV2Args;\nimport com.pulumi.vault.kv.KvFunctions;\nimport com.pulumi.vault.kv.inputs.GetSecretsListV2Args;\nimport static com.pulumi.codegen.internal.Serialization.*;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var kvv2 = new Mount(\"kvv2\", MountArgs.builder() \n .path(\"kvv2\")\n .type(\"kv\")\n .options(Map.of(\"version\", \"2\"))\n .description(\"KV Version 2 secret engine mount\")\n .build());\n\n var awsSecret = new SecretV2(\"awsSecret\", SecretV2Args.builder() \n .mount(kvv2.path())\n .dataJson(serializeJson(\n jsonObject(\n jsonProperty(\"zip\", \"zap\")\n )))\n .build());\n\n var azureSecret = new SecretV2(\"azureSecret\", SecretV2Args.builder() \n .mount(kvv2.path())\n .dataJson(serializeJson(\n jsonObject(\n jsonProperty(\"foo\", \"bar\")\n )))\n .build());\n\n var nestedSecret = new SecretV2(\"nestedSecret\", SecretV2Args.builder() \n .mount(kvv2.path())\n .dataJson(serializeJson(\n jsonObject(\n jsonProperty(\"password\", \"test\")\n )))\n .build());\n\n final var secrets = KvFunctions.getSecretsListV2(GetSecretsListV2Args.builder()\n .mount(kvv2.path())\n .build());\n\n final var nestedSecrets = KvFunctions.getSecretsListV2(GetSecretsListV2Args.builder()\n .mount(kvv2.path())\n .name(vault_kv_secret_v2.test_2().name())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n kvv2:\n type: vault:Mount\n properties:\n path: kvv2\n type: kv\n options:\n version: 2\n description: KV Version 2 secret engine mount\n awsSecret:\n type: vault:kv:SecretV2\n properties:\n mount: ${kvv2.path}\n dataJson:\n Fn::ToJSON:\n zip: zap\n azureSecret:\n type: vault:kv:SecretV2\n properties:\n mount: ${kvv2.path}\n dataJson:\n Fn::ToJSON:\n foo: bar\n nestedSecret:\n type: vault:kv:SecretV2\n properties:\n mount: ${kvv2.path}\n dataJson:\n Fn::ToJSON:\n password: test\nvariables:\n secrets:\n Fn::Invoke:\n Function: vault:kv:getSecretsListV2\n Arguments:\n mount: ${kvv2.path}\n nestedSecrets:\n Fn::Invoke:\n Function: vault:kv:getSecretsListV2\n Arguments:\n mount: ${kvv2.path}\n name: ${vault_kv_secret_v2.test_2.name}\n```\n{{% /example %}}\n{{% /examples %}}\n## Required Vault Capabilities\n\nUse of this resource requires the `read` capability on the given path.\n",
+ "vault:pkiSecret/getBackendKeys:getBackendKeys": {
+ "description": "{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst pki = new vault.Mount(\"pki\", {\n path: \"pki\",\n type: \"pki\",\n description: \"PKI secret engine mount\",\n});\nconst root = new vault.pkisecret.SecretBackendRootCert(\"root\", {\n backend: pki.path,\n type: \"internal\",\n commonName: \"example\",\n ttl: \"86400\",\n keyName: \"example\",\n});\nconst example = vault.pkiSecret.getBackendKeysOutput({\n backend: root.backend,\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\npki = vault.Mount(\"pki\",\n path=\"pki\",\n type=\"pki\",\n description=\"PKI secret engine mount\")\nroot = vault.pki_secret.SecretBackendRootCert(\"root\",\n backend=pki.path,\n type=\"internal\",\n common_name=\"example\",\n ttl=\"86400\",\n key_name=\"example\")\nexample = vault.pkiSecret.get_backend_keys_output(backend=root.backend)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var pki = new Vault.Mount(\"pki\", new()\n {\n Path = \"pki\",\n Type = \"pki\",\n Description = \"PKI secret engine mount\",\n });\n\n var root = new Vault.PkiSecret.SecretBackendRootCert(\"root\", new()\n {\n Backend = pki.Path,\n Type = \"internal\",\n CommonName = \"example\",\n Ttl = \"86400\",\n KeyName = \"example\",\n });\n\n var example = Vault.PkiSecret.GetBackendKeys.Invoke(new()\n {\n Backend = root.Backend,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault\"\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/pkiSecret\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tpki, err := vault.NewMount(ctx, \"pki\", \u0026vault.MountArgs{\n\t\t\tPath: pulumi.String(\"pki\"),\n\t\t\tType: pulumi.String(\"pki\"),\n\t\t\tDescription: pulumi.String(\"PKI secret engine mount\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\troot, err := pkiSecret.NewSecretBackendRootCert(ctx, \"root\", \u0026pkiSecret.SecretBackendRootCertArgs{\n\t\t\tBackend: pki.Path,\n\t\t\tType: pulumi.String(\"internal\"),\n\t\t\tCommonName: pulumi.String(\"example\"),\n\t\t\tTtl: pulumi.String(\"86400\"),\n\t\t\tKeyName: pulumi.String(\"example\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_ = pkiSecret.GetBackendKeysOutput(ctx, pkisecret.GetBackendKeysOutputArgs{\n\t\t\tBackend: root.Backend,\n\t\t}, nil)\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.Mount;\nimport com.pulumi.vault.MountArgs;\nimport com.pulumi.vault.pkiSecret.SecretBackendRootCert;\nimport com.pulumi.vault.pkiSecret.SecretBackendRootCertArgs;\nimport com.pulumi.vault.pkiSecret.PkiSecretFunctions;\nimport com.pulumi.vault.pkiSecret.inputs.GetBackendKeysArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var pki = new Mount(\"pki\", MountArgs.builder() \n .path(\"pki\")\n .type(\"pki\")\n .description(\"PKI secret engine mount\")\n .build());\n\n var root = new SecretBackendRootCert(\"root\", SecretBackendRootCertArgs.builder() \n .backend(pki.path())\n .type(\"internal\")\n .commonName(\"example\")\n .ttl(\"86400\")\n .keyName(\"example\")\n .build());\n\n final var example = PkiSecretFunctions.getBackendKeys(GetBackendKeysArgs.builder()\n .backend(root.backend())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n pki:\n type: vault:Mount\n properties:\n path: pki\n type: pki\n description: PKI secret engine mount\n root:\n type: vault:pkiSecret:SecretBackendRootCert\n properties:\n backend: ${pki.path}\n type: internal\n commonName: example\n ttl: '86400'\n keyName: example\nvariables:\n example:\n fn::invoke:\n Function: vault:pkiSecret:getBackendKeys\n Arguments:\n backend: ${root.backend}\n```\n{{% /example %}}\n{{% /examples %}}",
"inputs": {
- "description": "A collection of arguments for invoking getSecretsListV2.\n",
+ "description": "A collection of arguments for invoking getBackendKeys.\n",
"properties": {
- "mount": {
- "type": "string",
- "description": "Path where KV-V2 engine is mounted.\n"
- },
- "name": {
+ "backend": {
"type": "string",
- "description": "Full name of the secret. For a nested secret\nthe name is the nested path excluding the mount and data\nprefix. For example, for a secret at `kvv2/data/foo/bar/baz`\nthe name is `foo/bar/baz`.\n"
+ "description": "The path to the PKI secret backend to\nread the keys from, with no leading or trailing `/`s.\n",
+ "willReplaceOnChanges": true
},
"namespace": {
"type": "string",
@@ -33449,49 +31836,53 @@
},
"type": "object",
"required": [
- "mount"
+ "backend"
]
},
"outputs": {
- "description": "A collection of values returned by getSecretsListV2.\n",
+ "description": "A collection of values returned by getBackendKeys.\n",
"properties": {
+ "backend": {
+ "type": "string"
+ },
"id": {
"type": "string",
"description": "The provider-assigned unique ID for this managed resource.\n"
},
- "mount": {
- "type": "string"
+ "keyInfo": {
+ "type": "object",
+ "additionalProperties": {
+ "$ref": "pulumi.json#/Any"
+ },
+ "description": "Map of key strings read from Vault.\n"
},
- "name": {
- "type": "string"
+ "keyInfoJson": {
+ "type": "string",
+ "description": "JSON-encoded key data read from Vault.\n"
},
- "names": {
+ "keys": {
"type": "array",
"items": {
"type": "string"
},
- "description": "List of all secret names listed under the given path.\n",
- "secret": true
+ "description": "Keys used under the backend path.\n"
},
"namespace": {
"type": "string"
- },
- "path": {
- "type": "string",
- "description": "Full path where the KV-V2 secrets are listed.\n"
}
},
"type": "object",
"required": [
- "mount",
- "names",
- "path",
+ "backend",
+ "keyInfo",
+ "keyInfoJson",
+ "keys",
"id"
]
}
},
"vault:transform/getDecode:getDecode": {
- "description": "This data source supports the \"/transform/decode/{role_name}\" Vault endpoint.\n\nIt decodes the provided value using a named role.\n",
+ "description": "This data source supports the \"/transform/decode/{role_name}\" Vault endpoint.\n\nIt decodes the provided value using a named role.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst transform = new vault.Mount(\"transform\", {\n path: \"transform\",\n type: \"transform\",\n});\nconst ccn_fpe = new vault.transform.Transformation(\"ccn-fpe\", {\n path: transform.path,\n type: \"fpe\",\n template: \"builtin/creditcardnumber\",\n tweakSource: \"internal\",\n allowedRoles: [\"payments\"],\n});\nconst payments = new vault.transform.Role(\"payments\", {\n path: ccn_fpe.path,\n transformations: [\"ccn-fpe\"],\n});\nconst test = vault.transform.getDecodeOutput({\n path: payments.path,\n roleName: \"payments\",\n value: \"9300-3376-4943-8903\",\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\ntransform = vault.Mount(\"transform\",\n path=\"transform\",\n type=\"transform\")\nccn_fpe = vault.transform.Transformation(\"ccn-fpe\",\n path=transform.path,\n type=\"fpe\",\n template=\"builtin/creditcardnumber\",\n tweak_source=\"internal\",\n allowed_roles=[\"payments\"])\npayments = vault.transform.Role(\"payments\",\n path=ccn_fpe.path,\n transformations=[\"ccn-fpe\"])\ntest = vault.transform.get_decode_output(path=payments.path,\n role_name=\"payments\",\n value=\"9300-3376-4943-8903\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var transform = new Vault.Mount(\"transform\", new()\n {\n Path = \"transform\",\n Type = \"transform\",\n });\n\n var ccn_fpe = new Vault.Transform.Transformation(\"ccn-fpe\", new()\n {\n Path = transform.Path,\n Type = \"fpe\",\n Template = \"builtin/creditcardnumber\",\n TweakSource = \"internal\",\n AllowedRoles = new[]\n {\n \"payments\",\n },\n });\n\n var payments = new Vault.Transform.Role(\"payments\", new()\n {\n Path = ccn_fpe.Path,\n Transformations = new[]\n {\n \"ccn-fpe\",\n },\n });\n\n var test = Vault.Transform.GetDecode.Invoke(new()\n {\n Path = payments.Path,\n RoleName = \"payments\",\n Value = \"9300-3376-4943-8903\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault\"\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/transform\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\ttransform, err := vault.NewMount(ctx, \"transform\", \u0026vault.MountArgs{\n\t\t\tPath: pulumi.String(\"transform\"),\n\t\t\tType: pulumi.String(\"transform\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = transform.NewTransformation(ctx, \"ccn-fpe\", \u0026transform.TransformationArgs{\n\t\t\tPath: transform.Path,\n\t\t\tType: pulumi.String(\"fpe\"),\n\t\t\tTemplate: pulumi.String(\"builtin/creditcardnumber\"),\n\t\t\tTweakSource: pulumi.String(\"internal\"),\n\t\t\tAllowedRoles: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"payments\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tpayments, err := transform.NewRole(ctx, \"payments\", \u0026transform.RoleArgs{\n\t\t\tPath: ccn_fpe.Path,\n\t\t\tTransformations: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"ccn-fpe\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_ = transform.GetDecodeOutput(ctx, transform.GetDecodeOutputArgs{\n\t\t\tPath: payments.Path,\n\t\t\tRoleName: pulumi.String(\"payments\"),\n\t\t\tValue: pulumi.String(\"9300-3376-4943-8903\"),\n\t\t}, nil)\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.Mount;\nimport com.pulumi.vault.MountArgs;\nimport com.pulumi.vault.transform.Transformation;\nimport com.pulumi.vault.transform.TransformationArgs;\nimport com.pulumi.vault.transform.Role;\nimport com.pulumi.vault.transform.RoleArgs;\nimport com.pulumi.vault.transform.TransformFunctions;\nimport com.pulumi.vault.transform.inputs.GetDecodeArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var transform = new Mount(\"transform\", MountArgs.builder() \n .path(\"transform\")\n .type(\"transform\")\n .build());\n\n var ccn_fpe = new Transformation(\"ccn-fpe\", TransformationArgs.builder() \n .path(transform.path())\n .type(\"fpe\")\n .template(\"builtin/creditcardnumber\")\n .tweakSource(\"internal\")\n .allowedRoles(\"payments\")\n .build());\n\n var payments = new Role(\"payments\", RoleArgs.builder() \n .path(ccn_fpe.path())\n .transformations(\"ccn-fpe\")\n .build());\n\n final var test = TransformFunctions.getDecode(GetDecodeArgs.builder()\n .path(payments.path())\n .roleName(\"payments\")\n .value(\"9300-3376-4943-8903\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n transform:\n type: vault:Mount\n properties:\n path: transform\n type: transform\n ccn-fpe:\n type: vault:transform:Transformation\n properties:\n path: ${transform.path}\n type: fpe\n template: builtin/creditcardnumber\n tweakSource: internal\n allowedRoles:\n - payments\n payments:\n type: vault:transform:Role\n properties:\n path: ${[\"ccn-fpe\"].path}\n transformations:\n - ccn-fpe\nvariables:\n test:\n fn::invoke:\n Function: vault:transform:getDecode\n Arguments:\n path: ${payments.path}\n roleName: payments\n value: 9300-3376-4943-8903\n```\n{{% /example %}}\n{{% /examples %}}",
"inputs": {
"description": "A collection of arguments for invoking getDecode.\n",
"properties": {
@@ -33519,6 +31910,11 @@
"type": "string",
"description": "The result of decoding a value.\n"
},
+ "namespace": {
+ "type": "string",
+ "description": "The namespace of the target resource.\nThe value should not contain leading or trailing forward slashes.\nThe `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault#namespace).\n*Available only for Vault Enterprise*.\n",
+ "willReplaceOnChanges": true
+ },
"path": {
"type": "string",
"description": "Path to where the back-end is mounted within Vault.\n",
@@ -33576,6 +31972,9 @@
"type": "string",
"description": "The provider-assigned unique ID for this managed resource.\n"
},
+ "namespace": {
+ "type": "string"
+ },
"path": {
"type": "string"
},
@@ -33603,7 +32002,7 @@
}
},
"vault:transform/getEncode:getEncode": {
- "description": "This data source supports the \"/transform/encode/{role_name}\" Vault endpoint.\n\nIt encodes the provided value using a named role.\n",
+ "description": "This data source supports the \"/transform/encode/{role_name}\" Vault endpoint.\n\nIt encodes the provided value using a named role.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst transform = new vault.Mount(\"transform\", {\n path: \"transform\",\n type: \"transform\",\n});\nconst ccn_fpe = new vault.transform.Transformation(\"ccn-fpe\", {\n path: transform.path,\n type: \"fpe\",\n template: \"builtin/creditcardnumber\",\n tweakSource: \"internal\",\n allowedRoles: [\"payments\"],\n});\nconst payments = new vault.transform.Role(\"payments\", {\n path: ccn_fpe.path,\n transformations: [\"ccn-fpe\"],\n});\nconst test = vault.transform.getEncodeOutput({\n path: payments.path,\n roleName: \"payments\",\n batchInputs: [{\n value: \"1111-2222-3333-4444\",\n }],\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\ntransform = vault.Mount(\"transform\",\n path=\"transform\",\n type=\"transform\")\nccn_fpe = vault.transform.Transformation(\"ccn-fpe\",\n path=transform.path,\n type=\"fpe\",\n template=\"builtin/creditcardnumber\",\n tweak_source=\"internal\",\n allowed_roles=[\"payments\"])\npayments = vault.transform.Role(\"payments\",\n path=ccn_fpe.path,\n transformations=[\"ccn-fpe\"])\ntest = vault.transform.get_encode_output(path=payments.path,\n role_name=\"payments\",\n batch_inputs=[{\n \"value\": \"1111-2222-3333-4444\",\n }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var transform = new Vault.Mount(\"transform\", new()\n {\n Path = \"transform\",\n Type = \"transform\",\n });\n\n var ccn_fpe = new Vault.Transform.Transformation(\"ccn-fpe\", new()\n {\n Path = transform.Path,\n Type = \"fpe\",\n Template = \"builtin/creditcardnumber\",\n TweakSource = \"internal\",\n AllowedRoles = new[]\n {\n \"payments\",\n },\n });\n\n var payments = new Vault.Transform.Role(\"payments\", new()\n {\n Path = ccn_fpe.Path,\n Transformations = new[]\n {\n \"ccn-fpe\",\n },\n });\n\n var test = Vault.Transform.GetEncode.Invoke(new()\n {\n Path = payments.Path,\n RoleName = \"payments\",\n BatchInputs = new[]\n {\n \n {\n { \"value\", \"1111-2222-3333-4444\" },\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault\"\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/transform\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\ttransform, err := vault.NewMount(ctx, \"transform\", \u0026vault.MountArgs{\n\t\t\tPath: pulumi.String(\"transform\"),\n\t\t\tType: pulumi.String(\"transform\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = transform.NewTransformation(ctx, \"ccn-fpe\", \u0026transform.TransformationArgs{\n\t\t\tPath: transform.Path,\n\t\t\tType: pulumi.String(\"fpe\"),\n\t\t\tTemplate: pulumi.String(\"builtin/creditcardnumber\"),\n\t\t\tTweakSource: pulumi.String(\"internal\"),\n\t\t\tAllowedRoles: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"payments\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tpayments, err := transform.NewRole(ctx, \"payments\", \u0026transform.RoleArgs{\n\t\t\tPath: ccn_fpe.Path,\n\t\t\tTransformations: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"ccn-fpe\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_ = transform.GetEncodeOutput(ctx, transform.GetEncodeOutputArgs{\n\t\t\tPath: payments.Path,\n\t\t\tRoleName: pulumi.String(\"payments\"),\n\t\t\tBatchInputs: pulumi.MapArray{\n\t\t\t\tpulumi.Map{\n\t\t\t\t\t\"value\": pulumi.Any(\"1111-2222-3333-4444\"),\n\t\t\t\t},\n\t\t\t},\n\t\t}, nil)\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.Mount;\nimport com.pulumi.vault.MountArgs;\nimport com.pulumi.vault.transform.Transformation;\nimport com.pulumi.vault.transform.TransformationArgs;\nimport com.pulumi.vault.transform.Role;\nimport com.pulumi.vault.transform.RoleArgs;\nimport com.pulumi.vault.transform.TransformFunctions;\nimport com.pulumi.vault.transform.inputs.GetEncodeArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var transform = new Mount(\"transform\", MountArgs.builder() \n .path(\"transform\")\n .type(\"transform\")\n .build());\n\n var ccn_fpe = new Transformation(\"ccn-fpe\", TransformationArgs.builder() \n .path(transform.path())\n .type(\"fpe\")\n .template(\"builtin/creditcardnumber\")\n .tweakSource(\"internal\")\n .allowedRoles(\"payments\")\n .build());\n\n var payments = new Role(\"payments\", RoleArgs.builder() \n .path(ccn_fpe.path())\n .transformations(\"ccn-fpe\")\n .build());\n\n final var test = TransformFunctions.getEncode(GetEncodeArgs.builder()\n .path(payments.path())\n .roleName(\"payments\")\n .batchInputs(Map.of(\"value\", \"1111-2222-3333-4444\"))\n .build());\n\n }\n}\n```\n```yaml\nresources:\n transform:\n type: vault:Mount\n properties:\n path: transform\n type: transform\n ccn-fpe:\n type: vault:transform:Transformation\n properties:\n path: ${transform.path}\n type: fpe\n template: builtin/creditcardnumber\n tweakSource: internal\n allowedRoles:\n - payments\n payments:\n type: vault:transform:Role\n properties:\n path: ${[\"ccn-fpe\"].path}\n transformations:\n - ccn-fpe\nvariables:\n test:\n fn::invoke:\n Function: vault:transform:getEncode\n Arguments:\n path: ${payments.path}\n roleName: payments\n batchInputs:\n - value: 1111-2222-3333-4444\n```\n{{% /example %}}\n{{% /examples %}}",
"inputs": {
"description": "A collection of arguments for invoking getEncode.\n",
"properties": {
@@ -33631,6 +32030,11 @@
"type": "string",
"description": "The result of encoding a value.\n"
},
+ "namespace": {
+ "type": "string",
+ "description": "The namespace of the target resource.\nThe value should not contain leading or trailing forward slashes.\nThe `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault#namespace).\n*Available only for Vault Enterprise*.\n",
+ "willReplaceOnChanges": true
+ },
"path": {
"type": "string",
"description": "Path to where the back-end is mounted within Vault.\n",
@@ -33688,6 +32092,9 @@
"type": "string",
"description": "The provider-assigned unique ID for this managed resource.\n"
},
+ "namespace": {
+ "type": "string"
+ },
"path": {
"type": "string"
},
@@ -33715,7 +32122,7 @@
}
},
"vault:transit/getDecrypt:getDecrypt": {
- "description": "This is a data source which can be used to decrypt ciphertext using a Vault Transit key.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst test = pulumi.output(vault.transit.getDecrypt({\n backend: \"transit\",\n ciphertext: \"vault:v1:S3GtnJ5GUNCWV+/pdL9+g1Feu/nzAv+RlmTmE91Tu0rBkeIU8MEb2nSspC/1IQ==\",\n key: \"test\",\n}));\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\ntest = vault.transit.get_decrypt(backend=\"transit\",\n ciphertext=\"vault:v1:S3GtnJ5GUNCWV+/pdL9+g1Feu/nzAv+RlmTmE91Tu0rBkeIU8MEb2nSspC/1IQ==\",\n key=\"test\")\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var test = Vault.Transit.GetDecrypt.Invoke(new()\n {\n Backend = \"transit\",\n Ciphertext = \"vault:v1:S3GtnJ5GUNCWV+/pdL9+g1Feu/nzAv+RlmTmE91Tu0rBkeIU8MEb2nSspC/1IQ==\",\n Key = \"test\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/transit\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := transit.GetDecrypt(ctx, \u0026transit.GetDecryptArgs{\n\t\t\tBackend: \"transit\",\n\t\t\tCiphertext: \"vault:v1:S3GtnJ5GUNCWV+/pdL9+g1Feu/nzAv+RlmTmE91Tu0rBkeIU8MEb2nSspC/1IQ==\",\n\t\t\tKey: \"test\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.transit.TransitFunctions;\nimport com.pulumi.vault.transit.inputs.GetDecryptArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var test = TransitFunctions.getDecrypt(GetDecryptArgs.builder()\n .backend(\"transit\")\n .ciphertext(\"vault:v1:S3GtnJ5GUNCWV+/pdL9+g1Feu/nzAv+RlmTmE91Tu0rBkeIU8MEb2nSspC/1IQ==\")\n .key(\"test\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n test:\n Fn::Invoke:\n Function: vault:transit:getDecrypt\n Arguments:\n backend: transit\n ciphertext: vault:v1:S3GtnJ5GUNCWV+/pdL9+g1Feu/nzAv+RlmTmE91Tu0rBkeIU8MEb2nSspC/1IQ==\n key: test\n```\n{{% /example %}}\n{{% /examples %}}",
+ "description": "This is a data source which can be used to decrypt ciphertext using a Vault Transit key.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as vault from \"@pulumi/vault\";\n\nconst test = vault.transit.getDecrypt({\n backend: \"transit\",\n ciphertext: \"vault:v1:S3GtnJ5GUNCWV+/pdL9+g1Feu/nzAv+RlmTmE91Tu0rBkeIU8MEb2nSspC/1IQ==\",\n key: \"test\",\n});\n```\n```python\nimport pulumi\nimport pulumi_vault as vault\n\ntest = vault.transit.get_decrypt(backend=\"transit\",\n ciphertext=\"vault:v1:S3GtnJ5GUNCWV+/pdL9+g1Feu/nzAv+RlmTmE91Tu0rBkeIU8MEb2nSspC/1IQ==\",\n key=\"test\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Vault = Pulumi.Vault;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var test = Vault.Transit.GetDecrypt.Invoke(new()\n {\n Backend = \"transit\",\n Ciphertext = \"vault:v1:S3GtnJ5GUNCWV+/pdL9+g1Feu/nzAv+RlmTmE91Tu0rBkeIU8MEb2nSspC/1IQ==\",\n Key = \"test\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/transit\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := transit.GetDecrypt(ctx, \u0026transit.GetDecryptArgs{\n\t\t\tBackend: \"transit\",\n\t\t\tCiphertext: \"vault:v1:S3GtnJ5GUNCWV+/pdL9+g1Feu/nzAv+RlmTmE91Tu0rBkeIU8MEb2nSspC/1IQ==\",\n\t\t\tKey: \"test\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.vault.transit.TransitFunctions;\nimport com.pulumi.vault.transit.inputs.GetDecryptArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var test = TransitFunctions.getDecrypt(GetDecryptArgs.builder()\n .backend(\"transit\")\n .ciphertext(\"vault:v1:S3GtnJ5GUNCWV+/pdL9+g1Feu/nzAv+RlmTmE91Tu0rBkeIU8MEb2nSspC/1IQ==\")\n .key(\"test\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n test:\n fn::invoke:\n Function: vault:transit:getDecrypt\n Arguments:\n backend: transit\n ciphertext: vault:v1:S3GtnJ5GUNCWV+/pdL9+g1Feu/nzAv+RlmTmE91Tu0rBkeIU8MEb2nSspC/1IQ==\n key: test\n```\n{{% /example %}}\n{{% /examples %}}",
"inputs": {
"description": "A collection of arguments for invoking getDecrypt.\n",
"properties": {
diff --git a/provider/go.mod b/provider/go.mod
index 5d22d95cd..aa0e29b68 100644
--- a/provider/go.mod
+++ b/provider/go.mod
@@ -1,11 +1,13 @@
module github.com/pulumi/pulumi-vault/provider/v5
-go 1.21
+go 1.21.3
+
+toolchain go1.21.4
require (
github.com/hashicorp/terraform-provider-vault v0.0.0
- github.com/pulumi/pulumi-terraform-bridge/v3 v3.32.0
- github.com/pulumi/pulumi/sdk/v3 v3.42.0
+ github.com/pulumi/pulumi-terraform-bridge/v3 v3.63.2
+ github.com/pulumi/pulumi/sdk/v3 v3.91.1
)
require (
@@ -17,56 +19,64 @@ require (
cloud.google.com/go/logging v1.8.1 // indirect
cloud.google.com/go/longrunning v0.5.1 // indirect
cloud.google.com/go/storage v1.30.1 // indirect
- github.com/Azure/azure-pipeline-go v0.2.3 // indirect
- github.com/Azure/azure-sdk-for-go v61.4.0+incompatible // indirect
- github.com/Azure/azure-sdk-for-go/sdk/azcore v0.22.0 // indirect
- github.com/Azure/azure-sdk-for-go/sdk/azidentity v0.13.2 // indirect
- github.com/Azure/azure-sdk-for-go/sdk/internal v0.9.1 // indirect
- github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/resources/armresources v0.3.1 // indirect
- github.com/Azure/azure-storage-blob-go v0.14.0 // indirect
- github.com/Azure/go-ansiterm v0.0.0-20210617225240-d185dfc1b5a1 // indirect
+ dario.cat/mergo v1.0.0 // indirect
+ github.com/Azure/azure-sdk-for-go v66.0.0+incompatible // indirect
+ github.com/Azure/azure-sdk-for-go/sdk/azcore v1.8.0 // indirect
+ github.com/Azure/azure-sdk-for-go/sdk/azidentity v1.4.0 // indirect
+ github.com/Azure/azure-sdk-for-go/sdk/internal v1.3.0 // indirect
+ github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/resources/armresources v1.1.1 // indirect
github.com/Azure/go-autorest v14.2.0+incompatible // indirect
github.com/Azure/go-autorest/autorest v0.11.29 // indirect
github.com/Azure/go-autorest/autorest/adal v0.9.22 // indirect
github.com/Azure/go-autorest/autorest/azure/auth v0.5.11 // indirect
- github.com/Azure/go-autorest/autorest/azure/cli v0.4.5 // indirect
+ github.com/Azure/go-autorest/autorest/azure/cli v0.4.6 // indirect
github.com/Azure/go-autorest/autorest/date v0.3.0 // indirect
github.com/Azure/go-autorest/autorest/to v0.4.0 // indirect
github.com/Azure/go-autorest/autorest/validation v0.3.1 // indirect
github.com/Azure/go-autorest/logger v0.2.1 // indirect
github.com/Azure/go-autorest/tracing v0.6.0 // indirect
github.com/Azure/go-ntlmssp v0.0.0-20221128193559-754e69321358 // indirect
- github.com/AzureAD/microsoft-authentication-library-for-go v0.4.0 // indirect
+ github.com/AzureAD/microsoft-authentication-library-for-go v1.1.1 // indirect
+ github.com/BurntSushi/toml v1.2.1 // indirect
github.com/Masterminds/goutils v1.1.1 // indirect
+ github.com/Masterminds/semver v1.5.0 // indirect
github.com/Masterminds/semver/v3 v3.1.1 // indirect
- github.com/Masterminds/sprig/v3 v3.2.1 // indirect
+ github.com/Masterminds/sprig/v3 v3.2.2 // indirect
github.com/Microsoft/go-winio v0.6.1 // indirect
- github.com/ProtonMail/go-crypto v0.0.0-20230217124315-7d5c6f04bbb8 // indirect
+ github.com/ProtonMail/go-crypto v0.0.0-20230717121422-5aa5874ade95 // indirect
github.com/acomagu/bufpipe v1.0.4 // indirect
github.com/aead/chacha20 v0.0.0-20180709150244-8b13a72661da // indirect
github.com/agext/levenshtein v1.2.3 // indirect
github.com/apparentlymart/go-cidr v1.1.0 // indirect
- github.com/apparentlymart/go-textseg/v13 v13.0.0 // indirect
+ github.com/apparentlymart/go-textseg/v15 v15.0.0 // indirect
github.com/armon/go-metrics v0.4.1 // indirect
github.com/armon/go-radix v1.0.0 // indirect
- github.com/aws/aws-sdk-go v1.44.214 // indirect
- github.com/aws/aws-sdk-go-v2 v1.9.0 // indirect
- github.com/aws/aws-sdk-go-v2/config v1.7.0 // indirect
- github.com/aws/aws-sdk-go-v2/credentials v1.4.0 // indirect
- github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.5.0 // indirect
- github.com/aws/aws-sdk-go-v2/internal/ini v1.2.2 // indirect
- github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.3.0 // indirect
- github.com/aws/aws-sdk-go-v2/service/kms v1.5.0 // indirect
- github.com/aws/aws-sdk-go-v2/service/sso v1.4.0 // indirect
- github.com/aws/aws-sdk-go-v2/service/sts v1.7.0 // indirect
- github.com/aws/smithy-go v1.8.0 // indirect
+ github.com/atotto/clipboard v0.1.4 // indirect
+ github.com/aws/aws-sdk-go v1.45.24 // indirect
+ github.com/aws/aws-sdk-go-v2 v1.17.3 // indirect
+ github.com/aws/aws-sdk-go-v2/config v1.15.15 // indirect
+ github.com/aws/aws-sdk-go-v2/credentials v1.12.10 // indirect
+ github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.12.9 // indirect
+ github.com/aws/aws-sdk-go-v2/internal/configsources v1.1.27 // indirect
+ github.com/aws/aws-sdk-go-v2/internal/endpoints/v2 v2.4.21 // indirect
+ github.com/aws/aws-sdk-go-v2/internal/ini v1.3.16 // indirect
+ github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.9.9 // indirect
+ github.com/aws/aws-sdk-go-v2/service/kms v1.18.1 // indirect
+ github.com/aws/aws-sdk-go-v2/service/sso v1.11.13 // indirect
+ github.com/aws/aws-sdk-go-v2/service/sts v1.16.10 // indirect
+ github.com/aws/smithy-go v1.13.5 // indirect
+ github.com/aymanbagabas/go-osc52/v2 v2.0.1 // indirect
github.com/bgentry/go-netrc v0.0.0-20140422174119-9fd32a8b3d3d // indirect
github.com/bgentry/speakeasy v0.1.0 // indirect
github.com/blang/semver v3.5.1+incompatible // indirect
github.com/cenkalti/backoff/v3 v3.2.2 // indirect
github.com/cenkalti/backoff/v4 v4.2.1 // indirect
+ github.com/charmbracelet/bubbles v0.16.1 // indirect
+ github.com/charmbracelet/bubbletea v0.24.2 // indirect
+ github.com/charmbracelet/lipgloss v0.7.1 // indirect
github.com/cheggaaa/pb v1.0.29 // indirect
github.com/cloudflare/circl v1.3.3 // indirect
+ github.com/containerd/console v1.0.4-0.20230313162750-1ae8d489ac81 // indirect
github.com/coreos/go-oidc/v3 v3.5.0 // indirect
github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc // indirect
github.com/dimchansky/utfbom v1.1.1 // indirect
@@ -75,7 +85,6 @@ require (
github.com/docker/docker v24.0.5+incompatible // indirect
github.com/docker/go-connections v0.4.0 // indirect
github.com/docker/go-units v0.5.0 // indirect
- github.com/dustin/go-humanize v1.0.1 // indirect
github.com/edsrzf/mmap-go v1.1.0 // indirect
github.com/emirpasic/gods v1.18.1 // indirect
github.com/ettle/strcase v0.1.1 // indirect
@@ -83,15 +92,15 @@ require (
github.com/fatih/color v1.14.1 // indirect
github.com/gedex/inflector v0.0.0-20170307190818-16278e9db813 // indirect
github.com/go-asn1-ber/asn1-ber v1.5.4 // indirect
- github.com/go-git/gcfg v1.5.0 // indirect
+ github.com/go-git/gcfg v1.5.1-0.20230307220236-3a3c6141e376 // indirect
github.com/go-git/go-billy/v5 v5.4.1 // indirect
- github.com/go-git/go-git/v5 v5.6.1 // indirect
+ github.com/go-git/go-git/v5 v5.8.1 // indirect
github.com/go-jose/go-jose/v3 v3.0.0 // indirect
github.com/go-ldap/ldap/v3 v3.4.4 // indirect
github.com/gofrs/uuid v4.2.0+incompatible // indirect
github.com/gogo/protobuf v1.3.2 // indirect
- github.com/golang-jwt/jwt v3.2.1+incompatible // indirect
github.com/golang-jwt/jwt/v4 v4.5.0 // indirect
+ github.com/golang-jwt/jwt/v5 v5.0.0 // indirect
github.com/golang/glog v1.1.0 // indirect
github.com/golang/groupcache v0.0.0-20210331224755-41bb18bfe9da // indirect
github.com/golang/protobuf v1.5.3 // indirect
@@ -113,13 +122,13 @@ require (
github.com/hashicorp/go-checkpoint v0.5.0 // indirect
github.com/hashicorp/go-cleanhttp v0.5.2 // indirect
github.com/hashicorp/go-cty v1.4.1-0.20200723130312-85980079f637 // indirect
- github.com/hashicorp/go-getter v1.6.1 // indirect
+ github.com/hashicorp/go-getter v1.7.1 // indirect
github.com/hashicorp/go-hclog v1.5.0 // indirect
github.com/hashicorp/go-immutable-radix v1.3.1 // indirect
github.com/hashicorp/go-kms-wrapping/entropy/v2 v2.0.0 // indirect
github.com/hashicorp/go-kms-wrapping/v2 v2.0.8 // indirect
github.com/hashicorp/go-multierror v1.1.1 // indirect
- github.com/hashicorp/go-plugin v1.5.0 // indirect
+ github.com/hashicorp/go-plugin v1.5.1 // indirect
github.com/hashicorp/go-retryablehttp v0.7.4 // indirect
github.com/hashicorp/go-rootcerts v1.0.2 // indirect
github.com/hashicorp/go-safetemp v1.0.0 // indirect
@@ -134,17 +143,17 @@ require (
github.com/hashicorp/go-uuid v1.0.3 // indirect
github.com/hashicorp/go-version v1.6.0 // indirect
github.com/hashicorp/golang-lru v0.5.4 // indirect
- github.com/hashicorp/hc-install v0.5.2 // indirect
+ github.com/hashicorp/hc-install v0.6.0 // indirect
github.com/hashicorp/hcl v1.0.1-vault-5 // indirect
- github.com/hashicorp/hcl/v2 v2.17.0 // indirect
+ github.com/hashicorp/hcl/v2 v2.18.0 // indirect
github.com/hashicorp/hil v0.0.0-20190212132231-97b3a9cdfa93 // indirect
github.com/hashicorp/logutils v1.0.0 // indirect
- github.com/hashicorp/terraform-exec v0.18.1 // indirect
- github.com/hashicorp/terraform-json v0.17.0 // indirect
- github.com/hashicorp/terraform-plugin-go v0.16.0 // indirect
+ github.com/hashicorp/terraform-exec v0.19.0 // indirect
+ github.com/hashicorp/terraform-json v0.17.1 // indirect
+ github.com/hashicorp/terraform-plugin-go v0.19.0 // indirect
github.com/hashicorp/terraform-plugin-log v0.9.0 // indirect
github.com/hashicorp/terraform-plugin-sdk/v2 v2.29.0 // indirect
- github.com/hashicorp/terraform-registry-address v0.2.1 // indirect
+ github.com/hashicorp/terraform-registry-address v0.2.2 // indirect
github.com/hashicorp/terraform-svchost v0.1.1 // indirect
github.com/hashicorp/vault-plugin-auth-jwt v0.17.0 // indirect
github.com/hashicorp/vault-plugin-auth-kerberos v0.10.1 // indirect
@@ -154,9 +163,8 @@ require (
github.com/hashicorp/yamux v0.1.1 // indirect
github.com/huandu/xstrings v1.3.2 // indirect
github.com/iancoleman/strcase v0.2.0 // indirect
- github.com/ijc/Gotty v0.0.0-20170406111628-a8b993ba6abd // indirect
- github.com/imdario/mergo v0.3.13 // indirect
- github.com/inconshreveable/mousetrap v1.0.1 // indirect
+ github.com/imdario/mergo v0.3.15 // indirect
+ github.com/inconshreveable/mousetrap v1.1.0 // indirect
github.com/jbenet/go-context v0.0.0-20150711004518-d14ea06fba99 // indirect
github.com/jcmturner/aescts/v2 v2.0.0 // indirect
github.com/jcmturner/dnsutils/v2 v2.0.0 // indirect
@@ -166,14 +174,13 @@ require (
github.com/jcmturner/rpc/v2 v2.0.3 // indirect
github.com/jmespath/go-jmespath v0.4.0 // indirect
github.com/json-iterator/go v1.1.12 // indirect
- github.com/kballard/go-shellquote v0.0.0-20180428030007-95032a82bc51 // indirect
github.com/kevinburke/ssh_config v1.2.0 // indirect
github.com/kylelemons/godebug v1.1.0 // indirect
+ github.com/lucasb-eyer/go-colorful v1.2.0 // indirect
github.com/mattn/go-colorable v0.1.13 // indirect
- github.com/mattn/go-ieproxy v0.0.1 // indirect
- github.com/mattn/go-isatty v0.0.17 // indirect
- github.com/mattn/go-runewidth v0.0.13 // indirect
- github.com/mgutz/ansi v0.0.0-20170206155736-9520e82c474b // indirect
+ github.com/mattn/go-isatty v0.0.18 // indirect
+ github.com/mattn/go-localereader v0.0.1 // indirect
+ github.com/mattn/go-runewidth v0.0.14 // indirect
github.com/mitchellh/cli v1.1.5 // indirect
github.com/mitchellh/copystructure v1.2.0 // indirect
github.com/mitchellh/go-homedir v1.1.0 // indirect
@@ -184,9 +191,12 @@ require (
github.com/mitchellh/mapstructure v1.5.0 // indirect
github.com/mitchellh/pointerstructure v1.2.1 // indirect
github.com/mitchellh/reflectwalk v1.0.2 // indirect
- github.com/moby/term v0.5.0 // indirect
github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd // indirect
github.com/modern-go/reflect2 v1.0.2 // indirect
+ github.com/muesli/ansi v0.0.0-20211018074035-2e021307bc4b // indirect
+ github.com/muesli/cancelreader v0.2.2 // indirect
+ github.com/muesli/reflow v0.3.0 // indirect
+ github.com/muesli/termenv v0.15.1 // indirect
github.com/natefinch/atomic v1.0.1 // indirect
github.com/oklog/run v1.1.0 // indirect
github.com/opencontainers/go-digest v1.0.0 // indirect
@@ -203,25 +213,27 @@ require (
github.com/pkg/term v1.1.0 // indirect
github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2 // indirect
github.com/posener/complete v1.2.3 // indirect
- github.com/pulumi/pulumi-java/pkg v0.6.0 // indirect
- github.com/pulumi/pulumi-yaml v0.5.8 // indirect
- github.com/pulumi/pulumi/pkg/v3 v3.40.2 // indirect
- github.com/pulumi/schema-tools v0.1.0 // indirect
- github.com/pulumi/terraform-diff-reader v0.0.0-20201211191010-ad4715e9285e // indirect
- github.com/rivo/uniseg v0.2.0 // indirect
- github.com/rogpeppe/go-internal v1.9.0 // indirect
+ github.com/pulumi/esc v0.5.6 // indirect
+ github.com/pulumi/pulumi-java/pkg v0.9.8 // indirect
+ github.com/pulumi/pulumi-terraform-bridge/x/muxer v0.0.4 // indirect
+ github.com/pulumi/pulumi-yaml v1.2.2 // indirect
+ github.com/pulumi/pulumi/pkg/v3 v3.91.1 // indirect
+ github.com/pulumi/schema-tools v0.1.2 // indirect
+ github.com/pulumi/terraform-diff-reader v0.0.2 // indirect
+ github.com/rivo/uniseg v0.4.4 // indirect
+ github.com/rogpeppe/go-internal v1.11.0 // indirect
github.com/russross/blackfriday/v2 v2.1.0 // indirect
github.com/ryanuber/go-glob v1.0.0 // indirect
github.com/sabhiram/go-gitignore v0.0.0-20210923224102-525f6e181f06 // indirect
github.com/santhosh-tekuri/jsonschema/v5 v5.0.0 // indirect
github.com/segmentio/asm v1.1.3 // indirect
github.com/segmentio/encoding v0.3.5 // indirect
- github.com/sergi/go-diff v1.2.0 // indirect
- github.com/shopspring/decimal v1.2.0 // indirect
- github.com/skeema/knownhosts v1.1.0 // indirect
- github.com/spf13/afero v1.9.2 // indirect
- github.com/spf13/cast v1.4.1 // indirect
- github.com/spf13/cobra v1.6.0 // indirect
+ github.com/sergi/go-diff v1.3.1 // indirect
+ github.com/shopspring/decimal v1.3.1 // indirect
+ github.com/skeema/knownhosts v1.2.0 // indirect
+ github.com/spf13/afero v1.9.5 // indirect
+ github.com/spf13/cast v1.5.0 // indirect
+ github.com/spf13/cobra v1.7.0 // indirect
github.com/spf13/pflag v1.0.5 // indirect
github.com/stretchr/testify v1.8.4 // indirect
github.com/texttheater/golang-levenshtein v1.0.1 // indirect
@@ -236,21 +248,22 @@ require (
github.com/xeipuuv/gojsonpointer v0.0.0-20190905194746-02993c407bfb // indirect
github.com/xeipuuv/gojsonreference v0.0.0-20180127040603-bd5ef7bd5415 // indirect
github.com/xeipuuv/gojsonschema v1.2.0 // indirect
- github.com/zclconf/go-cty v1.13.2 // indirect
+ github.com/zclconf/go-cty v1.14.0 // indirect
go.opencensus.io v0.24.0 // indirect
go.uber.org/atomic v1.10.0 // indirect
- gocloud.dev v0.24.0 // indirect
- gocloud.dev/secrets/hashivault v0.24.0 // indirect
+ gocloud.dev v0.27.0 // indirect
+ gocloud.dev/secrets/hashivault v0.27.0 // indirect
golang.org/x/crypto v0.14.0 // indirect
- golang.org/x/mod v0.11.0 // indirect
+ golang.org/x/exp v0.0.0-20231006140011-7918f672742d // indirect
+ golang.org/x/mod v0.13.0 // indirect
golang.org/x/net v0.17.0 // indirect
golang.org/x/oauth2 v0.12.0 // indirect
- golang.org/x/sync v0.3.0 // indirect
+ golang.org/x/sync v0.4.0 // indirect
golang.org/x/sys v0.13.0 // indirect
golang.org/x/term v0.13.0 // indirect
golang.org/x/text v0.13.0 // indirect
golang.org/x/time v0.3.0 // indirect
- golang.org/x/tools v0.10.0 // indirect
+ golang.org/x/tools v0.14.0 // indirect
golang.org/x/xerrors v0.0.0-20220907171357-04be3eba64a2 // indirect
google.golang.org/api v0.144.0 // indirect
google.golang.org/appengine v1.6.7 // indirect
@@ -259,11 +272,9 @@ require (
google.golang.org/genproto/googleapis/rpc v0.0.0-20230920204549-e6e6cdab5c13 // indirect
google.golang.org/grpc v1.58.2 // indirect
google.golang.org/protobuf v1.31.0 // indirect
- gopkg.in/AlecAivazis/survey.v1 v1.8.9-0.20200217094205-6773bdf39b7f // indirect
gopkg.in/jcmturner/goidentity.v3 v3.0.0 // indirect
gopkg.in/square/go-jose.v2 v2.6.0 // indirect
gopkg.in/warnings.v0 v0.1.2 // indirect
- gopkg.in/yaml.v2 v2.4.0 // indirect
gopkg.in/yaml.v3 v3.0.1 // indirect
k8s.io/utils v0.0.0-20230726121419-3b25d923346b // indirect
lukechampine.com/frand v1.4.2 // indirect
@@ -273,6 +284,6 @@ require (
replace (
github.com/hashicorp/go-getter => github.com/hashicorp/go-getter v1.4.0
- github.com/hashicorp/terraform-plugin-sdk/v2 => github.com/pulumi/terraform-plugin-sdk/v2 v2.0.0-20230710100801-03a71d0fca3d
- github.com/hashicorp/terraform-provider-vault => github.com/pulumi/terraform-provider-vault v1.9.1-0.20231012211048-cc8060e32cc4
+ github.com/hashicorp/terraform-plugin-sdk/v2 => github.com/pulumi/terraform-plugin-sdk/v2 v2.0.0-20230912190043-e6d96b3b8f7e
+ github.com/hashicorp/terraform-provider-vault => github.com/pulumi/terraform-provider-vault v1.9.1-0.20231108235540-710122092170
)
diff --git a/provider/go.sum b/provider/go.sum
index 0b23ffd69..c34390287 100644
--- a/provider/go.sum
+++ b/provider/go.sum
@@ -1,5 +1,4 @@
bazil.org/fuse v0.0.0-20160811212531-371fbbdaa898/go.mod h1:Xbm+BRKSBEpa4q4hTSxohYNQpsxXPbPry4JJWOB3LB8=
-bazil.org/fuse v0.0.0-20180421153158-65cc252bf669/go.mod h1:Xbm+BRKSBEpa4q4hTSxohYNQpsxXPbPry4JJWOB3LB8=
bazil.org/fuse v0.0.0-20200407214033-5883e5a4b512/go.mod h1:FbcW6z/2VytnFDhZfumh8Ss8zxHE6qpMP5sHTRe0EaM=
cloud.google.com/go v0.26.0/go.mod h1:aQUYkXzVsufM+DwF1aE+0xfcU+56JwCaLick0ClmMTw=
cloud.google.com/go v0.34.0/go.mod h1:aQUYkXzVsufM+DwF1aE+0xfcU+56JwCaLick0ClmMTw=
@@ -27,13 +26,8 @@ cloud.google.com/go v0.82.0/go.mod h1:vlKccHJGuFBFufnAnuB08dfEH9Y3H7dzDzRECFdC2T
cloud.google.com/go v0.83.0/go.mod h1:Z7MJUsANfY0pYPdw0lbnivPx4/vhy/e2FEkSkF7vAVY=
cloud.google.com/go v0.84.0/go.mod h1:RazrYuxIK6Kb7YrzzhPoLmCVzl7Sup4NrbKPg8KHSUM=
cloud.google.com/go v0.87.0/go.mod h1:TpDYlFy7vuLzZMMZ+B6iRiELaY7z/gJPaqbMx6mlWcY=
-cloud.google.com/go v0.88.0/go.mod h1:dnKwfYbP9hQhefiUvpbcAyoGSHUrOxR20JVElLiUvEY=
-cloud.google.com/go v0.89.0/go.mod h1:kRX0mNRHe0e2rC6oNakvwQqzyDmg57xJ+SZU1eT2aDQ=
cloud.google.com/go v0.90.0/go.mod h1:kRX0mNRHe0e2rC6oNakvwQqzyDmg57xJ+SZU1eT2aDQ=
-cloud.google.com/go v0.92.2/go.mod h1:8utlLll2EF5XMAV15woO4lSbWQlk8rer9aLOfLh7+YI=
-cloud.google.com/go v0.92.3/go.mod h1:8utlLll2EF5XMAV15woO4lSbWQlk8rer9aLOfLh7+YI=
cloud.google.com/go v0.93.3/go.mod h1:8utlLll2EF5XMAV15woO4lSbWQlk8rer9aLOfLh7+YI=
-cloud.google.com/go v0.94.0/go.mod h1:qAlAugsXlC+JWO+Bke5vCtc9ONxjQT3drlTTnAplMW4=
cloud.google.com/go v0.94.1/go.mod h1:qAlAugsXlC+JWO+Bke5vCtc9ONxjQT3drlTTnAplMW4=
cloud.google.com/go v0.97.0/go.mod h1:GF7l59pYBVlXQIBLx3a761cZ41F9bBH3JUlihCt2Udc=
cloud.google.com/go v0.99.0/go.mod h1:w0Xx2nLzqWJPuozYQX+hFfCSI8WioryfRDzkoI/Y2ZA=
@@ -41,54 +35,40 @@ cloud.google.com/go v0.100.1/go.mod h1:fs4QogzfH5n2pBXBP9vRiU+eCny7lD2vmFZy79Iuw
cloud.google.com/go v0.100.2/go.mod h1:4Xra9TjzAeYHrl5+oeLlzbM2k3mjVhZh4UqTZ//w99A=
cloud.google.com/go v0.102.0/go.mod h1:oWcCzKlqJ5zgHQt9YsaeTY9KzIvjyy0ArmiBUgpQ+nc=
cloud.google.com/go v0.102.1/go.mod h1:XZ77E9qnTEnrgEOvr4xzfdX5TRo7fB4T2F4O6+34hIU=
+cloud.google.com/go v0.103.0/go.mod h1:vwLx1nqLrzLX/fpwSMOXmFIqBOyHsvHbnAdbGSJ+mKk=
cloud.google.com/go v0.104.0/go.mod h1:OO6xxXdJyvuJPcEPBLN9BJPD+jep5G1+2U5B5gkRYtA=
cloud.google.com/go v0.105.0/go.mod h1:PrLgOJNe5nfE9UMxKxgXj4mD3voiP+YQ6gdt6KMFOKM=
cloud.google.com/go v0.107.0/go.mod h1:wpc2eNrD7hXUTy8EKS10jkxpZBjASrORK7goS+3YX2I=
cloud.google.com/go v0.110.0/go.mod h1:SJnCLqQ0FCFGSZMUNUf84MV3Aia54kn7pi8st7tMzaY=
-cloud.google.com/go v0.110.2/go.mod h1:k04UEeEtb6ZBRTv3dZz4CeJC3jKGxyhl0sAiVVquxiw=
-cloud.google.com/go v0.110.4/go.mod h1:+EYjdK8e5RME/VY/qLCAtuyALQ9q67dvuum8i+H5xsI=
-cloud.google.com/go v0.110.6/go.mod h1:+EYjdK8e5RME/VY/qLCAtuyALQ9q67dvuum8i+H5xsI=
-cloud.google.com/go v0.110.7/go.mod h1:+EYjdK8e5RME/VY/qLCAtuyALQ9q67dvuum8i+H5xsI=
cloud.google.com/go v0.110.8 h1:tyNdfIxjzaWctIiLYOTalaLKZ17SI44SKFW26QbOhME=
cloud.google.com/go v0.110.8/go.mod h1:Iz8AkXJf1qmxC3Oxoep8R1T36w8B92yU29PcBhHO5fk=
cloud.google.com/go/accessapproval v1.4.0/go.mod h1:zybIuC3KpDOvotz59lFe5qxRZx6C75OtwbisN56xYB4=
cloud.google.com/go/accessapproval v1.5.0/go.mod h1:HFy3tuiGvMdcd/u+Cu5b9NkO1pEICJ46IR82PoUdplw=
cloud.google.com/go/accessapproval v1.6.0/go.mod h1:R0EiYnwV5fsRFiKZkPHr6mwyk2wxUJ30nL4j2pcFY2E=
-cloud.google.com/go/accessapproval v1.7.1/go.mod h1:JYczztsHRMK7NTXb6Xw+dwbs/WnOJxbo/2mTI+Kgg68=
cloud.google.com/go/accesscontextmanager v1.3.0/go.mod h1:TgCBehyr5gNMz7ZaH9xubp+CE8dkrszb4oK9CWyvD4o=
cloud.google.com/go/accesscontextmanager v1.4.0/go.mod h1:/Kjh7BBu/Gh83sv+K60vN9QE5NJcd80sU33vIe2IFPE=
cloud.google.com/go/accesscontextmanager v1.6.0/go.mod h1:8XCvZWfYw3K/ji0iVnp+6pu7huxoQTLmxAbVjbloTtM=
cloud.google.com/go/accesscontextmanager v1.7.0/go.mod h1:CEGLewx8dwa33aDAZQujl7Dx+uYhS0eay198wB/VumQ=
-cloud.google.com/go/accesscontextmanager v1.8.0/go.mod h1:uI+AI/r1oyWK99NN8cQ3UK76AMelMzgZCvJfsi2c+ps=
-cloud.google.com/go/accesscontextmanager v1.8.1/go.mod h1:JFJHfvuaTC+++1iL1coPiG1eu5D24db2wXCDWDjIrxo=
cloud.google.com/go/aiplatform v1.22.0/go.mod h1:ig5Nct50bZlzV6NvKaTwmplLLddFx0YReh9WfTO5jKw=
cloud.google.com/go/aiplatform v1.24.0/go.mod h1:67UUvRBKG6GTayHKV8DBv2RtR1t93YRu5B1P3x99mYY=
cloud.google.com/go/aiplatform v1.27.0/go.mod h1:Bvxqtl40l0WImSb04d0hXFU7gDOiq9jQmorivIiWcKg=
cloud.google.com/go/aiplatform v1.35.0/go.mod h1:7MFT/vCaOyZT/4IIFfxH4ErVg/4ku6lKv3w0+tFTgXQ=
cloud.google.com/go/aiplatform v1.36.1/go.mod h1:WTm12vJRPARNvJ+v6P52RDHCNe4AhvjcIZ/9/RRHy/k=
cloud.google.com/go/aiplatform v1.37.0/go.mod h1:IU2Cv29Lv9oCn/9LkFiiuKfwrRTq+QQMbW+hPCxJGZw=
-cloud.google.com/go/aiplatform v1.45.0/go.mod h1:Iu2Q7sC7QGhXUeOhAj/oCK9a+ULz1O4AotZiqjQ8MYA=
-cloud.google.com/go/aiplatform v1.48.0/go.mod h1:Iu2Q7sC7QGhXUeOhAj/oCK9a+ULz1O4AotZiqjQ8MYA=
-cloud.google.com/go/aiplatform v1.50.0/go.mod h1:IRc2b8XAMTa9ZmfJV1BCCQbieWWvDnP1A8znyz5N7y4=
cloud.google.com/go/analytics v0.11.0/go.mod h1:DjEWCu41bVbYcKyvlws9Er60YE4a//bK6mnhWvQeFNI=
cloud.google.com/go/analytics v0.12.0/go.mod h1:gkfj9h6XRf9+TS4bmuhPEShsh3hH8PAZzm/41OOhQd4=
cloud.google.com/go/analytics v0.17.0/go.mod h1:WXFa3WSym4IZ+JiKmavYdJwGG/CvpqiqczmL59bTD9M=
cloud.google.com/go/analytics v0.18.0/go.mod h1:ZkeHGQlcIPkw0R/GW+boWHhCOR43xz9RN/jn7WcqfIE=
cloud.google.com/go/analytics v0.19.0/go.mod h1:k8liqf5/HCnOUkbawNtrWWc+UAzyDlW89doe8TtoDsE=
-cloud.google.com/go/analytics v0.21.2/go.mod h1:U8dcUtmDmjrmUTnnnRnI4m6zKn/yaA5N9RlEkYFHpQo=
-cloud.google.com/go/analytics v0.21.3/go.mod h1:U8dcUtmDmjrmUTnnnRnI4m6zKn/yaA5N9RlEkYFHpQo=
cloud.google.com/go/apigateway v1.3.0/go.mod h1:89Z8Bhpmxu6AmUxuVRg/ECRGReEdiP3vQtk4Z1J9rJk=
cloud.google.com/go/apigateway v1.4.0/go.mod h1:pHVY9MKGaH9PQ3pJ4YLzoj6U5FUDeDFBllIz7WmzJoc=
cloud.google.com/go/apigateway v1.5.0/go.mod h1:GpnZR3Q4rR7LVu5951qfXPJCHquZt02jf7xQx7kpqN8=
-cloud.google.com/go/apigateway v1.6.1/go.mod h1:ufAS3wpbRjqfZrzpvLC2oh0MFlpRJm2E/ts25yyqmXA=
cloud.google.com/go/apigeeconnect v1.3.0/go.mod h1:G/AwXFAKo0gIXkPTVfZDd2qA1TxBXJ3MgMRBQkIi9jc=
cloud.google.com/go/apigeeconnect v1.4.0/go.mod h1:kV4NwOKqjvt2JYR0AoIWo2QGfoRtn/pkS3QlHp0Ni04=
cloud.google.com/go/apigeeconnect v1.5.0/go.mod h1:KFaCqvBRU6idyhSNyn3vlHXc8VMDJdRmwDF6JyFRqZ8=
-cloud.google.com/go/apigeeconnect v1.6.1/go.mod h1:C4awq7x0JpLtrlQCr8AzVIzAaYgngRqWf9S5Uhg+wWs=
cloud.google.com/go/apigeeregistry v0.4.0/go.mod h1:EUG4PGcsZvxOXAdyEghIdXwAEi/4MEaoqLMLDMIwKXY=
cloud.google.com/go/apigeeregistry v0.5.0/go.mod h1:YR5+s0BVNZfVOUkMa5pAR2xGd0A473vA5M7j247o1wM=
cloud.google.com/go/apigeeregistry v0.6.0/go.mod h1:BFNzW7yQVLZ3yj0TKcwzb8n25CFBri51GVGOEUcgQsc=
-cloud.google.com/go/apigeeregistry v0.7.1/go.mod h1:1XgyjZye4Mqtw7T9TsY4NW10U7BojBvG4RMD+vRDrIw=
cloud.google.com/go/apikeys v0.4.0/go.mod h1:XATS/yqZbaBK0HOssf+ALHp8jAlNHUgyfprvNcBIszU=
cloud.google.com/go/apikeys v0.5.0/go.mod h1:5aQfwY4D+ewMMWScd3hm2en3hCj+BROlyrt3ytS7KLI=
cloud.google.com/go/apikeys v0.6.0/go.mod h1:kbpXu5upyiAlGkKrJgQl8A0rKNNJ7dQ377pdroRSSi8=
@@ -97,12 +77,10 @@ cloud.google.com/go/appengine v1.5.0/go.mod h1:TfasSozdkFI0zeoxW3PTBLiNqRmzraodC
cloud.google.com/go/appengine v1.6.0/go.mod h1:hg6i0J/BD2cKmDJbaFSYHFyZkgBEfQrDg/X0V5fJn84=
cloud.google.com/go/appengine v1.7.0/go.mod h1:eZqpbHFCqRGa2aCdope7eC0SWLV1j0neb/QnMJVWx6A=
cloud.google.com/go/appengine v1.7.1/go.mod h1:IHLToyb/3fKutRysUlFO0BPt5j7RiQ45nrzEJmKTo6E=
-cloud.google.com/go/appengine v1.8.1/go.mod h1:6NJXGLVhZCN9aQ/AEDvmfzKEfoYBlfB80/BHiKVputY=
cloud.google.com/go/area120 v0.5.0/go.mod h1:DE/n4mp+iqVyvxHN41Vf1CR602GiHQjFPusMFW6bGR4=
cloud.google.com/go/area120 v0.6.0/go.mod h1:39yFJqWVgm0UZqWTOdqkLhjoC7uFfgXRC8g/ZegeAh0=
cloud.google.com/go/area120 v0.7.0/go.mod h1:a3+8EUD1SX5RUcCs3MY5YasiO1z6yLiNLRiFrykbynY=
cloud.google.com/go/area120 v0.7.1/go.mod h1:j84i4E1RboTWjKtZVWXPqvK5VHQFJRF2c1Nm69pWm9k=
-cloud.google.com/go/area120 v0.8.1/go.mod h1:BVfZpGpB7KFVNxPiQBuHkX6Ed0rS51xIgmGyjrAfzsg=
cloud.google.com/go/artifactregistry v1.6.0/go.mod h1:IYt0oBPSAGYj/kprzsBjZ/4LnG/zOcHyFHjWPCi6SAQ=
cloud.google.com/go/artifactregistry v1.7.0/go.mod h1:mqTOFOnGZx8EtSqK/ZWcsm/4U8B77rbcLP6ruDU2Ixk=
cloud.google.com/go/artifactregistry v1.8.0/go.mod h1:w3GQXkJX8hiKN0v+at4b0qotwijQbYUqF2GWkZzAhC0=
@@ -111,7 +89,6 @@ cloud.google.com/go/artifactregistry v1.11.1/go.mod h1:lLYghw+Itq9SONbCa1YWBoWs1
cloud.google.com/go/artifactregistry v1.11.2/go.mod h1:nLZns771ZGAwVLzTX/7Al6R9ehma4WUEhZGWV6CeQNQ=
cloud.google.com/go/artifactregistry v1.12.0/go.mod h1:o6P3MIvtzTOnmvGagO9v/rOjjA0HmhJ+/6KAXrmYDCI=
cloud.google.com/go/artifactregistry v1.13.0/go.mod h1:uy/LNfoOIivepGhooAUpL1i30Hgee3Cu0l4VTWHUC08=
-cloud.google.com/go/artifactregistry v1.14.1/go.mod h1:nxVdG19jTaSTu7yA7+VbWL346r3rIdkZ142BSQqhn5E=
cloud.google.com/go/asset v1.5.0/go.mod h1:5mfs8UvcM5wHhqtSv8J1CtxxaQq3AdBxxQi2jGW/K4o=
cloud.google.com/go/asset v1.7.0/go.mod h1:YbENsRK4+xTiL+Ofoj5Ckf+O17kJtgp3Y3nn4uzZz5s=
cloud.google.com/go/asset v1.8.0/go.mod h1:mUNGKhiqIdbr8X7KNayoYvyc4HbbFO9URsjbytpUaW0=
@@ -120,36 +97,27 @@ cloud.google.com/go/asset v1.10.0/go.mod h1:pLz7uokL80qKhzKr4xXGvBQXnzHn5evJAEAt
cloud.google.com/go/asset v1.11.1/go.mod h1:fSwLhbRvC9p9CXQHJ3BgFeQNM4c9x10lqlrdEUYXlJo=
cloud.google.com/go/asset v1.12.0/go.mod h1:h9/sFOa4eDIyKmH6QMpm4eUK3pDojWnUhTgJlk762Hg=
cloud.google.com/go/asset v1.13.0/go.mod h1:WQAMyYek/b7NBpYq/K4KJWcRqzoalEsxz/t/dTk4THw=
-cloud.google.com/go/asset v1.14.1/go.mod h1:4bEJ3dnHCqWCDbWJ/6Vn7GVI9LerSi7Rfdi03hd+WTQ=
cloud.google.com/go/assuredworkloads v1.5.0/go.mod h1:n8HOZ6pff6re5KYfBXcFvSViQjDwxFkAkmUFffJRbbY=
cloud.google.com/go/assuredworkloads v1.6.0/go.mod h1:yo2YOk37Yc89Rsd5QMVECvjaMKymF9OP+QXWlKXUkXw=
cloud.google.com/go/assuredworkloads v1.7.0/go.mod h1:z/736/oNmtGAyU47reJgGN+KVoYoxeLBoj4XkKYscNI=
cloud.google.com/go/assuredworkloads v1.8.0/go.mod h1:AsX2cqyNCOvEQC8RMPnoc0yEarXQk6WEKkxYfL6kGIo=
cloud.google.com/go/assuredworkloads v1.9.0/go.mod h1:kFuI1P78bplYtT77Tb1hi0FMxM0vVpRC7VVoJC3ZoT0=
cloud.google.com/go/assuredworkloads v1.10.0/go.mod h1:kwdUQuXcedVdsIaKgKTp9t0UJkE5+PAVNhdQm4ZVq2E=
-cloud.google.com/go/assuredworkloads v1.11.1/go.mod h1:+F04I52Pgn5nmPG36CWFtxmav6+7Q+c5QyJoL18Lry0=
cloud.google.com/go/automl v1.5.0/go.mod h1:34EjfoFGMZ5sgJ9EoLsRtdPSNZLcfflJR39VbVNS2M0=
cloud.google.com/go/automl v1.6.0/go.mod h1:ugf8a6Fx+zP0D59WLhqgTDsQI9w07o64uf/Is3Nh5p8=
cloud.google.com/go/automl v1.7.0/go.mod h1:RL9MYCCsJEOmt0Wf3z9uzG0a7adTT1fe+aObgSpkCt8=
cloud.google.com/go/automl v1.8.0/go.mod h1:xWx7G/aPEe/NP+qzYXktoBSDfjO+vnKMGgsApGJJquM=
cloud.google.com/go/automl v1.12.0/go.mod h1:tWDcHDp86aMIuHmyvjuKeeHEGq76lD7ZqfGLN6B0NuU=
-cloud.google.com/go/automl v1.13.1/go.mod h1:1aowgAHWYZU27MybSCFiukPO7xnyawv7pt3zK4bheQE=
cloud.google.com/go/baremetalsolution v0.3.0/go.mod h1:XOrocE+pvK1xFfleEnShBlNAXf+j5blPPxrhjKgnIFc=
cloud.google.com/go/baremetalsolution v0.4.0/go.mod h1:BymplhAadOO/eBa7KewQ0Ppg4A4Wplbn+PsFKRLo0uI=
cloud.google.com/go/baremetalsolution v0.5.0/go.mod h1:dXGxEkmR9BMwxhzBhV0AioD0ULBmuLZI8CdwalUxuss=
-cloud.google.com/go/baremetalsolution v1.1.1/go.mod h1:D1AV6xwOksJMV4OSlWHtWuFNZZYujJknMAP4Qa27QIA=
-cloud.google.com/go/baremetalsolution v1.2.0/go.mod h1:68wi9AwPYkEWIUT4SvSGS9UJwKzNpshjHsH4lzk8iOw=
cloud.google.com/go/batch v0.3.0/go.mod h1:TR18ZoAekj1GuirsUsR1ZTKN3FC/4UDnScjT8NXImFE=
cloud.google.com/go/batch v0.4.0/go.mod h1:WZkHnP43R/QCGQsZ+0JyG4i79ranE2u8xvjq/9+STPE=
cloud.google.com/go/batch v0.7.0/go.mod h1:vLZN95s6teRUqRQ4s3RLDsH8PvboqBK+rn1oevL159g=
-cloud.google.com/go/batch v1.3.1/go.mod h1:VguXeQKXIYaeeIYbuozUmBR13AfL4SJP7IltNPS+A4A=
-cloud.google.com/go/batch v1.4.1/go.mod h1:KdBmDD61K0ovcxoRHGrN6GmOBWeAOyCgKD0Mugx4Fkk=
cloud.google.com/go/beyondcorp v0.2.0/go.mod h1:TB7Bd+EEtcw9PCPQhCJtJGjk/7TC6ckmnSFS+xwTfm4=
cloud.google.com/go/beyondcorp v0.3.0/go.mod h1:E5U5lcrcXMsCuoDNyGrpyTm/hn7ne941Jz2vmksAxW8=
cloud.google.com/go/beyondcorp v0.4.0/go.mod h1:3ApA0mbhHx6YImmuubf5pyW8srKnCEPON32/5hj+RmM=
cloud.google.com/go/beyondcorp v0.5.0/go.mod h1:uFqj9X+dSfrheVp7ssLTaRHd2EHqSL4QZmH4e8WXGGU=
-cloud.google.com/go/beyondcorp v0.6.1/go.mod h1:YhxDWw946SCbmcWo3fAhw3V4XZMSpQ/VYfcKGAEU8/4=
-cloud.google.com/go/beyondcorp v1.0.0/go.mod h1:YhxDWw946SCbmcWo3fAhw3V4XZMSpQ/VYfcKGAEU8/4=
cloud.google.com/go/bigquery v1.0.1/go.mod h1:i/xbL2UlR5RvWAURpBYZTtm/cXjCha9lbfbpx4poX+o=
cloud.google.com/go/bigquery v1.3.0/go.mod h1:PjpwJnslEMmckchkHFfq+HTD2DmtT67aNFKH1/VBDHE=
cloud.google.com/go/bigquery v1.4.0/go.mod h1:S8dzgnTigyfTmLBfrtrhyYhwRxG72rYxvftPBK2Dvzc=
@@ -163,55 +131,38 @@ cloud.google.com/go/bigquery v1.47.0/go.mod h1:sA9XOgy0A8vQK9+MWhEQTY6Tix87M/Zur
cloud.google.com/go/bigquery v1.48.0/go.mod h1:QAwSz+ipNgfL5jxiaK7weyOhzdoAy1zFm0Nf1fysJac=
cloud.google.com/go/bigquery v1.49.0/go.mod h1:Sv8hMmTFFYBlt/ftw2uN6dFdQPzBlREY9yBh7Oy7/4Q=
cloud.google.com/go/bigquery v1.50.0/go.mod h1:YrleYEh2pSEbgTBZYMJ5SuSr0ML3ypjRB1zgf7pvQLU=
-cloud.google.com/go/bigquery v1.52.0/go.mod h1:3b/iXjRQGU4nKa87cXeg6/gogLjO8C6PmuM8i5Bi/u4=
-cloud.google.com/go/bigquery v1.53.0/go.mod h1:3b/iXjRQGU4nKa87cXeg6/gogLjO8C6PmuM8i5Bi/u4=
-cloud.google.com/go/bigquery v1.55.0/go.mod h1:9Y5I3PN9kQWuid6183JFhOGOW3GcirA5LpsKCUn+2ec=
cloud.google.com/go/billing v1.4.0/go.mod h1:g9IdKBEFlItS8bTtlrZdVLWSSdSyFUZKXNS02zKMOZY=
cloud.google.com/go/billing v1.5.0/go.mod h1:mztb1tBc3QekhjSgmpf/CV4LzWXLzCArwpLmP2Gm88s=
cloud.google.com/go/billing v1.6.0/go.mod h1:WoXzguj+BeHXPbKfNWkqVtDdzORazmCjraY+vrxcyvI=
cloud.google.com/go/billing v1.7.0/go.mod h1:q457N3Hbj9lYwwRbnlD7vUpyjq6u5U1RAOArInEiD5Y=
cloud.google.com/go/billing v1.12.0/go.mod h1:yKrZio/eu+okO/2McZEbch17O5CB5NpZhhXG6Z766ss=
cloud.google.com/go/billing v1.13.0/go.mod h1:7kB2W9Xf98hP9Sr12KfECgfGclsH3CQR0R08tnRlRbc=
-cloud.google.com/go/billing v1.16.0/go.mod h1:y8vx09JSSJG02k5QxbycNRrN7FGZB6F3CAcgum7jvGA=
-cloud.google.com/go/billing v1.17.0/go.mod h1:Z9+vZXEq+HwH7bhJkyI4OQcR6TSbeMrjlpEjO2vzY64=
cloud.google.com/go/binaryauthorization v1.1.0/go.mod h1:xwnoWu3Y84jbuHa0zd526MJYmtnVXn0syOjaJgy4+dM=
cloud.google.com/go/binaryauthorization v1.2.0/go.mod h1:86WKkJHtRcv5ViNABtYMhhNWRrD1Vpi//uKEy7aYEfI=
cloud.google.com/go/binaryauthorization v1.3.0/go.mod h1:lRZbKgjDIIQvzYQS1p99A7/U1JqvqeZg0wiI5tp6tg0=
cloud.google.com/go/binaryauthorization v1.4.0/go.mod h1:tsSPQrBd77VLplV70GUhBf/Zm3FsKmgSqgm4UmiDItk=
cloud.google.com/go/binaryauthorization v1.5.0/go.mod h1:OSe4OU1nN/VswXKRBmciKpo9LulY41gch5c68htf3/Q=
-cloud.google.com/go/binaryauthorization v1.6.1/go.mod h1:TKt4pa8xhowwffiBmbrbcxijJRZED4zrqnwZ1lKH51U=
-cloud.google.com/go/binaryauthorization v1.7.0/go.mod h1:Zn+S6QqTMn6odcMU1zDZCJxPjU2tZPV1oDl45lWY154=
cloud.google.com/go/certificatemanager v1.3.0/go.mod h1:n6twGDvcUBFu9uBgt4eYvvf3sQ6My8jADcOVwHmzadg=
cloud.google.com/go/certificatemanager v1.4.0/go.mod h1:vowpercVFyqs8ABSmrdV+GiFf2H/ch3KyudYQEMM590=
cloud.google.com/go/certificatemanager v1.6.0/go.mod h1:3Hh64rCKjRAX8dXgRAyOcY5vQ/fE1sh8o+Mdd6KPgY8=
-cloud.google.com/go/certificatemanager v1.7.1/go.mod h1:iW8J3nG6SaRYImIa+wXQ0g8IgoofDFRp5UMzaNk1UqI=
cloud.google.com/go/channel v1.8.0/go.mod h1:W5SwCXDJsq/rg3tn3oG0LOxpAo6IMxNa09ngphpSlnk=
cloud.google.com/go/channel v1.9.0/go.mod h1:jcu05W0my9Vx4mt3/rEHpfxc9eKi9XwsdDL8yBMbKUk=
cloud.google.com/go/channel v1.11.0/go.mod h1:IdtI0uWGqhEeatSB62VOoJ8FSUhJ9/+iGkJVqp74CGE=
cloud.google.com/go/channel v1.12.0/go.mod h1:VkxCGKASi4Cq7TbXxlaBezonAYpp1GCnKMY6tnMQnLU=
-cloud.google.com/go/channel v1.16.0/go.mod h1:eN/q1PFSl5gyu0dYdmxNXscY/4Fi7ABmeHCJNf/oHmc=
-cloud.google.com/go/channel v1.17.0/go.mod h1:RpbhJsGi/lXWAUM1eF4IbQGbsfVlg2o8Iiy2/YLfVT0=
cloud.google.com/go/cloudbuild v1.3.0/go.mod h1:WequR4ULxlqvMsjDEEEFnOG5ZSRSgWOywXYDb1vPE6U=
cloud.google.com/go/cloudbuild v1.4.0/go.mod h1:5Qwa40LHiOXmz3386FrjrYM93rM/hdRr7b53sySrTqA=
cloud.google.com/go/cloudbuild v1.6.0/go.mod h1:UIbc/w9QCbH12xX+ezUsgblrWv+Cv4Tw83GiSMHOn9M=
cloud.google.com/go/cloudbuild v1.7.0/go.mod h1:zb5tWh2XI6lR9zQmsm1VRA+7OCuve5d8S+zJUul8KTg=
cloud.google.com/go/cloudbuild v1.9.0/go.mod h1:qK1d7s4QlO0VwfYn5YuClDGg2hfmLZEb4wQGAbIgL1s=
-cloud.google.com/go/cloudbuild v1.10.1/go.mod h1:lyJg7v97SUIPq4RC2sGsz/9tNczhyv2AjML/ci4ulzU=
-cloud.google.com/go/cloudbuild v1.13.0/go.mod h1:lyJg7v97SUIPq4RC2sGsz/9tNczhyv2AjML/ci4ulzU=
-cloud.google.com/go/cloudbuild v1.14.0/go.mod h1:lyJg7v97SUIPq4RC2sGsz/9tNczhyv2AjML/ci4ulzU=
cloud.google.com/go/clouddms v1.3.0/go.mod h1:oK6XsCDdW4Ib3jCCBugx+gVjevp2TMXFtgxvPSee3OM=
cloud.google.com/go/clouddms v1.4.0/go.mod h1:Eh7sUGCC+aKry14O1NRljhjyrr0NFC0G2cjwX0cByRk=
cloud.google.com/go/clouddms v1.5.0/go.mod h1:QSxQnhikCLUw13iAbffF2CZxAER3xDGNHjsTAkQJcQA=
-cloud.google.com/go/clouddms v1.6.1/go.mod h1:Ygo1vL52Ov4TBZQquhz5fiw2CQ58gvu+PlS6PVXCpZI=
-cloud.google.com/go/clouddms v1.7.0/go.mod h1:MW1dC6SOtI/tPNCciTsXtsGNEM0i0OccykPvv3hiYeM=
cloud.google.com/go/cloudtasks v1.5.0/go.mod h1:fD92REy1x5woxkKEkLdvavGnPJGEn8Uic9nWuLzqCpY=
cloud.google.com/go/cloudtasks v1.6.0/go.mod h1:C6Io+sxuke9/KNRkbQpihnW93SWDU3uXt92nu85HkYI=
cloud.google.com/go/cloudtasks v1.7.0/go.mod h1:ImsfdYWwlWNJbdgPIIGJWC+gemEGTBK/SunNQQNCAb4=
cloud.google.com/go/cloudtasks v1.8.0/go.mod h1:gQXUIwCSOI4yPVK7DgTVFiiP0ZW/eQkydWzwVMdHxrI=
cloud.google.com/go/cloudtasks v1.9.0/go.mod h1:w+EyLsVkLWHcOaqNEyvcKAsWp9p29dL6uL9Nst1cI7Y=
cloud.google.com/go/cloudtasks v1.10.0/go.mod h1:NDSoTLkZ3+vExFEWu2UJV1arUyzVDAiZtdWcsUyNwBs=
-cloud.google.com/go/cloudtasks v1.11.1/go.mod h1:a9udmnou9KO2iulGscKR0qBYjreuX8oHwpmFsKspEvM=
-cloud.google.com/go/cloudtasks v1.12.1/go.mod h1:a9udmnou9KO2iulGscKR0qBYjreuX8oHwpmFsKspEvM=
cloud.google.com/go/compute v0.1.0/go.mod h1:GAesmwr110a34z04OlxYkATPBEfVhkymfTBXtfbBFow=
cloud.google.com/go/compute v1.3.0/go.mod h1:cCZiE1NHEtai4wiufUhW8I8S1JKkAnhnQJWM7YD99wM=
cloud.google.com/go/compute v1.5.0/go.mod h1:9SMHyhJlzhlkJqrPAc839t2BZFTSk6Jdj6mkzQJeu0M=
@@ -227,9 +178,6 @@ cloud.google.com/go/compute v1.15.1/go.mod h1:bjjoF/NtFUrkD/urWfdHaKuOPDR5nWIs63
cloud.google.com/go/compute v1.18.0/go.mod h1:1X7yHxec2Ga+Ss6jPyjxRxpu2uu7PLgsOVXvgU0yacs=
cloud.google.com/go/compute v1.19.0/go.mod h1:rikpw2y+UMidAe9tISo04EHNOIf42RLYF/q8Bs93scU=
cloud.google.com/go/compute v1.19.1/go.mod h1:6ylj3a05WF8leseCdIf77NK0g1ey+nj5IKd5/kvShxE=
-cloud.google.com/go/compute v1.19.3/go.mod h1:qxvISKp/gYnXkSAD1ppcSOveRAmzxicEv/JlizULFrI=
-cloud.google.com/go/compute v1.20.1/go.mod h1:4tCnrn48xsqlwSAiLf1HXMQk8CONslYbdiEZc9FEIbM=
-cloud.google.com/go/compute v1.21.0/go.mod h1:4tCnrn48xsqlwSAiLf1HXMQk8CONslYbdiEZc9FEIbM=
cloud.google.com/go/compute v1.23.0 h1:tP41Zoavr8ptEqaW6j+LQOnyBBhO7OkOMAGrgLopTwY=
cloud.google.com/go/compute v1.23.0/go.mod h1:4tCnrn48xsqlwSAiLf1HXMQk8CONslYbdiEZc9FEIbM=
cloud.google.com/go/compute/metadata v0.1.0/go.mod h1:Z1VN+bulIf6bt4P/C37K4DyZYZEXYonfTBHHFPO/4UU=
@@ -240,22 +188,15 @@ cloud.google.com/go/compute/metadata v0.2.3/go.mod h1:VAV5nSsACxMJvgaAuX6Pk2Aawl
cloud.google.com/go/contactcenterinsights v1.3.0/go.mod h1:Eu2oemoePuEFc/xKFPjbTuPSj0fYJcPls9TFlPNnHHY=
cloud.google.com/go/contactcenterinsights v1.4.0/go.mod h1:L2YzkGbPsv+vMQMCADxJoT9YiTTnSEd6fEvCeHTYVck=
cloud.google.com/go/contactcenterinsights v1.6.0/go.mod h1:IIDlT6CLcDoyv79kDv8iWxMSTZhLxSCofVV5W6YFM/w=
-cloud.google.com/go/contactcenterinsights v1.9.1/go.mod h1:bsg/R7zGLYMVxFFzfh9ooLTruLRCG9fnzhH9KznHhbM=
-cloud.google.com/go/contactcenterinsights v1.10.0/go.mod h1:bsg/R7zGLYMVxFFzfh9ooLTruLRCG9fnzhH9KznHhbM=
cloud.google.com/go/container v1.6.0/go.mod h1:Xazp7GjJSeUYo688S+6J5V+n/t+G5sKBTFkKNudGRxg=
cloud.google.com/go/container v1.7.0/go.mod h1:Dp5AHtmothHGX3DwwIHPgq45Y8KmNsgN3amoYfxVkLo=
cloud.google.com/go/container v1.13.1/go.mod h1:6wgbMPeQRw9rSnKBCAJXnds3Pzj03C4JHamr8asWKy4=
cloud.google.com/go/container v1.14.0/go.mod h1:3AoJMPhHfLDxLvrlVWaK57IXzaPnLaZq63WX59aQBfM=
cloud.google.com/go/container v1.15.0/go.mod h1:ft+9S0WGjAyjDggg5S06DXj+fHJICWg8L7isCQe9pQA=
-cloud.google.com/go/container v1.22.1/go.mod h1:lTNExE2R7f+DLbAN+rJiKTisauFCaoDq6NURZ83eVH4=
-cloud.google.com/go/container v1.24.0/go.mod h1:lTNExE2R7f+DLbAN+rJiKTisauFCaoDq6NURZ83eVH4=
-cloud.google.com/go/container v1.26.0/go.mod h1:YJCmRet6+6jnYYRS000T6k0D0xUXQgBSaJ7VwI8FBj4=
cloud.google.com/go/containeranalysis v0.5.1/go.mod h1:1D92jd8gRR/c0fGMlymRgxWD3Qw9C1ff6/T7mLgVL8I=
cloud.google.com/go/containeranalysis v0.6.0/go.mod h1:HEJoiEIu+lEXM+k7+qLCci0h33lX3ZqoYFdmPcoO7s4=
cloud.google.com/go/containeranalysis v0.7.0/go.mod h1:9aUL+/vZ55P2CXfuZjS4UjQ9AgXoSw8Ts6lemfmxBxI=
cloud.google.com/go/containeranalysis v0.9.0/go.mod h1:orbOANbwk5Ejoom+s+DUCTTJ7IBdBQJDcSylAx/on9s=
-cloud.google.com/go/containeranalysis v0.10.1/go.mod h1:Ya2jiILITMY68ZLPaogjmOMNkwsDrWBSTyBubGXO7j0=
-cloud.google.com/go/containeranalysis v0.11.0/go.mod h1:4n2e99ZwpGxpNcz+YsFT1dfOHPQFGcAC8FN2M2/ne/U=
cloud.google.com/go/datacatalog v1.3.0/go.mod h1:g9svFY6tuR+j+hrTw3J2dNcmI0dzmSiyOzm8kpLq0a0=
cloud.google.com/go/datacatalog v1.5.0/go.mod h1:M7GPLNQeLfWqeIm3iuiruhPzkt65+Bx8dAKvScX8jvs=
cloud.google.com/go/datacatalog v1.6.0/go.mod h1:+aEyF8JKg+uXcIdAmmaMUmZ3q1b/lKLtXCmXdnc0lbc=
@@ -264,66 +205,44 @@ cloud.google.com/go/datacatalog v1.8.0/go.mod h1:KYuoVOv9BM8EYz/4eMFxrr4DUKhGIOX
cloud.google.com/go/datacatalog v1.8.1/go.mod h1:RJ58z4rMp3gvETA465Vg+ag8BGgBdnRPEMMSTr5Uv+M=
cloud.google.com/go/datacatalog v1.12.0/go.mod h1:CWae8rFkfp6LzLumKOnmVh4+Zle4A3NXLzVJ1d1mRm0=
cloud.google.com/go/datacatalog v1.13.0/go.mod h1:E4Rj9a5ZtAxcQJlEBTLgMTphfP11/lNaAshpoBgemX8=
-cloud.google.com/go/datacatalog v1.14.0/go.mod h1:h0PrGtlihoutNMp/uvwhawLQ9+c63Kz65UFqh49Yo+E=
-cloud.google.com/go/datacatalog v1.14.1/go.mod h1:d2CevwTG4yedZilwe+v3E3ZBDRMobQfSG/a6cCCN5R4=
-cloud.google.com/go/datacatalog v1.16.0/go.mod h1:d2CevwTG4yedZilwe+v3E3ZBDRMobQfSG/a6cCCN5R4=
-cloud.google.com/go/datacatalog v1.17.1/go.mod h1:nCSYFHgtxh2MiEktWIz71s/X+7ds/UT9kp0PC7waCzE=
cloud.google.com/go/dataflow v0.6.0/go.mod h1:9QwV89cGoxjjSR9/r7eFDqqjtvbKxAK2BaYU6PVk9UM=
cloud.google.com/go/dataflow v0.7.0/go.mod h1:PX526vb4ijFMesO1o202EaUmouZKBpjHsTlCtB4parQ=
cloud.google.com/go/dataflow v0.8.0/go.mod h1:Rcf5YgTKPtQyYz8bLYhFoIV/vP39eL7fWNcSOyFfLJE=
-cloud.google.com/go/dataflow v0.9.1/go.mod h1:Wp7s32QjYuQDWqJPFFlnBKhkAtiFpMTdg00qGbnIHVw=
cloud.google.com/go/dataform v0.3.0/go.mod h1:cj8uNliRlHpa6L3yVhDOBrUXH+BPAO1+KFMQQNSThKo=
cloud.google.com/go/dataform v0.4.0/go.mod h1:fwV6Y4Ty2yIFL89huYlEkwUPtS7YZinZbzzj5S9FzCE=
cloud.google.com/go/dataform v0.5.0/go.mod h1:GFUYRe8IBa2hcomWplodVmUx/iTL0FrsauObOM3Ipr0=
cloud.google.com/go/dataform v0.6.0/go.mod h1:QPflImQy33e29VuapFdf19oPbE4aYTJxr31OAPV+ulA=
cloud.google.com/go/dataform v0.7.0/go.mod h1:7NulqnVozfHvWUBpMDfKMUESr+85aJsC/2O0o3jWPDE=
-cloud.google.com/go/dataform v0.8.1/go.mod h1:3BhPSiw8xmppbgzeBbmDvmSWlwouuJkXsXsb8UBih9M=
cloud.google.com/go/datafusion v1.4.0/go.mod h1:1Zb6VN+W6ALo85cXnM1IKiPw+yQMKMhB9TsTSRDo/38=
cloud.google.com/go/datafusion v1.5.0/go.mod h1:Kz+l1FGHB0J+4XF2fud96WMmRiq/wj8N9u007vyXZ2w=
cloud.google.com/go/datafusion v1.6.0/go.mod h1:WBsMF8F1RhSXvVM8rCV3AeyWVxcC2xY6vith3iw3S+8=
-cloud.google.com/go/datafusion v1.7.1/go.mod h1:KpoTBbFmoToDExJUso/fcCiguGDk7MEzOWXUsJo0wsI=
cloud.google.com/go/datalabeling v0.5.0/go.mod h1:TGcJ0G2NzcsXSE/97yWjIZO0bXj0KbVlINXMG9ud42I=
cloud.google.com/go/datalabeling v0.6.0/go.mod h1:WqdISuk/+WIGeMkpw/1q7bK/tFEZxsrFJOJdY2bXvTQ=
cloud.google.com/go/datalabeling v0.7.0/go.mod h1:WPQb1y08RJbmpM3ww0CSUAGweL0SxByuW2E+FU+wXcM=
-cloud.google.com/go/datalabeling v0.8.1/go.mod h1:XS62LBSVPbYR54GfYQsPXZjTW8UxCK2fkDciSrpRFdY=
cloud.google.com/go/dataplex v1.3.0/go.mod h1:hQuRtDg+fCiFgC8j0zV222HvzFQdRd+SVX8gdmFcZzA=
cloud.google.com/go/dataplex v1.4.0/go.mod h1:X51GfLXEMVJ6UN47ESVqvlsRplbLhcsAt0kZCCKsU0A=
cloud.google.com/go/dataplex v1.5.2/go.mod h1:cVMgQHsmfRoI5KFYq4JtIBEUbYwc3c7tXmIDhRmNNVQ=
cloud.google.com/go/dataplex v1.6.0/go.mod h1:bMsomC/aEJOSpHXdFKFGQ1b0TDPIeL28nJObeO1ppRs=
-cloud.google.com/go/dataplex v1.8.1/go.mod h1:7TyrDT6BCdI8/38Uvp0/ZxBslOslP2X2MPDucliyvSE=
-cloud.google.com/go/dataplex v1.9.0/go.mod h1:7TyrDT6BCdI8/38Uvp0/ZxBslOslP2X2MPDucliyvSE=
-cloud.google.com/go/dataplex v1.9.1/go.mod h1:7TyrDT6BCdI8/38Uvp0/ZxBslOslP2X2MPDucliyvSE=
cloud.google.com/go/dataproc v1.7.0/go.mod h1:CKAlMjII9H90RXaMpSxQ8EU6dQx6iAYNPcYPOkSbi8s=
cloud.google.com/go/dataproc v1.8.0/go.mod h1:5OW+zNAH0pMpw14JVrPONsxMQYMBqJuzORhIBfBn9uI=
cloud.google.com/go/dataproc v1.12.0/go.mod h1:zrF3aX0uV3ikkMz6z4uBbIKyhRITnxvr4i3IjKsKrw4=
-cloud.google.com/go/dataproc/v2 v2.0.1/go.mod h1:7Ez3KRHdFGcfY7GcevBbvozX+zyWGcwLJvvAMwCaoZ4=
-cloud.google.com/go/dataproc/v2 v2.2.0/go.mod h1:lZR7AQtwZPvmINx5J87DSOOpTfof9LVZju6/Qo4lmcY=
cloud.google.com/go/dataqna v0.5.0/go.mod h1:90Hyk596ft3zUQ8NkFfvICSIfHFh1Bc7C4cK3vbhkeo=
cloud.google.com/go/dataqna v0.6.0/go.mod h1:1lqNpM7rqNLVgWBJyk5NF6Uen2PHym0jtVJonplVsDA=
cloud.google.com/go/dataqna v0.7.0/go.mod h1:Lx9OcIIeqCrw1a6KdO3/5KMP1wAmTc0slZWwP12Qq3c=
-cloud.google.com/go/dataqna v0.8.1/go.mod h1:zxZM0Bl6liMePWsHA8RMGAfmTG34vJMapbHAxQ5+WA8=
cloud.google.com/go/datastore v1.0.0/go.mod h1:LXYbyblFSglQ5pkeyhO+Qmw7ukd3C+pD7TKLgZqpHYE=
cloud.google.com/go/datastore v1.1.0/go.mod h1:umbIZjpQpHh4hmRpGhH4tLFup+FVzqBi1b3c64qFpCk=
cloud.google.com/go/datastore v1.10.0/go.mod h1:PC5UzAmDEkAmkfaknstTYbNpgE49HAgW2J1gcgUfmdM=
cloud.google.com/go/datastore v1.11.0/go.mod h1:TvGxBIHCS50u8jzG+AW/ppf87v1of8nwzFNgEZU1D3c=
-cloud.google.com/go/datastore v1.12.0/go.mod h1:KjdB88W897MRITkvWWJrg2OUtrR5XVj1EoLgSp6/N70=
-cloud.google.com/go/datastore v1.12.1/go.mod h1:KjdB88W897MRITkvWWJrg2OUtrR5XVj1EoLgSp6/N70=
-cloud.google.com/go/datastore v1.13.0/go.mod h1:KjdB88W897MRITkvWWJrg2OUtrR5XVj1EoLgSp6/N70=
-cloud.google.com/go/datastore v1.14.0/go.mod h1:GAeStMBIt9bPS7jMJA85kgkpsMkvseWWXiaHya9Jes8=
cloud.google.com/go/datastream v1.2.0/go.mod h1:i/uTP8/fZwgATHS/XFu0TcNUhuA0twZxxQ3EyCUQMwo=
cloud.google.com/go/datastream v1.3.0/go.mod h1:cqlOX8xlyYF/uxhiKn6Hbv6WjwPPuI9W2M9SAXwaLLQ=
cloud.google.com/go/datastream v1.4.0/go.mod h1:h9dpzScPhDTs5noEMQVWP8Wx8AFBRyS0s8KWPx/9r0g=
cloud.google.com/go/datastream v1.5.0/go.mod h1:6TZMMNPwjUqZHBKPQ1wwXpb0d5VDVPl2/XoS5yi88q4=
cloud.google.com/go/datastream v1.6.0/go.mod h1:6LQSuswqLa7S4rPAOZFVjHIG3wJIjZcZrw8JDEDJuIs=
cloud.google.com/go/datastream v1.7.0/go.mod h1:uxVRMm2elUSPuh65IbZpzJNMbuzkcvu5CjMqVIUHrww=
-cloud.google.com/go/datastream v1.9.1/go.mod h1:hqnmr8kdUBmrnk65k5wNRoHSCYksvpdZIcZIEl8h43Q=
-cloud.google.com/go/datastream v1.10.0/go.mod h1:hqnmr8kdUBmrnk65k5wNRoHSCYksvpdZIcZIEl8h43Q=
cloud.google.com/go/deploy v1.4.0/go.mod h1:5Xghikd4VrmMLNaF6FiRFDlHb59VM59YoDQnOUdsH/c=
cloud.google.com/go/deploy v1.5.0/go.mod h1:ffgdD0B89tToyW/U/D2eL0jN2+IEV/3EMuXHA0l4r+s=
cloud.google.com/go/deploy v1.6.0/go.mod h1:f9PTHehG/DjCom3QH0cntOVRm93uGBDt2vKzAPwpXQI=
cloud.google.com/go/deploy v1.8.0/go.mod h1:z3myEJnA/2wnB4sgjqdMfgxCA0EqC3RBTNcVPs93mtQ=
-cloud.google.com/go/deploy v1.11.0/go.mod h1:tKuSUV5pXbn67KiubiUNUejqLs4f5cxxiCNCeyl0F2g=
-cloud.google.com/go/deploy v1.13.0/go.mod h1:tKuSUV5pXbn67KiubiUNUejqLs4f5cxxiCNCeyl0F2g=
cloud.google.com/go/dialogflow v1.15.0/go.mod h1:HbHDWs33WOGJgn6rfzBW1Kv807BE3O1+xGbn59zZWI4=
cloud.google.com/go/dialogflow v1.16.1/go.mod h1:po6LlzGfK+smoSmTBnbkIZY2w8ffjz/RcGSS+sh1el0=
cloud.google.com/go/dialogflow v1.17.0/go.mod h1:YNP09C/kXA1aZdBgC/VtXX74G/TKn7XVCcVumTflA+8=
@@ -332,53 +251,37 @@ cloud.google.com/go/dialogflow v1.19.0/go.mod h1:JVmlG1TwykZDtxtTXujec4tQ+D8SBFM
cloud.google.com/go/dialogflow v1.29.0/go.mod h1:b+2bzMe+k1s9V+F2jbJwpHPzrnIyHihAdRFMtn2WXuM=
cloud.google.com/go/dialogflow v1.31.0/go.mod h1:cuoUccuL1Z+HADhyIA7dci3N5zUssgpBJmCzI6fNRB4=
cloud.google.com/go/dialogflow v1.32.0/go.mod h1:jG9TRJl8CKrDhMEcvfcfFkkpp8ZhgPz3sBGmAUYJ2qE=
-cloud.google.com/go/dialogflow v1.38.0/go.mod h1:L7jnH+JL2mtmdChzAIcXQHXMvQkE3U4hTaNltEuxXn4=
-cloud.google.com/go/dialogflow v1.40.0/go.mod h1:L7jnH+JL2mtmdChzAIcXQHXMvQkE3U4hTaNltEuxXn4=
-cloud.google.com/go/dialogflow v1.43.0/go.mod h1:pDUJdi4elL0MFmt1REMvFkdsUTYSHq+rTCS8wg0S3+M=
cloud.google.com/go/dlp v1.6.0/go.mod h1:9eyB2xIhpU0sVwUixfBubDoRwP+GjeUoxxeueZmqvmM=
cloud.google.com/go/dlp v1.7.0/go.mod h1:68ak9vCiMBjbasxeVD17hVPxDEck+ExiHavX8kiHG+Q=
cloud.google.com/go/dlp v1.9.0/go.mod h1:qdgmqgTyReTz5/YNSSuueR8pl7hO0o9bQ39ZhtgkWp4=
-cloud.google.com/go/dlp v1.10.1/go.mod h1:IM8BWz1iJd8njcNcG0+Kyd9OPnqnRNkDV8j42VT5KOI=
cloud.google.com/go/documentai v1.7.0/go.mod h1:lJvftZB5NRiFSX4moiye1SMxHx0Bc3x1+p9e/RfXYiU=
cloud.google.com/go/documentai v1.8.0/go.mod h1:xGHNEB7CtsnySCNrCFdCyyMz44RhFEEX2Q7UD0c5IhU=
cloud.google.com/go/documentai v1.9.0/go.mod h1:FS5485S8R00U10GhgBC0aNGrJxBP8ZVpEeJ7PQDZd6k=
cloud.google.com/go/documentai v1.10.0/go.mod h1:vod47hKQIPeCfN2QS/jULIvQTugbmdc0ZvxxfQY1bg4=
cloud.google.com/go/documentai v1.16.0/go.mod h1:o0o0DLTEZ+YnJZ+J4wNfTxmDVyrkzFvttBXXtYRMHkM=
cloud.google.com/go/documentai v1.18.0/go.mod h1:F6CK6iUH8J81FehpskRmhLq/3VlwQvb7TvwOceQ2tbs=
-cloud.google.com/go/documentai v1.20.0/go.mod h1:yJkInoMcK0qNAEdRnqY/D5asy73tnPe88I1YTZT+a8E=
-cloud.google.com/go/documentai v1.22.0/go.mod h1:yJkInoMcK0qNAEdRnqY/D5asy73tnPe88I1YTZT+a8E=
-cloud.google.com/go/documentai v1.22.1/go.mod h1:LKs22aDHbJv7ufXuPypzRO7rG3ALLJxzdCXDPutw4Qc=
cloud.google.com/go/domains v0.6.0/go.mod h1:T9Rz3GasrpYk6mEGHh4rymIhjlnIuB4ofT1wTxDeT4Y=
cloud.google.com/go/domains v0.7.0/go.mod h1:PtZeqS1xjnXuRPKE/88Iru/LdfoRyEHYA9nFQf4UKpg=
cloud.google.com/go/domains v0.8.0/go.mod h1:M9i3MMDzGFXsydri9/vW+EWz9sWb4I6WyHqdlAk0idE=
-cloud.google.com/go/domains v0.9.1/go.mod h1:aOp1c0MbejQQ2Pjf1iJvnVyT+z6R6s8pX66KaCSDYfE=
cloud.google.com/go/edgecontainer v0.1.0/go.mod h1:WgkZ9tp10bFxqO8BLPqv2LlfmQF1X8lZqwW4r1BTajk=
cloud.google.com/go/edgecontainer v0.2.0/go.mod h1:RTmLijy+lGpQ7BXuTDa4C4ssxyXT34NIuHIgKuP4s5w=
cloud.google.com/go/edgecontainer v0.3.0/go.mod h1:FLDpP4nykgwwIfcLt6zInhprzw0lEi2P1fjO6Ie0qbc=
cloud.google.com/go/edgecontainer v1.0.0/go.mod h1:cttArqZpBB2q58W/upSG++ooo6EsblxDIolxa3jSjbY=
-cloud.google.com/go/edgecontainer v1.1.1/go.mod h1:O5bYcS//7MELQZs3+7mabRqoWQhXCzenBu0R8bz2rwk=
cloud.google.com/go/errorreporting v0.3.0/go.mod h1:xsP2yaAp+OAW4OIm60An2bbLpqIhKXdWR/tawvl7QzU=
cloud.google.com/go/essentialcontacts v1.3.0/go.mod h1:r+OnHa5jfj90qIfZDO/VztSFqbQan7HV75p8sA+mdGI=
cloud.google.com/go/essentialcontacts v1.4.0/go.mod h1:8tRldvHYsmnBCHdFpvU+GL75oWiBKl80BiqlFh9tp+8=
cloud.google.com/go/essentialcontacts v1.5.0/go.mod h1:ay29Z4zODTuwliK7SnX8E86aUF2CTzdNtvv42niCX0M=
-cloud.google.com/go/essentialcontacts v1.6.2/go.mod h1:T2tB6tX+TRak7i88Fb2N9Ok3PvY3UNbUsMag9/BARh4=
cloud.google.com/go/eventarc v1.7.0/go.mod h1:6ctpF3zTnaQCxUjHUdcfgcA1A2T309+omHZth7gDfmc=
cloud.google.com/go/eventarc v1.8.0/go.mod h1:imbzxkyAU4ubfsaKYdQg04WS1NvncblHEup4kvF+4gw=
cloud.google.com/go/eventarc v1.10.0/go.mod h1:u3R35tmZ9HvswGRBnF48IlYgYeBcPUCjkr4BTdem2Kw=
cloud.google.com/go/eventarc v1.11.0/go.mod h1:PyUjsUKPWoRBCHeOxZd/lbOOjahV41icXyUY5kSTvVY=
-cloud.google.com/go/eventarc v1.12.1/go.mod h1:mAFCW6lukH5+IZjkvrEss+jmt2kOdYlN8aMx3sRJiAI=
-cloud.google.com/go/eventarc v1.13.0/go.mod h1:mAFCW6lukH5+IZjkvrEss+jmt2kOdYlN8aMx3sRJiAI=
cloud.google.com/go/filestore v1.3.0/go.mod h1:+qbvHGvXU1HaKX2nD0WEPo92TP/8AQuCVEBXNY9z0+w=
cloud.google.com/go/filestore v1.4.0/go.mod h1:PaG5oDfo9r224f8OYXURtAsY+Fbyq/bLYoINEK8XQAI=
cloud.google.com/go/filestore v1.5.0/go.mod h1:FqBXDWBp4YLHqRnVGveOkHDf8svj9r5+mUDLupOWEDs=
cloud.google.com/go/filestore v1.6.0/go.mod h1:di5unNuss/qfZTw2U9nhFqo8/ZDSc466dre85Kydllg=
-cloud.google.com/go/filestore v1.7.1/go.mod h1:y10jsorq40JJnjR/lQ8AfFbbcGlw3g+Dp8oN7i7FjV4=
cloud.google.com/go/firestore v1.1.0/go.mod h1:ulACoGHTpvq5r8rxGJ4ddJZBZqakUQqClKRT5SZwBmk=
-cloud.google.com/go/firestore v1.5.0/go.mod h1:c4nNYR1qdq7eaZ+jSc5fonrQN2k3M7sWATcYTiakjEo=
+cloud.google.com/go/firestore v1.6.1/go.mod h1:asNXNOzBdyVQmEU+ggO8UPodTkEVFW5Qx+rwHnAz+EY=
cloud.google.com/go/firestore v1.9.0/go.mod h1:HMkjKHNTtRyZNiMzu7YAsLr9K3X2udY2AMwDaMEQiiE=
-cloud.google.com/go/firestore v1.11.0/go.mod h1:b38dKhgzlmNNGTNZZwe7ZRFEuRab1Hay3/DBsIGKKy4=
-cloud.google.com/go/firestore v1.12.0/go.mod h1:b38dKhgzlmNNGTNZZwe7ZRFEuRab1Hay3/DBsIGKKy4=
-cloud.google.com/go/firestore v1.13.0/go.mod h1:QojqqOh8IntInDUSTAh0c8ZsPYAr68Ma8c5DWOy8xb8=
cloud.google.com/go/functions v1.6.0/go.mod h1:3H1UA3qiIPRWD7PeZKLvHZ9SaQhR26XIJcC0A5GbvAk=
cloud.google.com/go/functions v1.7.0/go.mod h1:+d+QBcWM+RsrgZfV9xo6KfA1GlzJfxcfZcRPEhDDfzg=
cloud.google.com/go/functions v1.8.0/go.mod h1:RTZ4/HsQjIqIYP9a9YPbU+QFoQsAlYgrwOXJWHn1POY=
@@ -386,38 +289,28 @@ cloud.google.com/go/functions v1.9.0/go.mod h1:Y+Dz8yGguzO3PpIjhLTbnqV1CWmgQ5Uwt
cloud.google.com/go/functions v1.10.0/go.mod h1:0D3hEOe3DbEvCXtYOZHQZmD+SzYsi1YbI7dGvHfldXw=
cloud.google.com/go/functions v1.12.0/go.mod h1:AXWGrF3e2C/5ehvwYo/GH6O5s09tOPksiKhz+hH8WkA=
cloud.google.com/go/functions v1.13.0/go.mod h1:EU4O007sQm6Ef/PwRsI8N2umygGqPBS/IZQKBQBcJ3c=
-cloud.google.com/go/functions v1.15.1/go.mod h1:P5yNWUTkyU+LvW/S9O6V+V423VZooALQlqoXdoPz5AE=
cloud.google.com/go/gaming v1.5.0/go.mod h1:ol7rGcxP/qHTRQE/RO4bxkXq+Fix0j6D4LFPzYTIrDM=
cloud.google.com/go/gaming v1.6.0/go.mod h1:YMU1GEvA39Qt3zWGyAVA9bpYz/yAhTvaQ1t2sK4KPUA=
cloud.google.com/go/gaming v1.7.0/go.mod h1:LrB8U7MHdGgFG851iHAfqUdLcKBdQ55hzXy9xBJz0+w=
cloud.google.com/go/gaming v1.8.0/go.mod h1:xAqjS8b7jAVW0KFYeRUxngo9My3f33kFmua++Pi+ggM=
cloud.google.com/go/gaming v1.9.0/go.mod h1:Fc7kEmCObylSWLO334NcO+O9QMDyz+TKC4v1D7X+Bc0=
-cloud.google.com/go/gaming v1.10.1/go.mod h1:XQQvtfP8Rb9Rxnxm5wFVpAp9zCQkJi2bLIb7iHGwB3s=
cloud.google.com/go/gkebackup v0.2.0/go.mod h1:XKvv/4LfG829/B8B7xRkk8zRrOEbKtEam6yNfuQNH60=
cloud.google.com/go/gkebackup v0.3.0/go.mod h1:n/E671i1aOQvUxT541aTkCwExO/bTer2HDlj4TsBRAo=
cloud.google.com/go/gkebackup v0.4.0/go.mod h1:byAyBGUwYGEEww7xsbnUTBHIYcOPy/PgUWUtOeRm9Vg=
-cloud.google.com/go/gkebackup v1.3.0/go.mod h1:vUDOu++N0U5qs4IhG1pcOnD1Mac79xWy6GoBFlWCWBU=
-cloud.google.com/go/gkebackup v1.3.1/go.mod h1:vUDOu++N0U5qs4IhG1pcOnD1Mac79xWy6GoBFlWCWBU=
cloud.google.com/go/gkeconnect v0.5.0/go.mod h1:c5lsNAg5EwAy7fkqX/+goqFsU1Da/jQFqArp+wGNr/o=
cloud.google.com/go/gkeconnect v0.6.0/go.mod h1:Mln67KyU/sHJEBY8kFZ0xTeyPtzbq9StAVvEULYK16A=
cloud.google.com/go/gkeconnect v0.7.0/go.mod h1:SNfmVqPkaEi3bF/B3CNZOAYPYdg7sU+obZ+QTky2Myw=
-cloud.google.com/go/gkeconnect v0.8.1/go.mod h1:KWiK1g9sDLZqhxB2xEuPV8V9NYzrqTUmQR9shJHpOZw=
cloud.google.com/go/gkehub v0.9.0/go.mod h1:WYHN6WG8w9bXU0hqNxt8rm5uxnk8IH+lPY9J2TV7BK0=
cloud.google.com/go/gkehub v0.10.0/go.mod h1:UIPwxI0DsrpsVoWpLB0stwKCP+WFVG9+y977wO+hBH0=
cloud.google.com/go/gkehub v0.11.0/go.mod h1:JOWHlmN+GHyIbuWQPl47/C2RFhnFKH38jH9Ascu3n0E=
cloud.google.com/go/gkehub v0.12.0/go.mod h1:djiIwwzTTBrF5NaXCGv3mf7klpEMcST17VBTVVDcuaw=
-cloud.google.com/go/gkehub v0.14.1/go.mod h1:VEXKIJZ2avzrbd7u+zeMtW00Y8ddk/4V9511C9CQGTY=
cloud.google.com/go/gkemulticloud v0.3.0/go.mod h1:7orzy7O0S+5kq95e4Hpn7RysVA7dPs8W/GgfUtsPbrA=
cloud.google.com/go/gkemulticloud v0.4.0/go.mod h1:E9gxVBnseLWCk24ch+P9+B2CoDFJZTyIgLKSalC7tuI=
cloud.google.com/go/gkemulticloud v0.5.0/go.mod h1:W0JDkiyi3Tqh0TJr//y19wyb1yf8llHVto2Htf2Ja3Y=
-cloud.google.com/go/gkemulticloud v0.6.1/go.mod h1:kbZ3HKyTsiwqKX7Yw56+wUGwwNZViRnxWK2DVknXWfw=
-cloud.google.com/go/gkemulticloud v1.0.0/go.mod h1:kbZ3HKyTsiwqKX7Yw56+wUGwwNZViRnxWK2DVknXWfw=
cloud.google.com/go/grafeas v0.2.0/go.mod h1:KhxgtF2hb0P191HlY5besjYm6MqTSTj3LSI+M+ByZHc=
-cloud.google.com/go/grafeas v0.3.0/go.mod h1:P7hgN24EyONOTMyeJH6DxG4zD7fwiYa5Q6GUgyFSOU8=
cloud.google.com/go/gsuiteaddons v1.3.0/go.mod h1:EUNK/J1lZEZO8yPtykKxLXI6JSVN2rg9bN8SXOa0bgM=
cloud.google.com/go/gsuiteaddons v1.4.0/go.mod h1:rZK5I8hht7u7HxFQcFei0+AtfS9uSushomRlg+3ua1o=
cloud.google.com/go/gsuiteaddons v1.5.0/go.mod h1:TFCClYLd64Eaa12sFVmUyG62tk4mdIsI7pAnSXRkcFo=
-cloud.google.com/go/gsuiteaddons v1.6.1/go.mod h1:CodrdOqRZcLp5WOwejHWYBjZvfY0kOphkAKpF/3qdZY=
cloud.google.com/go/iam v0.1.0/go.mod h1:vcUNEa0pEm0qRVpmWepWaFMIAI8/hjB9mO8rNCJtF6c=
cloud.google.com/go/iam v0.3.0/go.mod h1:XzJPvDayI+9zsASAFO68Hk07u3z+f+JrT2xXNdp4bnY=
cloud.google.com/go/iam v0.5.0/go.mod h1:wPU9Vt0P4UmCux7mqtRu6jcpPAb74cP1fh50J3QpkUc=
@@ -427,9 +320,6 @@ cloud.google.com/go/iam v0.8.0/go.mod h1:lga0/y3iH6CX7sYqypWJ33hf7kkfXJag67naqGE
cloud.google.com/go/iam v0.11.0/go.mod h1:9PiLDanza5D+oWFZiH1uG+RnRCfEGKoyl6yo4cgWZGY=
cloud.google.com/go/iam v0.12.0/go.mod h1:knyHGviacl11zrtZUoDuYpDgLjvr28sLQaG0YB2GYAY=
cloud.google.com/go/iam v0.13.0/go.mod h1:ljOg+rcNfzZ5d6f1nAUJ8ZIxOaZUVoS14bKCtaLZ/D0=
-cloud.google.com/go/iam v1.0.1/go.mod h1:yR3tmSL8BcZB4bxByRv2jkSIahVmCtfKZwLYGBalRE8=
-cloud.google.com/go/iam v1.1.0/go.mod h1:nxdHjaKfCr7fNYx/HJMM8LgiMugmveWlkatear5gVyk=
-cloud.google.com/go/iam v1.1.1/go.mod h1:A5avdyVL2tCppe4unb0951eI9jreack+RJ0/d+KUZOU=
cloud.google.com/go/iam v1.1.2 h1:gacbrBdWcoVmGLozRuStX45YKvJtzIjJdAolzUs1sm4=
cloud.google.com/go/iam v1.1.2/go.mod h1:A5avdyVL2tCppe4unb0951eI9jreack+RJ0/d+KUZOU=
cloud.google.com/go/iap v1.4.0/go.mod h1:RGFwRJdihTINIe4wZ2iCP0zF/qu18ZwyKxrhMhygBEc=
@@ -437,18 +327,13 @@ cloud.google.com/go/iap v1.5.0/go.mod h1:UH/CGgKd4KyohZL5Pt0jSKE4m3FR51qg6FKQ/z/
cloud.google.com/go/iap v1.6.0/go.mod h1:NSuvI9C/j7UdjGjIde7t7HBz+QTwBcapPE07+sSRcLk=
cloud.google.com/go/iap v1.7.0/go.mod h1:beqQx56T9O1G1yNPph+spKpNibDlYIiIixiqsQXxLIo=
cloud.google.com/go/iap v1.7.1/go.mod h1:WapEwPc7ZxGt2jFGB/C/bm+hP0Y6NXzOYGjpPnmMS74=
-cloud.google.com/go/iap v1.8.1/go.mod h1:sJCbeqg3mvWLqjZNsI6dfAtbbV1DL2Rl7e1mTyXYREQ=
-cloud.google.com/go/iap v1.9.0/go.mod h1:01OFxd1R+NFrg78S+hoPV5PxEzv22HXaNqUUlmNHFuY=
cloud.google.com/go/ids v1.1.0/go.mod h1:WIuwCaYVOzHIj2OhN9HAwvW+DBdmUAdcWlFxRl+KubM=
cloud.google.com/go/ids v1.2.0/go.mod h1:5WXvp4n25S0rA/mQWAg1YEEBBq6/s+7ml1RDCW1IrcY=
cloud.google.com/go/ids v1.3.0/go.mod h1:JBdTYwANikFKaDP6LtW5JAi4gubs57SVNQjemdt6xV4=
-cloud.google.com/go/ids v1.4.1/go.mod h1:np41ed8YMU8zOgv53MMMoCntLTn2lF+SUzlM+O3u/jw=
cloud.google.com/go/iot v1.3.0/go.mod h1:r7RGh2B61+B8oz0AGE+J72AhA0G7tdXItODWsaA2oLs=
cloud.google.com/go/iot v1.4.0/go.mod h1:dIDxPOn0UvNDUMD8Ger7FIaTuvMkj+aGk94RPP0iV+g=
cloud.google.com/go/iot v1.5.0/go.mod h1:mpz5259PDl3XJthEmh9+ap0affn/MqNSP4My77Qql9o=
cloud.google.com/go/iot v1.6.0/go.mod h1:IqdAsmE2cTYYNO1Fvjfzo9po179rAtJeVGUvkLN3rLE=
-cloud.google.com/go/iot v1.7.1/go.mod h1:46Mgw7ev1k9KqK1ao0ayW9h0lI+3hxeanz+L1zmbbbk=
-cloud.google.com/go/kms v0.1.0/go.mod h1:8Qp8PCAypHg4FdmlyW1QRAv09BGQ9Uzh7JnmIZxPk+c=
cloud.google.com/go/kms v1.4.0/go.mod h1:fajBHndQ+6ubNw6Ss2sSd+SWvjL26RNo/dr7uxsnnOA=
cloud.google.com/go/kms v1.5.0/go.mod h1:QJS2YY0eJGBg3mnDfuaCyLauWwBJiHRboYxJ++1xJNg=
cloud.google.com/go/kms v1.6.0/go.mod h1:Jjy850yySiasBUDi6KFUwUv2n1+o7QZFyuUJg6OgjA0=
@@ -456,9 +341,6 @@ cloud.google.com/go/kms v1.8.0/go.mod h1:4xFEhYFqvW+4VMELtZyxomGSYtSQKzM178ylFW4
cloud.google.com/go/kms v1.9.0/go.mod h1:qb1tPTgfF9RQP8e1wq4cLFErVuTJv7UsSC915J8dh3w=
cloud.google.com/go/kms v1.10.0/go.mod h1:ng3KTUtQQU9bPX3+QGLsflZIHlkbn8amFAMY63m8d24=
cloud.google.com/go/kms v1.10.1/go.mod h1:rIWk/TryCkR59GMC3YtHtXeLzd634lBbKenvyySAyYI=
-cloud.google.com/go/kms v1.11.0/go.mod h1:hwdiYC0xjnWsKQQCQQmIQnS9asjYVSK6jtXm+zFqXLM=
-cloud.google.com/go/kms v1.12.1/go.mod h1:c9J991h5DTl+kg7gi3MYomh12YEENGrf48ee/N/2CDM=
-cloud.google.com/go/kms v1.15.0/go.mod h1:c9J991h5DTl+kg7gi3MYomh12YEENGrf48ee/N/2CDM=
cloud.google.com/go/kms v1.15.2 h1:lh6qra6oC4AyWe5fUUUBe/S27k12OHAleOOOw6KakdE=
cloud.google.com/go/kms v1.15.2/go.mod h1:3hopT4+7ooWRCjc2DxgnpESFxhIraaI2IpAVUEhbT/w=
cloud.google.com/go/language v1.4.0/go.mod h1:F9dRpNFQmJbkaop6g0JhSBXCNlO90e1KWx5iDdxbWic=
@@ -466,12 +348,9 @@ cloud.google.com/go/language v1.6.0/go.mod h1:6dJ8t3B+lUYfStgls25GusK04NLh3eDLQn
cloud.google.com/go/language v1.7.0/go.mod h1:DJ6dYN/W+SQOjF8e1hLQXMF21AkH2w9wiPzPCJa2MIE=
cloud.google.com/go/language v1.8.0/go.mod h1:qYPVHf7SPoNNiCL2Dr0FfEFNil1qi3pQEyygwpgVKB8=
cloud.google.com/go/language v1.9.0/go.mod h1:Ns15WooPM5Ad/5no/0n81yUetis74g3zrbeJBE+ptUY=
-cloud.google.com/go/language v1.10.1/go.mod h1:CPp94nsdVNiQEt1CNjF5WkTcisLiHPyIbMhvR8H2AW0=
-cloud.google.com/go/language v1.11.0/go.mod h1:uDx+pFDdAKTY8ehpWbiXyQdz8tDSYLJbQcXsCkjYyvQ=
cloud.google.com/go/lifesciences v0.5.0/go.mod h1:3oIKy8ycWGPUyZDR/8RNnTOYevhaMLqh5vLUXs9zvT8=
cloud.google.com/go/lifesciences v0.6.0/go.mod h1:ddj6tSX/7BOnhxCSd3ZcETvtNr8NZ6t/iPhY2Tyfu08=
cloud.google.com/go/lifesciences v0.8.0/go.mod h1:lFxiEOMqII6XggGbOnKiyZ7IBwoIqA84ClvoezaA/bo=
-cloud.google.com/go/lifesciences v0.9.1/go.mod h1:hACAOd1fFbCGLr/+weUKRAJas82Y4vrL3O5326N//Wc=
cloud.google.com/go/logging v1.6.1/go.mod h1:5ZO0mHHbvm8gEmeEUHrmDlTDSu5imF6MUP9OfilNXBw=
cloud.google.com/go/logging v1.7.0/go.mod h1:3xjP2CjkM3ZkO73aj4ASA5wRPGGCRrPIAeNqVNkzY8M=
cloud.google.com/go/logging v1.8.1 h1:26skQWPeYhvIasWKm48+Eq7oUqdcdbwsCVwz5Ys0FvU=
@@ -479,127 +358,94 @@ cloud.google.com/go/logging v1.8.1/go.mod h1:TJjR+SimHwuC8MZ9cjByQulAMgni+RkXeI3
cloud.google.com/go/longrunning v0.1.1/go.mod h1:UUFxuDWkv22EuY93jjmDMFT5GPQKeFVJBIF6QlTqdsE=
cloud.google.com/go/longrunning v0.3.0/go.mod h1:qth9Y41RRSUE69rDcOn6DdK3HfQfsUI0YSmW3iIlLJc=
cloud.google.com/go/longrunning v0.4.1/go.mod h1:4iWDqhBZ70CvZ6BfETbvam3T8FMvLK+eFj0E6AaRQTo=
-cloud.google.com/go/longrunning v0.4.2/go.mod h1:OHrnaYyLUV6oqwh0xiS7e5sLQhP1m0QU9R+WhGDMgIQ=
-cloud.google.com/go/longrunning v0.5.0/go.mod h1:0JNuqRShmscVAhIACGtskSAWtqtOoPkwP0YF1oVEchc=
cloud.google.com/go/longrunning v0.5.1 h1:Fr7TXftcqTudoyRJa113hyaqlGdiBQkp0Gq7tErFDWI=
cloud.google.com/go/longrunning v0.5.1/go.mod h1:spvimkwdz6SPWKEt/XBij79E9fiTkHSQl/fRUUQJYJc=
cloud.google.com/go/managedidentities v1.3.0/go.mod h1:UzlW3cBOiPrzucO5qWkNkh0w33KFtBJU281hacNvsdE=
cloud.google.com/go/managedidentities v1.4.0/go.mod h1:NWSBYbEMgqmbZsLIyKvxrYbtqOsxY1ZrGM+9RgDqInM=
cloud.google.com/go/managedidentities v1.5.0/go.mod h1:+dWcZ0JlUmpuxpIDfyP5pP5y0bLdRwOS4Lp7gMni/LA=
-cloud.google.com/go/managedidentities v1.6.1/go.mod h1:h/irGhTN2SkZ64F43tfGPMbHnypMbu4RB3yl8YcuEak=
cloud.google.com/go/maps v0.1.0/go.mod h1:BQM97WGyfw9FWEmQMpZ5T6cpovXXSd1cGmFma94eubI=
cloud.google.com/go/maps v0.6.0/go.mod h1:o6DAMMfb+aINHz/p/jbcY+mYeXBoZoxTfdSQ8VAJaCw=
cloud.google.com/go/maps v0.7.0/go.mod h1:3GnvVl3cqeSvgMcpRlQidXsPYuDGQ8naBis7MVzpXsY=
-cloud.google.com/go/maps v1.3.0/go.mod h1:6mWTUv+WhnOwAgjVsSW2QPPECmW+s3PcRyOa9vgG/5s=
-cloud.google.com/go/maps v1.4.0/go.mod h1:6mWTUv+WhnOwAgjVsSW2QPPECmW+s3PcRyOa9vgG/5s=
cloud.google.com/go/mediatranslation v0.5.0/go.mod h1:jGPUhGTybqsPQn91pNXw0xVHfuJ3leR1wj37oU3y1f4=
cloud.google.com/go/mediatranslation v0.6.0/go.mod h1:hHdBCTYNigsBxshbznuIMFNe5QXEowAuNmmC7h8pu5w=
cloud.google.com/go/mediatranslation v0.7.0/go.mod h1:LCnB/gZr90ONOIQLgSXagp8XUW1ODs2UmUMvcgMfI2I=
-cloud.google.com/go/mediatranslation v0.8.1/go.mod h1:L/7hBdEYbYHQJhX2sldtTO5SZZ1C1vkapubj0T2aGig=
cloud.google.com/go/memcache v1.4.0/go.mod h1:rTOfiGZtJX1AaFUrOgsMHX5kAzaTQ8azHiuDoTPzNsE=
cloud.google.com/go/memcache v1.5.0/go.mod h1:dk3fCK7dVo0cUU2c36jKb4VqKPS22BTkf81Xq617aWM=
cloud.google.com/go/memcache v1.6.0/go.mod h1:XS5xB0eQZdHtTuTF9Hf8eJkKtR3pVRCcvJwtm68T3rA=
cloud.google.com/go/memcache v1.7.0/go.mod h1:ywMKfjWhNtkQTxrWxCkCFkoPjLHPW6A7WOTVI8xy3LY=
cloud.google.com/go/memcache v1.9.0/go.mod h1:8oEyzXCu+zo9RzlEaEjHl4KkgjlNDaXbCQeQWlzNFJM=
-cloud.google.com/go/memcache v1.10.1/go.mod h1:47YRQIarv4I3QS5+hoETgKO40InqzLP6kpNLvyXuyaA=
cloud.google.com/go/metastore v1.5.0/go.mod h1:2ZNrDcQwghfdtCwJ33nM0+GrBGlVuh8rakL3vdPY3XY=
cloud.google.com/go/metastore v1.6.0/go.mod h1:6cyQTls8CWXzk45G55x57DVQ9gWg7RiH65+YgPsNh9s=
cloud.google.com/go/metastore v1.7.0/go.mod h1:s45D0B4IlsINu87/AsWiEVYbLaIMeUSoxlKKDqBGFS8=
cloud.google.com/go/metastore v1.8.0/go.mod h1:zHiMc4ZUpBiM7twCIFQmJ9JMEkDSyZS9U12uf7wHqSI=
cloud.google.com/go/metastore v1.10.0/go.mod h1:fPEnH3g4JJAk+gMRnrAnoqyv2lpUCqJPWOodSaf45Eo=
-cloud.google.com/go/metastore v1.11.1/go.mod h1:uZuSo80U3Wd4zi6C22ZZliOUJ3XeM/MlYi/z5OAOWRA=
-cloud.google.com/go/metastore v1.12.0/go.mod h1:uZuSo80U3Wd4zi6C22ZZliOUJ3XeM/MlYi/z5OAOWRA=
-cloud.google.com/go/monitoring v0.1.0/go.mod h1:Hpm3XfzJv+UTiXzCG5Ffp0wijzHTC7Cv4eR7o3x/fEE=
+cloud.google.com/go/monitoring v1.1.0/go.mod h1:L81pzz7HKn14QCMaCs6NTQkdBnE87TElyanS95vIcl4=
+cloud.google.com/go/monitoring v1.5.0/go.mod h1:/o9y8NYX5j91JjD/JvGLYbi86kL11OjyJXq2XziLJu4=
cloud.google.com/go/monitoring v1.7.0/go.mod h1:HpYse6kkGo//7p6sT0wsIC6IBDET0RhIsnmlA53dvEk=
cloud.google.com/go/monitoring v1.8.0/go.mod h1:E7PtoMJ1kQXWxPjB6mv2fhC5/15jInuulFdYYtlcvT4=
cloud.google.com/go/monitoring v1.12.0/go.mod h1:yx8Jj2fZNEkL/GYZyTLS4ZtZEZN8WtDEiEqG4kLK50w=
cloud.google.com/go/monitoring v1.13.0/go.mod h1:k2yMBAB1H9JT/QETjNkgdCGD9bPF712XiLTVr+cBrpw=
-cloud.google.com/go/monitoring v1.15.1/go.mod h1:lADlSAlFdbqQuwwpaImhsJXu1QSdd3ojypXrFSMr2rM=
-cloud.google.com/go/monitoring v1.16.0/go.mod h1:Ptp15HgAyM1fNICAojDMoNc/wUmn67mLHQfyqbw+poY=
cloud.google.com/go/networkconnectivity v1.4.0/go.mod h1:nOl7YL8odKyAOtzNX73/M5/mGZgqqMeryi6UPZTk/rA=
cloud.google.com/go/networkconnectivity v1.5.0/go.mod h1:3GzqJx7uhtlM3kln0+x5wyFvuVH1pIBJjhCpjzSt75o=
cloud.google.com/go/networkconnectivity v1.6.0/go.mod h1:OJOoEXW+0LAxHh89nXd64uGG+FbQoeH8DtxCHVOMlaM=
cloud.google.com/go/networkconnectivity v1.7.0/go.mod h1:RMuSbkdbPwNMQjB5HBWD5MpTBnNm39iAVpC3TmsExt8=
cloud.google.com/go/networkconnectivity v1.10.0/go.mod h1:UP4O4sWXJG13AqrTdQCD9TnLGEbtNRqjuaaA7bNjF5E=
cloud.google.com/go/networkconnectivity v1.11.0/go.mod h1:iWmDD4QF16VCDLXUqvyspJjIEtBR/4zq5hwnY2X3scM=
-cloud.google.com/go/networkconnectivity v1.12.1/go.mod h1:PelxSWYM7Sh9/guf8CFhi6vIqf19Ir/sbfZRUwXh92E=
-cloud.google.com/go/networkconnectivity v1.13.0/go.mod h1:SAnGPes88pl7QRLUen2HmcBSE9AowVAcdug8c0RSBFk=
cloud.google.com/go/networkmanagement v1.4.0/go.mod h1:Q9mdLLRn60AsOrPc8rs8iNV6OHXaGcDdsIQe1ohekq8=
cloud.google.com/go/networkmanagement v1.5.0/go.mod h1:ZnOeZ/evzUdUsnvRt792H0uYEnHQEMaz+REhhzJRcf4=
cloud.google.com/go/networkmanagement v1.6.0/go.mod h1:5pKPqyXjB/sgtvB5xqOemumoQNB7y95Q7S+4rjSOPYY=
-cloud.google.com/go/networkmanagement v1.8.0/go.mod h1:Ho/BUGmtyEqrttTgWEe7m+8vDdK74ibQc+Be0q7Fof0=
-cloud.google.com/go/networkmanagement v1.9.0/go.mod h1:UTUaEU9YwbCAhhz3jEOHr+2/K/MrBk2XxOLS89LQzFw=
cloud.google.com/go/networksecurity v0.5.0/go.mod h1:xS6fOCoqpVC5zx15Z/MqkfDwH4+m/61A3ODiDV1xmiQ=
cloud.google.com/go/networksecurity v0.6.0/go.mod h1:Q5fjhTr9WMI5mbpRYEbiexTzROf7ZbDzvzCrNl14nyU=
cloud.google.com/go/networksecurity v0.7.0/go.mod h1:mAnzoxx/8TBSyXEeESMy9OOYwo1v+gZ5eMRnsT5bC8k=
cloud.google.com/go/networksecurity v0.8.0/go.mod h1:B78DkqsxFG5zRSVuwYFRZ9Xz8IcQ5iECsNrPn74hKHU=
-cloud.google.com/go/networksecurity v0.9.1/go.mod h1:MCMdxOKQ30wsBI1eI659f9kEp4wuuAueoC9AJKSPWZQ=
cloud.google.com/go/notebooks v1.2.0/go.mod h1:9+wtppMfVPUeJ8fIWPOq1UnATHISkGXGqTkxeieQ6UY=
cloud.google.com/go/notebooks v1.3.0/go.mod h1:bFR5lj07DtCPC7YAAJ//vHskFBxA5JzYlH68kXVdk34=
cloud.google.com/go/notebooks v1.4.0/go.mod h1:4QPMngcwmgb6uw7Po99B2xv5ufVoIQ7nOGDyL4P8AgA=
cloud.google.com/go/notebooks v1.5.0/go.mod h1:q8mwhnP9aR8Hpfnrc5iN5IBhrXUy8S2vuYs+kBJ/gu0=
cloud.google.com/go/notebooks v1.7.0/go.mod h1:PVlaDGfJgj1fl1S3dUwhFMXFgfYGhYQt2164xOMONmE=
cloud.google.com/go/notebooks v1.8.0/go.mod h1:Lq6dYKOYOWUCTvw5t2q1gp1lAp0zxAxRycayS0iJcqQ=
-cloud.google.com/go/notebooks v1.9.1/go.mod h1:zqG9/gk05JrzgBt4ghLzEepPHNwE5jgPcHZRKhlC1A8=
-cloud.google.com/go/notebooks v1.10.0/go.mod h1:SOPYMZnttHxqot0SGSFSkRrwE29eqnKPBJFqgWmiK2k=
cloud.google.com/go/optimization v1.1.0/go.mod h1:5po+wfvX5AQlPznyVEZjGJTMr4+CAkJf2XSTQOOl9l4=
cloud.google.com/go/optimization v1.2.0/go.mod h1:Lr7SOHdRDENsh+WXVmQhQTrzdu9ybg0NecjHidBq6xs=
cloud.google.com/go/optimization v1.3.1/go.mod h1:IvUSefKiwd1a5p0RgHDbWCIbDFgKuEdB+fPPuP0IDLI=
-cloud.google.com/go/optimization v1.4.1/go.mod h1:j64vZQP7h9bO49m2rVaTVoNM0vEBEN5eKPUPbZyXOrk=
-cloud.google.com/go/optimization v1.5.0/go.mod h1:evo1OvTxeBRBu6ydPlrIRizKY/LJKo/drDMMRKqGEUU=
cloud.google.com/go/orchestration v1.3.0/go.mod h1:Sj5tq/JpWiB//X/q3Ngwdl5K7B7Y0KZ7bfv0wL6fqVA=
cloud.google.com/go/orchestration v1.4.0/go.mod h1:6W5NLFWs2TlniBphAViZEVhrXRSMgUGDfW7vrWKvsBk=
cloud.google.com/go/orchestration v1.6.0/go.mod h1:M62Bevp7pkxStDfFfTuCOaXgaaqRAga1yKyoMtEoWPQ=
-cloud.google.com/go/orchestration v1.8.1/go.mod h1:4sluRF3wgbYVRqz7zJ1/EUNc90TTprliq9477fGobD8=
cloud.google.com/go/orgpolicy v1.4.0/go.mod h1:xrSLIV4RePWmP9P3tBl8S93lTmlAxjm06NSm2UTmKvE=
cloud.google.com/go/orgpolicy v1.5.0/go.mod h1:hZEc5q3wzwXJaKrsx5+Ewg0u1LxJ51nNFlext7Tanwc=
cloud.google.com/go/orgpolicy v1.10.0/go.mod h1:w1fo8b7rRqlXlIJbVhOMPrwVljyuW5mqssvBtU18ONc=
-cloud.google.com/go/orgpolicy v1.11.0/go.mod h1:2RK748+FtVvnfuynxBzdnyu7sygtoZa1za/0ZfpOs1M=
-cloud.google.com/go/orgpolicy v1.11.1/go.mod h1:8+E3jQcpZJQliP+zaFfayC2Pg5bmhuLK755wKhIIUCE=
cloud.google.com/go/osconfig v1.7.0/go.mod h1:oVHeCeZELfJP7XLxcBGTMBvRO+1nQ5tFG9VQTmYS2Fs=
cloud.google.com/go/osconfig v1.8.0/go.mod h1:EQqZLu5w5XA7eKizepumcvWx+m8mJUhEwiPqWiZeEdg=
cloud.google.com/go/osconfig v1.9.0/go.mod h1:Yx+IeIZJ3bdWmzbQU4fxNl8xsZ4amB+dygAwFPlvnNo=
cloud.google.com/go/osconfig v1.10.0/go.mod h1:uMhCzqC5I8zfD9zDEAfvgVhDS8oIjySWh+l4WK6GnWw=
cloud.google.com/go/osconfig v1.11.0/go.mod h1:aDICxrur2ogRd9zY5ytBLV89KEgT2MKB2L/n6x1ooPw=
-cloud.google.com/go/osconfig v1.12.0/go.mod h1:8f/PaYzoS3JMVfdfTubkowZYGmAhUCjjwnjqWI7NVBc=
-cloud.google.com/go/osconfig v1.12.1/go.mod h1:4CjBxND0gswz2gfYRCUoUzCm9zCABp91EeTtWXyz0tE=
cloud.google.com/go/oslogin v1.4.0/go.mod h1:YdgMXWRaElXz/lDk1Na6Fh5orF7gvmJ0FGLIs9LId4E=
cloud.google.com/go/oslogin v1.5.0/go.mod h1:D260Qj11W2qx/HVF29zBg+0fd6YCSjSqLUkY/qEenQU=
cloud.google.com/go/oslogin v1.6.0/go.mod h1:zOJ1O3+dTU8WPlGEkFSh7qeHPPSoxrcMbbK1Nm2iX70=
cloud.google.com/go/oslogin v1.7.0/go.mod h1:e04SN0xO1UNJ1M5GP0vzVBFicIe4O53FOfcixIqTyXo=
cloud.google.com/go/oslogin v1.9.0/go.mod h1:HNavntnH8nzrn8JCTT5fj18FuJLFJc4NaZJtBnQtKFs=
-cloud.google.com/go/oslogin v1.10.1/go.mod h1:x692z7yAue5nE7CsSnoG0aaMbNoRJRXO4sn73R+ZqAs=
cloud.google.com/go/phishingprotection v0.5.0/go.mod h1:Y3HZknsK9bc9dMi+oE8Bim0lczMU6hrX0UpADuMefr0=
cloud.google.com/go/phishingprotection v0.6.0/go.mod h1:9Y3LBLgy0kDTcYET8ZH3bq/7qni15yVUoAxiFxnlSUA=
cloud.google.com/go/phishingprotection v0.7.0/go.mod h1:8qJI4QKHoda/sb/7/YmMQ2omRLSLYSu9bU0EKCNI+Lk=
-cloud.google.com/go/phishingprotection v0.8.1/go.mod h1:AxonW7GovcA8qdEk13NfHq9hNx5KPtfxXNeUxTDxB6I=
cloud.google.com/go/policytroubleshooter v1.3.0/go.mod h1:qy0+VwANja+kKrjlQuOzmlvscn4RNsAc0e15GGqfMxg=
cloud.google.com/go/policytroubleshooter v1.4.0/go.mod h1:DZT4BcRw3QoO8ota9xw/LKtPa8lKeCByYeKTIf/vxdE=
cloud.google.com/go/policytroubleshooter v1.5.0/go.mod h1:Rz1WfV+1oIpPdN2VvvuboLVRsB1Hclg3CKQ53j9l8vw=
cloud.google.com/go/policytroubleshooter v1.6.0/go.mod h1:zYqaPTsmfvpjm5ULxAyD/lINQxJ0DDsnWOP/GZ7xzBc=
-cloud.google.com/go/policytroubleshooter v1.7.1/go.mod h1:0NaT5v3Ag1M7U5r0GfDCpUFkWd9YqpubBWsQlhanRv0=
-cloud.google.com/go/policytroubleshooter v1.8.0/go.mod h1:tmn5Ir5EToWe384EuboTcVQT7nTag2+DuH3uHmKd1HU=
-cloud.google.com/go/policytroubleshooter v1.9.0/go.mod h1:+E2Lga7TycpeSTj2FsH4oXxTnrbHJGRlKhVZBLGgU64=
cloud.google.com/go/privatecatalog v0.5.0/go.mod h1:XgosMUvvPyxDjAVNDYxJ7wBW8//hLDDYmnsNcMGq1K0=
cloud.google.com/go/privatecatalog v0.6.0/go.mod h1:i/fbkZR0hLN29eEWiiwue8Pb+GforiEIBnV9yrRUOKI=
cloud.google.com/go/privatecatalog v0.7.0/go.mod h1:2s5ssIFO69F5csTXcwBP7NPFTZvps26xGzvQ2PQaBYg=
cloud.google.com/go/privatecatalog v0.8.0/go.mod h1:nQ6pfaegeDAq/Q5lrfCQzQLhubPiZhSaNhIgfJlnIXs=
-cloud.google.com/go/privatecatalog v0.9.1/go.mod h1:0XlDXW2unJXdf9zFz968Hp35gl/bhF4twwpXZAW50JA=
cloud.google.com/go/pubsub v1.0.1/go.mod h1:R0Gpsv3s54REJCy4fxDixWD93lHJMoZTyQ2kNxGRt3I=
cloud.google.com/go/pubsub v1.1.0/go.mod h1:EwwdRX2sKPjnvnqCa270oGRyludottCI76h+R3AArQw=
cloud.google.com/go/pubsub v1.2.0/go.mod h1:jhfEVHT8odbXTkndysNHCcx0awwzvfOlguIAii9o8iA=
cloud.google.com/go/pubsub v1.3.1/go.mod h1:i+ucay31+CNRpDW4Lu78I4xXG+O1r/MAHgjpRVR+TSU=
-cloud.google.com/go/pubsub v1.16.0/go.mod h1:6A8EfoWZ/lUvCWStKGwAWauJZSiuV0Mkmu6WilK/TxQ=
+cloud.google.com/go/pubsub v1.24.0/go.mod h1:rWv09Te1SsRpRGPiWOMDKraMQTJyJps4MkUCoMGUgqw=
cloud.google.com/go/pubsub v1.26.0/go.mod h1:QgBH3U/jdJy/ftjPhTkyXNj543Tin1pRYcdcPRnFIRI=
cloud.google.com/go/pubsub v1.27.1/go.mod h1:hQN39ymbV9geqBnfQq6Xf63yNhUAhv9CZhzp5O6qsW0=
cloud.google.com/go/pubsub v1.28.0/go.mod h1:vuXFpwaVoIPQMGXqRyUQigu/AX1S3IWugR9xznmcXX8=
cloud.google.com/go/pubsub v1.30.0/go.mod h1:qWi1OPS0B+b5L+Sg6Gmc9zD1Y+HaM0MdUr7LsupY1P4=
-cloud.google.com/go/pubsub v1.32.0/go.mod h1:f+w71I33OMyxf9VpMVcZbnG5KSUkCOUHYpFd5U1GdRc=
-cloud.google.com/go/pubsub v1.33.0/go.mod h1:f+w71I33OMyxf9VpMVcZbnG5KSUkCOUHYpFd5U1GdRc=
cloud.google.com/go/pubsublite v1.5.0/go.mod h1:xapqNQ1CuLfGi23Yda/9l4bBCKz/wC3KIJ5gKcxveZg=
cloud.google.com/go/pubsublite v1.6.0/go.mod h1:1eFCS0U11xlOuMFV/0iBqw3zP12kddMeCbj/F3FSj9k=
cloud.google.com/go/pubsublite v1.7.0/go.mod h1:8hVMwRXfDfvGm3fahVbtDbiLePT3gpoiJYJY+vxWxVM=
-cloud.google.com/go/pubsublite v1.8.1/go.mod h1:fOLdU4f5xldK4RGJrBMm+J7zMWNj/k4PxwEZXy39QS0=
cloud.google.com/go/recaptchaenterprise v1.3.1/go.mod h1:OdD+q+y4XGeAlxRaMn1Y7/GveP6zmq76byL6tjPE7d4=
cloud.google.com/go/recaptchaenterprise/v2 v2.1.0/go.mod h1:w9yVqajwroDNTfGuhmOjPDN//rZGySaf6PtFVcSCa7o=
cloud.google.com/go/recaptchaenterprise/v2 v2.2.0/go.mod h1:/Zu5jisWGeERrd5HnlS3EUGb/D335f9k51B/FVil0jk=
@@ -608,58 +454,47 @@ cloud.google.com/go/recaptchaenterprise/v2 v2.4.0/go.mod h1:Am3LHfOuBstrLrNCBrlI
cloud.google.com/go/recaptchaenterprise/v2 v2.5.0/go.mod h1:O8LzcHXN3rz0j+LBC91jrwI3R+1ZSZEWrfL7XHgNo9U=
cloud.google.com/go/recaptchaenterprise/v2 v2.6.0/go.mod h1:RPauz9jeLtB3JVzg6nCbe12qNoaa8pXc4d/YukAmcnA=
cloud.google.com/go/recaptchaenterprise/v2 v2.7.0/go.mod h1:19wVj/fs5RtYtynAPJdDTb69oW0vNHYDBTbB4NvMD9c=
-cloud.google.com/go/recaptchaenterprise/v2 v2.7.2/go.mod h1:kR0KjsJS7Jt1YSyWFkseQ756D45kaYNTlDPPaRAvDBU=
cloud.google.com/go/recommendationengine v0.5.0/go.mod h1:E5756pJcVFeVgaQv3WNpImkFP8a+RptV6dDLGPILjvg=
cloud.google.com/go/recommendationengine v0.6.0/go.mod h1:08mq2umu9oIqc7tDy8sx+MNJdLG0fUi3vaSVbztHgJ4=
cloud.google.com/go/recommendationengine v0.7.0/go.mod h1:1reUcE3GIu6MeBz/h5xZJqNLuuVjNg1lmWMPyjatzac=
-cloud.google.com/go/recommendationengine v0.8.1/go.mod h1:MrZihWwtFYWDzE6Hz5nKcNz3gLizXVIDI/o3G1DLcrE=
cloud.google.com/go/recommender v1.5.0/go.mod h1:jdoeiBIVrJe9gQjwd759ecLJbxCDED4A6p+mqoqDvTg=
cloud.google.com/go/recommender v1.6.0/go.mod h1:+yETpm25mcoiECKh9DEScGzIRyDKpZ0cEhWGo+8bo+c=
cloud.google.com/go/recommender v1.7.0/go.mod h1:XLHs/W+T8olwlGOgfQenXBTbIseGclClff6lhFVe9Bs=
cloud.google.com/go/recommender v1.8.0/go.mod h1:PkjXrTT05BFKwxaUxQmtIlrtj0kph108r02ZZQ5FE70=
cloud.google.com/go/recommender v1.9.0/go.mod h1:PnSsnZY7q+VL1uax2JWkt/UegHssxjUVVCrX52CuEmQ=
-cloud.google.com/go/recommender v1.10.1/go.mod h1:XFvrE4Suqn5Cq0Lf+mCP6oBHD/yRMA8XxP5sb7Q7gpA=
-cloud.google.com/go/recommender v1.11.0/go.mod h1:kPiRQhPyTJ9kyXPCG6u/dlPLbYfFlkwHNRwdzPVAoII=
cloud.google.com/go/redis v1.7.0/go.mod h1:V3x5Jq1jzUcg+UNsRvdmsfuFnit1cfe3Z/PGyq/lm4Y=
cloud.google.com/go/redis v1.8.0/go.mod h1:Fm2szCDavWzBk2cDKxrkmWBqoCiL1+Ctwq7EyqBCA/A=
cloud.google.com/go/redis v1.9.0/go.mod h1:HMYQuajvb2D0LvMgZmLDZW8V5aOC/WxstZHiy4g8OiA=
cloud.google.com/go/redis v1.10.0/go.mod h1:ThJf3mMBQtW18JzGgh41/Wld6vnDDc/F/F35UolRZPM=
cloud.google.com/go/redis v1.11.0/go.mod h1:/X6eicana+BWcUda5PpwZC48o37SiFVTFSs0fWAJ7uQ=
-cloud.google.com/go/redis v1.13.1/go.mod h1:VP7DGLpE91M6bcsDdMuyCm2hIpB6Vp2hI090Mfd1tcg=
cloud.google.com/go/resourcemanager v1.3.0/go.mod h1:bAtrTjZQFJkiWTPDb1WBjzvc6/kifjj4QBYuKCCoqKA=
cloud.google.com/go/resourcemanager v1.4.0/go.mod h1:MwxuzkumyTX7/a3n37gmsT3py7LIXwrShilPh3P1tR0=
cloud.google.com/go/resourcemanager v1.5.0/go.mod h1:eQoXNAiAvCf5PXxWxXjhKQoTMaUSNrEfg+6qdf/wots=
cloud.google.com/go/resourcemanager v1.6.0/go.mod h1:YcpXGRs8fDzcUl1Xw8uOVmI8JEadvhRIkoXXUNVYcVo=
cloud.google.com/go/resourcemanager v1.7.0/go.mod h1:HlD3m6+bwhzj9XCouqmeiGuni95NTrExfhoSrkC/3EI=
-cloud.google.com/go/resourcemanager v1.9.1/go.mod h1:dVCuosgrh1tINZ/RwBufr8lULmWGOkPS8gL5gqyjdT8=
cloud.google.com/go/resourcesettings v1.3.0/go.mod h1:lzew8VfESA5DQ8gdlHwMrqZs1S9V87v3oCnKCWoOuQU=
cloud.google.com/go/resourcesettings v1.4.0/go.mod h1:ldiH9IJpcrlC3VSuCGvjR5of/ezRrOxFtpJoJo5SmXg=
cloud.google.com/go/resourcesettings v1.5.0/go.mod h1:+xJF7QSG6undsQDfsCJyqWXyBwUoJLhetkRMDRnIoXA=
-cloud.google.com/go/resourcesettings v1.6.1/go.mod h1:M7mk9PIZrC5Fgsu1kZJci6mpgN8o0IUzVx3eJU3y4Jw=
cloud.google.com/go/retail v1.8.0/go.mod h1:QblKS8waDmNUhghY2TI9O3JLlFk8jybHeV4BF19FrE4=
cloud.google.com/go/retail v1.9.0/go.mod h1:g6jb6mKuCS1QKnH/dpu7isX253absFl6iE92nHwlBUY=
cloud.google.com/go/retail v1.10.0/go.mod h1:2gDk9HsL4HMS4oZwz6daui2/jmKvqShXKQuB2RZ+cCc=
cloud.google.com/go/retail v1.11.0/go.mod h1:MBLk1NaWPmh6iVFSz9MeKG/Psyd7TAgm6y/9L2B4x9Y=
cloud.google.com/go/retail v1.12.0/go.mod h1:UMkelN/0Z8XvKymXFbD4EhFJlYKRx1FGhQkVPU5kF14=
-cloud.google.com/go/retail v1.14.1/go.mod h1:y3Wv3Vr2k54dLNIrCzenyKG8g8dhvhncT2NcNjb/6gE=
cloud.google.com/go/run v0.2.0/go.mod h1:CNtKsTA1sDcnqqIFR3Pb5Tq0usWxJJvsWOCPldRU3Do=
cloud.google.com/go/run v0.3.0/go.mod h1:TuyY1+taHxTjrD0ZFk2iAR+xyOXEA0ztb7U3UNA0zBo=
cloud.google.com/go/run v0.8.0/go.mod h1:VniEnuBwqjigv0A7ONfQUaEItaiCRVujlMqerPPiktM=
cloud.google.com/go/run v0.9.0/go.mod h1:Wwu+/vvg8Y+JUApMwEDfVfhetv30hCG4ZwDR/IXl2Qg=
-cloud.google.com/go/run v1.2.0/go.mod h1:36V1IlDzQ0XxbQjUx6IYbw8H3TJnWvhii963WW3B/bo=
cloud.google.com/go/scheduler v1.4.0/go.mod h1:drcJBmxF3aqZJRhmkHQ9b3uSSpQoltBPGPxGAWROx6s=
cloud.google.com/go/scheduler v1.5.0/go.mod h1:ri073ym49NW3AfT6DZi21vLZrG07GXr5p3H1KxN5QlI=
cloud.google.com/go/scheduler v1.6.0/go.mod h1:SgeKVM7MIwPn3BqtcBntpLyrIJftQISRrYB5ZtT+KOk=
cloud.google.com/go/scheduler v1.7.0/go.mod h1:jyCiBqWW956uBjjPMMuX09n3x37mtyPJegEWKxRsn44=
cloud.google.com/go/scheduler v1.8.0/go.mod h1:TCET+Y5Gp1YgHT8py4nlg2Sew8nUHMqcpousDgXJVQc=
cloud.google.com/go/scheduler v1.9.0/go.mod h1:yexg5t+KSmqu+njTIh3b7oYPheFtBWGcbVUYF1GGMIc=
-cloud.google.com/go/scheduler v1.10.1/go.mod h1:R63Ldltd47Bs4gnhQkmNDse5w8gBRrhObZ54PxgR2Oo=
-cloud.google.com/go/secretmanager v0.1.0/go.mod h1:3nGKHvnzDUVit7U0S9KAKJ4aOsO1xtwRG+7ey5LK1bM=
+cloud.google.com/go/secretmanager v1.5.0/go.mod h1:5C9kM+RwSpkURNovKySkNvGQLUaOgyoR5W0RUx2SyHQ=
cloud.google.com/go/secretmanager v1.6.0/go.mod h1:awVa/OXF6IiyaU1wQ34inzQNc4ISIDIrId8qE5QGgKA=
cloud.google.com/go/secretmanager v1.8.0/go.mod h1:hnVgi/bN5MYHd3Gt0SPuTPPp5ENina1/LxM+2W9U9J4=
cloud.google.com/go/secretmanager v1.9.0/go.mod h1:b71qH2l1yHmWQHt9LC80akm86mX8AL6X1MA01dW8ht4=
cloud.google.com/go/secretmanager v1.10.0/go.mod h1:MfnrdvKMPNra9aZtQFvBcvRU54hbPD8/HayQdlUgJpU=
-cloud.google.com/go/secretmanager v1.11.1/go.mod h1:znq9JlXgTNdBeQk9TBW/FnR/W4uChEKGeqQWAJ8SXFw=
cloud.google.com/go/security v1.5.0/go.mod h1:lgxGdyOKKjHL4YG3/YwIL2zLqMFCKs0UbQwgyZmfJl4=
cloud.google.com/go/security v1.7.0/go.mod h1:mZklORHl6Bg7CNnnjLH//0UlAlaXqiG7Lb9PsPXLfD0=
cloud.google.com/go/security v1.8.0/go.mod h1:hAQOwgmaHhztFhiQ41CjDODdWP0+AE1B3sX4OFlq+GU=
@@ -667,14 +502,12 @@ cloud.google.com/go/security v1.9.0/go.mod h1:6Ta1bO8LXI89nZnmnsZGp9lVoVWXqsVbIq
cloud.google.com/go/security v1.10.0/go.mod h1:QtOMZByJVlibUT2h9afNDWRZ1G96gVywH8T5GUSb9IA=
cloud.google.com/go/security v1.12.0/go.mod h1:rV6EhrpbNHrrxqlvW0BWAIawFWq3X90SduMJdFwtLB8=
cloud.google.com/go/security v1.13.0/go.mod h1:Q1Nvxl1PAgmeW0y3HTt54JYIvUdtcpYKVfIB8AOMZ+0=
-cloud.google.com/go/security v1.15.1/go.mod h1:MvTnnbsWnehoizHi09zoiZob0iCHVcL4AUBj76h9fXA=
cloud.google.com/go/securitycenter v1.13.0/go.mod h1:cv5qNAqjY84FCN6Y9z28WlkKXyWsgLO832YiWwkCWcU=
cloud.google.com/go/securitycenter v1.14.0/go.mod h1:gZLAhtyKv85n52XYWt6RmeBdydyxfPeTrpToDPw4Auc=
cloud.google.com/go/securitycenter v1.15.0/go.mod h1:PeKJ0t8MoFmmXLXWm41JidyzI3PJjd8sXWaVqg43WWk=
cloud.google.com/go/securitycenter v1.16.0/go.mod h1:Q9GMaLQFUD+5ZTabrbujNWLtSLZIZF7SAR0wWECrjdk=
cloud.google.com/go/securitycenter v1.18.1/go.mod h1:0/25gAzCM/9OL9vVx4ChPeM/+DlfGQJDwBy/UC8AKK0=
cloud.google.com/go/securitycenter v1.19.0/go.mod h1:LVLmSg8ZkkyaNy4u7HCIshAngSQ8EcIRREP3xBnyfag=
-cloud.google.com/go/securitycenter v1.23.0/go.mod h1:8pwQ4n+Y9WCWM278R8W3nF65QtY172h4S8aXyI9/hsQ=
cloud.google.com/go/servicecontrol v1.4.0/go.mod h1:o0hUSJ1TXJAmi/7fLJAedOovnujSEvjKCAFNXPQ1RaU=
cloud.google.com/go/servicecontrol v1.5.0/go.mod h1:qM0CnXHhyqKVuiZnGKrIurvVImCs8gmqWsDoqe9sU1s=
cloud.google.com/go/servicecontrol v1.10.0/go.mod h1:pQvyvSRh7YzUF2efw7H87V92mxU8FnFDawMClGCNuAA=
@@ -686,8 +519,6 @@ cloud.google.com/go/servicedirectory v1.6.0/go.mod h1:pUlbnWsLH9c13yGkxCmfumWEPj
cloud.google.com/go/servicedirectory v1.7.0/go.mod h1:5p/U5oyvgYGYejufvxhgwjL8UVXjkuw7q5XcG10wx1U=
cloud.google.com/go/servicedirectory v1.8.0/go.mod h1:srXodfhY1GFIPvltunswqXpVxFPpZjf8nkKQT7XcXaY=
cloud.google.com/go/servicedirectory v1.9.0/go.mod h1:29je5JjiygNYlmsGz8k6o+OZ8vd4f//bQLtvzkPPT/s=
-cloud.google.com/go/servicedirectory v1.10.1/go.mod h1:Xv0YVH8s4pVOwfM/1eMTl0XJ6bzIOSLDt8f8eLaGOxQ=
-cloud.google.com/go/servicedirectory v1.11.0/go.mod h1:Xv0YVH8s4pVOwfM/1eMTl0XJ6bzIOSLDt8f8eLaGOxQ=
cloud.google.com/go/servicemanagement v1.4.0/go.mod h1:d8t8MDbezI7Z2R1O/wu8oTggo3BI2GKYbdG4y/SJTco=
cloud.google.com/go/servicemanagement v1.5.0/go.mod h1:XGaCRe57kfqu4+lRxaFEAuqmjzF0r+gWHjWqKqBvKFo=
cloud.google.com/go/servicemanagement v1.6.0/go.mod h1:aWns7EeeCOtGEX4OvZUWCCJONRZeFKiptqKf1D0l/Jc=
@@ -699,29 +530,24 @@ cloud.google.com/go/serviceusage v1.6.0/go.mod h1:R5wwQcbOWsyuOfbP9tGdAnCAc6B9DR
cloud.google.com/go/shell v1.3.0/go.mod h1:VZ9HmRjZBsjLGXusm7K5Q5lzzByZmJHf1d0IWHEN5X4=
cloud.google.com/go/shell v1.4.0/go.mod h1:HDxPzZf3GkDdhExzD/gs8Grqk+dmYcEjGShZgYa9URw=
cloud.google.com/go/shell v1.6.0/go.mod h1:oHO8QACS90luWgxP3N9iZVuEiSF84zNyLytb+qE2f9A=
-cloud.google.com/go/shell v1.7.1/go.mod h1:u1RaM+huXFaTojTbW4g9P5emOrrmLE69KrxqQahKn4g=
cloud.google.com/go/spanner v1.41.0/go.mod h1:MLYDBJR/dY4Wt7ZaMIQ7rXOTLjYrmxLE/5ve9vFfWos=
cloud.google.com/go/spanner v1.44.0/go.mod h1:G8XIgYdOK+Fbcpbs7p2fiprDw4CaZX63whnSMLVBxjk=
cloud.google.com/go/spanner v1.45.0/go.mod h1:FIws5LowYz8YAE1J8fOS7DJup8ff7xJeetWEo5REA2M=
-cloud.google.com/go/spanner v1.47.0/go.mod h1:IXsJwVW2j4UKs0eYDqodab6HgGuA1bViSqW4uH9lfUI=
-cloud.google.com/go/spanner v1.49.0/go.mod h1:eGj9mQGK8+hkgSVbHNQ06pQ4oS+cyc4tXXd6Dif1KoM=
cloud.google.com/go/speech v1.6.0/go.mod h1:79tcr4FHCimOp56lwC01xnt/WPJZc4v3gzyT7FoBkCM=
cloud.google.com/go/speech v1.7.0/go.mod h1:KptqL+BAQIhMsj1kOP2la5DSEEerPDuOP/2mmkhHhZQ=
cloud.google.com/go/speech v1.8.0/go.mod h1:9bYIl1/tjsAnMgKGHKmBZzXKEkGgtU+MpdDPTE9f7y0=
cloud.google.com/go/speech v1.9.0/go.mod h1:xQ0jTcmnRFFM2RfX/U+rk6FQNUF6DQlydUSyoooSpco=
cloud.google.com/go/speech v1.14.1/go.mod h1:gEosVRPJ9waG7zqqnsHpYTOoAS4KouMRLDFMekpJ0J0=
cloud.google.com/go/speech v1.15.0/go.mod h1:y6oH7GhqCaZANH7+Oe0BhgIogsNInLlz542tg3VqeYI=
-cloud.google.com/go/speech v1.17.1/go.mod h1:8rVNzU43tQvxDaGvqOhpDqgkJTFowBpDvCJ14kGlJYo=
-cloud.google.com/go/speech v1.19.0/go.mod h1:8rVNzU43tQvxDaGvqOhpDqgkJTFowBpDvCJ14kGlJYo=
cloud.google.com/go/storage v1.0.0/go.mod h1:IhtSnM/ZTZV8YYJWCY8RULGVqBDmpoyjwiyrjsg+URw=
cloud.google.com/go/storage v1.5.0/go.mod h1:tpKbwo567HUNpVclU5sGELwQWBDZ8gh0ZeosJ0Rtdos=
cloud.google.com/go/storage v1.6.0/go.mod h1:N7U0C8pVQ/+NIKOBQyamJIeKQKkZ+mxpohlUTyfDhBk=
cloud.google.com/go/storage v1.8.0/go.mod h1:Wv1Oy7z6Yz3DshWRJFhqM/UCfaWIRTdp0RXyy7KQOVs=
cloud.google.com/go/storage v1.10.0/go.mod h1:FLPqc6j+Ki4BU591ie1oL6qBQGu2Bl/tZ9ullr3+Kg0=
cloud.google.com/go/storage v1.14.0/go.mod h1:GrKmX003DSIwi9o29oFT7YDnHYwZoctc3fOKtUw0Xmo=
-cloud.google.com/go/storage v1.16.1/go.mod h1:LaNorbty3ehnU3rEjXSNV/NRgQA0O8Y+uh6bPe5UOk4=
cloud.google.com/go/storage v1.22.1/go.mod h1:S8N1cAStu7BOeFfE8KAQzmyyLkK8p/vmRq6kuBTW58Y=
cloud.google.com/go/storage v1.23.0/go.mod h1:vOEEDNFnciUMhBeT6hsJIn3ieU5cFRmzeLgDvXzfIXc=
+cloud.google.com/go/storage v1.24.0/go.mod h1:3xrJEFMXBsQLgxwThyjuD3aYlroL0TMRec1ypGUQ0KE=
cloud.google.com/go/storage v1.27.0/go.mod h1:x9DOL8TK/ygDUMieqwfhdpQryTeEkhGKMi80i/iqR2s=
cloud.google.com/go/storage v1.28.1/go.mod h1:Qnisd4CqDdo6BGs2AD5LLnEsmSQ80wQ5ogcBBKhU86Y=
cloud.google.com/go/storage v1.29.0/go.mod h1:4puEjyTKnku6gfKoTfNOU/W+a9JyuVNxjpS5GBrB8h4=
@@ -731,50 +557,39 @@ cloud.google.com/go/storagetransfer v1.5.0/go.mod h1:dxNzUopWy7RQevYFHewchb29POF
cloud.google.com/go/storagetransfer v1.6.0/go.mod h1:y77xm4CQV/ZhFZH75PLEXY0ROiS7Gh6pSKrM8dJyg6I=
cloud.google.com/go/storagetransfer v1.7.0/go.mod h1:8Giuj1QNb1kfLAiWM1bN6dHzfdlDAVC9rv9abHot2W4=
cloud.google.com/go/storagetransfer v1.8.0/go.mod h1:JpegsHHU1eXg7lMHkvf+KE5XDJ7EQu0GwNJbbVGanEw=
-cloud.google.com/go/storagetransfer v1.10.0/go.mod h1:DM4sTlSmGiNczmV6iZyceIh2dbs+7z2Ayg6YAiQlYfA=
cloud.google.com/go/talent v1.1.0/go.mod h1:Vl4pt9jiHKvOgF9KoZo6Kob9oV4lwd/ZD5Cto54zDRw=
cloud.google.com/go/talent v1.2.0/go.mod h1:MoNF9bhFQbiJ6eFD3uSsg0uBALw4n4gaCaEjBw9zo8g=
cloud.google.com/go/talent v1.3.0/go.mod h1:CmcxwJ/PKfRgd1pBjQgU6W3YBwiewmUzQYH5HHmSCmM=
cloud.google.com/go/talent v1.4.0/go.mod h1:ezFtAgVuRf8jRsvyE6EwmbTK5LKciD4KVnHuDEFmOOA=
cloud.google.com/go/talent v1.5.0/go.mod h1:G+ODMj9bsasAEJkQSzO2uHQWXHHXUomArjWQQYkqK6c=
-cloud.google.com/go/talent v1.6.2/go.mod h1:CbGvmKCG61mkdjcqTcLOkb2ZN1SrQI8MDyma2l7VD24=
cloud.google.com/go/texttospeech v1.4.0/go.mod h1:FX8HQHA6sEpJ7rCMSfXuzBcysDAuWusNNNvN9FELDd8=
cloud.google.com/go/texttospeech v1.5.0/go.mod h1:oKPLhR4n4ZdQqWKURdwxMy0uiTS1xU161C8W57Wkea4=
cloud.google.com/go/texttospeech v1.6.0/go.mod h1:YmwmFT8pj1aBblQOI3TfKmwibnsfvhIBzPXcW4EBovc=
-cloud.google.com/go/texttospeech v1.7.1/go.mod h1:m7QfG5IXxeneGqTapXNxv2ItxP/FS0hCZBwXYqucgSk=
cloud.google.com/go/tpu v1.3.0/go.mod h1:aJIManG0o20tfDQlRIej44FcwGGl/cD0oiRyMKG19IQ=
cloud.google.com/go/tpu v1.4.0/go.mod h1:mjZaX8p0VBgllCzF6wcU2ovUXN9TONFLd7iz227X2Xg=
cloud.google.com/go/tpu v1.5.0/go.mod h1:8zVo1rYDFuW2l4yZVY0R0fb/v44xLh3llq7RuV61fPM=
-cloud.google.com/go/tpu v1.6.1/go.mod h1:sOdcHVIgDEEOKuqUoi6Fq53MKHJAtOwtz0GuKsWSH3E=
-cloud.google.com/go/trace v0.1.0/go.mod h1:wxEwsoeRVPbeSkt7ZC9nWCgmoKQRAoySN7XHW2AmI7g=
+cloud.google.com/go/trace v1.0.0/go.mod h1:4iErSByzxkyHWzzlAj63/Gmjz0NH1ASqhJguHpGcr6A=
+cloud.google.com/go/trace v1.2.0/go.mod h1:Wc8y/uYyOhPy12KEnXG9XGrvfMz5F5SrYecQlbW1rwM=
cloud.google.com/go/trace v1.3.0/go.mod h1:FFUE83d9Ca57C+K8rDl/Ih8LwOzWIV1krKgxg6N0G28=
cloud.google.com/go/trace v1.4.0/go.mod h1:UG0v8UBqzusp+z63o7FK74SdFE+AXpCLdFb1rshXG+Y=
cloud.google.com/go/trace v1.8.0/go.mod h1:zH7vcsbAhklH8hWFig58HvxcxyQbaIqMarMg9hn5ECA=
cloud.google.com/go/trace v1.9.0/go.mod h1:lOQqpE5IaWY0Ixg7/r2SjixMuc6lfTFeO4QGM4dQWOk=
-cloud.google.com/go/trace v1.10.1/go.mod h1:gbtL94KE5AJLH3y+WVpfWILmqgc6dXcqgNXdOPAQTYk=
cloud.google.com/go/translate v1.3.0/go.mod h1:gzMUwRjvOqj5i69y/LYLd8RrNQk+hOmIXTi9+nb3Djs=
cloud.google.com/go/translate v1.4.0/go.mod h1:06Dn/ppvLD6WvA5Rhdp029IX2Mi3Mn7fpMRLPvXT5Wg=
cloud.google.com/go/translate v1.5.0/go.mod h1:29YDSYveqqpA1CQFD7NQuP49xymq17RXNaUDdc0mNu0=
cloud.google.com/go/translate v1.6.0/go.mod h1:lMGRudH1pu7I3n3PETiOB2507gf3HnfLV8qlkHZEyos=
cloud.google.com/go/translate v1.7.0/go.mod h1:lMGRudH1pu7I3n3PETiOB2507gf3HnfLV8qlkHZEyos=
-cloud.google.com/go/translate v1.8.1/go.mod h1:d1ZH5aaOA0CNhWeXeC8ujd4tdCFw8XoNWRljklu5RHs=
-cloud.google.com/go/translate v1.8.2/go.mod h1:d1ZH5aaOA0CNhWeXeC8ujd4tdCFw8XoNWRljklu5RHs=
-cloud.google.com/go/translate v1.9.0/go.mod h1:d1ZH5aaOA0CNhWeXeC8ujd4tdCFw8XoNWRljklu5RHs=
cloud.google.com/go/video v1.8.0/go.mod h1:sTzKFc0bUSByE8Yoh8X0mn8bMymItVGPfTuUBUyRgxk=
cloud.google.com/go/video v1.9.0/go.mod h1:0RhNKFRF5v92f8dQt0yhaHrEuH95m068JYOvLZYnJSw=
cloud.google.com/go/video v1.12.0/go.mod h1:MLQew95eTuaNDEGriQdcYn0dTwf9oWiA4uYebxM5kdg=
cloud.google.com/go/video v1.13.0/go.mod h1:ulzkYlYgCp15N2AokzKjy7MQ9ejuynOJdf1tR5lGthk=
cloud.google.com/go/video v1.14.0/go.mod h1:SkgaXwT+lIIAKqWAJfktHT/RbgjSuY6DobxEp0C5yTQ=
cloud.google.com/go/video v1.15.0/go.mod h1:SkgaXwT+lIIAKqWAJfktHT/RbgjSuY6DobxEp0C5yTQ=
-cloud.google.com/go/video v1.17.1/go.mod h1:9qmqPqw/Ib2tLqaeHgtakU+l5TcJxCJbhFXM7UJjVzU=
-cloud.google.com/go/video v1.19.0/go.mod h1:9qmqPqw/Ib2tLqaeHgtakU+l5TcJxCJbhFXM7UJjVzU=
-cloud.google.com/go/video v1.20.0/go.mod h1:U3G3FTnsvAGqglq9LxgqzOiBc/Nt8zis8S+850N2DUM=
cloud.google.com/go/videointelligence v1.6.0/go.mod h1:w0DIDlVRKtwPCn/C4iwZIJdvC69yInhW0cfi+p546uU=
cloud.google.com/go/videointelligence v1.7.0/go.mod h1:k8pI/1wAhjznARtVT9U1llUaFNPh7muw8QyOUpavru4=
cloud.google.com/go/videointelligence v1.8.0/go.mod h1:dIcCn4gVDdS7yte/w+koiXn5dWVplOZkE+xwG9FgK+M=
cloud.google.com/go/videointelligence v1.9.0/go.mod h1:29lVRMPDYHikk3v8EdPSaL8Ku+eMzDljjuvRs105XoU=
cloud.google.com/go/videointelligence v1.10.0/go.mod h1:LHZngX1liVtUhZvi2uNS0VQuOzNi2TkY1OakiuoUOjU=
-cloud.google.com/go/videointelligence v1.11.1/go.mod h1:76xn/8InyQHarjTWsBR058SmlPCwQjgcvoW0aZykOvo=
cloud.google.com/go/vision v1.2.0/go.mod h1:SmNwgObm5DpFBme2xpyOyasvBc1aPdjvMk2bBk0tKD0=
cloud.google.com/go/vision/v2 v2.2.0/go.mod h1:uCdV4PpN1S0jyCyq8sIM42v2Y6zOLkZs+4R9LrGYwFo=
cloud.google.com/go/vision/v2 v2.3.0/go.mod h1:UO61abBx9QRMFkNBbf1D8B1LXdS2cGiiCRx0vSpZoUo=
@@ -782,41 +597,35 @@ cloud.google.com/go/vision/v2 v2.4.0/go.mod h1:VtI579ll9RpVTrdKdkMzckdnwMyX2JILb
cloud.google.com/go/vision/v2 v2.5.0/go.mod h1:MmaezXOOE+IWa+cS7OhRRLK2cNv1ZL98zhqFFZaaH2E=
cloud.google.com/go/vision/v2 v2.6.0/go.mod h1:158Hes0MvOS9Z/bDMSFpjwsUrZ5fPrdwuyyvKSGAGMY=
cloud.google.com/go/vision/v2 v2.7.0/go.mod h1:H89VysHy21avemp6xcf9b9JvZHVehWbET0uT/bcuY/0=
-cloud.google.com/go/vision/v2 v2.7.2/go.mod h1:jKa8oSYBWhYiXarHPvP4USxYANYUEdEsQrloLjrSwJU=
cloud.google.com/go/vmmigration v1.2.0/go.mod h1:IRf0o7myyWFSmVR1ItrBSFLFD/rJkfDCUTO4vLlJvsE=
cloud.google.com/go/vmmigration v1.3.0/go.mod h1:oGJ6ZgGPQOFdjHuocGcLqX4lc98YQ7Ygq8YQwHh9A7g=
cloud.google.com/go/vmmigration v1.5.0/go.mod h1:E4YQ8q7/4W9gobHjQg4JJSgXXSgY21nA5r8swQV+Xxc=
cloud.google.com/go/vmmigration v1.6.0/go.mod h1:bopQ/g4z+8qXzichC7GW1w2MjbErL54rk3/C843CjfY=
-cloud.google.com/go/vmmigration v1.7.1/go.mod h1:WD+5z7a/IpZ5bKK//YmT9E047AD+rjycCAvyMxGJbro=
cloud.google.com/go/vmwareengine v0.1.0/go.mod h1:RsdNEf/8UDvKllXhMz5J40XxDrNJNN4sagiox+OI208=
cloud.google.com/go/vmwareengine v0.2.2/go.mod h1:sKdctNJxb3KLZkE/6Oui94iw/xs9PRNC2wnNLXsHvH8=
cloud.google.com/go/vmwareengine v0.3.0/go.mod h1:wvoyMvNWdIzxMYSpH/R7y2h5h3WFkx6d+1TIsP39WGY=
-cloud.google.com/go/vmwareengine v0.4.1/go.mod h1:Px64x+BvjPZwWuc4HdmVhoygcXqEkGHXoa7uyfTgSI0=
-cloud.google.com/go/vmwareengine v1.0.0/go.mod h1:Px64x+BvjPZwWuc4HdmVhoygcXqEkGHXoa7uyfTgSI0=
cloud.google.com/go/vpcaccess v1.4.0/go.mod h1:aQHVbTWDYUR1EbTApSVvMq1EnT57ppDmQzZ3imqIk4w=
cloud.google.com/go/vpcaccess v1.5.0/go.mod h1:drmg4HLk9NkZpGfCmZ3Tz0Bwnm2+DKqViEpeEpOq0m8=
cloud.google.com/go/vpcaccess v1.6.0/go.mod h1:wX2ILaNhe7TlVa4vC5xce1bCnqE3AeH27RV31lnmZes=
-cloud.google.com/go/vpcaccess v1.7.1/go.mod h1:FogoD46/ZU+JUBX9D606X21EnxiszYi2tArQwLY4SXs=
cloud.google.com/go/webrisk v1.4.0/go.mod h1:Hn8X6Zr+ziE2aNd8SliSDWpEnSS1u4R9+xXZmFiHmGE=
cloud.google.com/go/webrisk v1.5.0/go.mod h1:iPG6fr52Tv7sGk0H6qUFzmL3HHZev1htXuWDEEsqMTg=
cloud.google.com/go/webrisk v1.6.0/go.mod h1:65sW9V9rOosnc9ZY7A7jsy1zoHS5W9IAXv6dGqhMQMc=
cloud.google.com/go/webrisk v1.7.0/go.mod h1:mVMHgEYH0r337nmt1JyLthzMr6YxwN1aAIEc2fTcq7A=
cloud.google.com/go/webrisk v1.8.0/go.mod h1:oJPDuamzHXgUc+b8SiHRcVInZQuybnvEW72PqTc7sSg=
-cloud.google.com/go/webrisk v1.9.1/go.mod h1:4GCmXKcOa2BZcZPn6DCEvE7HypmEJcJkr4mtM+sqYPc=
cloud.google.com/go/websecurityscanner v1.3.0/go.mod h1:uImdKm2wyeXQevQJXeh8Uun/Ym1VqworNDlBXQevGMo=
cloud.google.com/go/websecurityscanner v1.4.0/go.mod h1:ebit/Fp0a+FWu5j4JOmJEV8S8CzdTkAS77oDsiSqYWQ=
cloud.google.com/go/websecurityscanner v1.5.0/go.mod h1:Y6xdCPy81yi0SQnDY1xdNTNpfY1oAgXUlcfN3B3eSng=
-cloud.google.com/go/websecurityscanner v1.6.1/go.mod h1:Njgaw3rttgRHXzwCB8kgCYqv5/rGpFCsBOvPbYgszpg=
cloud.google.com/go/workflows v1.6.0/go.mod h1:6t9F5h/unJz41YqfBmqSASJSXccBLtD1Vwf+KmJENM0=
cloud.google.com/go/workflows v1.7.0/go.mod h1:JhSrZuVZWuiDfKEFxU0/F1PQjmpnpcoISEXH2bcHC3M=
cloud.google.com/go/workflows v1.8.0/go.mod h1:ysGhmEajwZxGn1OhGOGKsTXc5PyxOc0vfKf5Af+to4M=
cloud.google.com/go/workflows v1.9.0/go.mod h1:ZGkj1aFIOd9c8Gerkjjq7OW7I5+l6cSvT3ujaO/WwSA=
cloud.google.com/go/workflows v1.10.0/go.mod h1:fZ8LmRmZQWacon9UCX1r/g/DfAXx5VcPALq2CxzdePw=
-cloud.google.com/go/workflows v1.11.1/go.mod h1:Z+t10G1wF7h8LgdY/EmRcQY8ptBD/nvofaL6FqlET6g=
-cloud.google.com/go/workflows v1.12.0/go.mod h1:PYhSk2b6DhZ508tj8HXKaBh+OFe+xdl0dHF/tJdzPQM=
+code.cloudfoundry.org/clock v0.0.0-20180518195852-02e53af36e6c/go.mod h1:QD9Lzhd/ux6eNQVUDVRJX/RKTigpewimNYBi7ivZKY8=
contrib.go.opencensus.io/exporter/aws v0.0.0-20200617204711-c478e41e60e9/go.mod h1:uu1P0UCM/6RbsMrgPa98ll8ZcHM858i/AD06a9aLRCA=
-contrib.go.opencensus.io/exporter/stackdriver v0.13.8/go.mod h1:huNtlWx75MwO7qMs0KrMxPZXzNNWebav1Sq/pm02JdQ=
+contrib.go.opencensus.io/exporter/stackdriver v0.13.13/go.mod h1:5pSSGY0Bhuk7waTHuDf4aQ8D2DrhgETRo9fy6k3Xlzc=
contrib.go.opencensus.io/integrations/ocsql v0.1.7/go.mod h1:8DsSdjz3F+APR+0z0WkU1aRorQCFfRxvqjUUPMbF3fE=
+dario.cat/mergo v1.0.0 h1:AGCNq9Evsj31mOgNPcLyXc+4PNABt905YmuqPYYpBWk=
+dario.cat/mergo v1.0.0/go.mod h1:uNxQE+84aUszobStD9th8a29P2fMDhsBdgRYvZOxGmk=
dmitri.shuralyov.com/gpu/mtl v0.0.0-20190408044501-666a987793e9/go.mod h1:H6x//7gZCb22OMCxBHrMx7a5I7Hp++hsVxbQ4BYO7hU=
gioui.org v0.0.0-20210308172011-57750fc8a0a6/go.mod h1:RSH6KIUZ0p2xy5zHDxgAM4zumjgTw83q2ge/PI+yyw8=
git.sr.ht/~sbinet/gg v0.3.1/go.mod h1:KGYtlADtqsqANL9ueOFkWymvzUvLMQllU5Ixo+8v3pc=
@@ -824,37 +633,36 @@ github.com/AdaLogics/go-fuzz-headers v0.0.0-20210715213245-6c3934b029d8/go.mod h
github.com/AdaLogics/go-fuzz-headers v0.0.0-20221206110420-d395f97c4830/go.mod h1:VzwV+t+dZ9j/H867F1M2ziD+yLHtB46oM35FxxMJ4d0=
github.com/AdaLogics/go-fuzz-headers v0.0.0-20230106234847-43070de90fa1/go.mod h1:VzwV+t+dZ9j/H867F1M2ziD+yLHtB46oM35FxxMJ4d0=
github.com/AdamKorcz/go-118-fuzz-build v0.0.0-20221215162035-5330a85ea652/go.mod h1:OahwfttHWG6eJ0clwcfBAHoDI6X/LV/15hx/wlMZSrU=
-github.com/AlecAivazis/survey/v2 v2.0.5/go.mod h1:WYBhg6f0y/fNYUuesWQc0PKbJcEliGcYHB9sNT3Bg74=
-github.com/Azure/azure-amqp-common-go/v3 v3.1.0/go.mod h1:PBIGdzcO1teYoufTKMcGibdKaYZv4avS+O6LNIp8bq0=
-github.com/Azure/azure-amqp-common-go/v3 v3.1.1/go.mod h1:YsDaPfaO9Ub2XeSKdIy2DfwuiQlHQCauHJwSqtrkECI=
-github.com/Azure/azure-pipeline-go v0.2.3 h1:7U9HBg1JFK3jHl5qmo4CTZKFTVgMwdFHMVtCdfBE21U=
-github.com/Azure/azure-pipeline-go v0.2.3/go.mod h1:x841ezTBIMG6O3lAcl8ATHnsOPVl2bqk7S3ta6S6u4k=
+github.com/Azure/azure-amqp-common-go/v3 v3.2.3/go.mod h1:7rPmbSfszeovxGfc5fSAXE4ehlXQZHpMja2OtxC2Tas=
github.com/Azure/azure-sdk-for-go v16.2.1+incompatible/go.mod h1:9XXNKU+eRnpl9moKnB4QOLf1HestfXbmab5FXxiDBjc=
-github.com/Azure/azure-sdk-for-go v51.1.0+incompatible/go.mod h1:9XXNKU+eRnpl9moKnB4QOLf1HestfXbmab5FXxiDBjc=
github.com/Azure/azure-sdk-for-go v56.3.0+incompatible/go.mod h1:9XXNKU+eRnpl9moKnB4QOLf1HestfXbmab5FXxiDBjc=
-github.com/Azure/azure-sdk-for-go v57.0.0+incompatible/go.mod h1:9XXNKU+eRnpl9moKnB4QOLf1HestfXbmab5FXxiDBjc=
-github.com/Azure/azure-sdk-for-go v61.4.0+incompatible h1:BF2Pm3aQWIa6q9KmxyF1JYKYXtVw67vtvu2Wd54NGuY=
-github.com/Azure/azure-sdk-for-go v61.4.0+incompatible/go.mod h1:9XXNKU+eRnpl9moKnB4QOLf1HestfXbmab5FXxiDBjc=
+github.com/Azure/azure-sdk-for-go v63.0.0+incompatible/go.mod h1:9XXNKU+eRnpl9moKnB4QOLf1HestfXbmab5FXxiDBjc=
+github.com/Azure/azure-sdk-for-go v65.0.0+incompatible/go.mod h1:9XXNKU+eRnpl9moKnB4QOLf1HestfXbmab5FXxiDBjc=
+github.com/Azure/azure-sdk-for-go v66.0.0+incompatible h1:bmmC38SlE8/E81nNADlgmVGurPWMHDX2YNXVQMrBpEE=
+github.com/Azure/azure-sdk-for-go v66.0.0+incompatible/go.mod h1:9XXNKU+eRnpl9moKnB4QOLf1HestfXbmab5FXxiDBjc=
github.com/Azure/azure-sdk-for-go/sdk/azcore v0.19.0/go.mod h1:h6H6c8enJmmocHUbLiiGY6sx7f9i+X3m1CHdd5c6Rdw=
-github.com/Azure/azure-sdk-for-go/sdk/azcore v0.21.0/go.mod h1:fBF9PQNqB8scdgpZ3ufzaLntG0AG7C1WjPMsiFOmfHM=
-github.com/Azure/azure-sdk-for-go/sdk/azcore v0.22.0 h1:zBJcBJwte0x6PcPK7XaWDMvK2o2ZM2f1sMaqNNavQ5g=
-github.com/Azure/azure-sdk-for-go/sdk/azcore v0.22.0/go.mod h1:fBF9PQNqB8scdgpZ3ufzaLntG0AG7C1WjPMsiFOmfHM=
+github.com/Azure/azure-sdk-for-go/sdk/azcore v1.0.0/go.mod h1:uGG2W01BaETf0Ozp+QxxKJdMBNRWPdstHG0Fmdwn1/U=
+github.com/Azure/azure-sdk-for-go/sdk/azcore v1.1.1/go.mod h1:uGG2W01BaETf0Ozp+QxxKJdMBNRWPdstHG0Fmdwn1/U=
+github.com/Azure/azure-sdk-for-go/sdk/azcore v1.8.0 h1:9kDVnTz3vbfweTqAUmk/a/pH5pWFCHtvRpHYC0G/dcA=
+github.com/Azure/azure-sdk-for-go/sdk/azcore v1.8.0/go.mod h1:3Ug6Qzto9anB6mGlEdgYMDF5zHQ+wwhEaYR4s17PHMw=
github.com/Azure/azure-sdk-for-go/sdk/azidentity v0.11.0/go.mod h1:HcM1YX14R7CJcghJGOYCgdezslRSVzqwLf/q+4Y2r/0=
-github.com/Azure/azure-sdk-for-go/sdk/azidentity v0.13.0/go.mod h1:TmXReXZ9yPp5D5TBRMTAtyz+UyOl15Py4hL5E5p6igQ=
-github.com/Azure/azure-sdk-for-go/sdk/azidentity v0.13.2 h1:mM/yraAumqMMIYev6zX0oxHqX6hreUs5wXf76W47r38=
-github.com/Azure/azure-sdk-for-go/sdk/azidentity v0.13.2/go.mod h1:+nVKciyKD2J9TyVcEQ82Bo9b+3F92PiQfHrIE/zqLqM=
+github.com/Azure/azure-sdk-for-go/sdk/azidentity v1.0.0/go.mod h1:+6sju8gk8FRmSajX3Oz4G5Gm7P+mbqE9FVaXXFYTkCM=
+github.com/Azure/azure-sdk-for-go/sdk/azidentity v1.4.0 h1:BMAjVKJM0U/CYF27gA0ZMmXGkOcvfFtD0oHVZ1TIPRI=
+github.com/Azure/azure-sdk-for-go/sdk/azidentity v1.4.0/go.mod h1:1fXstnBMas5kzG+S3q8UoJcmyU6nUeunJcMDHcRYHhs=
github.com/Azure/azure-sdk-for-go/sdk/internal v0.7.0/go.mod h1:yqy467j36fJxcRV2TzfVZ1pCb5vxm4BtZPUdYWe/Xo8=
-github.com/Azure/azure-sdk-for-go/sdk/internal v0.8.3/go.mod h1:KLF4gFr6DcKFZwSuH8w8yEK6DpFl3LP5rhdvAb7Yz5I=
-github.com/Azure/azure-sdk-for-go/sdk/internal v0.9.1 h1:sLZ/Y+P/5RRtsXWylBjB5lkgixYfm0MQPiwrSX//JSo=
-github.com/Azure/azure-sdk-for-go/sdk/internal v0.9.1/go.mod h1:KLF4gFr6DcKFZwSuH8w8yEK6DpFl3LP5rhdvAb7Yz5I=
-github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/resources/armresources v0.3.1 h1:EXTDtCSTfPauGawsG+Ae/W46B1PkrgzuKNrcFqy4ljM=
-github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/resources/armresources v0.3.1/go.mod h1:PoA99xQAlN13MyUjzgIPWMZEr0etHpYSuT25LmhR3zQ=
-github.com/Azure/azure-service-bus-go v0.10.16/go.mod h1:MlkLwGGf1ewcx5jZadn0gUEty+tTg0RaElr6bPf+QhI=
-github.com/Azure/azure-storage-blob-go v0.14.0 h1:1BCg74AmVdYwO3dlKwtFU1V0wU2PZdREkXvAmZJRUlM=
-github.com/Azure/azure-storage-blob-go v0.14.0/go.mod h1:SMqIBi+SuiQH32bvyjngEewEeXoPfKMgWlBDaYf6fck=
-github.com/Azure/go-amqp v0.13.0/go.mod h1:qj+o8xPCz9tMSbQ83Vp8boHahuRDl5mkNHyt1xlxUTs=
-github.com/Azure/go-amqp v0.13.11/go.mod h1:D5ZrjQqB1dyp1A+G73xeL/kNn7D5qHJIIsNNps7YNmk=
-github.com/Azure/go-amqp v0.13.12/go.mod h1:D5ZrjQqB1dyp1A+G73xeL/kNn7D5qHJIIsNNps7YNmk=
+github.com/Azure/azure-sdk-for-go/sdk/internal v1.0.0/go.mod h1:eWRD7oawr1Mu1sLCawqVc0CUiF43ia3qQMxLscsKQ9w=
+github.com/Azure/azure-sdk-for-go/sdk/internal v1.3.0 h1:sXr+ck84g/ZlZUOZiNELInmMgOsuGwdjjVkEIde0OtY=
+github.com/Azure/azure-sdk-for-go/sdk/internal v1.3.0/go.mod h1:okt5dMMTOFjX/aovMlrjvvXoPMBVSPzk9185BT0+eZM=
+github.com/Azure/azure-sdk-for-go/sdk/messaging/azservicebus v1.0.2/go.mod h1:LH9XQnMr2ZYxQdVdCrzLO9mxeDyrDFa6wbSI3x5zCZk=
+github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/internal v1.1.2 h1:mLY+pNLjCUeKhgnAJWAKhEUQM+RJQo2H1fuGSw1Ky1E=
+github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/internal v1.1.2/go.mod h1:FbdwsQ2EzwvXxOPcMFYO8ogEc9uMMIj3YkmCdXdAFmk=
+github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/managementgroups/armmanagementgroups v1.0.0 h1:pPvTJ1dY0sA35JOeFq6TsY2xj6Z85Yo23Pj4wCCvu4o=
+github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/managementgroups/armmanagementgroups v1.0.0/go.mod h1:mLfWfj8v3jfWKsL9G4eoBoXVcsqcIUTapmdKy7uGOp0=
+github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/resources/armresources v1.1.1 h1:7CBQ+Ei8SP2c6ydQTGCCrS35bDxgTMfoP2miAwK++OU=
+github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/resources/armresources v1.1.1/go.mod h1:c/wcGeGx5FUPbM/JltUYHZcKmigwyVLJlDq+4HdtXaw=
+github.com/Azure/azure-sdk-for-go/sdk/storage/azblob v0.4.1/go.mod h1:eZ4g6GUvXiGulfIbbhh1Xr4XwUYaYaWMqzGD/284wCA=
+github.com/Azure/go-amqp v0.17.0/go.mod h1:9YJ3RhxRT1gquYnzpZO1vcYMMpAdJT+QEg6fwmw9Zlg=
+github.com/Azure/go-amqp v0.17.5/go.mod h1:9YJ3RhxRT1gquYnzpZO1vcYMMpAdJT+QEg6fwmw9Zlg=
github.com/Azure/go-ansiterm v0.0.0-20170929234023-d6e3b3328b78/go.mod h1:LmzpDX56iTiv29bbRTIsUNlaFfuhWRQBWjQdVyAevI8=
github.com/Azure/go-ansiterm v0.0.0-20210608223527-2377c96fe795/go.mod h1:LmzpDX56iTiv29bbRTIsUNlaFfuhWRQBWjQdVyAevI8=
github.com/Azure/go-ansiterm v0.0.0-20210617225240-d185dfc1b5a1 h1:UQHMgLO+TxOElx5B5HZ4hJQsoJ/PvUvKRhJHDQXO8P8=
@@ -863,29 +671,26 @@ github.com/Azure/go-autorest v10.8.1+incompatible/go.mod h1:r+4oMnoxhatjLLJ6zxSW
github.com/Azure/go-autorest v14.2.0+incompatible h1:V5VMDjClD3GiElqLWO7mz2MxNAK/vTfRHdAubSIPRgs=
github.com/Azure/go-autorest v14.2.0+incompatible/go.mod h1:r+4oMnoxhatjLLJ6zxSWATqVooLgysK6ZNox3g/xq24=
github.com/Azure/go-autorest/autorest v0.11.1/go.mod h1:JFgpikqFJ/MleTTxwepExTKnFUKKszPS8UavbQYUMuw=
-github.com/Azure/go-autorest/autorest v0.11.3/go.mod h1:JFgpikqFJ/MleTTxwepExTKnFUKKszPS8UavbQYUMuw=
-github.com/Azure/go-autorest/autorest v0.11.17/go.mod h1:eipySxLmqSyC5s5k1CLupqet0PSENBEDP93LQ9a8QYw=
github.com/Azure/go-autorest/autorest v0.11.18/go.mod h1:dSiJPy22c3u0OtOKDNttNgqpNFY/GeWa7GH/Pz56QRA=
-github.com/Azure/go-autorest/autorest v0.11.20/go.mod h1:o3tqFY+QR40VOlk+pV4d77mORO64jOXSgEnPQgLK6JY=
github.com/Azure/go-autorest/autorest v0.11.24/go.mod h1:G6kyRlFnTuSbEYkQGawPfsCswgme4iYf6rfSKUDzbCc=
+github.com/Azure/go-autorest/autorest v0.11.25/go.mod h1:7l8ybrIdUmGqZMTD0sRtAr8NvbHjfofbf8RSP2q7w7U=
+github.com/Azure/go-autorest/autorest v0.11.27/go.mod h1:7l8ybrIdUmGqZMTD0sRtAr8NvbHjfofbf8RSP2q7w7U=
+github.com/Azure/go-autorest/autorest v0.11.28/go.mod h1:MrkzG3Y3AH668QyF9KRk5neJnGgmhQ6krbhR8Q5eMvA=
github.com/Azure/go-autorest/autorest v0.11.29 h1:I4+HL/JDvErx2LjyzaVxllw2lRDB5/BT2Bm4g20iqYw=
github.com/Azure/go-autorest/autorest v0.11.29/go.mod h1:ZtEzC4Jy2JDrZLxvWs8LrBWEBycl1hbT1eknI8MtfAs=
github.com/Azure/go-autorest/autorest/adal v0.9.0/go.mod h1:/c022QCutn2P7uY+/oQWWNcK9YU+MH96NgK+jErpbcg=
github.com/Azure/go-autorest/autorest/adal v0.9.5/go.mod h1:B7KF7jKIeC9Mct5spmyCB/A8CG/sEz1vwIRGv/bbw7A=
-github.com/Azure/go-autorest/autorest/adal v0.9.11/go.mod h1:nBKAnTomx8gDtl+3ZCJv2v0KACFHWTB2drffI1B68Pk=
github.com/Azure/go-autorest/autorest/adal v0.9.13/go.mod h1:W/MM4U6nLxnIskrw4UwWzlHfGjwUS50aOsc/I3yuU8M=
-github.com/Azure/go-autorest/autorest/adal v0.9.14/go.mod h1:W/MM4U6nLxnIskrw4UwWzlHfGjwUS50aOsc/I3yuU8M=
-github.com/Azure/go-autorest/autorest/adal v0.9.15/go.mod h1:tGMin8I49Yij6AQ+rvV+Xa/zwxYQB5hmsd6DkfAx2+A=
github.com/Azure/go-autorest/autorest/adal v0.9.18/go.mod h1:XVVeme+LZwABT8K5Lc3hA4nAe8LDBVle26gTrguhhPQ=
+github.com/Azure/go-autorest/autorest/adal v0.9.20/go.mod h1:XVVeme+LZwABT8K5Lc3hA4nAe8LDBVle26gTrguhhPQ=
+github.com/Azure/go-autorest/autorest/adal v0.9.21/go.mod h1:zua7mBUaCc5YnSLKYgGJR/w5ePdMDA6H56upLsHzA9U=
github.com/Azure/go-autorest/autorest/adal v0.9.22 h1:/GblQdIudfEM3AWWZ0mrYJQSd7JS4S/Mbzh6F0ov0Xc=
github.com/Azure/go-autorest/autorest/adal v0.9.22/go.mod h1:XuAbAEUv2Tta//+voMI038TrJBqjKam0me7qR+L8Cmk=
-github.com/Azure/go-autorest/autorest/azure/auth v0.5.8/go.mod h1:kxyKZTSfKh8OVFWPAgOgQ/frrJgeYQJPyR5fLFmXko4=
github.com/Azure/go-autorest/autorest/azure/auth v0.5.11 h1:P6bYXFoao05z5uhOQzbC3Qd8JqF3jUoocoTeIxkp2cA=
github.com/Azure/go-autorest/autorest/azure/auth v0.5.11/go.mod h1:84w/uV8E37feW2NCJ08uT9VBfjfUHpgLVnG2InYD6cg=
-github.com/Azure/go-autorest/autorest/azure/cli v0.4.2/go.mod h1:7qkJkT+j6b+hIpzMOwPChJhTqS8VbsqqgULzMNRugoM=
-github.com/Azure/go-autorest/autorest/azure/cli v0.4.3/go.mod h1:yAQ2b6eP/CmLPnmLvxtT1ALIY3OR1oFcCqVBi8vHiTc=
-github.com/Azure/go-autorest/autorest/azure/cli v0.4.5 h1:0W/yGmFdTIT77fvdlGZ0LMISoLHFJ7Tx4U0yeB+uFs4=
github.com/Azure/go-autorest/autorest/azure/cli v0.4.5/go.mod h1:ADQAXrkgm7acgWVUNamOgh8YNrv4p27l3Wc55oVfpzg=
+github.com/Azure/go-autorest/autorest/azure/cli v0.4.6 h1:w77/uPk80ZET2F+AfQExZyEWtn+0Rk/uw17m9fv5Ajc=
+github.com/Azure/go-autorest/autorest/azure/cli v0.4.6/go.mod h1:piCfgPho7BiIDdEQ1+g4VmKyD5y+p/XtSNqE6Hc4QD0=
github.com/Azure/go-autorest/autorest/date v0.3.0 h1:7gUk1U5M/CQbp9WoqinNzJar+8KY+LPI6wiWrP/myHw=
github.com/Azure/go-autorest/autorest/date v0.3.0/go.mod h1:BI0uouVdmngYNUzGWeSYnokU+TrmwEsOqdt8Y6sso74=
github.com/Azure/go-autorest/autorest/mocks v0.4.0/go.mod h1:LTp+uSrOhSkaKrUy935gNZuuIPPVsHlr9DSOxSayd+k=
@@ -905,22 +710,28 @@ github.com/Azure/go-ntlmssp v0.0.0-20200615164410-66371956d46c/go.mod h1:chxPXzS
github.com/Azure/go-ntlmssp v0.0.0-20220621081337-cb9428e4ac1e/go.mod h1:chxPXzSsl7ZWRAuOIE23GDNzjWuZquvFlgA8xmpunjU=
github.com/Azure/go-ntlmssp v0.0.0-20221128193559-754e69321358 h1:mFRzDkZVAjdal+s7s0MwaRv9igoPqLRdzOLzw/8Xvq8=
github.com/Azure/go-ntlmssp v0.0.0-20221128193559-754e69321358/go.mod h1:chxPXzSsl7ZWRAuOIE23GDNzjWuZquvFlgA8xmpunjU=
-github.com/AzureAD/microsoft-authentication-library-for-go v0.4.0 h1:WVsrXCnHlDDX8ls+tootqRE87/hL9S/g4ewig9RsD/c=
github.com/AzureAD/microsoft-authentication-library-for-go v0.4.0/go.mod h1:Vt9sXTKwMyGcOxSmLDMnGPgqsUg7m8pe215qMLrDXw4=
+github.com/AzureAD/microsoft-authentication-library-for-go v1.1.1 h1:WpB/QDNLpMw72xHJc34BNNykqSOeEJDAWkhf0u12/Jk=
+github.com/AzureAD/microsoft-authentication-library-for-go v1.1.1/go.mod h1:wP83P5OoQ5p6ip3ScPr0BAq0BvuPAvacpEuSzyouqAI=
github.com/BurntSushi/toml v0.3.1/go.mod h1:xHWCNGjB5oqiDr8zfno3MHue2Ht5sIBksp03qcyfWMU=
+github.com/BurntSushi/toml v1.2.1 h1:9F2/+DoOYIOksmaJFPw1tGFy1eDnIJXg+UHjuD8lTak=
github.com/BurntSushi/toml v1.2.1/go.mod h1:CxXYINrC8qIiEnFrOxCa7Jy5BFHlXnUU2pbicEuybxQ=
github.com/BurntSushi/xgb v0.0.0-20160522181843-27f122750802/go.mod h1:IVnqGOEym/WlBOVXweHU+Q+/VP0lqqI8lqeDx9IjBqo=
github.com/DataDog/datadog-go v3.2.0+incompatible/go.mod h1:LButxg5PwREeZtORoXG3tL4fMGNddJ+vMq1mwgfaqoQ=
-github.com/GoogleCloudPlatform/cloudsql-proxy v1.24.0/go.mod h1:3tx938GhY4FC+E1KT/jNjDw7Z5qxAEtIiERJ2sXjnII=
+github.com/GoogleCloudPlatform/cloudsql-proxy v1.31.2/go.mod h1:qR6jVnZTKDCW3j+fC9mOEPHm++1nKDMkqbbkD6KNsfo=
github.com/HdrHistogram/hdrhistogram-go v1.1.2 h1:5IcZpTvzydCQeHzK4Ef/D5rrSqwxob0t8PQPMybUNFM=
github.com/HdrHistogram/hdrhistogram-go v1.1.2/go.mod h1:yDgFjdqOqDEKOvasDdhWNXYg9BVp4O+o5f6V/ehm6Oo=
github.com/JohnCGriffin/overflow v0.0.0-20211019200055-46fa312c352c/go.mod h1:X0CRv0ky0k6m906ixxpzmDRLvX58TFUKS2eePweuyxk=
+github.com/Knetic/govaluate v3.0.1-0.20171022003610-9aa49832a739+incompatible/go.mod h1:r7JcOSlj0wfOMncg0iLm8Leh48TZaKVeNIfJntJ2wa0=
github.com/Masterminds/goutils v1.1.1 h1:5nUrii3FMTL5diU80unEVvNevw1nH4+ZV4DSLVJLSYI=
github.com/Masterminds/goutils v1.1.1/go.mod h1:8cTjp+g8YejhMuvIA5y2vz3BpJxksy863GQaJW2MFNU=
+github.com/Masterminds/semver v1.5.0 h1:H65muMkzWKEuNDnfl9d70GUjFniHKHRbFPGBuZ3QEww=
+github.com/Masterminds/semver v1.5.0/go.mod h1:MB6lktGJrhw8PrUyiEoblNEGEQ+RzHPF078ddwwvV3Y=
github.com/Masterminds/semver/v3 v3.1.1 h1:hLg3sBzpNErnxhQtUy/mmLR2I9foDujNK030IGemrRc=
github.com/Masterminds/semver/v3 v3.1.1/go.mod h1:VPu/7SZ7ePZ3QOrcuXROw5FAcLl4a0cBrbBpGY/8hQs=
-github.com/Masterminds/sprig/v3 v3.2.1 h1:n6EPaDyLSvCEa3frruQvAiHuNp2dhBlMSmkEr+HuzGc=
github.com/Masterminds/sprig/v3 v3.2.1/go.mod h1:UoaO7Yp8KlPnJIYWTFkMaqPUYKTfGFPhxNuwnnxkKlk=
+github.com/Masterminds/sprig/v3 v3.2.2 h1:17jRggJu518dr3QaafizSXOjKYp94wKfABxUmyxvxX8=
+github.com/Masterminds/sprig/v3 v3.2.2/go.mod h1:UoaO7Yp8KlPnJIYWTFkMaqPUYKTfGFPhxNuwnnxkKlk=
github.com/Microsoft/go-winio v0.4.11/go.mod h1:VhR8bwka0BXejwEJY73c50VrPtXAaKcyvVC4A4RozmA=
github.com/Microsoft/go-winio v0.4.14/go.mod h1:qXqCSQ3Xa7+6tgxaGTIe4Kpcdsi+P8jBhyzoq1bpyYA=
github.com/Microsoft/go-winio v0.4.15-0.20190919025122-fc70bd9a86b5/go.mod h1:tTuCMEN+UleMWgg9dVx4Hu52b1bJo+59jBh3ajtinzw=
@@ -953,26 +764,25 @@ github.com/Microsoft/hcsshim/test v0.0.0-20201218223536-d3e5debf77da/go.mod h1:5
github.com/Microsoft/hcsshim/test v0.0.0-20210227013316-43a75bb4edd3/go.mod h1:mw7qgWloBUl75W/gVH3cQszUg1+gUITj7D6NY7ywVnY=
github.com/NYTimes/gziphandler v0.0.0-20170623195520-56545f4a5d46/go.mod h1:3wb06e3pkSAbeQ52E9H9iFoQsEEwGN64994WTCIhntQ=
github.com/NYTimes/gziphandler v1.1.1/go.mod h1:n/CVRwUEOgIxrgPvAQhUUr9oeUtvrhMomdKFjzJNB0c=
-github.com/Netflix/go-expect v0.0.0-20180615182759-c93bf25de8e8/go.mod h1:oX5x61PbNXchhh0oikYAH+4Pcfw5LKv21+Jnpr6r6Pc=
-github.com/Netflix/go-expect v0.0.0-20220104043353-73e0943537d2 h1:+vx7roKuyA63nhn5WAunQHLTznkw5W8b1Xc0dNjp83s=
-github.com/Netflix/go-expect v0.0.0-20220104043353-73e0943537d2/go.mod h1:HBCaDeC1lPdgDeDbhX8XFpy1jqjK0IBG8W5K+xYqA0w=
github.com/Nvveen/Gotty v0.0.0-20120604004816-cd527374f1e5 h1:TngWCqHvy9oXAN6lEVMRuU21PR1EtLVZJmdB18Gu3Rw=
github.com/Nvveen/Gotty v0.0.0-20120604004816-cd527374f1e5/go.mod h1:lmUJ/7eu/Q8D7ML55dXQrVaamCz2vxCfdQBasLZfHKk=
github.com/OneOfOne/xxhash v1.2.2/go.mod h1:HSdplMjZKSmBqAxg5vPj2TmRDmfkzw+cTzAElWljhcU=
github.com/OneOfOne/xxhash v1.2.8/go.mod h1:eZbhyaAYD41SGSSsnmcpxVoRiQ/MPUTjUdIIOT9Um7Q=
-github.com/ProtonMail/go-crypto v0.0.0-20210428141323-04723f9f07d7/go.mod h1:z4/9nQmJSSwwds7ejkxaJwO37dru3geImFUdJlaLzQo=
-github.com/ProtonMail/go-crypto v0.0.0-20230217124315-7d5c6f04bbb8 h1:wPbRQzjjwFc0ih8puEVAOFGELsn1zoIIYdxvML7mDxA=
-github.com/ProtonMail/go-crypto v0.0.0-20230217124315-7d5c6f04bbb8/go.mod h1:I0gYDMZ6Z5GRU7l58bNFSkPTFN6Yl12dsUlAZ8xy98g=
+github.com/ProtonMail/go-crypto v0.0.0-20230717121422-5aa5874ade95 h1:KLq8BE0KwCL+mmXnjLWEAOYO+2l2AE4YMmqG1ZpZHBs=
+github.com/ProtonMail/go-crypto v0.0.0-20230717121422-5aa5874ade95/go.mod h1:EjAoLdwvbIOoOQr3ihjnSoLZRtE8azugULFRteWMNc0=
github.com/PuerkitoBio/purell v1.0.0/go.mod h1:c11w/QuzBsJSee3cPx9rAFu61PvFxuPbtSwDGJws/X0=
github.com/PuerkitoBio/purell v1.1.1/go.mod h1:c11w/QuzBsJSee3cPx9rAFu61PvFxuPbtSwDGJws/X0=
github.com/PuerkitoBio/urlesc v0.0.0-20160726150825-5bd2802263f2/go.mod h1:uGdkoq3SwY9Y+13GIhn11/XLaGBb4BfwItxLd5jeuXE=
github.com/PuerkitoBio/urlesc v0.0.0-20170810143723-de5bf2ad4578/go.mod h1:uGdkoq3SwY9Y+13GIhn11/XLaGBb4BfwItxLd5jeuXE=
github.com/Shopify/logrus-bugsnag v0.0.0-20171204204709-577dee27f20d/go.mod h1:HI8ITrYtUY+O+ZhtlqUnD8+KwNPOyugEhfP9fdUIaEQ=
-github.com/acomagu/bufpipe v1.0.3/go.mod h1:mxdxdup/WdsKVreO5GpW4+M/1CE2sMG4jeGJ2sYmHc4=
+github.com/Shopify/sarama v1.19.0/go.mod h1:FVkBWblsNy7DGZRfXLU0O9RCGt5g3g3yEuWXgklEdEo=
+github.com/Shopify/toxiproxy v2.1.4+incompatible/go.mod h1:OXgGpZ6Cli1/URJOF1DMxUHB2q5Ap20/P/eIdh4G0pI=
+github.com/VividCortex/gohistogram v1.0.0/go.mod h1:Pf5mBqqDxYaXu3hDrrU+w6nw50o/4+TcAqDqk/vUH7g=
github.com/acomagu/bufpipe v1.0.4 h1:e3H4WUzM3npvo5uv95QuJM3cQspFNtFBzvJ2oNjKIDQ=
github.com/acomagu/bufpipe v1.0.4/go.mod h1:mxdxdup/WdsKVreO5GpW4+M/1CE2sMG4jeGJ2sYmHc4=
github.com/aead/chacha20 v0.0.0-20180709150244-8b13a72661da h1:KjTM2ks9d14ZYCvmHS9iAKVt9AyzRSqNU1qabPih5BY=
github.com/aead/chacha20 v0.0.0-20180709150244-8b13a72661da/go.mod h1:eHEWzANqSiWQsof+nXEI9bUVUyV6F53Fp89EuCh2EAA=
+github.com/afex/hystrix-go v0.0.0-20180502004556-fa1af6a1f4f5/go.mod h1:SkGFH1ia65gfNATL8TAiHDNxPzPdmEL5uirI2Uyuz6c=
github.com/agext/levenshtein v1.2.1/go.mod h1:JEDfjyjHDjOF/1e4FlBE/PkbqA9OfWu2ki2W0IB5558=
github.com/agext/levenshtein v1.2.2/go.mod h1:JEDfjyjHDjOF/1e4FlBE/PkbqA9OfWu2ki2W0IB5558=
github.com/agext/levenshtein v1.2.3 h1:YB2fHEn0UJagG8T1rrWknE3ZQzWM06O8AMAatNn7lmo=
@@ -988,12 +798,12 @@ github.com/alecthomas/template v0.0.0-20190718012654-fb15b899a751/go.mod h1:LOuy
github.com/alecthomas/units v0.0.0-20151022065526-2efee857e7cf/go.mod h1:ybxpYRFXyAe+OPACYpWeL0wqObRcbAqCMya13uyzqw0=
github.com/alecthomas/units v0.0.0-20190717042225-c3de453c63f4/go.mod h1:ybxpYRFXyAe+OPACYpWeL0wqObRcbAqCMya13uyzqw0=
github.com/alecthomas/units v0.0.0-20190924025748-f65c72e2690d/go.mod h1:rBZYJk541a8SKzHPHnH3zbiI+7dagKZ0cgpgrD7Fyho=
+github.com/alecthomas/units v0.0.0-20211218093645-b94a6e3cc137/go.mod h1:OMCwj8VM1Kc9e19TLln2VL61YJF0x1XFtfdL4JdbSyE=
github.com/alexflint/go-filemutex v0.0.0-20171022225611-72bdc8eae2ae/go.mod h1:CgnQgUtFrFz9mxFNtED3jI5tLDjKlOM+oUF/sTk6ps0=
github.com/alexflint/go-filemutex v1.1.0/go.mod h1:7P4iRhttt/nUvUOrYIhcpMzv2G6CY9UnI16Z+UJqRyk=
github.com/alexflint/go-filemutex v1.2.0/go.mod h1:mYyQSWvw9Tx2/H2n9qXPb52tTYfE0pZAWcBq5mK025c=
github.com/andreyvit/diff v0.0.0-20170406064948-c7f18ee00883/go.mod h1:rCTlJbsFo29Kk6CurOXKm700vrz8f0KW0JNfpkRJY/8=
github.com/andybalholm/brotli v1.0.4/go.mod h1:fO7iG3H7G2nSZ7m0zPUDn85XEX2GTukHGRSepvi9Eig=
-github.com/anmitsu/go-shlex v0.0.0-20161002113705-648efa622239/go.mod h1:2FmKhYUyUczH0OGQWaF5ceTx0UBShxjsH6f8oGKYe2c=
github.com/anmitsu/go-shlex v0.0.0-20200514113438-38f4b401e2be h1:9AeTilPcZAjCFIImctFaOjnTIavg87rW78vTPkQqLI8=
github.com/anmitsu/go-shlex v0.0.0-20200514113438-38f4b401e2be/go.mod h1:ySMOLuWl6zY27l47sB3qLNK6tF2fkHG55UZxx8oIVo4=
github.com/antihax/optional v1.0.0/go.mod h1:uupD/76wgC+ih3iEmQUL+0Ugr19nfwCT1kdvxnR2qWY=
@@ -1001,23 +811,26 @@ github.com/antlr/antlr4/runtime/Go/antlr v0.0.0-20220418222510-f25a4f6275ed/go.m
github.com/antlr/antlr4/runtime/Go/antlr v1.4.10/go.mod h1:F7bn7fEU90QkQ3tnmaTx3LTKLEDqnwWODIYppRQ5hnY=
github.com/apache/arrow/go/v10 v10.0.1/go.mod h1:YvhnlEePVnBS4+0z3fhPfUy7W1Ikj0Ih0vcRo/gZ1M0=
github.com/apache/arrow/go/v11 v11.0.0/go.mod h1:Eg5OsL5H+e299f7u5ssuXsuHQVEGC4xei5aX110hRiI=
-github.com/apache/arrow/go/v12 v12.0.0/go.mod h1:d+tV/eHZZ7Dz7RPrFKtPK02tpr+c9/PEd/zm8mDS9Vg=
+github.com/apache/thrift v0.12.0/go.mod h1:cp2SuWMxlEZw2r+iP2GNCdIi4C1qmUzdZFSVb+bacwQ=
+github.com/apache/thrift v0.13.0/go.mod h1:cp2SuWMxlEZw2r+iP2GNCdIi4C1qmUzdZFSVb+bacwQ=
github.com/apache/thrift v0.16.0/go.mod h1:PHK3hniurgQaNMZYaCLEqXKsYK8upmhPbmdP2FXSqgU=
github.com/apparentlymart/go-cidr v1.0.1/go.mod h1:EBcsNrHc3zQeuaeCeCtQruQm+n9/YjEn/vI25Lg7Gwc=
github.com/apparentlymart/go-cidr v1.1.0 h1:2mAhrMoF+nhXqxTzSZMUzDHkLjmIHC+Zzn4tdgBZjnU=
github.com/apparentlymart/go-cidr v1.1.0/go.mod h1:EBcsNrHc3zQeuaeCeCtQruQm+n9/YjEn/vI25Lg7Gwc=
github.com/apparentlymart/go-dump v0.0.0-20180507223929-23540a00eaa3/go.mod h1:oL81AME2rN47vu18xqj1S1jPIPuN7afo62yKTNn3XMM=
+github.com/apparentlymart/go-dump v0.0.0-20190214190832-042adf3cf4a0 h1:MzVXffFUye+ZcSR6opIgz9Co7WcDx6ZcY+RjfFHoA0I=
github.com/apparentlymart/go-dump v0.0.0-20190214190832-042adf3cf4a0/go.mod h1:oL81AME2rN47vu18xqj1S1jPIPuN7afo62yKTNn3XMM=
github.com/apparentlymart/go-textseg v1.0.0/go.mod h1:z96Txxhf3xSFMPmb5X/1W05FF/Nj9VFpLOpjS5yuumk=
github.com/apparentlymart/go-textseg/v12 v12.0.0/go.mod h1:S/4uRK2UtaQttw1GenVJEynmyUenKwP++x/+DdGV/Ec=
-github.com/apparentlymart/go-textseg/v13 v13.0.0 h1:Y+KvPE1NYz0xl601PVImeQfFyEy6iT90AvPUL1NNfNw=
github.com/apparentlymart/go-textseg/v13 v13.0.0/go.mod h1:ZK2fH7c4NqDTLtiYLvIkEghdlcqw7yxLeM89kiTRPUo=
+github.com/apparentlymart/go-textseg/v15 v15.0.0 h1:uYvfpb3DyLSCGWnctWKGj857c6ew1u1fNQOlOtuGxQY=
+github.com/apparentlymart/go-textseg/v15 v15.0.0/go.mod h1:K8XmNZdhEBkdlyDdvbmmsvpAG721bKi0joRfFdHIWJ4=
github.com/armon/circbuf v0.0.0-20150827004946-bbbad097214e/go.mod h1:3U/XgcO3hCbHZ8TKRvWD2dDTCfh9M9ya+I9JpbB7O8o=
github.com/armon/consul-api v0.0.0-20180202201655-eb2c6b5be1b6/go.mod h1:grANhF5doyWs3UAsr3K4I6qtAmlQcZDesFNEHPZAzj8=
github.com/armon/go-metrics v0.0.0-20180917152333-f0300d1749da/go.mod h1:Q73ZrmVTwzkszR9V5SSuryQ31EELlFMUz1kKyl939pY=
-github.com/armon/go-metrics v0.3.0/go.mod h1:zXjbSimjXTd7vOpY8B0/2LpvNvDoXBuplAD+gJD3GYs=
github.com/armon/go-metrics v0.3.3/go.mod h1:4O98XIr/9W0sxpJ8UaYkvjk10Iff7SnFrb4QAOwNTFc=
github.com/armon/go-metrics v0.3.9/go.mod h1:4O98XIr/9W0sxpJ8UaYkvjk10Iff7SnFrb4QAOwNTFc=
+github.com/armon/go-metrics v0.4.0/go.mod h1:E6amYzXo6aW1tqzoZGT755KkbgrJsSdpwZ+3JqfkOG4=
github.com/armon/go-metrics v0.4.1 h1:hR91U9KYmb6bLBYLQjyM+3j+rcd/UhE+G78SFnF8gJA=
github.com/armon/go-metrics v0.4.1/go.mod h1:E6amYzXo6aW1tqzoZGT755KkbgrJsSdpwZ+3JqfkOG4=
github.com/armon/go-radix v0.0.0-20180808171621-7fddfc383310/go.mod h1:ufUuZ+zHj4x4TnLV4JWEpy2hxWSpsRywHrMgIH9cCH8=
@@ -1025,43 +838,79 @@ github.com/armon/go-radix v1.0.0 h1:F4z6KzEeeQIMeLFa97iZU6vupzoecKdU5TX24SNppXI=
github.com/armon/go-radix v1.0.0/go.mod h1:ufUuZ+zHj4x4TnLV4JWEpy2hxWSpsRywHrMgIH9cCH8=
github.com/armon/go-socks5 v0.0.0-20160902184237-e75332964ef5 h1:0CwZNZbxp69SHPdPJAN/hZIm0C4OItdklCFmMRWYpio=
github.com/armon/go-socks5 v0.0.0-20160902184237-e75332964ef5/go.mod h1:wHh0iHkYZB8zMSxRWpUBQtwG5a7fFgvEO+odwuTv2gs=
+github.com/aryann/difflib v0.0.0-20170710044230-e206f873d14a/go.mod h1:DAHtR1m6lCRdSC2Tm3DSWRPvIPr6xNKyeHdqDQSQT+A=
github.com/asaskevich/govalidator v0.0.0-20190424111038-f61b66f89f4a/go.mod h1:lB+ZfQJz7igIIfQNfa7Ml4HSf2uFQQRzpGGRXenZAgY=
+github.com/asaskevich/govalidator v0.0.0-20200907205600-7a23bdc65eef/go.mod h1:WaHUgvxTVq04UNunO+XhnAqY/wQc+bxr74GqbsZ/Jqw=
+github.com/asaskevich/govalidator v0.0.0-20210307081110-f21760c49a8d/go.mod h1:WaHUgvxTVq04UNunO+XhnAqY/wQc+bxr74GqbsZ/Jqw=
+github.com/atotto/clipboard v0.1.4 h1:EH0zSVneZPSuFR11BlR9YppQTVDbh5+16AmcJi4g1z4=
+github.com/atotto/clipboard v0.1.4/go.mod h1:ZY9tmq7sm5xIbd9bOK4onWV4S6X0u6GY7Vn0Yu86PYI=
+github.com/aws/aws-lambda-go v1.13.3/go.mod h1:4UKl9IzQMoD+QF79YdCuzCwp8VbmG4VAQwij/eHl5CU=
github.com/aws/aws-sdk-go v1.15.11/go.mod h1:mFuSZ37Z9YOHbQEwBWztmVzqXrEkub65tZoCYDt7FT0=
github.com/aws/aws-sdk-go v1.15.27/go.mod h1:mFuSZ37Z9YOHbQEwBWztmVzqXrEkub65tZoCYDt7FT0=
github.com/aws/aws-sdk-go v1.15.78/go.mod h1:E3/ieXAlvM0XWO57iftYVDLLvQ824smPP3ATZkfNZeM=
github.com/aws/aws-sdk-go v1.25.3/go.mod h1:KmX6BPdI08NWTb3/sm4ZGu5ShLoqVDhKgpiN924inxo=
-github.com/aws/aws-sdk-go v1.25.37/go.mod h1:KmX6BPdI08NWTb3/sm4ZGu5ShLoqVDhKgpiN924inxo=
-github.com/aws/aws-sdk-go v1.30.27/go.mod h1:5zCpMtNQVjRREroY7sYe8lOMRSxkhG6MZveU8YkpAk0=
+github.com/aws/aws-sdk-go v1.27.0/go.mod h1:KmX6BPdI08NWTb3/sm4ZGu5ShLoqVDhKgpiN924inxo=
github.com/aws/aws-sdk-go v1.34.0/go.mod h1:5zCpMtNQVjRREroY7sYe8lOMRSxkhG6MZveU8YkpAk0=
-github.com/aws/aws-sdk-go v1.37.0/go.mod h1:hcU610XS61/+aQV88ixoOzUoG7v3b31pl2zKMmprdro=
-github.com/aws/aws-sdk-go v1.40.34/go.mod h1:585smgzpB/KqRA+K3y/NL/oYRqQvpNJYvLm+LY1U59Q=
+github.com/aws/aws-sdk-go v1.38.35/go.mod h1:hcU610XS61/+aQV88ixoOzUoG7v3b31pl2zKMmprdro=
github.com/aws/aws-sdk-go v1.43.9/go.mod h1:y4AeaBuwd2Lk+GepC1E9v0qOiTws0MIWAX4oIKwKHZo=
+github.com/aws/aws-sdk-go v1.43.11/go.mod h1:y4AeaBuwd2Lk+GepC1E9v0qOiTws0MIWAX4oIKwKHZo=
github.com/aws/aws-sdk-go v1.43.16/go.mod h1:y4AeaBuwd2Lk+GepC1E9v0qOiTws0MIWAX4oIKwKHZo=
-github.com/aws/aws-sdk-go v1.44.106/go.mod h1:y4AeaBuwd2Lk+GepC1E9v0qOiTws0MIWAX4oIKwKHZo=
-github.com/aws/aws-sdk-go v1.44.214 h1:YzDuC+9UtrAOUkItlK7l3BvKI9o6qAog9X8i289HORc=
-github.com/aws/aws-sdk-go v1.44.214/go.mod h1:aVsgQcEevwlmQ7qHE9I3h+dtQgpqhFB+i8Phjh7fkwI=
-github.com/aws/aws-sdk-go-v2 v1.9.0 h1:+S+dSqQCN3MSU5vJRu1HqHrq00cJn6heIMU7X9hcsoo=
-github.com/aws/aws-sdk-go-v2 v1.9.0/go.mod h1:cK/D0BBs0b/oWPIcX/Z/obahJK1TT7IPVjy53i/mX/4=
-github.com/aws/aws-sdk-go-v2/config v1.7.0 h1:J2cZ7qe+3IpqBEXnHUrFrOjoB9BlsXg7j53vxcl5IVg=
-github.com/aws/aws-sdk-go-v2/config v1.7.0/go.mod h1:w9+nMZ7soXCe5nT46Ri354SNhXDQ6v+V5wqDjnZE+GY=
-github.com/aws/aws-sdk-go-v2/credentials v1.4.0 h1:kmvesfjY861FzlCU9mvAfe01D9aeXcG2ZuC+k9F2YLM=
-github.com/aws/aws-sdk-go-v2/credentials v1.4.0/go.mod h1:dgGR+Qq7Wjcd4AOAW5Rf5Tnv3+x7ed6kETXyS9WCuAY=
-github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.5.0 h1:OxTAgH8Y4BXHD6PGCJ8DHx2kaZPCQfSTqmDsdRZFezE=
-github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.5.0/go.mod h1:CpNzHK9VEFUCknu50kkB8z58AH2B5DvPP7ea1LHve/Y=
-github.com/aws/aws-sdk-go-v2/internal/ini v1.2.2 h1:d95cddM3yTm4qffj3P6EnP+TzX1SSkWaQypXSgT/hpA=
-github.com/aws/aws-sdk-go-v2/internal/ini v1.2.2/go.mod h1:BQV0agm+JEhqR+2RT5e1XTFIDcAAV0eW6z2trp+iduw=
-github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.3.0 h1:VNJ5NLBteVXEwE2F1zEXVmyIH58mZ6kIQGJoC7C+vkg=
-github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.3.0/go.mod h1:R1KK+vY8AfalhG1AOu5e35pOD2SdoPKQCFLTvnxiohk=
-github.com/aws/aws-sdk-go-v2/service/kms v1.5.0 h1:10e9mzaaYIIePEuxUzW5YJ8LKHNG/NX63evcvS3ux9U=
-github.com/aws/aws-sdk-go-v2/service/kms v1.5.0/go.mod h1:w7JuP9Oq1IKMFQPkNe3V6s9rOssXzOVEMNEqK1L1bao=
-github.com/aws/aws-sdk-go-v2/service/secretsmanager v1.6.0/go.mod h1:B+7C5UKdVq1ylkI/A6O8wcurFtaux0R1njePNPtKwoA=
-github.com/aws/aws-sdk-go-v2/service/ssm v1.10.0/go.mod h1:4dXS5YNqI3SNbetQ7X7vfsMlX6ZnboJA2dulBwJx7+g=
-github.com/aws/aws-sdk-go-v2/service/sso v1.4.0 h1:sHXMIKYS6YiLPzmKSvDpPmOpJDHxmAUgbiF49YNVztg=
-github.com/aws/aws-sdk-go-v2/service/sso v1.4.0/go.mod h1:+1fpWnL96DL23aXPpMGbsmKe8jLTEfbjuQoA4WS1VaA=
-github.com/aws/aws-sdk-go-v2/service/sts v1.7.0 h1:1at4e5P+lvHNl2nUktdM2/v+rpICg/QSEr9TO/uW9vU=
-github.com/aws/aws-sdk-go-v2/service/sts v1.7.0/go.mod h1:0qcSMCyASQPN2sk/1KQLQ2Fh6yq8wm0HSDAimPhzCoM=
-github.com/aws/smithy-go v1.8.0 h1:AEwwwXQZtUwP5Mz506FeXXrKBe0jA8gVM+1gEcSRooc=
-github.com/aws/smithy-go v1.8.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/aws-sdk-go v1.43.31/go.mod h1:y4AeaBuwd2Lk+GepC1E9v0qOiTws0MIWAX4oIKwKHZo=
+github.com/aws/aws-sdk-go v1.44.45/go.mod h1:y4AeaBuwd2Lk+GepC1E9v0qOiTws0MIWAX4oIKwKHZo=
+github.com/aws/aws-sdk-go v1.44.68/go.mod h1:y4AeaBuwd2Lk+GepC1E9v0qOiTws0MIWAX4oIKwKHZo=
+github.com/aws/aws-sdk-go v1.45.24 h1:TZx/CizkmCQn8Rtsb11iLYutEQVGK5PK9wAhwouELBo=
+github.com/aws/aws-sdk-go v1.45.24/go.mod h1:aVsgQcEevwlmQ7qHE9I3h+dtQgpqhFB+i8Phjh7fkwI=
+github.com/aws/aws-sdk-go-v2 v0.18.0/go.mod h1:JWVYvqSMppoMJC0x5wdwiImzgXTI9FuZwxzkQq9wy+g=
+github.com/aws/aws-sdk-go-v2 v1.16.8/go.mod h1:6CpKuLXg2w7If3ABZCl/qZ6rEgwtjZTn4eAf4RcEyuw=
+github.com/aws/aws-sdk-go-v2 v1.17.3 h1:shN7NlnVzvDUgPQ+1rLMSxY8OWRNDRYtiqe0p/PgrhY=
+github.com/aws/aws-sdk-go-v2 v1.17.3/go.mod h1:uzbQtefpm44goOPmdKyAlXSNcwlRgF3ePWVW6EtJvvw=
+github.com/aws/aws-sdk-go-v2/aws/protocol/eventstream v1.4.3 h1:S/ZBwevQkr7gv5YxONYpGQxlMFFYSRfz3RMcjsC9Qhk=
+github.com/aws/aws-sdk-go-v2/aws/protocol/eventstream v1.4.3/go.mod h1:gNsR5CaXKmQSSzrmGxmwmct/r+ZBfbxorAuXYsj/M5Y=
+github.com/aws/aws-sdk-go-v2/config v1.15.15 h1:yBV+J7Au5KZwOIrIYhYkTGJbifZPCkAnCFSvGsF3ui8=
+github.com/aws/aws-sdk-go-v2/config v1.15.15/go.mod h1:A1Lzyy/o21I5/s2FbyX5AevQfSVXpvvIDCoVFD0BC4E=
+github.com/aws/aws-sdk-go-v2/credentials v1.12.10 h1:7gGcMQePejwiKoDWjB9cWnpfVdnz/e5JwJFuT6OrroI=
+github.com/aws/aws-sdk-go-v2/credentials v1.12.10/go.mod h1:g5eIM5XRs/OzIIK81QMBl+dAuDyoLN0VYaLP+tBqEOk=
+github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.12.9 h1:hz8tc+OW17YqxyFFPSkvfSikbqWcyyHRyPVSTzC0+aI=
+github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.12.9/go.mod h1:KDCCm4ONIdHtUloDcFvK2+vshZvx4Zmj7UMDfusuz5s=
+github.com/aws/aws-sdk-go-v2/feature/s3/manager v1.11.21 h1:bpiKFJ9aC0xTVpygSRRRL/YHC1JZ+pHQHENATHuoiwo=
+github.com/aws/aws-sdk-go-v2/feature/s3/manager v1.11.21/go.mod h1:iIYPrQ2rYfZiB/iADYlhj9HHZ9TTi6PqKQPAqygohbE=
+github.com/aws/aws-sdk-go-v2/internal/configsources v1.1.15/go.mod h1:pWrr2OoHlT7M/Pd2y4HV3gJyPb3qj5qMmnPkKSNPYK4=
+github.com/aws/aws-sdk-go-v2/internal/configsources v1.1.27 h1:I3cakv2Uy1vNmmhRQmFptYDxOvBnwCdNwyw63N0RaRU=
+github.com/aws/aws-sdk-go-v2/internal/configsources v1.1.27/go.mod h1:a1/UpzeyBBerajpnP5nGZa9mGzsBn5cOKxm6NWQsvoI=
+github.com/aws/aws-sdk-go-v2/internal/endpoints/v2 v2.4.9/go.mod h1:08tUpeSGN33QKSO7fwxXczNfiwCpbj+GxK6XKwqWVv0=
+github.com/aws/aws-sdk-go-v2/internal/endpoints/v2 v2.4.21 h1:5NbbMrIzmUn/TXFqAle6mgrH5m9cOvMLRGL7pnG8tRE=
+github.com/aws/aws-sdk-go-v2/internal/endpoints/v2 v2.4.21/go.mod h1:+Gxn8jYn5k9ebfHEqlhrMirFjSW0v0C9fI+KN5vk2kE=
+github.com/aws/aws-sdk-go-v2/internal/ini v1.3.16 h1:f0ySVcmQhwmzn7zQozd8wBM3yuGBfzdpsOaKQ0/Epzw=
+github.com/aws/aws-sdk-go-v2/internal/ini v1.3.16/go.mod h1:CYmI+7x03jjJih8kBEEFKRQc40UjUokT0k7GbvrhhTc=
+github.com/aws/aws-sdk-go-v2/internal/v4a v1.0.6 h1:3L8pcjvgaSOs0zzZcMKzxDSkYKEpwJ2dNVDdxm68jAY=
+github.com/aws/aws-sdk-go-v2/internal/v4a v1.0.6/go.mod h1:O7Oc4peGZDEKlddivslfYFvAbgzvl/GH3J8j3JIGBXc=
+github.com/aws/aws-sdk-go-v2/service/iam v1.19.0 h1:9vCynoqC+dgxZKrsjvAniyIopsv3RZFsZ6wkQ+yxtj8=
+github.com/aws/aws-sdk-go-v2/service/iam v1.19.0/go.mod h1:OyAuvpFeSVNppcSsp1hFOVQcaTRc1LE24YIR7pMbbAA=
+github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding v1.9.3 h1:4n4KCtv5SUoT5Er5XV41huuzrCqepxlW3SDI9qHQebc=
+github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding v1.9.3/go.mod h1:gkb2qADY+OHaGLKNTYxMaQNacfeyQpZ4csDTQMeFmcw=
+github.com/aws/aws-sdk-go-v2/service/internal/checksum v1.1.10 h1:7LJcuRalaLw+GYQTMGmVUl4opg2HrDZkvn/L3KvIQfw=
+github.com/aws/aws-sdk-go-v2/service/internal/checksum v1.1.10/go.mod h1:Qks+dxK3O+Z2deAhNo6cJ8ls1bam3tUGUAcgxQP1c70=
+github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.9.9 h1:sHfDuhbOuuWSIAEDd3pma6p0JgUcR2iePxtCE8gfCxQ=
+github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.9.9/go.mod h1:yQowTpvdZkFVuHrLBXmczat4W+WJKg/PafBZnGBLga0=
+github.com/aws/aws-sdk-go-v2/service/internal/s3shared v1.13.9 h1:sJdKvydGYDML9LTFcp6qq6Z5fIjN0Rdq2Gvw1hUg8tc=
+github.com/aws/aws-sdk-go-v2/service/internal/s3shared v1.13.9/go.mod h1:Rc5+wn2k8gFSi3V1Ch4mhxOzjMh+bYSXVFfVaqowQOY=
+github.com/aws/aws-sdk-go-v2/service/kms v1.18.1 h1:y07kzPdcjuuyDVYWf1CCsQQ6kcAWMbFy+yIJ71xQBS0=
+github.com/aws/aws-sdk-go-v2/service/kms v1.18.1/go.mod h1:4PZMUkc9rXHWGVB5J9vKaZy3D7Nai79ORworQ3ASMiM=
+github.com/aws/aws-sdk-go-v2/service/s3 v1.27.2 h1:NvzGue25jKnuAsh6yQ+TZ4ResMcnp49AWgWGm2L4b5o=
+github.com/aws/aws-sdk-go-v2/service/s3 v1.27.2/go.mod h1:u+566cosFI+d+motIz3USXEh6sN8Nq4GrNXSg2RXVMo=
+github.com/aws/aws-sdk-go-v2/service/secretsmanager v1.15.14/go.mod h1:xakbH8KMsQQKqzX87uyyzTHshc/0/Df8bsTneTS5pFU=
+github.com/aws/aws-sdk-go-v2/service/sns v1.17.10/go.mod h1:uITsRNVMeCB3MkWpXxXw0eDz8pW4TYLzj+eyQtbhSxM=
+github.com/aws/aws-sdk-go-v2/service/sqs v1.19.1/go.mod h1:A94o564Gj+Yn+7QO1eLFeI7UVv3riy/YBFOfICVqFvU=
+github.com/aws/aws-sdk-go-v2/service/ssm v1.27.6/go.mod h1:fiFzQgj4xNOg4/wqmAiPvzgDMXPD+cUEplX/CYn+0j0=
+github.com/aws/aws-sdk-go-v2/service/sso v1.11.13 h1:DQpf+al+aWozOEmVEdml67qkVZ6vdtGUi71BZZWw40k=
+github.com/aws/aws-sdk-go-v2/service/sso v1.11.13/go.mod h1:d7ptRksDDgvXaUvxyHZ9SYh+iMDymm94JbVcgvSYSzU=
+github.com/aws/aws-sdk-go-v2/service/sts v1.16.10 h1:7tquJrhjYz2EsCBvA9VTl+sBAAh1bv7h/sGASdZOGGo=
+github.com/aws/aws-sdk-go-v2/service/sts v1.16.10/go.mod h1:cftkHYN6tCDNfkSasAmclSfl4l7cySoay8vz7p/ce0E=
+github.com/aws/smithy-go v1.12.0/go.mod h1:Tg+OJXh4MB2R/uN61Ko2f6hTZwB/ZYGOtib8J3gBHzA=
+github.com/aws/smithy-go v1.13.5 h1:hgz0X/DX0dGqTYpGALqXJoRKRj5oQ7150i5FdTePzO8=
+github.com/aws/smithy-go v1.13.5/go.mod h1:Tg+OJXh4MB2R/uN61Ko2f6hTZwB/ZYGOtib8J3gBHzA=
+github.com/aymanbagabas/go-osc52/v2 v2.0.1 h1:HwpRHbFMcZLEVr42D4p7XBqjyuxQH5SMiErDT4WkJ2k=
+github.com/aymanbagabas/go-osc52/v2 v2.0.1/go.mod h1:uYgXzlJ7ZpABp8OJ+exZzJJhRNQ2ASbcXHWsFqH8hp8=
github.com/benbjohnson/clock v1.0.3/go.mod h1:bGMdMPoPVvcYyt1gHDf4J2KE153Yf9BuiUKYMaxlTDM=
github.com/benbjohnson/clock v1.1.0/go.mod h1:J11/hYXuz8f4ySSvYwY0FKfm+ezbsZBKZxNJlLklBHA=
github.com/beorn7/perks v0.0.0-20160804104726-4c0e84591b9a/go.mod h1:Dwedo/Wpr24TaqPxmxbtue+5NUziq4I4S80YR8gNf3Q=
@@ -1091,9 +940,10 @@ github.com/buger/jsonparser v1.1.1/go.mod h1:6RYKKt7H4d4+iWqouImQ9R2FZql3VbhNgx2
github.com/bugsnag/bugsnag-go v0.0.0-20141110184014-b1d153021fcd/go.mod h1:2oa8nejYd4cQ/b0hMIopN0lCRxU0bueqREvZLWFrtK8=
github.com/bugsnag/osext v0.0.0-20130617224835-0dd3f918b21b/go.mod h1:obH5gd0BsqsP2LwDJ9aOkm/6J86V6lyAXCoQWGw3K50=
github.com/bugsnag/panicwrap v0.0.0-20151223152923-e2c28503fcd0/go.mod h1:D/8v3kj0zr8ZAKg1AQ6crr+5VwKN5eIywRkfhyM/+dE=
-github.com/bwesterb/go-ristretto v1.2.0/go.mod h1:fUIoIZaG73pV5biE2Blr2xEzDoMj7NFEuV9ekS419A0=
github.com/bwesterb/go-ristretto v1.2.3/go.mod h1:fUIoIZaG73pV5biE2Blr2xEzDoMj7NFEuV9ekS419A0=
github.com/bytecodealliance/wasmtime-go v0.36.0/go.mod h1:q320gUxqyI8yB+ZqRuaJOEnGkAnHh6WtJjMaT2CW4wI=
+github.com/casbin/casbin/v2 v2.1.2/go.mod h1:YcPU1XXisHhLzuxH9coDNf2FbKpjGlbCg3n9yuLkIJQ=
+github.com/cenkalti/backoff v2.2.1+incompatible/go.mod h1:90ReRw6GdpyfrHakVjL/QHaoyV4aDUVVkXQJJJ3NXXM=
github.com/cenkalti/backoff/v3 v3.0.0/go.mod h1:cIeZDE3IrqwwJl6VUwCN6trj1oXrTS4rc0ij+ULvLYs=
github.com/cenkalti/backoff/v3 v3.2.2 h1:cfUAAO3yvKMYKPrvhDuHSwQnhZNk/RMHKdZqKTxfm6M=
github.com/cenkalti/backoff/v3 v3.2.2/go.mod h1:cIeZDE3IrqwwJl6VUwCN6trj1oXrTS4rc0ij+ULvLYs=
@@ -1112,6 +962,12 @@ github.com/cespare/xxhash v1.1.0/go.mod h1:XrSqR1VqqWfGrhpAt58auRo0WTKS1nRRg3ghf
github.com/cespare/xxhash/v2 v2.1.1/go.mod h1:VGX0DQ3Q6kWi7AoAeZDth3/j3BFtOZR5XLFGgcrjCOs=
github.com/cespare/xxhash/v2 v2.1.2/go.mod h1:VGX0DQ3Q6kWi7AoAeZDth3/j3BFtOZR5XLFGgcrjCOs=
github.com/cespare/xxhash/v2 v2.2.0/go.mod h1:VGX0DQ3Q6kWi7AoAeZDth3/j3BFtOZR5XLFGgcrjCOs=
+github.com/charmbracelet/bubbles v0.16.1 h1:6uzpAAaT9ZqKssntbvZMlksWHruQLNxg49H5WdeuYSY=
+github.com/charmbracelet/bubbles v0.16.1/go.mod h1:2QCp9LFlEsBQMvIYERr7Ww2H2bA7xen1idUDIzm/+Xc=
+github.com/charmbracelet/bubbletea v0.24.2 h1:uaQIKx9Ai6Gdh5zpTbGiWpytMU+CfsPp06RaW2cx/SY=
+github.com/charmbracelet/bubbletea v0.24.2/go.mod h1:XdrNrV4J8GiyshTtx3DNuYkR1FDaJmO3l2nejekbsgg=
+github.com/charmbracelet/lipgloss v0.7.1 h1:17WMwi7N1b1rVWOjMT+rCh7sQkvDU75B2hbZpc5Kc1E=
+github.com/charmbracelet/lipgloss v0.7.1/go.mod h1:yG0k3giv8Qj8edTCbbg6AlQ5e8KNWpFujkNawKNhE2c=
github.com/checkpoint-restore/go-criu/v4 v4.1.0/go.mod h1:xUQBLp4RLc5zJtWY++yjOoMoB5lihDt7fai+75m+rGw=
github.com/checkpoint-restore/go-criu/v5 v5.0.0/go.mod h1:cfwC0EG7HMUenopBsUf9d89JlCLQIfgVcNsNN0t6T2M=
github.com/checkpoint-restore/go-criu/v5 v5.3.0/go.mod h1:E/eQpaFtUKGOOSEBZgmKAcn+zUUwWxqcaKZlF54wK8E=
@@ -1119,8 +975,11 @@ github.com/cheggaaa/pb v1.0.27/go.mod h1:pQciLPpbU0oxA0h+VJYYLxO+XeDQb5pZijXscXH
github.com/cheggaaa/pb v1.0.29 h1:FckUN5ngEk2LpvuG0fw1GEFx6LtyY2pWI/Z2QgCnEYo=
github.com/cheggaaa/pb v1.0.29/go.mod h1:W40334L7FMC5JKWldsTWbdGjLo0RxUKK73K+TuPxX30=
github.com/chzyer/logex v1.1.10/go.mod h1:+Ywpsq7O8HXn0nuIou7OrIPyXbp3wmkHB+jjWRnGsAI=
+github.com/chzyer/logex v1.2.0/go.mod h1:9+9sk7u7pGNWYMkh0hdiL++6OeibzJccyQU4p4MedaY=
github.com/chzyer/readline v0.0.0-20180603132655-2972be24d48e/go.mod h1:nSuG5e5PlCu98SY8svDHJxuZscDgtXS6KTTbou5AhLI=
+github.com/chzyer/readline v1.5.0/go.mod h1:x22KAscuvRqlLoK9CsoYsmxoXZMMFVyOl86cAH8qUic=
github.com/chzyer/test v0.0.0-20180213035817-a1ea475d72b1/go.mod h1:Q3SI9o4m/ZMnBNeIyt5eFwwo7qiLfzFZmjNmxjkiQlU=
+github.com/chzyer/test v0.0.0-20210722231415-061457976a23/go.mod h1:Q3SI9o4m/ZMnBNeIyt5eFwwo7qiLfzFZmjNmxjkiQlU=
github.com/cilium/ebpf v0.0.0-20200110133405-4032b1d8aae3/go.mod h1:MA5e5Lr8slmEg9bt0VpxxWqJlO4iwu3FBdHUzV7wQVg=
github.com/cilium/ebpf v0.0.0-20200702112145-1c8d4c9ef775/go.mod h1:7cR51M8ViRLIdUjrmSXlK9pkrsDlLHbO8jiB8X8JnOc=
github.com/cilium/ebpf v0.2.0/go.mod h1:To2CFviqOWL/M0gIMsvSMlqe7em/l1ALkX1PyjrX2Qs=
@@ -1130,8 +989,8 @@ github.com/cilium/ebpf v0.7.0/go.mod h1:/oI2+1shJiTGAMgl6/RgJr36Eo1jzrRcAWbcXO2u
github.com/cilium/ebpf v0.9.1/go.mod h1:+OhNOIXx/Fnu1IE8bJz2dzOA+VSfyTfdNUVdlQnxUFY=
github.com/circonus-labs/circonus-gometrics v2.3.1+incompatible/go.mod h1:nmEj6Dob7S7YxXgwXpfOuvO54S+tGdZdw9fuRZt25Ag=
github.com/circonus-labs/circonusllhist v0.1.3/go.mod h1:kMXHVDlOchFAehlya5ePtbp5jckzBHf4XRpQvBOLI+I=
+github.com/clbanning/x2j v0.0.0-20191024224557-825249438eec/go.mod h1:jMjuTZXRI4dUb/I5gc9Hdhagfvm9+RyrPryS/auMzxE=
github.com/client9/misspell v0.3.4/go.mod h1:qj6jICC3Q7zFZvVWo7KLAzC3yx5G7kyvSDkc90ppPyw=
-github.com/cloudflare/circl v1.1.0/go.mod h1:prBCrKB9DV4poKZY1l9zBXg2QJY7mvgRvtMxxK7fi4I=
github.com/cloudflare/circl v1.3.3 h1:fE/Qz0QdIGqeWfnwq0RE0R7MI51s0M2E4Ga9kq5AEMs=
github.com/cloudflare/circl v1.3.3/go.mod h1:5XYMA4rFBvNIrhs50XuiBJ15vF2pZn4nnUKZrLbUZFA=
github.com/cncf/udpa/go v0.0.0-20191209042840-269d4d468f6f/go.mod h1:M8M6+tZqaGXZJjfX53e64911xZQV5JYwmTeXPW+k8Sc=
@@ -1146,13 +1005,13 @@ github.com/cncf/xds/go v0.0.0-20211001041855-01bcc9b48dfe/go.mod h1:eXthEFrGJvWH
github.com/cncf/xds/go v0.0.0-20211011173535-cb28da3451f1/go.mod h1:eXthEFrGJvWHgFFCl3hGmgk+/aYT6PnTQLykKQRLhEs=
github.com/cncf/xds/go v0.0.0-20220314180256-7f1daf1720fc/go.mod h1:eXthEFrGJvWHgFFCl3hGmgk+/aYT6PnTQLykKQRLhEs=
github.com/cncf/xds/go v0.0.0-20230105202645-06c439db220b/go.mod h1:eXthEFrGJvWHgFFCl3hGmgk+/aYT6PnTQLykKQRLhEs=
-github.com/cncf/xds/go v0.0.0-20230310173818-32f1caf87195/go.mod h1:eXthEFrGJvWHgFFCl3hGmgk+/aYT6PnTQLykKQRLhEs=
-github.com/cncf/xds/go v0.0.0-20230428030218-4003588d1b74/go.mod h1:eXthEFrGJvWHgFFCl3hGmgk+/aYT6PnTQLykKQRLhEs=
github.com/cncf/xds/go v0.0.0-20230607035331-e9ce68804cb4/go.mod h1:eXthEFrGJvWHgFFCl3hGmgk+/aYT6PnTQLykKQRLhEs=
+github.com/cockroachdb/apd v1.1.0/go.mod h1:8Sl8LxpKi29FqWXR16WEFZRNSz3SoPzUzeMeY4+DwBQ=
github.com/cockroachdb/datadriven v0.0.0-20190809214429-80d97fb3cbaa/go.mod h1:zn76sxSg3SzpJ0PPJaLDCu+Bu0Lg3sKTORVIj19EIF8=
github.com/cockroachdb/datadriven v0.0.0-20200714090401-bf6692d28da5/go.mod h1:h6jFvWxBdQXxjopDMZyH2UVceIRfR84bdzbkoKrsWNo=
github.com/cockroachdb/errors v1.2.4/go.mod h1:rQD95gz6FARkaKkQXUksEje/d9a6wBJoCr5oaCLELYA=
github.com/cockroachdb/logtags v0.0.0-20190617123548-eb05cc24525f/go.mod h1:i/u985jwjWRlyHXQbwatDASoW0RMlZ/3i9yJHE2xLkI=
+github.com/codahale/hdrhistogram v0.0.0-20161010025455-3a0bb77429bd/go.mod h1:sE/e/2PUdi/liOCUjSTXgM1o87ZssimdTWN964YiIeI=
github.com/container-orchestrated-devices/container-device-interface v0.5.4/go.mod h1:DjE95rfPiiSmG7uVXtg0z6MnPm/Lx4wxKCIts0ZE0vg=
github.com/containerd/aufs v0.0.0-20200908144142-dab0cbea06f4/go.mod h1:nukgQABAEopAHvB6j7cnP5zJ+/3aVcE7hCYqvIwAHyE=
github.com/containerd/aufs v0.0.0-20201003224125-76a6863f2989/go.mod h1:AkGGQs9NM2vtYHaUen+NljV0/baGCAPELGm2q9ZXpWU=
@@ -1178,12 +1037,13 @@ github.com/containerd/console v0.0.0-20191206165004-02ecf6a7291e/go.mod h1:8Pf4g
github.com/containerd/console v1.0.1/go.mod h1:XUsP6YE/mKtz6bxc+I8UiKKTP04qjQL4qcS3XoQ5xkw=
github.com/containerd/console v1.0.2/go.mod h1:ytZPjGgY2oeTkAONYafi2kSj0aYggsf8acV1PGKCbzQ=
github.com/containerd/console v1.0.3/go.mod h1:7LqA/THxQ86k76b8c/EMSiaJ3h1eZkMkXar0TQ1gf3U=
+github.com/containerd/console v1.0.4-0.20230313162750-1ae8d489ac81 h1:q2hJAaP1k2wIvVRd/hEHD7lacgqrCPS+k8g1MndzfWY=
+github.com/containerd/console v1.0.4-0.20230313162750-1ae8d489ac81/go.mod h1:YynlIjWYF8myEu6sdkwKIvGQq+cOckRm6So2avqoYAk=
github.com/containerd/containerd v1.2.10/go.mod h1:bC6axHOhabU15QhwfG7w5PipXdVtMXFTttgp+kVtyUA=
github.com/containerd/containerd v1.3.0-beta.2.0.20190828155532-0293cbd26c69/go.mod h1:bC6axHOhabU15QhwfG7w5PipXdVtMXFTttgp+kVtyUA=
github.com/containerd/containerd v1.3.0/go.mod h1:bC6axHOhabU15QhwfG7w5PipXdVtMXFTttgp+kVtyUA=
github.com/containerd/containerd v1.3.1-0.20191213020239-082f7e3aed57/go.mod h1:bC6axHOhabU15QhwfG7w5PipXdVtMXFTttgp+kVtyUA=
github.com/containerd/containerd v1.3.2/go.mod h1:bC6axHOhabU15QhwfG7w5PipXdVtMXFTttgp+kVtyUA=
-github.com/containerd/containerd v1.3.4/go.mod h1:bC6axHOhabU15QhwfG7w5PipXdVtMXFTttgp+kVtyUA=
github.com/containerd/containerd v1.4.0-beta.2.0.20200729163537-40b22ef07410/go.mod h1:bC6axHOhabU15QhwfG7w5PipXdVtMXFTttgp+kVtyUA=
github.com/containerd/containerd v1.4.1/go.mod h1:bC6axHOhabU15QhwfG7w5PipXdVtMXFTttgp+kVtyUA=
github.com/containerd/containerd v1.4.3/go.mod h1:bC6axHOhabU15QhwfG7w5PipXdVtMXFTttgp+kVtyUA=
@@ -1203,7 +1063,6 @@ github.com/containerd/containerd v1.7.0/go.mod h1:QfR7Efgb/6X2BDpTPJRvPTYDE9rsF0
github.com/containerd/continuity v0.0.0-20190426062206-aaeac12a7ffc/go.mod h1:GL3xCUCBDV3CZiTSEKksMWbLE66hEyuu9qyDOOqM47Y=
github.com/containerd/continuity v0.0.0-20190815185530-f2a389ac0a02/go.mod h1:GL3xCUCBDV3CZiTSEKksMWbLE66hEyuu9qyDOOqM47Y=
github.com/containerd/continuity v0.0.0-20191127005431-f65d91d395eb/go.mod h1:GL3xCUCBDV3CZiTSEKksMWbLE66hEyuu9qyDOOqM47Y=
-github.com/containerd/continuity v0.0.0-20200709052629-daa8e1ccc0bc/go.mod h1:cECdGN1O8G9bgKTlLhuPJimka6Xb/Gg7vYzCTNVxhvo=
github.com/containerd/continuity v0.0.0-20200710164510-efbc4488d8fe/go.mod h1:cECdGN1O8G9bgKTlLhuPJimka6Xb/Gg7vYzCTNVxhvo=
github.com/containerd/continuity v0.0.0-20201208142359-180525291bb7/go.mod h1:kR3BEg7bDFaEddKm54WSmrol1fKWDU1nKYkgrcgZT7Y=
github.com/containerd/continuity v0.0.0-20210208174643-50096c924a4e/go.mod h1:EXlVlkqNba9rJe3j7w3Xa924itAMLgZH4UD/Q4PExuQ=
@@ -1285,7 +1144,6 @@ github.com/coreos/go-iptables v0.4.5/go.mod h1:/mVI274lEDI2ns62jHCDnCyBF9Iwsmeka
github.com/coreos/go-iptables v0.5.0/go.mod h1:/mVI274lEDI2ns62jHCDnCyBF9Iwsmekav8Dbxlm1MU=
github.com/coreos/go-iptables v0.6.0/go.mod h1:Qe8Bv2Xik5FyTXwgIbLAnv2sWSBmvWdFETJConOQ//Q=
github.com/coreos/go-oidc v2.1.0+incompatible/go.mod h1:CgnwVTmzoESiwO9qyAFEMiHoZ1nMCKZlZ9V6mm3/LKc=
-github.com/coreos/go-oidc v2.2.1+incompatible/go.mod h1:CgnwVTmzoESiwO9qyAFEMiHoZ1nMCKZlZ9V6mm3/LKc=
github.com/coreos/go-oidc/v3 v3.5.0 h1:VxKtbccHZxs8juq7RdJntSqtXFtde9YpNpGn0yqgEHw=
github.com/coreos/go-oidc/v3 v3.5.0/go.mod h1:ecXRtV4romGPeO6ieExAsUK9cb/3fp9hXNz1tlv8PIM=
github.com/coreos/go-semver v0.2.0/go.mod h1:nnelYz7RCh+5ahJtPPxZlU+153eP4D4r3EedlOD2RNk=
@@ -1293,6 +1151,7 @@ github.com/coreos/go-semver v0.3.0/go.mod h1:nnelYz7RCh+5ahJtPPxZlU+153eP4D4r3Ee
github.com/coreos/go-systemd v0.0.0-20161114122254-48702e0da86b/go.mod h1:F5haX7vjVVG0kc13fIWeqUViNPyEJxv/OmvnBo0Yme4=
github.com/coreos/go-systemd v0.0.0-20180511133405-39ca1b05acc7/go.mod h1:F5haX7vjVVG0kc13fIWeqUViNPyEJxv/OmvnBo0Yme4=
github.com/coreos/go-systemd v0.0.0-20190321100706-95778dfbb74e/go.mod h1:F5haX7vjVVG0kc13fIWeqUViNPyEJxv/OmvnBo0Yme4=
+github.com/coreos/go-systemd v0.0.0-20190719114852-fd7a80b32e1f/go.mod h1:F5haX7vjVVG0kc13fIWeqUViNPyEJxv/OmvnBo0Yme4=
github.com/coreos/go-systemd/v22 v22.0.0/go.mod h1:xO0FLkIi5MaZafQlIrOotqXZ90ih+1atmu1JpKERPPk=
github.com/coreos/go-systemd/v22 v22.1.0/go.mod h1:xO0FLkIi5MaZafQlIrOotqXZ90ih+1atmu1JpKERPPk=
github.com/coreos/go-systemd/v22 v22.3.2/go.mod h1:Y58oyj3AT4RCenI/lSvhwexgC+NSVTIJ3seZv2GcEnc=
@@ -1309,7 +1168,6 @@ github.com/cpuguy83/go-md2man/v2 v2.0.2/go.mod h1:tgQtvFlXSQOSOSIRvRPT7W67SCa46t
github.com/creack/pty v1.1.7/go.mod h1:lj5s0c3V2DBrqTV7llrYr5NG6My20zk30Fl46Y7DoTY=
github.com/creack/pty v1.1.9/go.mod h1:oKZEueFk5CKHvIhNR5MUki03XCEU+Q6VDXinZuGJ33E=
github.com/creack/pty v1.1.11/go.mod h1:oKZEueFk5CKHvIhNR5MUki03XCEU+Q6VDXinZuGJ33E=
-github.com/creack/pty v1.1.18 h1:n56/Zwd5o6whRC5PMGretI4IdRLlmBXYNjScPaBgsbY=
github.com/creack/pty v1.1.18/go.mod h1:MOBLtS5ELjhRRrroQr9kyvTxUAFNvYEK993ew/Vr4O4=
github.com/cyphar/filepath-securejoin v0.2.2/go.mod h1:FpkQEhXnPnOthhzymB7CGsFk2G9VLXONKD9G7QGMM+4=
github.com/cyphar/filepath-securejoin v0.2.3/go.mod h1:aPGpWjXOXUn2NCNjFvBE6aRxGGx79pTxQpKOJNYHHl4=
@@ -1325,9 +1183,10 @@ github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc h1:U9qPSI2PIWSS1
github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/decred/dcrd/crypto/blake256 v1.0.0/go.mod h1:sQl2p6Y26YV+ZOcSTP6thNdn47hh8kt6rqSlvmrXFAc=
github.com/decred/dcrd/dcrec/secp256k1/v4 v4.0.0-20210816181553-5444fa50b93d/go.mod h1:tmAIfUFEirG/Y8jhZ9M+h36obRZAk/1fcSpXwAVlfqE=
-github.com/denisenkom/go-mssqldb v0.9.0/go.mod h1:xbL0rPBG9cCiLr28tMa8zpbdarY27NDyej4t/EjAShU=
+github.com/denisenkom/go-mssqldb v0.12.2/go.mod h1:lnIw1mZukFRZDJYQ0Pb833QS2IaC3l5HkEfra2LJ+sk=
github.com/denisenkom/go-mssqldb v0.12.3 h1:pBSGx9Tq67pBOTLmxNuirNTeB8Vjmf886Kx+8Y+8shw=
github.com/denisenkom/go-mssqldb v0.12.3/go.mod h1:k0mtMFOnU+AihqFxPMiF05rtiDrorD1Vrm1KEz5hxDo=
+github.com/dennwc/varint v1.0.0/go.mod h1:hnItb35rvZvJrbTALZtY/iQfDs48JKRG1RPpgziApxA=
github.com/denverdino/aliyungo v0.0.0-20190125010748-a747050bb1ba/go.mod h1:dV8lFg6daOBZbT6/BDGIz6Y3WFGn8juu6G+CQ6LHtl0=
github.com/devigned/tab v0.1.1/go.mod h1:XG9mPq0dFghrYvoBF3xdRrJzSTX1b7IQrvaL9mzjeJY=
github.com/dgraph-io/badger/v3 v3.2103.2/go.mod h1:RHo4/GmYcKKh5Lxu63wLEMHJ70Pac2JqZRYGhlyAo2M=
@@ -1337,7 +1196,9 @@ github.com/dgrijalva/jwt-go v3.2.0+incompatible/go.mod h1:E3ru+11k8xSBh+hMPgOLZm
github.com/dgryski/go-farm v0.0.0-20190423205320-6a90982ecee2/go.mod h1:SqUrOPUnsFjfmXRMNPybcSiG0BgUW2AuFH8PAnS2iTw=
github.com/dgryski/go-farm v0.0.0-20200201041132-a6ae2369ad13/go.mod h1:SqUrOPUnsFjfmXRMNPybcSiG0BgUW2AuFH8PAnS2iTw=
github.com/dgryski/go-sip13 v0.0.0-20181026042036-e10d5fee7954/go.mod h1:vAd38F8PWV+bWy6jNmig1y/TA+kYO4g3RSRF0IAv0no=
-github.com/dimchansky/utfbom v1.1.0/go.mod h1:rO41eb7gLfo8SF1jd9F8HplJm1Fewwi4mQvIirEdv+8=
+github.com/dgryski/go-sip13 v0.0.0-20200911182023-62edffca9245/go.mod h1:vAd38F8PWV+bWy6jNmig1y/TA+kYO4g3RSRF0IAv0no=
+github.com/digitalocean/godo v1.78.0/go.mod h1:GBmu8MkjZmNARE7IXRPmkbbnocNN8+uBm0xbEVw2LCs=
+github.com/digitalocean/godo v1.81.0/go.mod h1:BPCqvwbjbGqxuUnIKB4EvS/AX7IDnNmt5fwvIkWo+ew=
github.com/dimchansky/utfbom v1.1.1 h1:vV6w1AhK4VMnhBno/TPVCoK9U/LP0PkLCS9tbxHdi/U=
github.com/dimchansky/utfbom v1.1.1/go.mod h1:SxdoEBH5qIqFocHMyGOXVAybYJdr71b1Q/j0mACtrfE=
github.com/distribution/distribution/v3 v3.0.0-20220526142353-ffbd94cbe269/go.mod h1:28YO/VJk9/64+sTGNuYaBjWxrXTPrj0C0XmgTIOjxX4=
@@ -1358,8 +1219,8 @@ github.com/docker/distribution v2.8.1+incompatible/go.mod h1:J2gT2udsDAN96Uj4Kfc
github.com/docker/distribution v2.8.2+incompatible h1:T3de5rq0dB1j30rp0sA2rER+m322EBzniBPB6ZIzuh8=
github.com/docker/distribution v2.8.2+incompatible/go.mod h1:J2gT2udsDAN96Uj4KfcMRqY0/ypR+oyYUYmja8H+y+w=
github.com/docker/docker v1.4.2-0.20190924003213-a8608b5b67c7/go.mod h1:eEKB0N0r5NX/I1kEveEz05bcu8tLC/8azJZsviup8Sk=
-github.com/docker/docker v1.4.2-0.20200319182547-c7ad2b866182/go.mod h1:eEKB0N0r5NX/I1kEveEz05bcu8tLC/8azJZsviup8Sk=
github.com/docker/docker v20.10.7+incompatible/go.mod h1:eEKB0N0r5NX/I1kEveEz05bcu8tLC/8azJZsviup8Sk=
+github.com/docker/docker v20.10.14+incompatible/go.mod h1:eEKB0N0r5NX/I1kEveEz05bcu8tLC/8azJZsviup8Sk=
github.com/docker/docker v20.10.17+incompatible/go.mod h1:eEKB0N0r5NX/I1kEveEz05bcu8tLC/8azJZsviup8Sk=
github.com/docker/docker v20.10.20+incompatible/go.mod h1:eEKB0N0r5NX/I1kEveEz05bcu8tLC/8azJZsviup8Sk=
github.com/docker/docker v23.0.4+incompatible/go.mod h1:eEKB0N0r5NX/I1kEveEz05bcu8tLC/8azJZsviup8Sk=
@@ -1374,6 +1235,7 @@ github.com/docker/go-events v0.0.0-20170721190031-9461782956ad/go.mod h1:Uw6Uezg
github.com/docker/go-events v0.0.0-20190806004212-e31b211e4f1c/go.mod h1:Uw6UezgYA44ePAFQYUehOuCzmy5zmg/+nl2ZfMWGkpA=
github.com/docker/go-metrics v0.0.0-20180209012529-399ea8c73916/go.mod h1:/u0gXw0Gay3ceNrsHubL3BtdOL2fHf93USgMTe0W5dI=
github.com/docker/go-metrics v0.0.1/go.mod h1:cG1hvH2utMXtqgqqYE9plW6lDxS3/5ayHzueweSI3Vw=
+github.com/docker/go-units v0.3.3/go.mod h1:fgPhTUdO+D/Jk86RDLlptpiXQzgHJF7gydDDbaIK4Dk=
github.com/docker/go-units v0.4.0/go.mod h1:fgPhTUdO+D/Jk86RDLlptpiXQzgHJF7gydDDbaIK4Dk=
github.com/docker/go-units v0.5.0 h1:69rxXcBk27SvSaaxTtLh/8llcHD8vYHT7WSdRZ/jvr4=
github.com/docker/go-units v0.5.0/go.mod h1:fgPhTUdO+D/Jk86RDLlptpiXQzgHJF7gydDDbaIK4Dk=
@@ -1382,19 +1244,24 @@ github.com/docker/spdystream v0.0.0-20160310174837-449fdfce4d96/go.mod h1:Qh8CwZ
github.com/docopt/docopt-go v0.0.0-20180111231733-ee0de3bc6815/go.mod h1:WwZ+bS3ebgob9U8Nd0kOddGdZWjyMGR8Wziv+TBNwSE=
github.com/dustin/go-humanize v0.0.0-20171111073723-bb3d318650d4/go.mod h1:HtrtbFcZ19U5GC7JDqmcUSB87Iq5E25KnS6fMYU6eOk=
github.com/dustin/go-humanize v1.0.0/go.mod h1:HtrtbFcZ19U5GC7JDqmcUSB87Iq5E25KnS6fMYU6eOk=
-github.com/dustin/go-humanize v1.0.1 h1:GzkhY7T5VNhEkwH0PVJgjz+fX1rhBrR7pRT3mDkpeCY=
-github.com/dustin/go-humanize v1.0.1/go.mod h1:Mu1zIs6XwVuF/gI1OepvI0qD18qycQx+mFykh5fBlto=
+github.com/eapache/go-resiliency v1.1.0/go.mod h1:kFI+JgMyC7bLPUVY133qvEBtVayf5mFgVsvEsIPBvNs=
+github.com/eapache/go-xerial-snappy v0.0.0-20180814174437-776d5712da21/go.mod h1:+020luEh2TKB4/GOp8oxxtq0Daoen/Cii55CzbTV6DU=
+github.com/eapache/queue v1.1.0/go.mod h1:6eCeP0CKFpHLu8blIFXhExK/dRa7WDZfr6jVFPTqq+I=
+github.com/edsrzf/mmap-go v1.0.0/go.mod h1:YO35OhQPt3KJa3ryjFM5Bs14WD66h8eGKpfaBNrHW5M=
github.com/edsrzf/mmap-go v1.1.0 h1:6EUwBLQ/Mcr1EYLE4Tn1VdW1A4ckqCQWZBw8Hr0kjpQ=
github.com/edsrzf/mmap-go v1.1.0/go.mod h1:19H/e8pUPLicwkyNgOykDXkJ9F0MHE+Z52B8EIth78Q=
github.com/elazarl/goproxy v0.0.0-20180725130230-947c36da3153/go.mod h1:/Zj4wYkgs4iZTTu3o/KG3Itv/qCCa8VVMlb3i9OVuzc=
+github.com/elazarl/goproxy v0.0.0-20221015165544-a0805db90819 h1:RIB4cRk+lBqKK3Oy0r2gRX4ui7tuhiZq2SuTtTCi0/0=
+github.com/elazarl/goproxy v0.0.0-20221015165544-a0805db90819/go.mod h1:Ro8st/ElPeALwNFlcTpWmkr6IoMFfkjXAvTHpevnDsM=
+github.com/elazarl/goproxy/ext v0.0.0-20190711103511-473e67f1d7d2/go.mod h1:gNh8nYJoAm43RfaxurUnxr+N1PwuFV3ZMl/efxlIlY8=
github.com/emicklei/go-restful v0.0.0-20170410110728-ff4f55a20633/go.mod h1:otzb+WCGbkyDHkqmQmT5YD2WR4BBwUdeQoFo8l/7tVs=
github.com/emicklei/go-restful v2.9.5+incompatible/go.mod h1:otzb+WCGbkyDHkqmQmT5YD2WR4BBwUdeQoFo8l/7tVs=
github.com/emicklei/go-restful/v3 v3.8.0/go.mod h1:6n3XBCmQQb25CM2LCACGz8ukIrRry+4bhvbpWn3mrbc=
github.com/emicklei/go-restful/v3 v3.9.0/go.mod h1:6n3XBCmQQb25CM2LCACGz8ukIrRry+4bhvbpWn3mrbc=
github.com/emicklei/go-restful/v3 v3.10.1/go.mod h1:6n3XBCmQQb25CM2LCACGz8ukIrRry+4bhvbpWn3mrbc=
-github.com/emirpasic/gods v1.12.0/go.mod h1:YfzfFFoVP/catgzJb4IKIqXjX78Ha8FMSDh3ymbK86o=
github.com/emirpasic/gods v1.18.1 h1:FXtiHYKDGKCW2KzwZKx0iC0PQmdlorYgdFG9jPXJ1Bc=
github.com/emirpasic/gods v1.18.1/go.mod h1:8tpGGwCnJ5H4r6BWwaV6OrWmMoPhUl5jm/FMNAnJvWQ=
+github.com/envoyproxy/go-control-plane v0.6.9/go.mod h1:SBwIajubJHhxtWwsL9s8ss4safvEdbitLhGGK48rN6g=
github.com/envoyproxy/go-control-plane v0.9.0/go.mod h1:YTl/9mNaCwkRvm6d1a2C3ymFceY/DCBVvsKhRF0iEA4=
github.com/envoyproxy/go-control-plane v0.9.1-0.20191026205805-5f8ba28d4473/go.mod h1:YTl/9mNaCwkRvm6d1a2C3ymFceY/DCBVvsKhRF0iEA4=
github.com/envoyproxy/go-control-plane v0.9.4/go.mod h1:6rpuAdCZL397s3pYoYcLgu1mIlRU8Am5FuJP05cCM98=
@@ -1403,18 +1270,14 @@ github.com/envoyproxy/go-control-plane v0.9.9-0.20201210154907-fd9021fe5dad/go.m
github.com/envoyproxy/go-control-plane v0.9.9-0.20210217033140-668b12f5399d/go.mod h1:cXg6YxExXjJnVBQHBLXeUAgxn2UodCpnH306RInaBQk=
github.com/envoyproxy/go-control-plane v0.9.9-0.20210512163311-63b5d3c536b0/go.mod h1:hliV/p42l8fGbc6Y9bQ70uLwIvmJyVE5k4iMKlh8wCQ=
github.com/envoyproxy/go-control-plane v0.9.10-0.20210907150352-cf90f659a021/go.mod h1:AFq3mo9L8Lqqiid3OhADV3RfLJnjiw63cSpi+fDTRC0=
+github.com/envoyproxy/go-control-plane v0.10.1/go.mod h1:AY7fTTXNdv/aJ2O5jwpxAPOWUZ7hQAEvzN5Pf27BkQQ=
github.com/envoyproxy/go-control-plane v0.10.2-0.20220325020618-49ff273808a1/go.mod h1:KJwIaB5Mv44NWtYuAOFCVOjcI94vtpEz2JU/D2v6IjE=
github.com/envoyproxy/go-control-plane v0.10.3/go.mod h1:fJJn/j26vwOu972OllsvAgJJM//w9BV6Fxbg2LuVd34=
-github.com/envoyproxy/go-control-plane v0.11.0/go.mod h1:VnHyVMpzcLvCFt9yUz1UnCwHLhwx1WguiVDV7pTG/tI=
github.com/envoyproxy/go-control-plane v0.11.1-0.20230524094728-9239064ad72f/go.mod h1:sfYdkwUW4BA3PbKjySwjJy+O4Pu0h62rlqCMHNk+K+Q=
-github.com/envoyproxy/go-control-plane v0.11.1/go.mod h1:uhMcXKCQMEJHiAb0w+YGefQLaTEw+YhGluxZkrTmD0g=
github.com/envoyproxy/protoc-gen-validate v0.1.0/go.mod h1:iSmxcyjqTsJpI2R4NaDN7+kN2VEUnK/pcBlmesArF7c=
github.com/envoyproxy/protoc-gen-validate v0.6.7/go.mod h1:dyJXwwfPK2VSqiB9Klm1J6romD608Ba7Hij42vrOBCo=
github.com/envoyproxy/protoc-gen-validate v0.9.1/go.mod h1:OKNgG7TCp5pF4d6XftA0++PMirau2/yoOwVac3AbF2w=
-github.com/envoyproxy/protoc-gen-validate v0.10.0/go.mod h1:DRjgyB0I43LtJapqN6NiRwroiAU2PaFuvk/vjgh61ss=
github.com/envoyproxy/protoc-gen-validate v0.10.1/go.mod h1:DRjgyB0I43LtJapqN6NiRwroiAU2PaFuvk/vjgh61ss=
-github.com/envoyproxy/protoc-gen-validate v1.0.1/go.mod h1:0vj8bNkYbSTNS2PIyH87KZaeN4x9zpL9Qt8fQC7d+vs=
-github.com/envoyproxy/protoc-gen-validate v1.0.2/go.mod h1:GpiZQP3dDbg4JouG/NNS7QWXpgx6x8QiMKdmN72jogE=
github.com/ettle/strcase v0.1.1 h1:htFueZyVeE1XNnMEfbqp5r67qAN/4r6ya1ysq8Q+Zcw=
github.com/ettle/strcase v0.1.1/go.mod h1:hzDLsPC7/lwKyBOywSHEP89nt2pDgdy+No1NBA9o9VY=
github.com/evanphx/json-patch v4.9.0+incompatible/go.mod h1:50XU6AFN0ol/bzJsmQLiYLvXMP4fmwYFNcr97nuDLSk=
@@ -1425,6 +1288,7 @@ github.com/evanphx/json-patch/v5 v5.6.0 h1:b91NhWfaz02IuVxO9faSllyAtNXHMPkC5J8sJ
github.com/evanphx/json-patch/v5 v5.6.0/go.mod h1:G79N1coSVB93tBe7j6PhzjmR3/2VvlbKOFpnXhI9Bw4=
github.com/fatih/color v1.7.0/go.mod h1:Zm6kSWBoL9eyXnKyktHP6abPY2pDugNf5KwzbycvMj4=
github.com/fatih/color v1.9.0/go.mod h1:eQcE1qtQxscV5RaZvpXrrb8Drkc3/DdQ+uUYCNjL+zU=
+github.com/fatih/color v1.10.0/go.mod h1:ELkj/draVOlAH/xkhN6mQ50Qd0MPOk5AAr3maGEBuJM=
github.com/fatih/color v1.13.0/go.mod h1:kLAiJbzzSOZDVNGyDpeOxJ47H46qBXwg5ILebYFFOfk=
github.com/fatih/color v1.14.1 h1:qfhVLaG5s+nCROl1zJsZRxFeYrHLqWroPOQ8BWiNb4w=
github.com/fatih/color v1.14.1/go.mod h1:2oHN61fhTpgcxD3TSWCgKDiH1+x4OiDVVGH8WlgGZGg=
@@ -1433,18 +1297,20 @@ github.com/fatih/structs v1.1.0/go.mod h1:9NiDSp5zOcgEDl+j00MP/WkGVPOlPRLejGD8Ga
github.com/felixge/httpsnoop v1.0.1/go.mod h1:m8KPJKqk1gH5J9DgRY2ASl2lWCfGKXixSwevea8zH2U=
github.com/felixge/httpsnoop v1.0.2/go.mod h1:m8KPJKqk1gH5J9DgRY2ASl2lWCfGKXixSwevea8zH2U=
github.com/felixge/httpsnoop v1.0.3/go.mod h1:m8KPJKqk1gH5J9DgRY2ASl2lWCfGKXixSwevea8zH2U=
-github.com/flynn/go-shlex v0.0.0-20150515145356-3f9db97f8568/go.mod h1:xEzjJPgXI435gkrCt3MPfRiAkVrwSbHsst4LCFVfpJc=
github.com/fogleman/gg v1.2.1-0.20190220221249-0403632d5b90/go.mod h1:R/bRT+9gY/C5z7JzPU0zXsXHKM4/ayA+zqcVNZzPa1k=
github.com/fogleman/gg v1.3.0/go.mod h1:R/bRT+9gY/C5z7JzPU0zXsXHKM4/ayA+zqcVNZzPa1k=
github.com/form3tech-oss/jwt-go v3.2.2+incompatible/go.mod h1:pbq4aXjuKjdthFRnoDwaVPLA+WlJuPGy+QneDUgJi2k=
github.com/form3tech-oss/jwt-go v3.2.3+incompatible/go.mod h1:pbq4aXjuKjdthFRnoDwaVPLA+WlJuPGy+QneDUgJi2k=
github.com/fortytw2/leaktest v1.3.0/go.mod h1:jDsjWgpAGjm2CA7WthBh/CdZYEPF31XHquHwclZch5g=
github.com/foxcpp/go-mockdns v0.0.0-20210729171921-fb145fc6f897/go.mod h1:lgRN6+KxQBawyIghpnl5CezHFGS9VLzvtVlwxvzXTQ4=
+github.com/franela/goblin v0.0.0-20200105215937-c9ffbefa60db/go.mod h1:7dvUGVsVBjqR7JHJk0brhHOZYGmfBYOrK0ZhYMEtBr4=
+github.com/franela/goreq v0.0.0-20171204163338-bcd34c9993f8/go.mod h1:ZhphrRTfi2rbfLwlschooIH4+wKKDR4Pdxhh+TRoA20=
github.com/frankban/quicktest v1.10.0/go.mod h1:ui7WezCLWMWxVWr1GETZY3smRy0G4KWq9vcPtJmFl7Y=
github.com/frankban/quicktest v1.11.3/go.mod h1:wRf/ReqHper53s+kmmSZizM8NamnL3IM0I9ntUbOk+k=
github.com/frankban/quicktest v1.13.0/go.mod h1:qLE0fzW0VuyUAJgPU19zByoIr0HtCHN/r/VLSOOIySU=
-github.com/frankban/quicktest v1.14.0 h1:+cqqvzZV87b4adx/5ayVOaYZ2CrvM4ejQvUdBzPPUss=
github.com/frankban/quicktest v1.14.0/go.mod h1:NeW+ay9A/U67EYXNFA1nPE8e/tnQv/09mUdL/ijj8og=
+github.com/frankban/quicktest v1.14.3 h1:FJKSZTDHjyhriyC81FLQ0LY93eSai0ZyR/ZIkd3ZUKE=
+github.com/frankban/quicktest v1.14.3/go.mod h1:mgiwOwqx65TmIk1wJ6Q7wvnVMocbUorkibMOrVTHZps=
github.com/fsnotify/fsnotify v1.4.7/go.mod h1:jwhsz4b93w/PPRr/qN1Yymfu8t87LnFCMoQvtojpjFo=
github.com/fsnotify/fsnotify v1.4.9/go.mod h1:znqG4EE+3YCdAaPaxE2ZRY/06pZUdp0tY4IgpuI1SZQ=
github.com/fsnotify/fsnotify v1.5.1/go.mod h1:T3375wBYaZdLLcVNkcVbzGHY7f1l/uK5T5Ai1i3InKU=
@@ -1461,7 +1327,7 @@ github.com/ghodss/yaml v0.0.0-20150909031657-73d445a93680/go.mod h1:4dBDuWmgqj2H
github.com/ghodss/yaml v1.0.0/go.mod h1:4dBDuWmgqj2HViK6kFavaiC9ZROes6MMH2rRYeMEF04=
github.com/gin-contrib/sse v0.1.0/go.mod h1:RHrZQHXnP2xjPF+u1gW/2HnVO7nvIa9PG3Gm+fLHvGI=
github.com/gin-gonic/gin v1.6.3/go.mod h1:75u5sXoLsGZoRN5Sgbi1eraJ4GU3++wFwWzhwvtwp4M=
-github.com/gliderlabs/ssh v0.2.2/go.mod h1:U7qILu1NlMHj9FlMhZLlkCdDnU1DBEAqr0aevW3Awn0=
+github.com/gin-gonic/gin v1.7.7/go.mod h1:axIBovoeJpVj8S3BwE0uPMTeReE4+AfFtqpqaZ1qq1U=
github.com/gliderlabs/ssh v0.3.5 h1:OcaySEmAQJgyYcArR+gGGTHCyE7nvhEMTlYY+Dp8CpY=
github.com/gliderlabs/ssh v0.3.5/go.mod h1:8XB4KraRrX39qHhT6yxPsHedjA08I/uBVwj4xC+/+z4=
github.com/go-asn1-ber/asn1-ber v1.3.1/go.mod h1:hEBeB/ic+5LoWskz+yKT7vGhhPYkProFKoKdwZRWMe0=
@@ -1473,18 +1339,15 @@ github.com/go-fonts/latin-modern v0.2.0/go.mod h1:rQVLdDMK+mK1xscDwsqM5J8U2jrRa3
github.com/go-fonts/liberation v0.1.1/go.mod h1:K6qoJYypsmfVjWg8KOVDQhLc8UDgIK2HYqyqAO9z7GY=
github.com/go-fonts/liberation v0.2.0/go.mod h1:K6qoJYypsmfVjWg8KOVDQhLc8UDgIK2HYqyqAO9z7GY=
github.com/go-fonts/stix v0.1.0/go.mod h1:w/c1f0ldAUlJmLBvlbkvVXLAD+tAMqobIIQpmnUIzUY=
-github.com/go-git/gcfg v1.5.0 h1:Q5ViNfGF8zFgyJWPqYwA7qGFoMTEiBmdlkcfRmpIMa4=
-github.com/go-git/gcfg v1.5.0/go.mod h1:5m20vg6GwYabIxaOonVkTdrILxQMpEShl1xiMF4ua+E=
-github.com/go-git/go-billy/v5 v5.2.0/go.mod h1:pmpqyWchKfYfrkb/UVH4otLvyi/5gJlGI4Hb3ZqZ3W0=
+github.com/go-git/gcfg v1.5.1-0.20230307220236-3a3c6141e376 h1:+zs/tPmkDkHx3U66DAb0lQFJrpS6731Oaa12ikc+DiI=
+github.com/go-git/gcfg v1.5.1-0.20230307220236-3a3c6141e376/go.mod h1:an3vInlBmSxCcxctByoQdvwPiA7DTK7jaaFDBTtu0ic=
github.com/go-git/go-billy/v5 v5.3.1/go.mod h1:pmpqyWchKfYfrkb/UVH4otLvyi/5gJlGI4Hb3ZqZ3W0=
github.com/go-git/go-billy/v5 v5.4.1 h1:Uwp5tDRkPr+l/TnbHOQzp+tmJfLceOlbVucgpTz8ix4=
github.com/go-git/go-billy/v5 v5.4.1/go.mod h1:vjbugF6Fz7JIflbVpl1hJsGjSHNltrSw45YK/ukIvQg=
-github.com/go-git/go-git-fixtures/v4 v4.2.1/go.mod h1:K8zd3kDUAykwTdDCr+I0per6Y6vMiRR/nnVTBtavnB0=
-github.com/go-git/go-git-fixtures/v4 v4.3.1 h1:y5z6dd3qi8Hl+stezc8p3JxDkoTRqMAlKnXHuzrfjTQ=
-github.com/go-git/go-git-fixtures/v4 v4.3.1/go.mod h1:8LHG1a3SRW71ettAD/jW13h8c6AqjVSeL11RAdgaqpo=
-github.com/go-git/go-git/v5 v5.4.2/go.mod h1:gQ1kArt6d+n+BGd+/B/I74HwRTLhth2+zti4ihgckDc=
-github.com/go-git/go-git/v5 v5.6.1 h1:q4ZRqQl4pR/ZJHc1L5CFjGA1a10u76aV1iC+nh+bHsk=
-github.com/go-git/go-git/v5 v5.6.1/go.mod h1:mvyoL6Unz0PiTQrGQfSfiLFhBH1c1e84ylC2MDs4ee8=
+github.com/go-git/go-git-fixtures/v4 v4.3.2-0.20230305113008-0c11038e723f h1:Pz0DHeFij3XFhoBRGUDPzSJ+w2UcK5/0JvF8DRI58r8=
+github.com/go-git/go-git-fixtures/v4 v4.3.2-0.20230305113008-0c11038e723f/go.mod h1:8LHG1a3SRW71ettAD/jW13h8c6AqjVSeL11RAdgaqpo=
+github.com/go-git/go-git/v5 v5.8.1 h1:Zo79E4p7TRk0xoRgMq0RShiTHGKcKI4+DI6BfJc/Q+A=
+github.com/go-git/go-git/v5 v5.8.1/go.mod h1:FHFuoD6yGz5OSKEBK+aWN9Oah0q54Jxl0abmj6GnqAo=
github.com/go-gl/glfw v0.0.0-20190409004039-e6da0acd62b1/go.mod h1:vR7hzQXu2zJy9AVAgeJqvqgH9Q5CA+iKCZ2gyEVpxRU=
github.com/go-gl/glfw/v3.3/glfw v0.0.0-20191125211704-12ad95a8df72/go.mod h1:tQ2UAYgL5IevRw8kRxooKSPJfGvJ9fJQFa0TUsXzTg8=
github.com/go-gl/glfw/v3.3/glfw v0.0.0-20200222043503-6f7a984d4dc4/go.mod h1:tQ2UAYgL5IevRw8kRxooKSPJfGvJ9fJQFa0TUsXzTg8=
@@ -1494,11 +1357,12 @@ github.com/go-jose/go-jose/v3 v3.0.0 h1:s6rrhirfEP/CGIoc6p+PZAeogN2SxKav6Wp7+dyM
github.com/go-jose/go-jose/v3 v3.0.0/go.mod h1:RNkWWRld676jZEYoV3+XK8L2ZnNSvIsxFMht0mSX+u8=
github.com/go-kit/kit v0.8.0/go.mod h1:xBxKIO96dXMWWy0MnWVtmwkA9/13aqxPnvrjFYMA2as=
github.com/go-kit/kit v0.9.0/go.mod h1:xBxKIO96dXMWWy0MnWVtmwkA9/13aqxPnvrjFYMA2as=
+github.com/go-kit/kit v0.10.0/go.mod h1:xUsJbQ/Fp4kEt7AFgCuvyX4a71u8h9jB8tj/ORgOZ7o=
github.com/go-kit/log v0.1.0/go.mod h1:zbhenjAZHb184qTLMA9ZjW7ThYL0H2mk7Q6pNt4vbaY=
github.com/go-kit/log v0.2.0/go.mod h1:NwTd00d/i8cPZ3xOwwiv2PO5MOcx78fFErGNcVmBjv0=
+github.com/go-kit/log v0.2.1/go.mod h1:NwTd00d/i8cPZ3xOwwiv2PO5MOcx78fFErGNcVmBjv0=
github.com/go-latex/latex v0.0.0-20210118124228-b3d85cf34e07/go.mod h1:CO1AlKB2CSIqUrmQPqA0gdRIlnLEY0gK5JGjh37zN5U=
github.com/go-latex/latex v0.0.0-20210823091927-c0d11ff05a81/go.mod h1:SX0U8uGpxhq9o2S/CELCSUxEWWAuoCUcVCQWv7G2OCk=
-github.com/go-ldap/ldap/v3 v3.1.3/go.mod h1:3rbOH3jRS2u6jg2rJnKAMLE/xQyCKIveG2Sa/Cohzb8=
github.com/go-ldap/ldap/v3 v3.1.10/go.mod h1:5Zun81jBTabRaI8lzN7E1JjyEl1g6zI6u9pd8luAK4Q=
github.com/go-ldap/ldap/v3 v3.4.1/go.mod h1:iYS1MdmrmceOJ1QOTnRXrIs7i3kloqtmGQjRvjKpyMg=
github.com/go-ldap/ldap/v3 v3.4.4 h1:qPjipEpt+qDa6SI/h1fzuGWoRUY+qqQ9sOZq67/PYUs=
@@ -1517,6 +1381,10 @@ github.com/go-logr/logr v1.2.3/go.mod h1:jdQByPbusPIv2/zmleS9BjJVeZ6kBagPoEUsqbV
github.com/go-logr/stdr v1.2.0/go.mod h1:YkVgnZu1ZjjL7xTxrfm/LLZBfkhTqSR1ydtm6jTKKwI=
github.com/go-logr/stdr v1.2.2/go.mod h1:mMo/vtBO5dYbehREoey6XUKy/eSumjCCveDpRre4VKE=
github.com/go-logr/zapr v1.2.3/go.mod h1:eIauM6P8qSvTw5o2ez6UEAfGjQKrxQTl5EoK+Qa2oG4=
+github.com/go-openapi/analysis v0.21.2/go.mod h1:HZwRk4RRisyG8vx2Oe6aqeSQcoxRp47Xkp3+K6q+LdY=
+github.com/go-openapi/errors v0.19.8/go.mod h1:cM//ZKUKyO06HSwqAelJ5NsEMMcpa6VpXe8DOa1Mi1M=
+github.com/go-openapi/errors v0.19.9/go.mod h1:cM//ZKUKyO06HSwqAelJ5NsEMMcpa6VpXe8DOa1Mi1M=
+github.com/go-openapi/errors v0.20.2/go.mod h1:cM//ZKUKyO06HSwqAelJ5NsEMMcpa6VpXe8DOa1Mi1M=
github.com/go-openapi/jsonpointer v0.0.0-20160704185906-46af16f9f7b1/go.mod h1:+35s3my2LFTysnkMfxsJBAMHj/DoqoB9knIWoYG/Vk0=
github.com/go-openapi/jsonpointer v0.19.2/go.mod h1:3akKfEdA7DF1sugOqz1dVQHBcuDBPKZGEoHC/NkiQRg=
github.com/go-openapi/jsonpointer v0.19.3/go.mod h1:Pl9vOtqEWErmShwVjC8pYs9cog34VGT37dQOVbmoatg=
@@ -1525,36 +1393,75 @@ github.com/go-openapi/jsonreference v0.0.0-20160704190145-13c6e3589ad9/go.mod h1
github.com/go-openapi/jsonreference v0.19.2/go.mod h1:jMjeRr2HHw6nAVajTXJ4eiUwohSTlpa0o73RUL1owJc=
github.com/go-openapi/jsonreference v0.19.3/go.mod h1:rjx6GuL8TTa9VaixXglHmQmIL98+wF9xc8zWvFonSJ8=
github.com/go-openapi/jsonreference v0.19.5/go.mod h1:RdybgQwPxbL4UEjuAruzK1x3nE69AqPYEJeo/TWfEeg=
+github.com/go-openapi/jsonreference v0.19.6/go.mod h1:diGHMEHg2IqXZGKxqyvWdfWU/aim5Dprw5bqpKkTvns=
github.com/go-openapi/jsonreference v0.20.0/go.mod h1:Ag74Ico3lPc+zR+qjn4XBUmXymS4zJbYVCZmcgkasdo=
+github.com/go-openapi/loads v0.21.1/go.mod h1:/DtAMXXneXFjbQMGEtbamCZb+4x7eGwkvZCvBmwUG+g=
+github.com/go-openapi/runtime v0.23.1/go.mod h1:AKurw9fNre+h3ELZfk6ILsfvPN+bvvlaU/M9q/r9hpk=
github.com/go-openapi/spec v0.0.0-20160808142527-6aced65f8501/go.mod h1:J8+jY1nAiCcj+friV/PDoE1/3eeccG9LYBs0tYvLOWc=
github.com/go-openapi/spec v0.19.3/go.mod h1:FpwSN1ksY1eteniUU7X0N/BgJ7a4WvBFVA8Lj9mJglo=
+github.com/go-openapi/spec v0.20.4/go.mod h1:faYFR1CvsJZ0mNsmsphTMSoRrNV3TEDoAM7FOEWeq8I=
+github.com/go-openapi/strfmt v0.21.0/go.mod h1:ZRQ409bWMj+SOgXofQAGTIo2Ebu72Gs+WaRADcS5iNg=
+github.com/go-openapi/strfmt v0.21.1/go.mod h1:I/XVKeLc5+MM5oPNN7P6urMOpuLXEcNrCX/rPGuWb0k=
+github.com/go-openapi/strfmt v0.21.2/go.mod h1:I/XVKeLc5+MM5oPNN7P6urMOpuLXEcNrCX/rPGuWb0k=
github.com/go-openapi/swag v0.0.0-20160704191624-1d0bd113de87/go.mod h1:DXUve3Dpr1UfpPtxFw+EFuQ41HhCWZfha5jSVRG7C7I=
github.com/go-openapi/swag v0.19.2/go.mod h1:POnQmlKehdgb5mhVOsnJFsivZCEZ/vjK9gh66Z9tfKk=
github.com/go-openapi/swag v0.19.5/go.mod h1:POnQmlKehdgb5mhVOsnJFsivZCEZ/vjK9gh66Z9tfKk=
github.com/go-openapi/swag v0.19.14/go.mod h1:QYRuS/SOXUCsnplDa677K7+DxSOj6IPNl/eQntq43wQ=
+github.com/go-openapi/swag v0.19.15/go.mod h1:QYRuS/SOXUCsnplDa677K7+DxSOj6IPNl/eQntq43wQ=
+github.com/go-openapi/swag v0.21.1/go.mod h1:QYRuS/SOXUCsnplDa677K7+DxSOj6IPNl/eQntq43wQ=
+github.com/go-openapi/validate v0.21.0/go.mod h1:rjnrwK57VJ7A8xqfpAOEKRH8yQSGUriMu5/zuPSQ1hg=
github.com/go-pdf/fpdf v0.5.0/go.mod h1:HzcnA+A23uwogo0tp9yU+l3V+KXhiESpt1PMayhOh5M=
github.com/go-pdf/fpdf v0.6.0/go.mod h1:HzcnA+A23uwogo0tp9yU+l3V+KXhiESpt1PMayhOh5M=
github.com/go-playground/assert/v2 v2.0.1/go.mod h1:VDjEfimB/XKnb+ZQfWdccd7VUvScMdVu0Titje2rxJ4=
github.com/go-playground/locales v0.13.0/go.mod h1:taPMhCMXrRLJO55olJkUXHZBHCxTMfnGwq/HNwmWNS8=
github.com/go-playground/universal-translator v0.17.0/go.mod h1:UkSxE5sNxxRwHyU+Scu5vgOQjsIJAF8j9muTVoKLVtA=
github.com/go-playground/validator/v10 v10.2.0/go.mod h1:uOYAAleCW8F/7oMFd6aG0GOhaH6EGOAJShg8Id5JGkI=
+github.com/go-playground/validator/v10 v10.4.1/go.mod h1:nlOn6nFhuKACm19sB/8EGNn9GlaMV7XkbRSipzJ0Ii4=
+github.com/go-resty/resty/v2 v2.1.1-0.20191201195748-d7b97669fe48/go.mod h1:dZGr0i9PLlaaTD4H/hoZIDjQ+r6xq8mgbRzHZf7f2J8=
+github.com/go-sql-driver/mysql v1.4.0/go.mod h1:zAC/RDZ24gD3HViQzih4MyKcchzm+sOG5ZlKdlhCg5w=
github.com/go-sql-driver/mysql v1.5.0/go.mod h1:DCzpHaOWr8IXmIStZouvnhqoel9Qv2LBy8hT2VhHyBg=
github.com/go-sql-driver/mysql v1.6.0/go.mod h1:DCzpHaOWr8IXmIStZouvnhqoel9Qv2LBy8hT2VhHyBg=
github.com/go-sql-driver/mysql v1.7.1 h1:lUIinVbN1DY0xBg0eMOzmmtGoHwWBbvnWubQUrtU8EI=
github.com/go-sql-driver/mysql v1.7.1/go.mod h1:OXbVy3sEdcQ2Doequ6Z5BW6fXNQTmx+9S1MCJN5yJMI=
github.com/go-stack/stack v1.8.0/go.mod h1:v0f6uXyyMGvRgIKkXu+yp6POWl0qKG85gN/melR3HDY=
+github.com/go-stack/stack v1.8.1/go.mod h1:dcoOX6HbPZSZptuspn9bctJ+N/CnF5gGygcUP3XYfe4=
github.com/go-task/slim-sprig v0.0.0-20210107165309-348f09dbbbc0/go.mod h1:fyg7847qk6SyHyPtNmDHnmrv/HOrqktSC+C9fM+CJOE=
-github.com/go-test/deep v1.0.2-0.20181118220953-042da051cf31/go.mod h1:wGDj63lr65AM2AQyKZd/NYHGb0R+1RLqB8NKt3aSFNA=
github.com/go-test/deep v1.0.2/go.mod h1:wGDj63lr65AM2AQyKZd/NYHGb0R+1RLqB8NKt3aSFNA=
github.com/go-test/deep v1.0.3/go.mod h1:wGDj63lr65AM2AQyKZd/NYHGb0R+1RLqB8NKt3aSFNA=
github.com/go-test/deep v1.1.0 h1:WOcxcdHcvdgThNXjw0t76K42FXTU7HpNQWHpA2HHNlg=
github.com/go-test/deep v1.1.0/go.mod h1:5C2ZWiW0ErCdrYzpqxLbTX7MG14M9iiw8DgHncVwcsE=
+github.com/go-zookeeper/zk v1.0.2/go.mod h1:nOB03cncLtlp4t+UAkGSV+9beXP/akpekBwL+UX1Qcw=
+github.com/gobuffalo/attrs v0.0.0-20190224210810-a9411de4debd/go.mod h1:4duuawTqi2wkkpB4ePgWMaai6/Kc6WEz83bhFwpHzj0=
+github.com/gobuffalo/depgen v0.0.0-20190329151759-d478694a28d3/go.mod h1:3STtPUQYuzV0gBVOY3vy6CfMm/ljR4pABfrTeHNLHUY=
+github.com/gobuffalo/depgen v0.1.0/go.mod h1:+ifsuy7fhi15RWncXQQKjWS9JPkdah5sZvtHc2RXGlg=
+github.com/gobuffalo/envy v1.6.15/go.mod h1:n7DRkBerg/aorDM8kbduw5dN3oXGswK5liaSCx4T5NI=
+github.com/gobuffalo/envy v1.7.0/go.mod h1:n7DRkBerg/aorDM8kbduw5dN3oXGswK5liaSCx4T5NI=
+github.com/gobuffalo/flect v0.1.0/go.mod h1:d2ehjJqGOH/Kjqcoz+F7jHTBbmDb38yXA598Hb50EGs=
+github.com/gobuffalo/flect v0.1.1/go.mod h1:8JCgGVbRjJhVgD6399mQr4fx5rRfGKVzFjbj6RE/9UI=
+github.com/gobuffalo/flect v0.1.3/go.mod h1:8JCgGVbRjJhVgD6399mQr4fx5rRfGKVzFjbj6RE/9UI=
+github.com/gobuffalo/genny v0.0.0-20190329151137-27723ad26ef9/go.mod h1:rWs4Z12d1Zbf19rlsn0nurr75KqhYp52EAGGxTbBhNk=
+github.com/gobuffalo/genny v0.0.0-20190403191548-3ca520ef0d9e/go.mod h1:80lIj3kVJWwOrXWWMRzzdhW3DsrdjILVil/SFKBzF28=
+github.com/gobuffalo/genny v0.1.0/go.mod h1:XidbUqzak3lHdS//TPu2OgiFB+51Ur5f7CSnXZ/JDvo=
+github.com/gobuffalo/genny v0.1.1/go.mod h1:5TExbEyY48pfunL4QSXxlDOmdsD44RRq4mVZ0Ex28Xk=
+github.com/gobuffalo/gitgen v0.0.0-20190315122116-cc086187d211/go.mod h1:vEHJk/E9DmhejeLeNt7UVvlSGv3ziL+djtTr3yyzcOw=
+github.com/gobuffalo/gogen v0.0.0-20190315121717-8f38393713f5/go.mod h1:V9QVDIxsgKNZs6L2IYiGR8datgMhB577vzTDqypH360=
+github.com/gobuffalo/gogen v0.1.0/go.mod h1:8NTelM5qd8RZ15VjQTFkAW6qOMx5wBbW4dSCS3BY8gg=
+github.com/gobuffalo/gogen v0.1.1/go.mod h1:y8iBtmHmGc4qa3urIyo1shvOD8JftTtfcKi+71xfDNE=
+github.com/gobuffalo/logger v0.0.0-20190315122211-86e12af44bc2/go.mod h1:QdxcLw541hSGtBnhUc4gaNIXRjiDppFGaDqzbrBd3v8=
+github.com/gobuffalo/mapi v1.0.1/go.mod h1:4VAGh89y6rVOvm5A8fKFxYG+wIW6LO1FMTG9hnKStFc=
+github.com/gobuffalo/mapi v1.0.2/go.mod h1:4VAGh89y6rVOvm5A8fKFxYG+wIW6LO1FMTG9hnKStFc=
+github.com/gobuffalo/packd v0.0.0-20190315124812-a385830c7fc0/go.mod h1:M2Juc+hhDXf/PnmBANFCqx4DM3wRbgDvnVWeG2RIxq4=
+github.com/gobuffalo/packd v0.1.0/go.mod h1:M2Juc+hhDXf/PnmBANFCqx4DM3wRbgDvnVWeG2RIxq4=
+github.com/gobuffalo/packr/v2 v2.0.9/go.mod h1:emmyGweYTm6Kdper+iywB6YK5YzuKchGtJQZ0Odn4pQ=
+github.com/gobuffalo/packr/v2 v2.2.0/go.mod h1:CaAwI0GPIAv+5wKLtv8Afwl+Cm78K/I/VCm/3ptBN+0=
+github.com/gobuffalo/syncx v0.0.0-20190224160051-33c29581e754/go.mod h1:HhnNqWY95UYwwW3uSASeV7vtgYkT2t16hJgV3AEPUpw=
github.com/gobwas/glob v0.2.3/go.mod h1:d3Ez4x06l9bZtSvzIay5+Yzi0fmZzPgnTbPcKjJAkT8=
github.com/gobwas/httphead v0.0.0-20180130184737-2c6c146eadee/go.mod h1:L0fX3K22YWvt/FAX9NnzrNzcI4wNYi9Yku4O0LKYflo=
github.com/gobwas/pool v0.2.0/go.mod h1:q8bcK0KcYlCgd9e7WYLm9LpyS+YeLd8JVDW6WezmKEw=
github.com/gobwas/ws v1.0.2/go.mod h1:szmBTxLgaFppYjEmNtny/v3w89xOydFnnZMcgRRu/EM=
github.com/goccy/go-json v0.9.7/go.mod h1:6MelG93GURQebXPDq3khkgXZkazVtN9CRI+MGFi0w8I=
github.com/goccy/go-json v0.9.11/go.mod h1:6MelG93GURQebXPDq3khkgXZkazVtN9CRI+MGFi0w8I=
+github.com/goccy/go-yaml v1.9.5/go.mod h1:U/jl18uSupI5rdI2jmuCswEA2htH9eXfferR3KfscvA=
github.com/godbus/dbus v0.0.0-20151105175453-c7fdd8b5cd55/go.mod h1:/YcGZj5zSblfDWMMoOzV4fas9FZnQYTkDnsGvmh2Grw=
github.com/godbus/dbus v0.0.0-20180201030542-885f9cc04c9c/go.mod h1:/YcGZj5zSblfDWMMoOzV4fas9FZnQYTkDnsGvmh2Grw=
github.com/godbus/dbus v0.0.0-20190422162347-ade71ed3457e/go.mod h1:bBOAhwG1umN6/6ZUMtDFBMQR8jRg9O75tm9K00oMsK4=
@@ -1562,24 +1469,29 @@ github.com/godbus/dbus/v5 v5.0.3/go.mod h1:xhWf0FNVPg57R7Z0UbKHbJfkEywrmjJnf7w5x
github.com/godbus/dbus/v5 v5.0.4/go.mod h1:xhWf0FNVPg57R7Z0UbKHbJfkEywrmjJnf7w5xrFpKfA=
github.com/godbus/dbus/v5 v5.0.6/go.mod h1:xhWf0FNVPg57R7Z0UbKHbJfkEywrmjJnf7w5xrFpKfA=
github.com/godbus/dbus/v5 v5.1.0/go.mod h1:xhWf0FNVPg57R7Z0UbKHbJfkEywrmjJnf7w5xrFpKfA=
+github.com/gofrs/uuid v3.3.0+incompatible/go.mod h1:b2aQJv3Z4Fp6yNu3cdSllBxTCLRxnplIgP/c0N/04lM=
github.com/gofrs/uuid v4.0.0+incompatible/go.mod h1:b2aQJv3Z4Fp6yNu3cdSllBxTCLRxnplIgP/c0N/04lM=
github.com/gofrs/uuid v4.2.0+incompatible h1:yyYWMnhkhrKwwr8gAOcOCYxOOscHgDS9yZgBrnJfGa0=
github.com/gofrs/uuid v4.2.0+incompatible/go.mod h1:b2aQJv3Z4Fp6yNu3cdSllBxTCLRxnplIgP/c0N/04lM=
+github.com/gogo/googleapis v1.1.0/go.mod h1:gf4bu3Q80BeJ6H1S1vYPm8/ELATdvryBaNFGgqEef3s=
github.com/gogo/googleapis v1.2.0/go.mod h1:Njal3psf3qN6dwBtQfUmBZh2ybovJ0tlu3o/AC7HYjU=
github.com/gogo/googleapis v1.4.0/go.mod h1:5YRNX2z1oM5gXdAkurHa942MDgEJyk02w4OecKY87+c=
github.com/gogo/protobuf v1.1.1/go.mod h1:r8qH/GZQm5c6nD/R0oafs1akxWv10x8SbQlK7atdtwQ=
+github.com/gogo/protobuf v1.2.0/go.mod h1:r8qH/GZQm5c6nD/R0oafs1akxWv10x8SbQlK7atdtwQ=
github.com/gogo/protobuf v1.2.1/go.mod h1:hp+jE20tsWTFYpLwKvXlhS1hjn+gTNwPg2I6zVXpSg4=
github.com/gogo/protobuf v1.2.2-0.20190723190241-65acae22fc9d/go.mod h1:SlYgWuQ5SjCEi6WLHjHCa1yvBfUnHcTbrrZtXPKa29o=
github.com/gogo/protobuf v1.3.0/go.mod h1:SlYgWuQ5SjCEi6WLHjHCa1yvBfUnHcTbrrZtXPKa29o=
github.com/gogo/protobuf v1.3.1/go.mod h1:SlYgWuQ5SjCEi6WLHjHCa1yvBfUnHcTbrrZtXPKa29o=
github.com/gogo/protobuf v1.3.2 h1:Ov1cvc58UF3b5XjBnZv7+opcTcQFZebYjWzi34vdm4Q=
github.com/gogo/protobuf v1.3.2/go.mod h1:P1XiOD3dCwIKUDQYPy72D8LYyHL2YPYrpS2s69NZV8Q=
-github.com/golang-jwt/jwt v3.2.1+incompatible h1:73Z+4BJcrTC+KczS6WvTPvRGOp1WmfEP4Q1lOd9Z/+c=
github.com/golang-jwt/jwt v3.2.1+incompatible/go.mod h1:8pz2t5EyA70fFQQSrl6XZXzqecmYZeUEB8OUGHkxJ+I=
github.com/golang-jwt/jwt/v4 v4.0.0/go.mod h1:/xlHOz8bRuivTWchD4jCa+NbatV+wEUSzwAxVc6locg=
github.com/golang-jwt/jwt/v4 v4.2.0/go.mod h1:/xlHOz8bRuivTWchD4jCa+NbatV+wEUSzwAxVc6locg=
+github.com/golang-jwt/jwt/v4 v4.4.2/go.mod h1:m21LjoU+eqJr34lmDMbreY2eSTRJ1cv77w39/MY0Ch0=
github.com/golang-jwt/jwt/v4 v4.5.0 h1:7cYmW1XlMY7h7ii7UhUyChSgS5wUJEnm9uZVTGqOWzg=
github.com/golang-jwt/jwt/v4 v4.5.0/go.mod h1:m21LjoU+eqJr34lmDMbreY2eSTRJ1cv77w39/MY0Ch0=
+github.com/golang-jwt/jwt/v5 v5.0.0 h1:1n1XNM9hk7O9mnQoNBGolZvzebBQ7p93ULHRc28XJUE=
+github.com/golang-jwt/jwt/v5 v5.0.0/go.mod h1:pqrtFR0X4osieyHYxtmOUWsAWrfe1Q5UVIyoH402zdk=
github.com/golang-sql/civil v0.0.0-20190719163853-cb61b32ac6fe h1:lXe2qZdvpiX5WZkZR4hgp4KJVfY3nMkvmwbVkpv1rVY=
github.com/golang-sql/civil v0.0.0-20190719163853-cb61b32ac6fe/go.mod h1:8vg3r2VgvsThLBIFL93Qb5yWzgyZWhEmBwUJWevAkK0=
github.com/golang-sql/sqlexp v0.1.0 h1:ZCD6MBpcuOVfGVqsEmY5/4FtYiKz6tSyUv9LPEDei6A=
@@ -1625,6 +1537,7 @@ github.com/golang/protobuf v1.5.1/go.mod h1:DopwsBzvsk0Fs44TXzsVbJyPhcCPeIwnvohx
github.com/golang/protobuf v1.5.2/go.mod h1:XVQd3VNwM+JqD3oG2Ue2ip4fOMUkwXdXDdiuN0vRsmY=
github.com/golang/protobuf v1.5.3 h1:KhyjKVUg7Usr/dYsdSqoFveMYd5ko72D+zANwlG1mmg=
github.com/golang/protobuf v1.5.3/go.mod h1:XVQd3VNwM+JqD3oG2Ue2ip4fOMUkwXdXDdiuN0vRsmY=
+github.com/golang/snappy v0.0.0-20180518054509-2e65f85255db/go.mod h1:/XxbfmMg8lxefKM7IXC3fBNl/7bRcc72aCRzEWrmP2Q=
github.com/golang/snappy v0.0.1/go.mod h1:/XxbfmMg8lxefKM7IXC3fBNl/7bRcc72aCRzEWrmP2Q=
github.com/golang/snappy v0.0.3/go.mod h1:/XxbfmMg8lxefKM7IXC3fBNl/7bRcc72aCRzEWrmP2Q=
github.com/golang/snappy v0.0.4 h1:yAGX7huGHXlcLOEtBnF4w7FQwA26wojNCwOYAEhLjQM=
@@ -1655,14 +1568,13 @@ github.com/google/go-cmp v0.5.9 h1:O2Tfq5qg4qc4AmwVlvv0oLiVAGB7enBSJ2x2DqQFi38=
github.com/google/go-cmp v0.5.9/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeNGIjoY=
github.com/google/go-containerregistry v0.5.1/go.mod h1:Ct15B4yir3PLOP5jsy0GNeYVaIZs/MK/Jz5any1wFW0=
github.com/google/go-containerregistry v0.13.0/go.mod h1:J9FQ+eSS4a1aC2GNZxvNpbWhgp0487v+cgiilB4FqDo=
-github.com/google/go-pkcs11 v0.2.0/go.mod h1:6eQoGcuNJpa7jnd5pMGdkSaQpNDYvPlXWMcjXXThLlY=
-github.com/google/go-pkcs11 v0.2.1-0.20230907215043-c6f79328ddf9/go.mod h1:6eQoGcuNJpa7jnd5pMGdkSaQpNDYvPlXWMcjXXThLlY=
+github.com/google/go-querystring v1.0.0/go.mod h1:odCYkC5MyYFN7vkCjXpyrEuKhc/BUO6wN/zVPAxq5ck=
github.com/google/go-querystring v1.1.0 h1:AnCroh3fv4ZBgVIf1Iwtovgjaw/GiKJo8M8yD/fhyJ8=
github.com/google/go-querystring v1.1.0/go.mod h1:Kcdr2DB4koayq7X8pmAG4sNG59So17icRSOU623lUBU=
github.com/google/go-replayers/grpcreplay v1.1.0 h1:S5+I3zYyZ+GQz68OfbURDdt/+cSMqCK1wrvNx7WBzTE=
github.com/google/go-replayers/grpcreplay v1.1.0/go.mod h1:qzAvJ8/wi57zq7gWqaE6AwLM6miiXUQwP1S+I9icmhk=
-github.com/google/go-replayers/httpreplay v1.0.0 h1:8SmT8fUYM4nueF+UnXIX8LJxNTb1vpPuknXz+yTWzL4=
-github.com/google/go-replayers/httpreplay v1.0.0/go.mod h1:LJhKoTwS5Wy5Ld/peq8dFFG5OfJyHEz7ft+DsTUv25M=
+github.com/google/go-replayers/httpreplay v1.1.1 h1:H91sIMlt1NZzN7R+/ASswyouLJfW0WLW7fhyUFvDEkY=
+github.com/google/go-replayers/httpreplay v1.1.1/go.mod h1:gN9GeLIs7l6NUoVaSSnv2RiqK1NiwAmD0MrKeC9IIks=
github.com/google/gofuzz v1.0.0/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg=
github.com/google/gofuzz v1.1.0/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg=
github.com/google/gofuzz v1.2.0/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg=
@@ -1690,13 +1602,10 @@ github.com/google/pprof v0.0.0-20210407192527-94a9f03dee38/go.mod h1:kpwsk12EmLe
github.com/google/pprof v0.0.0-20210506205249-923b5ab0fc1a/go.mod h1:kpwsk12EmLew5upagYY7GY0pfYCcupk39gWOCRROcvE=
github.com/google/pprof v0.0.0-20210601050228-01bbb1931b22/go.mod h1:kpwsk12EmLew5upagYY7GY0pfYCcupk39gWOCRROcvE=
github.com/google/pprof v0.0.0-20210609004039-a478d1d731e9/go.mod h1:kpwsk12EmLew5upagYY7GY0pfYCcupk39gWOCRROcvE=
-github.com/google/pprof v0.0.0-20210715191844-86eeefc3e471/go.mod h1:kpwsk12EmLew5upagYY7GY0pfYCcupk39gWOCRROcvE=
github.com/google/pprof v0.0.0-20210720184732-4bb14d4b1be1/go.mod h1:kpwsk12EmLew5upagYY7GY0pfYCcupk39gWOCRROcvE=
+github.com/google/pprof v0.0.0-20220318212150-b2ab0324ddda/go.mod h1:KgnwoLYCZ8IQu3XUZ8Nc/bM9CCZFOyjUNOSygVozoDg=
+github.com/google/pprof v0.0.0-20220608213341-c488b8fa1db3/go.mod h1:gSuNB+gJaOiQKLEZ+q+PK9Mq3SOzhRcw2GsGS/FhYDk=
github.com/google/renameio v0.1.0/go.mod h1:KWCgfxg9yswjAJkECMjeO8J8rahYeXnNhOm40UhjYkI=
-github.com/google/s2a-go v0.1.0/go.mod h1:OJpEgntRZo8ugHpF9hkoLJbS5dSI20XZeXJ9JVywLlM=
-github.com/google/s2a-go v0.1.3/go.mod h1:Ej+mSEMGRnqRzjc7VtF+jdBwYG5fuJfiZ8ELkjEwM0A=
-github.com/google/s2a-go v0.1.4/go.mod h1:Ej+mSEMGRnqRzjc7VtF+jdBwYG5fuJfiZ8ELkjEwM0A=
-github.com/google/s2a-go v0.1.5/go.mod h1:Ej+mSEMGRnqRzjc7VtF+jdBwYG5fuJfiZ8ELkjEwM0A=
github.com/google/s2a-go v0.1.7 h1:60BLSyTrOV4/haCDW4zb1guZItoSq8foHCXrAnjBo/o=
github.com/google/s2a-go v0.1.7/go.mod h1:50CgR4k1jNlWBu4UfS4AcfhVe1r6pdZPygJ3R8F0Qdw=
github.com/google/shlex v0.0.0-20191202100458-e7afc7fbc510 h1:El6M4kTTCOh6aBiKaUGG7oYTSPP8MxqL4YI3kZKwcP4=
@@ -1717,8 +1626,6 @@ github.com/googleapis/enterprise-certificate-proxy v0.1.0/go.mod h1:17drOmN3MwGY
github.com/googleapis/enterprise-certificate-proxy v0.2.0/go.mod h1:8C0jb7/mgJe/9KK8Lm7X9ctZC2t60YyIpYEI16jx0Qg=
github.com/googleapis/enterprise-certificate-proxy v0.2.1/go.mod h1:AwSRAtLfXpU5Nm3pW+v7rGDHp09LsPtGY9MduiEsR9k=
github.com/googleapis/enterprise-certificate-proxy v0.2.3/go.mod h1:AwSRAtLfXpU5Nm3pW+v7rGDHp09LsPtGY9MduiEsR9k=
-github.com/googleapis/enterprise-certificate-proxy v0.2.4/go.mod h1:AwSRAtLfXpU5Nm3pW+v7rGDHp09LsPtGY9MduiEsR9k=
-github.com/googleapis/enterprise-certificate-proxy v0.2.5/go.mod h1:RxW0N9901Cko1VOCW3SXCpWP+mlIEkk2tP7jnHy9a3w=
github.com/googleapis/enterprise-certificate-proxy v0.3.1 h1:SBWmZhjUDRorQxrN0nwzf+AHBxnbFjViHQS4P0yVpmQ=
github.com/googleapis/enterprise-certificate-proxy v0.3.1/go.mod h1:VLSiSSBs/ksPL8kq3OBOQ6WRI2QnaFynd1DCjZ62+V0=
github.com/googleapis/gax-go/v2 v2.0.4/go.mod h1:0Wqv26UfaUD9n4G6kQubkQ+KchISgw+vpHVxEJEs9eg=
@@ -1732,9 +1639,6 @@ github.com/googleapis/gax-go/v2 v2.5.1/go.mod h1:h6B0KMMFNtI2ddbGJn3T3ZbwkeT6yqE
github.com/googleapis/gax-go/v2 v2.6.0/go.mod h1:1mjbznJAPHFpesgE5ucqfYEscaz5kMdcIDwU/6+DDoY=
github.com/googleapis/gax-go/v2 v2.7.0/go.mod h1:TEop28CZZQ2y+c0VxMUmu1lV+fQx57QpBWsYpwqHJx8=
github.com/googleapis/gax-go/v2 v2.7.1/go.mod h1:4orTrqY6hXxxaUL4LHIPl6lGo8vAE38/qKbhSAKP6QI=
-github.com/googleapis/gax-go/v2 v2.8.0/go.mod h1:4orTrqY6hXxxaUL4LHIPl6lGo8vAE38/qKbhSAKP6QI=
-github.com/googleapis/gax-go/v2 v2.10.0/go.mod h1:4UOEnMCrxsSqQ940WnTiD6qJ63le2ev3xfyagutxiPw=
-github.com/googleapis/gax-go/v2 v2.11.0/go.mod h1:DxmR61SGKkGLa2xigwuZIQpkCI2S5iydzRfb3peWZJI=
github.com/googleapis/gax-go/v2 v2.12.0 h1:A+gCJKdRfqXkr+BIRGtZLibNXf0m1f9E4HG56etFpas=
github.com/googleapis/gax-go/v2 v2.12.0/go.mod h1:y+aIqrI5eb1YGMVJfuV3185Ts/D7qKpsEkdD5+I6QGU=
github.com/googleapis/gnostic v0.4.1/go.mod h1:LRhVm6pbyptWbWbuZ38d1eyptfvIytN3ir6b65WBswg=
@@ -1742,12 +1646,15 @@ github.com/googleapis/gnostic v0.5.1/go.mod h1:6U4PtQXGIEt/Z3h5MAT7FNofLnw9vXk2c
github.com/googleapis/gnostic v0.5.5/go.mod h1:7+EbHbldMins07ALC74bsA81Ovc97DwqyJO1AENw9kA=
github.com/googleapis/go-type-adapters v1.0.0/go.mod h1:zHW75FOG2aur7gAO2B+MLby+cLsWGBF62rFAi7WjWO4=
github.com/googleapis/google-cloud-go-testing v0.0.0-20200911160855-bcd43fbb19e8/go.mod h1:dvDLG8qkwmyD9a/MJJN3XJcT3xFxOKAvTZGvuZmac9g=
+github.com/gophercloud/gophercloud v0.24.0/go.mod h1:Q8fZtyi5zZxPS/j9aj3sSxtvj41AdQMDwyo1myduD5c=
+github.com/gophercloud/gophercloud v0.25.0/go.mod h1:Q8fZtyi5zZxPS/j9aj3sSxtvj41AdQMDwyo1myduD5c=
github.com/gopherjs/gopherjs v0.0.0-20181017120253-0766667cb4d1/go.mod h1:wJfORRmW1u3UXTncJ5qlYoELFm8eSnnEO6hX4iZ3EWY=
+github.com/gorilla/context v1.1.1/go.mod h1:kBGZzfjB9CEq2AlWe17Uuf7NDRt0dE0s8S51q0aT7Yg=
github.com/gorilla/handlers v0.0.0-20150720190736-60c7bfde3e33/go.mod h1:Qkdc/uu4tH4g6mTK6auzZ766c4CA0Ng8+o/OAirnOIQ=
github.com/gorilla/handlers v1.5.1/go.mod h1:t8XrUpc4KVXb7HGyJ4/cEnwQiaxrX/hz1Zv/4g96P1Q=
+github.com/gorilla/mux v1.6.2/go.mod h1:1lud6UwP+6orDFRuTfBEV8e9/aOM/c4fVVCaMa2zaAs=
github.com/gorilla/mux v1.7.2/go.mod h1:1lud6UwP+6orDFRuTfBEV8e9/aOM/c4fVVCaMa2zaAs=
github.com/gorilla/mux v1.7.3/go.mod h1:1lud6UwP+6orDFRuTfBEV8e9/aOM/c4fVVCaMa2zaAs=
-github.com/gorilla/mux v1.7.4/go.mod h1:DVbg23sWSpFRCP0SfiEN6jmj59UnW/n46BH5rLB71So=
github.com/gorilla/mux v1.8.0 h1:i40aqfkR1h2SlN9hojwV5ZA91wcXFOvkdNIeFDP5koI=
github.com/gorilla/mux v1.8.0/go.mod h1:DVbg23sWSpFRCP0SfiEN6jmj59UnW/n46BH5rLB71So=
github.com/gorilla/securecookie v1.1.1 h1:miw7JPhV+b/lAHSXz4qd/nN9jRiAFV5FwjeKyCS8BvQ=
@@ -1762,6 +1669,7 @@ github.com/gosimple/slug v1.13.1 h1:bQ+kpX9Qa6tHRaK+fZR0A0M2Kd7Pa5eHPPsb1JpHD+Q=
github.com/gosimple/slug v1.13.1/go.mod h1:UiRaFH+GEilHstLUmcBgWcI42viBN7mAb818JrYOeFQ=
github.com/gosimple/unidecode v1.0.1 h1:hZzFTMMqSswvf0LBJZCZgThIZrpDHFXux9KeGmn6T/o=
github.com/gosimple/unidecode v1.0.1/go.mod h1:CP0Cr1Y1kogOtx0bJblKzsVWrqYaqfNOnHzpgWw4Awc=
+github.com/grafana/regexp v0.0.0-20220304095617-2e8d9baf4ac2/go.mod h1:M5qHK+eWfAv8VR/265dIuEpL3fNfeC21tXXp9itM24A=
github.com/gregjones/httpcache v0.0.0-20180305231024-9cad4c3443a7/go.mod h1:FecbI9+v66THATjSRHfNgh1IVFe/9kFxbXtjV0ctIMA=
github.com/grpc-ecosystem/go-grpc-middleware v1.0.0/go.mod h1:FiyG127CGDf3tlThmgyCl78X/SZQqEOJBCDaAfeWzPs=
github.com/grpc-ecosystem/go-grpc-middleware v1.0.1-0.20190118093823-f849b5445de4/go.mod h1:FiyG127CGDf3tlThmgyCl78X/SZQqEOJBCDaAfeWzPs=
@@ -1771,13 +1679,22 @@ github.com/grpc-ecosystem/grpc-gateway v1.9.0/go.mod h1:vNeuVxBJEsws4ogUvrchl83t
github.com/grpc-ecosystem/grpc-gateway v1.9.5/go.mod h1:vNeuVxBJEsws4ogUvrchl83t/GYV9WGTSLVdBhOQFDY=
github.com/grpc-ecosystem/grpc-gateway v1.16.0/go.mod h1:BDjrQk3hbvj6Nolgz8mAMFbcEtjT1g+wF4CSlocrBnw=
github.com/grpc-ecosystem/grpc-gateway/v2 v2.7.0/go.mod h1:hgWBS7lorOAVIJEQMi4ZsPv9hVvWI6+ch50m39Pf2Ks=
+github.com/grpc-ecosystem/grpc-gateway/v2 v2.10.2/go.mod h1:chrfS3YoLAlKTRE5cFWvCbt8uGAjshktT4PveTUpsFQ=
github.com/grpc-ecosystem/grpc-gateway/v2 v2.11.3/go.mod h1:o//XUCC/F+yRGJoPO/VU0GSB0f8Nhgmxx0VIRUvaC0w=
github.com/grpc-ecosystem/grpc-opentracing v0.0.0-20180507213350-8e809c8a8645 h1:MJG/KsmcqMwFAkh8mTnAwhyKoB+sTAnY4CACC110tbU=
github.com/grpc-ecosystem/grpc-opentracing v0.0.0-20180507213350-8e809c8a8645/go.mod h1:6iZfnjpejD4L/4DwD7NryNaJyCQdzwWwH2MWhCA90Kw=
+github.com/hanwen/go-fuse v1.0.0/go.mod h1:unqXarDXqzAk0rt98O2tVndEPIpUgLD9+rwFisZH3Ok=
+github.com/hanwen/go-fuse/v2 v2.1.0/go.mod h1:oRyA5eK+pvJyv5otpO/DgccS8y/RvYMaO00GgRLGryc=
github.com/hashicorp/cap v0.3.4 h1:RoqWYqr6LaDLuvnBCpod1sZtvuEhehIhu0GncmoHW40=
github.com/hashicorp/cap v0.3.4/go.mod h1:dHTmyMIVbzT981XxRoci5G//dfWmd/HhuNiCH6J5+IA=
github.com/hashicorp/consul/api v1.1.0/go.mod h1:VmuI/Lkw1nC05EYQWNKwWGbkg+FbDBtguAZLlVdkD9Q=
+github.com/hashicorp/consul/api v1.3.0/go.mod h1:MmDNSzIMUjNpY/mQ398R4bk2FnqQLoPndWW5VkKPlCE=
+github.com/hashicorp/consul/api v1.12.0/go.mod h1:6pVBMo0ebnYdt2S3H87XhekM/HHrUoTD2XXb/VrZVy0=
+github.com/hashicorp/consul/api v1.13.0/go.mod h1:ZlVrynguJKcYr54zGaDbaL3fOvKC9m72FhPvA8T35KQ=
github.com/hashicorp/consul/sdk v0.1.1/go.mod h1:VKf9jXwCTEY1QZP2MOLRhb5i/I/ssyNV1vwHyQBF0x8=
+github.com/hashicorp/consul/sdk v0.3.0/go.mod h1:VKf9jXwCTEY1QZP2MOLRhb5i/I/ssyNV1vwHyQBF0x8=
+github.com/hashicorp/consul/sdk v0.8.0/go.mod h1:GBvyrGALthsZObzUGsfgHZQDXjg4lOjagTIwIR1vPms=
+github.com/hashicorp/cronexpr v1.1.1/go.mod h1:P4wA0KBl9C5q2hABiMO7cp6jcIg96CDh1Efb3g1PWA4=
github.com/hashicorp/errwrap v0.0.0-20141028054710-7554cd9344ce/go.mod h1:YH+1FKiLXxHSkmPseP+kNlulaMuP3n2brvKWEqk/Jc4=
github.com/hashicorp/errwrap v1.0.0/go.mod h1:YH+1FKiLXxHSkmPseP+kNlulaMuP3n2brvKWEqk/Jc4=
github.com/hashicorp/errwrap v1.1.0 h1:OxrOeh75EUXMY8TBjag2fzXGZ40LB6IKw45YeGUDY2I=
@@ -1796,14 +1713,15 @@ github.com/hashicorp/go-getter v1.4.0/go.mod h1:7qxyCd8rBfcShwsvxgIguu4KbS3l8bUC
github.com/hashicorp/go-hclog v0.0.0-20180709165350-ff2cf002a8dd/go.mod h1:9bjs9uLqI8l75knNv3lV1kA55veR+WUPSiKIWcQHudI=
github.com/hashicorp/go-hclog v0.9.2/go.mod h1:5CU+agLiy3J7N7QjHK5d05KxGsuXiQLrjA0H7acj2lQ=
github.com/hashicorp/go-hclog v0.12.0/go.mod h1:whpDNt7SSdeAju8AWKIWsul05p54N/39EeqMAyrmvFQ=
+github.com/hashicorp/go-hclog v0.12.2/go.mod h1:whpDNt7SSdeAju8AWKIWsul05p54N/39EeqMAyrmvFQ=
github.com/hashicorp/go-hclog v0.14.1/go.mod h1:whpDNt7SSdeAju8AWKIWsul05p54N/39EeqMAyrmvFQ=
-github.com/hashicorp/go-hclog v0.16.1/go.mod h1:whpDNt7SSdeAju8AWKIWsul05p54N/39EeqMAyrmvFQ=
github.com/hashicorp/go-hclog v0.16.2/go.mod h1:whpDNt7SSdeAju8AWKIWsul05p54N/39EeqMAyrmvFQ=
+github.com/hashicorp/go-hclog v1.2.2/go.mod h1:W4Qnvbt70Wk/zYJryRzDRU/4r0kIg0PVHBcfoyhpF5M=
github.com/hashicorp/go-hclog v1.4.0/go.mod h1:W4Qnvbt70Wk/zYJryRzDRU/4r0kIg0PVHBcfoyhpF5M=
github.com/hashicorp/go-hclog v1.5.0 h1:bI2ocEMgcVlz55Oj1xZNBsVi900c7II+fWDyV9o+13c=
github.com/hashicorp/go-hclog v1.5.0/go.mod h1:W4Qnvbt70Wk/zYJryRzDRU/4r0kIg0PVHBcfoyhpF5M=
github.com/hashicorp/go-immutable-radix v1.0.0/go.mod h1:0y9vanUI8NX6FsYoO3zeMjhV/C5i9g4Q3DwcSNZ4P60=
-github.com/hashicorp/go-immutable-radix v1.1.0/go.mod h1:0y9vanUI8NX6FsYoO3zeMjhV/C5i9g4Q3DwcSNZ4P60=
+github.com/hashicorp/go-immutable-radix v1.2.0/go.mod h1:0y9vanUI8NX6FsYoO3zeMjhV/C5i9g4Q3DwcSNZ4P60=
github.com/hashicorp/go-immutable-radix v1.3.1 h1:DKHmCUm2hRBK510BaiZlwvpD40f8bJFeZnpfm2KLowc=
github.com/hashicorp/go-immutable-radix v1.3.1/go.mod h1:0y9vanUI8NX6FsYoO3zeMjhV/C5i9g4Q3DwcSNZ4P60=
github.com/hashicorp/go-kms-wrapping/entropy v0.1.0/go.mod h1:d1g9WGtAunDNpek8jUIEJnBlbgKS1N2Q61QkHiZyR1g=
@@ -1819,19 +1737,17 @@ github.com/hashicorp/go-multierror v1.1.1 h1:H5DkEtf6CXdFp0N0Em5UCwQpXMWke8IA0+l
github.com/hashicorp/go-multierror v1.1.1/go.mod h1:iw975J/qwKPdAO1clOe2L8331t/9/fmwbPZ6JB6eMoM=
github.com/hashicorp/go-plugin v1.0.1/go.mod h1:++UyYGoz3o5w9ZzAdZxtQKrWWP+iqPBn3cQptSMzBuY=
github.com/hashicorp/go-plugin v1.4.3/go.mod h1:5fGEH17QVwTTcR0zV7yhDPLLmFX9YSZ38b18Udy6vYQ=
+github.com/hashicorp/go-plugin v1.4.4/go.mod h1:viDMjcLJuDui6pXb8U4HVfb8AamCWhHGUjr2IrTF67s=
github.com/hashicorp/go-plugin v1.4.8/go.mod h1:viDMjcLJuDui6pXb8U4HVfb8AamCWhHGUjr2IrTF67s=
-github.com/hashicorp/go-plugin v1.4.10/go.mod h1:6/1TEzT0eQznvI/gV2CM29DLSkAK/e58mUWKVsPaph0=
-github.com/hashicorp/go-plugin v1.5.0 h1:g6Lj3USwF5LaB8HlvCxPjN2X4nFE08ko2BJNVpl7TIE=
github.com/hashicorp/go-plugin v1.5.0/go.mod h1:w1sAEES3g3PuV/RzUrgow20W2uErMly84hhD3um1WL4=
+github.com/hashicorp/go-plugin v1.5.1 h1:oGm7cWBaYIp3lJpx1RUEfLWophprE2EV/KUeqBYo+6k=
+github.com/hashicorp/go-plugin v1.5.1/go.mod h1:w1sAEES3g3PuV/RzUrgow20W2uErMly84hhD3um1WL4=
github.com/hashicorp/go-retryablehttp v0.5.3/go.mod h1:9B5zBasrRhHXnJnui7y6sL7es7NDiJgTc6Er0maI1Xs=
-github.com/hashicorp/go-retryablehttp v0.6.2/go.mod h1:gEx6HMUGxYYhJScX7W1Il64m6cc2C1mDaW3NQ9sY1FY=
github.com/hashicorp/go-retryablehttp v0.6.6/go.mod h1:vAew36LZh98gCBJNLH42IQ1ER/9wtLZZ8meHqQvEYWY=
-github.com/hashicorp/go-retryablehttp v0.7.0/go.mod h1:vAew36LZh98gCBJNLH42IQ1ER/9wtLZZ8meHqQvEYWY=
github.com/hashicorp/go-retryablehttp v0.7.1/go.mod h1:vAew36LZh98gCBJNLH42IQ1ER/9wtLZZ8meHqQvEYWY=
github.com/hashicorp/go-retryablehttp v0.7.4 h1:ZQgVdpTdAL7WpMIwLzCfbalOcSUdkDZnpUv3/+BxzFA=
github.com/hashicorp/go-retryablehttp v0.7.4/go.mod h1:Jy/gPYAdjqffZ/yFGCFV2doI5wjtH1ewM9u8iYVjtX8=
github.com/hashicorp/go-rootcerts v1.0.0/go.mod h1:K6zTfqpRlCUIjkwsN4Z+hiSfzSTQa6eBIzfwKfwNnHU=
-github.com/hashicorp/go-rootcerts v1.0.1/go.mod h1:pqUvnprVnM5bf7AOirdbb01K4ccR319Vf4pU3K5EGc8=
github.com/hashicorp/go-rootcerts v1.0.2 h1:jzhAVGtqPKbwpyCPELlgNWhE1znq+qwJtW5Oi2viEzc=
github.com/hashicorp/go-rootcerts v1.0.2/go.mod h1:pqUvnprVnM5bf7AOirdbb01K4ccR319Vf4pU3K5EGc8=
github.com/hashicorp/go-safetemp v1.0.0 h1:2HR189eFNrjHQyENnQMMpCiBAsRxzbTMIgBhEyExpmo=
@@ -1873,42 +1789,44 @@ github.com/hashicorp/go-version v1.6.0/go.mod h1:fltr4n8CU8Ke44wwGCBoEymUuxUHl09
github.com/hashicorp/go.net v0.0.1/go.mod h1:hjKkEWcCURg++eb33jQU7oqQcI9XDCnUzHA0oac0k90=
github.com/hashicorp/golang-lru v0.5.0/go.mod h1:/m3WP610KZHVQ1SGc6re/UDhFvYD7pJ4Ao+sR/qLZy8=
github.com/hashicorp/golang-lru v0.5.1/go.mod h1:/m3WP610KZHVQ1SGc6re/UDhFvYD7pJ4Ao+sR/qLZy8=
-github.com/hashicorp/golang-lru v0.5.3/go.mod h1:iADmTwqILo4mZ8BN3D2Q6+9jd8WM5uGBxy+E8yxSoD4=
github.com/hashicorp/golang-lru v0.5.4 h1:YDjusn29QI/Das2iO9M0BHnIbxPeyuCHsjMW+lJfyTc=
github.com/hashicorp/golang-lru v0.5.4/go.mod h1:iADmTwqILo4mZ8BN3D2Q6+9jd8WM5uGBxy+E8yxSoD4=
-github.com/hashicorp/hc-install v0.5.0/go.mod h1:JyzMfbzfSBSjoDCRPna1vi/24BEDxFaCPfdHtM5SCdo=
-github.com/hashicorp/hc-install v0.5.2 h1:SfwMFnEXVVirpwkDuSF5kymUOhrUxrTq3udEseZdOD0=
-github.com/hashicorp/hc-install v0.5.2/go.mod h1:9QISwe6newMWIfEiXpzuu1k9HAGtQYgnSH8H9T8wmoI=
+github.com/hashicorp/hc-install v0.6.0 h1:fDHnU7JNFNSQebVKYhHZ0va1bC6SrPQ8fpebsvNr2w4=
+github.com/hashicorp/hc-install v0.6.0/go.mod h1:10I912u3nntx9Umo1VAeYPUUuehk0aRQJYpMwbX5wQA=
github.com/hashicorp/hcl v0.0.0-20170504190234-a4b07c25de5f/go.mod h1:oZtUIOe8dh44I2q6ScRibXws4Ajl+d+nod3AaR9vL5w=
github.com/hashicorp/hcl v1.0.0/go.mod h1:E5yfLk+7swimpb2L/Alb/PJmXilQ/rhwaUYs4T20WEQ=
github.com/hashicorp/hcl v1.0.1-vault-5 h1:kI3hhbbyzr4dldA8UdTb7ZlVVlI2DACdCfz31RPDgJM=
github.com/hashicorp/hcl v1.0.1-vault-5/go.mod h1:XYhtn6ijBSAj6n4YqAaf7RBPS4I06AItNorpy+MoQNM=
github.com/hashicorp/hcl/v2 v2.0.0/go.mod h1:oVVDG71tEinNGYCxinCYadcmKU9bglqW9pV3txagJ90=
-github.com/hashicorp/hcl/v2 v2.17.0 h1:z1XvSUyXd1HP10U4lrLg5e0JMVz6CPaJvAgxM0KNZVY=
-github.com/hashicorp/hcl/v2 v2.17.0/go.mod h1:gJyW2PTShkJqQBKpAmPO3yxMxIuoXkOF2TpqXzrQyx4=
+github.com/hashicorp/hcl/v2 v2.18.0 h1:wYnG7Lt31t2zYkcquwgKo6MWXzRUDIeIVU5naZwHLl8=
+github.com/hashicorp/hcl/v2 v2.18.0/go.mod h1:ThLC89FV4p9MPW804KVbe/cEXoQ8NZEh+JtMeeGErHE=
github.com/hashicorp/hil v0.0.0-20190212132231-97b3a9cdfa93 h1:T1Q6ag9tCwun16AW+XK3tAql24P4uTGUMIn1/92WsQQ=
github.com/hashicorp/hil v0.0.0-20190212132231-97b3a9cdfa93/go.mod h1:n2TSygSNwsLJ76m8qFXTSc7beTb+auJxYdqrnoqwZWE=
github.com/hashicorp/logutils v1.0.0 h1:dLEQVugN8vlakKOUE3ihGLTZJRB4j+M2cdTm/ORI65Y=
github.com/hashicorp/logutils v1.0.0/go.mod h1:QIAnNjmIWmVIIkWDTG1z5v++HQmx9WQRO+LraFDTW64=
github.com/hashicorp/mdns v1.0.0/go.mod h1:tL+uN++7HEJ6SQLQ2/p+z2pH24WQKWjBPkE0mNTz8vQ=
+github.com/hashicorp/mdns v1.0.4/go.mod h1:mtBihi+LeNXGtG8L9dX59gAEa12BDtBQSp4v/YAJqrc=
github.com/hashicorp/memberlist v0.1.3/go.mod h1:ajVTdAv/9Im8oMAAj5G31PhhMCZJV2pPBoIllUwCN7I=
+github.com/hashicorp/memberlist v0.3.0/go.mod h1:MS2lj3INKhZjWNqd3N0m3J+Jxf3DAOnAH9VT3Sh9MUE=
+github.com/hashicorp/memberlist v0.3.1/go.mod h1:MS2lj3INKhZjWNqd3N0m3J+Jxf3DAOnAH9VT3Sh9MUE=
+github.com/hashicorp/nomad/api v0.0.0-20220629141207-c2428e1673ec/go.mod h1:jP79oXjopTyH6E8LF0CEMq67STgrlmBRIyijA0tuR5o=
github.com/hashicorp/serf v0.8.2/go.mod h1:6hOLApaqBFA1NXqRQAsxw9QxuDEvNxSQRwA/JwenrHc=
+github.com/hashicorp/serf v0.9.6/go.mod h1:TXZNMjZQijwlDvp+r0b63xZ45H7JmCmgg4gpTwn9UV4=
github.com/hashicorp/terraform-config-inspect v0.0.0-20191115094559-17f92b0546e8/go.mod h1:p+ivJws3dpqbp1iP84+npOyAmTTOLMgCzrXd3GSdn/A=
-github.com/hashicorp/terraform-exec v0.18.1 h1:LAbfDvNQU1l0NOQlTuudjczVhHj061fNX5H8XZxHlH4=
-github.com/hashicorp/terraform-exec v0.18.1/go.mod h1:58wg4IeuAJ6LVsLUeD2DWZZoc/bYi6dzhLHzxM41980=
+github.com/hashicorp/terraform-exec v0.19.0 h1:FpqZ6n50Tk95mItTSS9BjeOVUb4eg81SpgVtZNNtFSM=
+github.com/hashicorp/terraform-exec v0.19.0/go.mod h1:tbxUpe3JKruE9Cuf65mycSIT8KiNPZ0FkuTE3H4urQg=
github.com/hashicorp/terraform-json v0.4.0/go.mod h1:eAbqb4w0pSlRmdvl8fOyHAi/+8jnkVYN28gJkSJrLhU=
-github.com/hashicorp/terraform-json v0.15.0/go.mod h1:+L1RNzjDU5leLFZkHTFTbJXaoqUC6TqXlFgDoOXrtvk=
-github.com/hashicorp/terraform-json v0.17.0 h1:EiA1Wp07nknYQAiv+jIt4dX4Cq5crgP+TsTE45MjMmM=
-github.com/hashicorp/terraform-json v0.17.0/go.mod h1:Huy6zt6euxaY9knPAFKjUITn8QxUFIe9VuSzb4zn/0o=
-github.com/hashicorp/terraform-plugin-go v0.16.0 h1:DSOQ0rz5FUiVO4NUzMs8ln9gsPgHMTsfns7Nk+6gPuE=
-github.com/hashicorp/terraform-plugin-go v0.16.0/go.mod h1:4sn8bFuDbt+2+Yztt35IbOrvZc0zyEi87gJzsTgCES8=
+github.com/hashicorp/terraform-json v0.17.1 h1:eMfvh/uWggKmY7Pmb3T85u86E2EQg6EQHgyRwf3RkyA=
+github.com/hashicorp/terraform-json v0.17.1/go.mod h1:Huy6zt6euxaY9knPAFKjUITn8QxUFIe9VuSzb4zn/0o=
+github.com/hashicorp/terraform-plugin-go v0.19.0 h1:BuZx/6Cp+lkmiG0cOBk6Zps0Cb2tmqQpDM3iAtnhDQU=
+github.com/hashicorp/terraform-plugin-go v0.19.0/go.mod h1:EhRSkEPNoylLQntYsk5KrDHTZJh9HQoumZXbOGOXmec=
github.com/hashicorp/terraform-plugin-log v0.9.0 h1:i7hOA+vdAItN1/7UrfBqBwvYPQ9TFvymaRGZED3FCV0=
github.com/hashicorp/terraform-plugin-log v0.9.0/go.mod h1:rKL8egZQ/eXSyDqzLUuwUYLVdlYeamldAHSxjUFADow=
github.com/hashicorp/terraform-plugin-sdk v1.7.0 h1:B//oq0ZORG+EkVrIJy0uPGSonvmXqxSzXe8+GhknoW0=
github.com/hashicorp/terraform-plugin-sdk v1.7.0/go.mod h1:OjgQmey5VxnPej/buEhe+YqKm0KNvV3QqU4hkqHqPCY=
github.com/hashicorp/terraform-plugin-test v1.2.0/go.mod h1:QIJHYz8j+xJtdtLrFTlzQVC0ocr3rf/OjIpgZLK56Hs=
-github.com/hashicorp/terraform-registry-address v0.2.1 h1:QuTf6oJ1+WSflJw6WYOHhLgwUiQ0FrROpHPYFtwTYWM=
-github.com/hashicorp/terraform-registry-address v0.2.1/go.mod h1:BSE9fIFzp0qWsJUUyGquo4ldV9k2n+psif6NYkBRS3Y=
+github.com/hashicorp/terraform-registry-address v0.2.2 h1:lPQBg403El8PPicg/qONZJDC6YlgCVbWDtNmmZKtBno=
+github.com/hashicorp/terraform-registry-address v0.2.2/go.mod h1:LtwNbCihUoUZ3RYriyS2wF/lGPB6gF9ICLRtuDk7hSo=
github.com/hashicorp/terraform-svchost v0.0.0-20191011084731-65d371908596/go.mod h1:kNDNcF7sN4DocDLBkQYz73HGKwN1ANB1blq4lIYLYvg=
github.com/hashicorp/terraform-svchost v0.1.1 h1:EZZimZ1GxdqFRinZ1tpJwVxxt49xc/S52uzrw4x0jKQ=
github.com/hashicorp/terraform-svchost v0.1.1/go.mod h1:mNsjQfZyf/Jhz35v6/0LWcv26+X7JPS+buii2c9/ctc=
@@ -1918,16 +1836,15 @@ github.com/hashicorp/vault-plugin-auth-kerberos v0.10.1 h1:nXni7zfOyhOWJBC42iWqI
github.com/hashicorp/vault-plugin-auth-kerberos v0.10.1/go.mod h1:S0XEzmbUO+iuC44a8wqnL869l6WH0DUMVqxTIEkITys=
github.com/hashicorp/vault-plugin-auth-oci v0.14.2 h1:NcTn5LPRL6lVusPjqGkav+C8LRsy46QKdEk9HElQ5B0=
github.com/hashicorp/vault-plugin-auth-oci v0.14.2/go.mod h1:FaLJvP+AUbeo4yop49aVit4JW/I9GfajFqI8wpX+b0w=
-github.com/hashicorp/vault/api v1.0.5-0.20200519221902-385fac77e20f/go.mod h1:euTFbi2YJgwcju3imEt919lhJKF68nN1cQPq3aA+kBE=
-github.com/hashicorp/vault/api v1.1.1/go.mod h1:29UXcn/1cLOPHQNMWA7bCz2By4PSd0VKPAydKXS5yN0=
github.com/hashicorp/vault/api v1.4.1/go.mod h1:LkMdrZnWNrFaQyYYazWVn7KshilfDidgVBq6YiTq/bM=
+github.com/hashicorp/vault/api v1.7.2/go.mod h1:xbfA+1AvxFseDzxxdWaL0uO99n1+tndus4GCrtouy0M=
github.com/hashicorp/vault/api v1.9.1/go.mod h1:78kktNcQYbBGSrOjQfHjXN32OhhxXnbYl3zxpd2uPUs=
github.com/hashicorp/vault/api v1.9.2/go.mod h1:jo5Y/ET+hNyz+JnKDt8XLAdKs+AM0G5W0Vp1IrFI8N8=
github.com/hashicorp/vault/api v1.10.0 h1:/US7sIjWN6Imp4o/Rj1Ce2Nr5bki/AXi9vAW3p2tOJQ=
github.com/hashicorp/vault/api v1.10.0/go.mod h1:jo5Y/ET+hNyz+JnKDt8XLAdKs+AM0G5W0Vp1IrFI8N8=
-github.com/hashicorp/vault/sdk v0.1.14-0.20200519221530-14615acda45f/go.mod h1:WX57W2PwkrOPQ6rVQk+dy5/htHIaB4aBM70EwKThu10=
-github.com/hashicorp/vault/sdk v0.2.1/go.mod h1:WfUiO1vYzfBkz1TmoE4ZGU7HD0T0Cl/rZwaxjBkgN4U=
github.com/hashicorp/vault/sdk v0.4.1/go.mod h1:aZ3fNuL5VNydQk8GcLJ2TV8YCRVvyaakYkhZRoVuhj0=
+github.com/hashicorp/vault/sdk v0.5.1/go.mod h1:DoGraE9kKGNcVgPmTuX357Fm6WAx1Okvde8Vp3dPDoU=
+github.com/hashicorp/vault/sdk v0.5.3/go.mod h1:DoGraE9kKGNcVgPmTuX357Fm6WAx1Okvde8Vp3dPDoU=
github.com/hashicorp/vault/sdk v0.9.2/go.mod h1:gG0lA7P++KefplzvcD3vrfCmgxVAM7Z/SqX5NeOL/98=
github.com/hashicorp/vault/sdk v0.10.0 h1:dDAe1mMG7Qqor1h3i7TU70ykwJy8ijyWeZZkN2CB0j4=
github.com/hashicorp/vault/sdk v0.10.0/go.mod h1:s9F8+FF/Q9HuChoi1OWnIPoHRU6V675qHhCYkXVPPQE=
@@ -1936,40 +1853,82 @@ github.com/hashicorp/yamux v0.0.0-20181012175058-2f1d1f20f75d/go.mod h1:+NfK9FKe
github.com/hashicorp/yamux v0.0.0-20211028200310-0bc27b27de87/go.mod h1:CtWFDAQgb7dxtzFs4tWbplKIe2jSi3+5vKbgIO0SLnQ=
github.com/hashicorp/yamux v0.1.1 h1:yrQxtgseBDrq9Y652vSRDvsKCJKOUD+GzTS4Y0Y8pvE=
github.com/hashicorp/yamux v0.1.1/go.mod h1:CtWFDAQgb7dxtzFs4tWbplKIe2jSi3+5vKbgIO0SLnQ=
+github.com/hetznercloud/hcloud-go v1.33.1/go.mod h1:XX/TQub3ge0yWR2yHWmnDVIrB+MQbda1pHxkUmDlUME=
+github.com/hetznercloud/hcloud-go v1.35.0/go.mod h1:mepQwR6va27S3UQthaEPGS86jtzSY9xWL1e9dyxXpgA=
github.com/hexops/autogold v1.3.0 h1:IEtGNPxBeBu8RMn8eKWh/Ll9dVNgSnJ7bp/qHgMQ14o=
github.com/hexops/autogold v1.3.0/go.mod h1:d4hwi2rid66Sag+BVuHgwakW/EmaFr8vdTSbWDbrDRI=
github.com/hexops/gotextdiff v1.0.3 h1:gitA9+qJrrTCsiCl7+kh75nPqQt1cx4ZkudSTLoUqJM=
github.com/hexops/gotextdiff v1.0.3/go.mod h1:pSWU5MAI3yDq+fZBTazCSJysOMbxWL1BSow5/V2vxeg=
github.com/hexops/valast v1.4.0 h1:sFzyxPDP0riFQUzSBXTCCrAbbIndHPWMndxuEjXdZlc=
github.com/hexops/valast v1.4.0/go.mod h1:uVjKZ0smVuYlgCSPz9NRi5A04sl7lp6GtFWsROKDgEs=
-github.com/hinshun/vt10x v0.0.0-20180616224451-1954e6464174/go.mod h1:DqJ97dSdRW1W22yXSB90986pcOyQ7r45iio1KN2ez1A=
-github.com/hinshun/vt10x v0.0.0-20220119200601-820417d04eec h1:qv2VnGeEQHchGaZ/u7lxST/RaJw+cv273q79D81Xbog=
-github.com/hinshun/vt10x v0.0.0-20220119200601-820417d04eec/go.mod h1:Q48J4R4DvxnHolD5P8pOtXigYlRuPLGl6moFx3ulM68=
github.com/hpcloud/tail v1.0.0/go.mod h1:ab1qPbhIpdTxEkNHXyeSf5vhxWSCs/tWer42PpOxQnU=
github.com/huandu/xstrings v1.3.1/go.mod h1:y5/lhBue+AyNmUVz9RLU9xbLR0o4KIIExikq4ovT0aE=
github.com/huandu/xstrings v1.3.2 h1:L18LIDzqlW6xN2rEkpdV8+oL/IXWJ1APd+vsdYy4Wdw=
github.com/huandu/xstrings v1.3.2/go.mod h1:y5/lhBue+AyNmUVz9RLU9xbLR0o4KIIExikq4ovT0aE=
+github.com/hudl/fargo v1.3.0/go.mod h1:y3CKSmjA+wD2gak7sUSXTAoopbhU08POFhmITJgmKTg=
github.com/iancoleman/strcase v0.2.0 h1:05I4QRnGpI0m37iZQRuskXh+w77mr6Z41lwQzuHLwW0=
github.com/iancoleman/strcase v0.2.0/go.mod h1:iwCmte+B7n89clKwxIoIXy/HfoL7AsD47ZCWhYzw7ho=
github.com/ianlancetaylor/demangle v0.0.0-20181102032728-5e5cf60278f6/go.mod h1:aSSvb/t6k1mPoxDqO4vJh6VOCGPwU4O0C2/Eqndh1Sc=
github.com/ianlancetaylor/demangle v0.0.0-20200824232613-28f6c0f3b639/go.mod h1:aSSvb/t6k1mPoxDqO4vJh6VOCGPwU4O0C2/Eqndh1Sc=
-github.com/ijc/Gotty v0.0.0-20170406111628-a8b993ba6abd h1:anPrsicrIi2ColgWTVPk+TrN42hJIWlfPHSBP9S0ZkM=
-github.com/ijc/Gotty v0.0.0-20170406111628-a8b993ba6abd/go.mod h1:3LVOLeyx9XVvwPgrt2be44XgSqndprz1G18rSk8KD84=
+github.com/ianlancetaylor/demangle v0.0.0-20210905161508-09a460cdf81d/go.mod h1:aYm2/VgdVmcIU8iMfdMvDMsRAQjcfZSKFby6HOFvi/w=
+github.com/ianlancetaylor/demangle v0.0.0-20220319035150-800ac71e25c2/go.mod h1:aYm2/VgdVmcIU8iMfdMvDMsRAQjcfZSKFby6HOFvi/w=
github.com/imdario/mergo v0.3.5/go.mod h1:2EnlNZ0deacrJVfApfmtdGgDfMuh/nq6Ok1EcJh5FfA=
github.com/imdario/mergo v0.3.6/go.mod h1:2EnlNZ0deacrJVfApfmtdGgDfMuh/nq6Ok1EcJh5FfA=
github.com/imdario/mergo v0.3.8/go.mod h1:2EnlNZ0deacrJVfApfmtdGgDfMuh/nq6Ok1EcJh5FfA=
github.com/imdario/mergo v0.3.10/go.mod h1:jmQim1M+e3UYxmgPu/WyfjB3N3VflVyUjjjwH0dnCYA=
github.com/imdario/mergo v0.3.11/go.mod h1:jmQim1M+e3UYxmgPu/WyfjB3N3VflVyUjjjwH0dnCYA=
github.com/imdario/mergo v0.3.12/go.mod h1:jmQim1M+e3UYxmgPu/WyfjB3N3VflVyUjjjwH0dnCYA=
-github.com/imdario/mergo v0.3.13 h1:lFzP57bqS/wsqKssCGmtLAb8A0wKjLGrve2q3PPVcBk=
github.com/imdario/mergo v0.3.13/go.mod h1:4lJ1jqUDcsbIECGy0RUJAXNIhg+6ocWgb1ALK2O4oXg=
+github.com/imdario/mergo v0.3.15 h1:M8XP7IuFNsqUx6VPK2P9OSmsYsI/YFaGil0uD21V3dM=
+github.com/imdario/mergo v0.3.15/go.mod h1:WBLT9ZmE3lPoWsEzCh9LPo3TiwVN+ZKEjmz+hD27ysY=
github.com/inconshreveable/mousetrap v1.0.0/go.mod h1:PxqpIevigyE2G7u3NXJIT2ANytuPF1OarO4DADm73n8=
-github.com/inconshreveable/mousetrap v1.0.1 h1:U3uMjPSQEBMNp1lFxmllqCPM6P5u/Xq7Pgzkat/bFNc=
github.com/inconshreveable/mousetrap v1.0.1/go.mod h1:vpF70FUmC8bwa3OWnCshd2FqLfsEA9PFc4w1p2J65bw=
+github.com/inconshreveable/mousetrap v1.1.0 h1:wN+x4NVGpMsO7ErUn/mUI3vEoE6Jt13X2s0bqwp9tc8=
+github.com/inconshreveable/mousetrap v1.1.0/go.mod h1:vpF70FUmC8bwa3OWnCshd2FqLfsEA9PFc4w1p2J65bw=
+github.com/influxdata/influxdb1-client v0.0.0-20191209144304-8bf82d3c094d/go.mod h1:qj24IKcXYK6Iy9ceXlo3Tc+vtHo9lIhSX5JddghvEPo=
github.com/intel/goresctrl v0.2.0/go.mod h1:+CZdzouYFn5EsxgqAQTEzMfwKwuc0fVdMrT9FCCAVRQ=
github.com/intel/goresctrl v0.3.0/go.mod h1:fdz3mD85cmP9sHD8JUlrNWAxvwM86CrbmVXltEKd7zk=
+github.com/ionos-cloud/sdk-go/v6 v6.1.0/go.mod h1:Ox3W0iiEz0GHnfY9e5LmAxwklsxguuNFEUSu0gVRTME=
github.com/j-keck/arping v0.0.0-20160618110441-2cf9dc699c56/go.mod h1:ymszkNOg6tORTn+6F6j+Jc8TOr5osrynvN6ivFWZ2GA=
github.com/j-keck/arping v1.0.2/go.mod h1:aJbELhR92bSk7tp79AWM/ftfc90EfEi2bQJrbBFOsPw=
+github.com/jackc/chunkreader v1.0.0/go.mod h1:RT6O25fNZIuasFJRyZ4R/Y2BbhasbmZXF9QQ7T3kePo=
+github.com/jackc/chunkreader/v2 v2.0.0/go.mod h1:odVSm741yZoC3dpHEUXIqA9tQRhFrgOHwnPIn9lDKlk=
+github.com/jackc/chunkreader/v2 v2.0.1/go.mod h1:odVSm741yZoC3dpHEUXIqA9tQRhFrgOHwnPIn9lDKlk=
+github.com/jackc/pgconn v0.0.0-20190420214824-7e0022ef6ba3/go.mod h1:jkELnwuX+w9qN5YIfX0fl88Ehu4XC3keFuOJJk9pcnA=
+github.com/jackc/pgconn v0.0.0-20190824142844-760dd75542eb/go.mod h1:lLjNuW/+OfW9/pnVKPazfWOgNfH2aPem8YQ7ilXGvJE=
+github.com/jackc/pgconn v0.0.0-20190831204454-2fabfa3c18b7/go.mod h1:ZJKsE/KZfsUgOEh9hBm+xYTstcNHg7UPMVJqRfQxq4s=
+github.com/jackc/pgconn v1.8.0/go.mod h1:1C2Pb36bGIP9QHGBYCjnyhqu7Rv3sGshaQUvmfGIB/o=
+github.com/jackc/pgconn v1.9.0/go.mod h1:YctiPyvzfU11JFxoXokUOOKQXQmDMoJL9vJzHH8/2JY=
+github.com/jackc/pgconn v1.9.1-0.20210724152538-d89c8390a530/go.mod h1:4z2w8XhRbP1hYxkpTuBjTS3ne3J48K83+u0zoyvg2pI=
+github.com/jackc/pgconn v1.12.1/go.mod h1:ZkhRC59Llhrq3oSfrikvwQ5NaxYExr6twkdkMLaKono=
+github.com/jackc/pgio v1.0.0/go.mod h1:oP+2QK2wFfUWgr+gxjoBH9KGBb31Eio69xUb0w5bYf8=
+github.com/jackc/pgmock v0.0.0-20190831213851-13a1b77aafa2/go.mod h1:fGZlG77KXmcq05nJLRkk0+p82V8B8Dw8KN2/V9c/OAE=
+github.com/jackc/pgmock v0.0.0-20201204152224-4fe30f7445fd/go.mod h1:hrBW0Enj2AZTNpt/7Y5rr2xe/9Mn757Wtb2xeBzPv2c=
+github.com/jackc/pgmock v0.0.0-20210724152146-4ad1a8207f65/go.mod h1:5R2h2EEX+qri8jOWMbJCtaPWkrrNc7OHwsp2TCqp7ak=
+github.com/jackc/pgpassfile v1.0.0/go.mod h1:CEx0iS5ambNFdcRtxPj5JhEz+xB6uRky5eyVu/W2HEg=
+github.com/jackc/pgproto3 v1.1.0/go.mod h1:eR5FA3leWg7p9aeAqi37XOTgTIbkABlvcPB3E5rlc78=
+github.com/jackc/pgproto3/v2 v2.0.0-alpha1.0.20190420180111-c116219b62db/go.mod h1:bhq50y+xrl9n5mRYyCBFKkpRVTLYJVWeCc+mEAI3yXA=
+github.com/jackc/pgproto3/v2 v2.0.0-alpha1.0.20190609003834-432c2951c711/go.mod h1:uH0AWtUmuShn0bcesswc4aBTWGvw0cAxIJp+6OB//Wg=
+github.com/jackc/pgproto3/v2 v2.0.0-rc3/go.mod h1:ryONWYqW6dqSg1Lw6vXNMXoBJhpzvWKnT95C46ckYeM=
+github.com/jackc/pgproto3/v2 v2.0.0-rc3.0.20190831210041-4c03ce451f29/go.mod h1:ryONWYqW6dqSg1Lw6vXNMXoBJhpzvWKnT95C46ckYeM=
+github.com/jackc/pgproto3/v2 v2.0.6/go.mod h1:WfJCnwN3HIg9Ish/j3sgWXnAfK8A9Y0bwXYU5xKaEdA=
+github.com/jackc/pgproto3/v2 v2.1.1/go.mod h1:WfJCnwN3HIg9Ish/j3sgWXnAfK8A9Y0bwXYU5xKaEdA=
+github.com/jackc/pgproto3/v2 v2.3.0/go.mod h1:WfJCnwN3HIg9Ish/j3sgWXnAfK8A9Y0bwXYU5xKaEdA=
+github.com/jackc/pgservicefile v0.0.0-20200714003250-2b9c44734f2b/go.mod h1:vsD4gTJCa9TptPL8sPkXrLZ+hDuNrZCnj29CQpr4X1E=
+github.com/jackc/pgtype v0.0.0-20190421001408-4ed0de4755e0/go.mod h1:hdSHsc1V01CGwFsrv11mJRHWJ6aifDLfdV3aVjFF0zg=
+github.com/jackc/pgtype v0.0.0-20190824184912-ab885b375b90/go.mod h1:KcahbBH1nCMSo2DXpzsoWOAfFkdEtEJpPbVLq8eE+mc=
+github.com/jackc/pgtype v0.0.0-20190828014616-a8802b16cc59/go.mod h1:MWlu30kVJrUS8lot6TQqcg7mtthZ9T0EoIBFiJcmcyw=
+github.com/jackc/pgtype v1.8.1-0.20210724151600-32e20a603178/go.mod h1:C516IlIV9NKqfsMCXTdChteoXmwgUceqaLfjg2e3NlM=
+github.com/jackc/pgtype v1.11.0/go.mod h1:LUMuVrfsFfdKGLw+AFFVv6KtHOFMwRgDDzBt76IqCA4=
+github.com/jackc/pgx/v4 v4.0.0-20190420224344-cc3461e65d96/go.mod h1:mdxmSJJuR08CZQyj1PVQBHy9XOp5p8/SHH6a0psbY9Y=
+github.com/jackc/pgx/v4 v4.0.0-20190421002000-1b8f0016e912/go.mod h1:no/Y67Jkk/9WuGR0JG/JseM9irFbnEPbuWV2EELPNuM=
+github.com/jackc/pgx/v4 v4.0.0-pre1.0.20190824185557-6972a5742186/go.mod h1:X+GQnOEnf1dqHGpw7JmHqHc1NxDoalibchSk9/RWuDc=
+github.com/jackc/pgx/v4 v4.12.1-0.20210724153913-640aa07df17c/go.mod h1:1QD0+tgSXP7iUjYm9C1NxKhny7lq6ee99u/z+IHFcgs=
+github.com/jackc/pgx/v4 v4.16.1/go.mod h1:SIhx0D5hoADaiXZVyv+3gSm3LCIIINTVO0PficsvWGQ=
+github.com/jackc/puddle v0.0.0-20190413234325-e4ced69a3a2b/go.mod h1:m4B5Dj62Y0fbyuIc15OsIqK0+JU8nkqQjsgx7dvjSWk=
+github.com/jackc/puddle v0.0.0-20190608224051-11cab39313c9/go.mod h1:m4B5Dj62Y0fbyuIc15OsIqK0+JU8nkqQjsgx7dvjSWk=
+github.com/jackc/puddle v1.1.3/go.mod h1:m4B5Dj62Y0fbyuIc15OsIqK0+JU8nkqQjsgx7dvjSWk=
+github.com/jackc/puddle v1.2.1/go.mod h1:m4B5Dj62Y0fbyuIc15OsIqK0+JU8nkqQjsgx7dvjSWk=
github.com/jbenet/go-context v0.0.0-20150711004518-d14ea06fba99 h1:BQSFePA1RWJOlocH6Fxy8MmwDt+yVQYULKfN0RoTN8A=
github.com/jbenet/go-context v0.0.0-20150711004518-d14ea06fba99/go.mod h1:1lJo3i6rXxKeerYnT8Nvf0QmHCRC1n8sfWVwXF2Frvo=
github.com/jcmturner/aescts/v2 v2.0.0 h1:9YKLH6ey7H4eDBXW8khjYslgyqG2xZikXP0EQFKrle8=
@@ -2009,6 +1968,7 @@ github.com/josharian/intern v1.0.0/go.mod h1:5DoeVV0s6jJacbCEi61lwdGj/aVlrQvzHFF
github.com/jpillora/backoff v1.0.0/go.mod h1:J/6gKK9jxlEcS3zixgDgUAsiuZ7yrSoa/FX5e0EB2j4=
github.com/json-iterator/go v1.1.6/go.mod h1:+SdeFBvtyEkXs7REEP0seUULqWtbJapLOCVDaaPEHmU=
github.com/json-iterator/go v1.1.7/go.mod h1:KdQUCv79m/52Kvf8AW2vK1V8akMuk1QjK/uOdHXbAo4=
+github.com/json-iterator/go v1.1.8/go.mod h1:KdQUCv79m/52Kvf8AW2vK1V8akMuk1QjK/uOdHXbAo4=
github.com/json-iterator/go v1.1.9/go.mod h1:KdQUCv79m/52Kvf8AW2vK1V8akMuk1QjK/uOdHXbAo4=
github.com/json-iterator/go v1.1.10/go.mod h1:KdQUCv79m/52Kvf8AW2vK1V8akMuk1QjK/uOdHXbAo4=
github.com/json-iterator/go v1.1.11/go.mod h1:KdQUCv79m/52Kvf8AW2vK1V8akMuk1QjK/uOdHXbAo4=
@@ -2021,9 +1981,9 @@ github.com/julienschmidt/httprouter v1.2.0/go.mod h1:SYymIcj16QtmaHHD7aYtjjsJG7V
github.com/julienschmidt/httprouter v1.3.0/go.mod h1:JR6WtHb+2LUe8TCKY3cZOxFyyO8IZAc4RVcycCCAKdM=
github.com/jung-kurt/gofpdf v1.0.0/go.mod h1:7Id9E/uU8ce6rXgefFLlgrJj/GYY22cpxn+r32jIOes=
github.com/jung-kurt/gofpdf v1.0.3-0.20190309125859-24315acbbda5/go.mod h1:7Id9E/uU8ce6rXgefFLlgrJj/GYY22cpxn+r32jIOes=
-github.com/kballard/go-shellquote v0.0.0-20180428030007-95032a82bc51 h1:Z9n2FFNUXsshfwJMBgNA0RU6/i7WVaAegv3PtuIHPMs=
+github.com/karrick/godirwalk v1.8.0/go.mod h1:H5KPZjojv4lE+QYImBI8xVtrBRgYrIVsaRPx4tDPEn4=
+github.com/karrick/godirwalk v1.10.3/go.mod h1:RoGL9dQei4vP9ilrpETWE8CLOZ1kiN0LhBygSwrAsHA=
github.com/kballard/go-shellquote v0.0.0-20180428030007-95032a82bc51/go.mod h1:CzGEWj7cYgsdH8dAjBGEr58BoE7ScuLd+fwFZ44+/x8=
-github.com/kevinburke/ssh_config v0.0.0-20201106050909-4977a11b4351/go.mod h1:CT57kijsi8u/K/BOFA39wgDQJ9CxiF4nAY/ojJ6r6mM=
github.com/kevinburke/ssh_config v1.2.0 h1:x584FjTGwHzMwvHx18PXxbBVzfnxogHaAReU4gf13a4=
github.com/kevinburke/ssh_config v1.2.0/go.mod h1:CT57kijsi8u/K/BOFA39wgDQJ9CxiF4nAY/ojJ6r6mM=
github.com/keybase/go-crypto v0.0.0-20161004153544-93f5b35093ba/go.mod h1:ghbZscTyKdM07+Fw3KSi0hcJm+AlEUWj8QLlPtijN/M=
@@ -2036,14 +1996,15 @@ github.com/klauspost/compress v1.10.3/go.mod h1:aoV0uJVorq1K+umq18yTdKaF57EivdYs
github.com/klauspost/compress v1.11.3/go.mod h1:aoV0uJVorq1K+umq18yTdKaF57EivdYsUV+/s2qKfXs=
github.com/klauspost/compress v1.11.13/go.mod h1:aoV0uJVorq1K+umq18yTdKaF57EivdYsUV+/s2qKfXs=
github.com/klauspost/compress v1.12.3/go.mod h1:8dP1Hq4DHOhN9w426knH3Rhby4rFm6D8eO+e+Dq5Gzg=
-github.com/klauspost/compress v1.13.5/go.mod h1:/3/Vjq9QcHkK5uEr5lBEmyoZ1iFhe47etQ6QUkpK6sk=
github.com/klauspost/compress v1.13.6/go.mod h1:/3/Vjq9QcHkK5uEr5lBEmyoZ1iFhe47etQ6QUkpK6sk=
+github.com/klauspost/compress v1.15.1/go.mod h1:/3/Vjq9QcHkK5uEr5lBEmyoZ1iFhe47etQ6QUkpK6sk=
github.com/klauspost/compress v1.15.9/go.mod h1:PhcZ0MbTNciWF3rruxRgKxI5NkcHHrHUDtV4Yw2GlzU=
github.com/klauspost/compress v1.15.11/go.mod h1:QPwzmACJjUTFsnSHH934V6woptycfrDDJnH7hvFVbGM=
github.com/klauspost/compress v1.16.0/go.mod h1:ntbaceVETuRiXiv4DpjP66DpAtAGkEQskQzEyD//IeE=
github.com/klauspost/compress v1.16.5/go.mod h1:ntbaceVETuRiXiv4DpjP66DpAtAGkEQskQzEyD//IeE=
github.com/klauspost/cpuid/v2 v2.0.4/go.mod h1:FInQzS24/EEf25PyTYn52gqo7WaD8xa0213Md/qVLRg=
github.com/klauspost/cpuid/v2 v2.0.9/go.mod h1:FInQzS24/EEf25PyTYn52gqo7WaD8xa0213Md/qVLRg=
+github.com/kolo/xmlrpc v0.0.0-20201022064351-38db28db192b/go.mod h1:pcaDhQK0/NJZEvtCO0qQPPropqV0sJOJ6YW7X+9kRwM=
github.com/konsorten/go-windows-terminal-sequences v1.0.1/go.mod h1:T0+1ngSBFLxvqU3pZ+m/2kptfBszLMUkC4ZK/EgS/cQ=
github.com/konsorten/go-windows-terminal-sequences v1.0.2/go.mod h1:T0+1ngSBFLxvqU3pZ+m/2kptfBszLMUkC4ZK/EgS/cQ=
github.com/konsorten/go-windows-terminal-sequences v1.0.3/go.mod h1:T0+1ngSBFLxvqU3pZ+m/2kptfBszLMUkC4ZK/EgS/cQ=
@@ -2052,11 +2013,12 @@ github.com/kr/logfmt v0.0.0-20140226030751-b84e30acd515/go.mod h1:+0opPa2QZZtGFB
github.com/kr/pretty v0.1.0/go.mod h1:dAy3ld7l9f0ibDNOQOHHMYYIIbhfbHSm3C4ZsoJORNo=
github.com/kr/pretty v0.2.0/go.mod h1:ipq/a2n7PKx3OHsz4KJII5eveXtPO4qwEXGdVfWzfnI=
github.com/kr/pretty v0.2.1/go.mod h1:ipq/a2n7PKx3OHsz4KJII5eveXtPO4qwEXGdVfWzfnI=
-github.com/kr/pretty v0.3.0 h1:WgNl7dwNpEZ6jJ9k1snq4pZsg7DOEN8hP9Xw0Tsjwk0=
github.com/kr/pretty v0.3.0/go.mod h1:640gp4NfQd8pI5XOwp5fnNeVWj67G7CFk/SaSQn7NBk=
+github.com/kr/pretty v0.3.1 h1:flRD4NNwYAUpkphVc1HcthR4KEIFJ65n8Mw5qdRn3LE=
+github.com/kr/pretty v0.3.1/go.mod h1:hoEshYVHaxMs3cyo3Yncou5ZscifuDolrwPKZanG3xk=
github.com/kr/pty v1.1.1/go.mod h1:pFQYn66WHrOpPYNljwOMqo10TkYh1fy3cYio2l3bCsQ=
-github.com/kr/pty v1.1.4/go.mod h1:pFQYn66WHrOpPYNljwOMqo10TkYh1fy3cYio2l3bCsQ=
github.com/kr/pty v1.1.5/go.mod h1:9r2w37qlBe7rQ6e1fg1S/9xpWHSnaqNdHD3WcMdbPDA=
+github.com/kr/pty v1.1.8/go.mod h1:O1sed60cT9XZ5uDucP5qwvh+TE3NnUj51EiZO/lmSfw=
github.com/kr/text v0.1.0/go.mod h1:4Jbv+DJW3UT/LiOwJeYQe1efqtUx/iVham/4vfdArNI=
github.com/kr/text v0.2.0 h1:5Nx0Ya0ZqY2ygV366QzturHI13Jq95ApcVaJBhpS+AY=
github.com/kr/text v0.2.0/go.mod h1:eLer722TekiGuMkidMxC/pM04lWEeraHUUmBw8l2grE=
@@ -2071,13 +2033,22 @@ github.com/lestrrat-go/iter v1.0.1/go.mod h1:zIdgO1mRKhn8l9vrZJZz9TUMMFbQbLeTsbq
github.com/lestrrat-go/jwx v1.2.25/go.mod h1:zoNuZymNl5lgdcu6P7K6ie2QRll5HVfF4xwxBBK1NxY=
github.com/lestrrat-go/option v1.0.0/go.mod h1:5ZHFbivi4xwXxhxY9XHDe2FHo6/Z7WWmtT7T5nBBp3I=
github.com/lib/pq v0.0.0-20180327071824-d34b9ff171c2/go.mod h1:5WUZQaWbwv1U+lTReE5YruASi9Al49XbQIvNi/34Woo=
+github.com/lib/pq v1.0.0/go.mod h1:5WUZQaWbwv1U+lTReE5YruASi9Al49XbQIvNi/34Woo=
+github.com/lib/pq v1.1.0/go.mod h1:5WUZQaWbwv1U+lTReE5YruASi9Al49XbQIvNi/34Woo=
github.com/lib/pq v1.2.0/go.mod h1:5WUZQaWbwv1U+lTReE5YruASi9Al49XbQIvNi/34Woo=
github.com/lib/pq v1.10.2/go.mod h1:AlVN5x4E4T544tWzH6hKfbfQvm3HdbOxrmggDNAPY9o=
+github.com/lib/pq v1.10.6/go.mod h1:AlVN5x4E4T544tWzH6hKfbfQvm3HdbOxrmggDNAPY9o=
+github.com/lightstep/lightstep-tracer-common/golang/gogo v0.0.0-20190605223551-bc2310a04743/go.mod h1:qklhhLq1aX+mtWk9cPHPzaBjWImj5ULL6C7HFJtXQMM=
+github.com/lightstep/lightstep-tracer-go v0.18.1/go.mod h1:jlF1pusYV4pidLvZ+XD0UBX0ZE6WURAspgAczcDHrL4=
+github.com/linode/linodego v1.4.0/go.mod h1:PVsRxSlOiJyvG4/scTszpmZDTdgS+to3X6eS8pRrWI8=
+github.com/linode/linodego v1.8.0/go.mod h1:heqhl91D8QTPVm2k9qZHP78zzbOdTFLXE9NJc3bcc50=
github.com/linuxkit/virtsock v0.0.0-20201010232012-f8cee7dfc7a3/go.mod h1:3r6x7q95whyfWQpmGZTu3gk3v2YkMi05HEzl7Tf7YEo=
+github.com/lucasb-eyer/go-colorful v1.2.0 h1:1nnpGOrhyZZuNyfu1QjKiUICQ74+3FNCN69Aj6K7nkY=
+github.com/lucasb-eyer/go-colorful v1.2.0/go.mod h1:R4dSotOR9KMtayYi1e77YzuveK+i7ruzyGqttikkLy0=
github.com/lyft/protoc-gen-star v0.6.0/go.mod h1:TGAoBVkt8w7MPG72TrKIu85MIdXwDuzJYeZuUPFPNwA=
github.com/lyft/protoc-gen-star v0.6.1/go.mod h1:TGAoBVkt8w7MPG72TrKIu85MIdXwDuzJYeZuUPFPNwA=
github.com/lyft/protoc-gen-star/v2 v2.0.1/go.mod h1:RcCdONR2ScXaYnQC5tUzxzlpA3WVYF7/opLeUgcQs/o=
-github.com/lyft/protoc-gen-star/v2 v2.0.3/go.mod h1:amey7yeodaJhXSbf/TlLvWiqQfLOSpEk//mLlc+axEk=
+github.com/lyft/protoc-gen-validate v0.0.13/go.mod h1:XbGvPuh87YZc5TdIa2/I4pLk0QoUACkjt2znoq26NVQ=
github.com/magiconair/properties v1.8.0/go.mod h1:PppfXfuXeibc/6YijjN8zIbojt8czPbwD3XqdrwzmxQ=
github.com/magiconair/properties v1.8.1/go.mod h1:PppfXfuXeibc/6YijjN8zIbojt8czPbwD3XqdrwzmxQ=
github.com/mailru/easyjson v0.0.0-20160728113105-d5b7844b561a/go.mod h1:C1wdFJiN94OJF2b5HbByQZoLdCWB1Yqtg26g4irojpc=
@@ -2085,51 +2056,59 @@ github.com/mailru/easyjson v0.0.0-20190614124828-94de47d64c63/go.mod h1:C1wdFJiN
github.com/mailru/easyjson v0.0.0-20190626092158-b2ccc519800e/go.mod h1:C1wdFJiN94OJF2b5HbByQZoLdCWB1Yqtg26g4irojpc=
github.com/mailru/easyjson v0.7.0/go.mod h1:KAzv3t3aY1NaHWoQz1+4F1ccyAH66Jk7yos7ldAVICs=
github.com/mailru/easyjson v0.7.6/go.mod h1:xzfreul335JAWq5oZzymOObrkdz5UnU4kGfJJLY9Nlc=
+github.com/mailru/easyjson v0.7.7/go.mod h1:xzfreul335JAWq5oZzymOObrkdz5UnU4kGfJJLY9Nlc=
+github.com/markbates/oncer v0.0.0-20181203154359-bf2de49a0be2/go.mod h1:Ld9puTsIW75CHf65OeIOkyKbteujpZVXDpWK6YGZbxE=
+github.com/markbates/safe v1.0.1/go.mod h1:nAqgmRi7cY2nqMc92/bSEeQA+R4OheNU2T1kNSCBdG0=
github.com/marstr/guid v1.1.0/go.mod h1:74gB1z2wpxxInTG6yaqA7KrtM0NZ+RbrcqDvYHefzho=
github.com/matryer/is v1.2.0 h1:92UTHpy8CDwaJ08GqLDzhhuixiBUUD1p3AU6PHddz4A=
github.com/matryer/is v1.2.0/go.mod h1:2fLPjFQM9rhQ15aVEtbuwhJinnOqrmgXPNdZsdwlWXA=
github.com/mattn/go-colorable v0.0.9/go.mod h1:9vuHe8Xs5qXnSaW/c/ABM9alt+Vo+STaOChaDxuIBZU=
github.com/mattn/go-colorable v0.1.1/go.mod h1:FuOcm+DKB9mbwrcAfNl7/TZVBZ6rcnceauSikq3lYCQ=
-github.com/mattn/go-colorable v0.1.2/go.mod h1:U0ppj6V5qS13XJ6of8GYAs25YV2eR4EVcfRqFIhoBtE=
github.com/mattn/go-colorable v0.1.4/go.mod h1:U0ppj6V5qS13XJ6of8GYAs25YV2eR4EVcfRqFIhoBtE=
github.com/mattn/go-colorable v0.1.6/go.mod h1:u6P/XSegPjTcexA+o6vUJrdnUu04hMope9wVRipJSqc=
+github.com/mattn/go-colorable v0.1.8/go.mod h1:u6P/XSegPjTcexA+o6vUJrdnUu04hMope9wVRipJSqc=
github.com/mattn/go-colorable v0.1.9/go.mod h1:u6P/XSegPjTcexA+o6vUJrdnUu04hMope9wVRipJSqc=
github.com/mattn/go-colorable v0.1.12/go.mod h1:u5H1YNBxpqRaxsYJYSkiCWKzEfiAb1Gb520KVy5xxl4=
github.com/mattn/go-colorable v0.1.13 h1:fFA4WZxdEF4tXPZVKMLwD8oUnCTTo08duU7wxecdEvA=
github.com/mattn/go-colorable v0.1.13/go.mod h1:7S9/ev0klgBDR4GtXTXX8a3vIGJpMovkB8vQcUbaXHg=
-github.com/mattn/go-ieproxy v0.0.1 h1:qiyop7gCflfhwCzGyeT0gro3sF9AIg9HU98JORTkqfI=
-github.com/mattn/go-ieproxy v0.0.1/go.mod h1:pYabZ6IHcRpFh7vIaLfK7rdcWgFEb3SFJ6/gNWuh88E=
github.com/mattn/go-isatty v0.0.3/go.mod h1:M+lRXTBqGeGNdLjl/ufCoiOlB5xdOkqRJdNxMWT7Zi4=
github.com/mattn/go-isatty v0.0.4/go.mod h1:M+lRXTBqGeGNdLjl/ufCoiOlB5xdOkqRJdNxMWT7Zi4=
github.com/mattn/go-isatty v0.0.5/go.mod h1:Iq45c/XA43vh69/j3iqttzPXn0bhXyGjM0Hdxcsrc5s=
+github.com/mattn/go-isatty v0.0.7/go.mod h1:Iq45c/XA43vh69/j3iqttzPXn0bhXyGjM0Hdxcsrc5s=
github.com/mattn/go-isatty v0.0.8/go.mod h1:Iq45c/XA43vh69/j3iqttzPXn0bhXyGjM0Hdxcsrc5s=
github.com/mattn/go-isatty v0.0.10/go.mod h1:qgIWMr58cqv1PHHyhnkY9lrL7etaEgOFcMEpPG5Rm84=
github.com/mattn/go-isatty v0.0.11/go.mod h1:PhnuNfih5lzO57/f3n+odYbM4JtupLOxQOAqxQCu2WE=
github.com/mattn/go-isatty v0.0.12/go.mod h1:cbi8OIDigv2wuxKPP5vlRcQ1OAZbq2CE4Kysco4FUpU=
github.com/mattn/go-isatty v0.0.14/go.mod h1:7GGIvUiUoEMVVmxf/4nioHXj79iQHKdU27kJ6hsGG94=
github.com/mattn/go-isatty v0.0.16/go.mod h1:kYGgaQfpe5nmfYZH+SKPsOc2e4SrIfOl2e/yFXSvRLM=
-github.com/mattn/go-isatty v0.0.17 h1:BTarxUcIeDqL27Mc+vyvdWYSL28zpIhv3RoTdsLMPng=
github.com/mattn/go-isatty v0.0.17/go.mod h1:kYGgaQfpe5nmfYZH+SKPsOc2e4SrIfOl2e/yFXSvRLM=
+github.com/mattn/go-isatty v0.0.18 h1:DOKFKCQ7FNG2L1rbrmstDN4QVRdS89Nkh85u68Uwp98=
+github.com/mattn/go-isatty v0.0.18/go.mod h1:W+V8PltTTMOvKvAeJH7IuucS94S2C6jfK/D7dTCTo3Y=
+github.com/mattn/go-localereader v0.0.1 h1:ygSAOl7ZXTx4RdPYinUpg6W99U8jWvWi9Ye2JC/oIi4=
+github.com/mattn/go-localereader v0.0.1/go.mod h1:8fBrzywKY7BI3czFoHkuzRoWE9C+EiG4R1k4Cjx5p88=
github.com/mattn/go-runewidth v0.0.2/go.mod h1:LwmH8dsx7+W8Uxz3IHJYH5QSwggIsqBzpuz5H//U1FU=
github.com/mattn/go-runewidth v0.0.4/go.mod h1:LwmH8dsx7+W8Uxz3IHJYH5QSwggIsqBzpuz5H//U1FU=
github.com/mattn/go-runewidth v0.0.9/go.mod h1:H031xJmbD/WCDINGzjvQ9THkh0rPKHF+m2gUSrubnMI=
-github.com/mattn/go-runewidth v0.0.13 h1:lTGmDsbAYt5DmK6OnoV7EuIF1wEIFAcxld6ypU4OSgU=
-github.com/mattn/go-runewidth v0.0.13/go.mod h1:Jdepj2loyihRzMpdS35Xk/zdY8IAYHsh153qUoGf23w=
+github.com/mattn/go-runewidth v0.0.12/go.mod h1:RAqKPSqVFrSLVXbA8x7dzmKdmGzieGRCM46jaSJTDAk=
+github.com/mattn/go-runewidth v0.0.14 h1:+xnbZSEeDbOIg5/mE6JF0w6n9duR1l3/WmbinWVwUuU=
+github.com/mattn/go-runewidth v0.0.14/go.mod h1:Jdepj2loyihRzMpdS35Xk/zdY8IAYHsh153qUoGf23w=
github.com/mattn/go-shellwords v1.0.3/go.mod h1:3xCvwCdWdlDJUrvuMn7Wuy9eWs4pE8vqg+NOMyg4B2o=
github.com/mattn/go-shellwords v1.0.6/go.mod h1:3xCvwCdWdlDJUrvuMn7Wuy9eWs4pE8vqg+NOMyg4B2o=
github.com/mattn/go-shellwords v1.0.12/go.mod h1:EZzvwXDESEeg03EKmM+RmDnNOPKG4lLtQsUlTZDWQ8Y=
github.com/mattn/go-sqlite3 v1.14.14/go.mod h1:NyWgC/yNuGj7Q9rpYnZvas74GogHl5/Z4A/KQRfk6bU=
-github.com/mattn/go-sqlite3 v1.14.15/go.mod h1:2eHXhiwb8IkHr+BDWZGa96P6+rkvnG63S2DGjv9HUNg=
github.com/matttproud/golang_protobuf_extensions v1.0.1/go.mod h1:D8He9yQNgCq6Z5Ld7szi9bcBfOoFv/3dc6xSMkL2PC0=
github.com/matttproud/golang_protobuf_extensions v1.0.2-0.20181231171920-c182affec369/go.mod h1:BSXmuO+STAnVfrANrmjBb36TMTDstsz7MSK+HVaYKv4=
github.com/matttproud/golang_protobuf_extensions v1.0.2/go.mod h1:BSXmuO+STAnVfrANrmjBb36TMTDstsz7MSK+HVaYKv4=
github.com/matttproud/golang_protobuf_extensions v1.0.4/go.mod h1:BSXmuO+STAnVfrANrmjBb36TMTDstsz7MSK+HVaYKv4=
github.com/maxbrunsfeld/counterfeiter/v6 v6.2.2/go.mod h1:eD9eIE7cdwcMi9rYluz88Jz2VyhSmden33/aXg4oVIY=
-github.com/mgutz/ansi v0.0.0-20170206155736-9520e82c474b h1:j7+1HpAFS1zy5+Q4qx1fWh90gTKwiN4QCGoY9TWyyO4=
-github.com/mgutz/ansi v0.0.0-20170206155736-9520e82c474b/go.mod h1:01TrycV0kFyexm33Z7vhZRXopbI8J3TDReVlkTgMUxE=
+github.com/microsoft/ApplicationInsights-Go v0.4.4/go.mod h1:fKRUseBqkw6bDiXTs3ESTiU/4YTIHsQS4W3fP2ieF4U=
github.com/miekg/dns v1.0.14/go.mod h1:W1PPwlIAgtquWBMBEV9nkV9Cazfe8ScdGz/Lj7v3Nrg=
github.com/miekg/dns v1.1.25/go.mod h1:bPDLeHnStXmXAq1m/Ch/hvfNHr14JKNPMBo3VZKjuso=
+github.com/miekg/dns v1.1.26/go.mod h1:bPDLeHnStXmXAq1m/Ch/hvfNHr14JKNPMBo3VZKjuso=
+github.com/miekg/dns v1.1.41/go.mod h1:p6aan82bvRIyn+zDIv9xYNUpwa73JcSh9BKwknJysuI=
github.com/miekg/dns v1.1.43/go.mod h1:+evo5L0630/F6ca/Z9+GAqzhjGyn8/c+TBaOyfEl0V4=
+github.com/miekg/dns v1.1.48/go.mod h1:e3IlAVfNqAllflbibAZEWOXOQ+Ynzk/dDozDxY7XnME=
+github.com/miekg/dns v1.1.50/go.mod h1:e3IlAVfNqAllflbibAZEWOXOQ+Ynzk/dDozDxY7XnME=
github.com/miekg/pkcs11 v1.0.3/go.mod h1:XsNlhZGX73bx86s2hdc/FuaLm2CPZJemRLMA+WTFxgs=
github.com/miekg/pkcs11 v1.1.1/go.mod h1:XsNlhZGX73bx86s2hdc/FuaLm2CPZJemRLMA+WTFxgs=
github.com/minio/asm2plan9s v0.0.0-20200509001527-cdd76441f9d8/go.mod h1:mC1jAcsrzbxHt8iiaC+zU4b1ylILSosueou12R++wfY=
@@ -2137,6 +2116,7 @@ github.com/minio/c2goasm v0.0.0-20190812172519-36a3d3bbc4f3/go.mod h1:RagcQ7I8Ie
github.com/minio/sha256-simd v1.0.0/go.mod h1:OuYzVNI5vcoYIAmbIvHPl3N3jUzVedXbKy5RFepssQM=
github.com/mistifyio/go-zfs v2.1.2-0.20190413222219-f784269be439+incompatible/go.mod h1:8AuVvqP/mXw1px98n46wfvcGfQ4ci2FwoAjKYxuo3Z4=
github.com/mitchellh/cli v1.0.0/go.mod h1:hNIlj7HEI86fIcpObd7a0FcrxTWetlwJDGcceTlRvqc=
+github.com/mitchellh/cli v1.1.0/go.mod h1:xcISNoH86gajksDmfB23e/pu+B+GeFRMYmoHXxx3xhI=
github.com/mitchellh/cli v1.1.5 h1:OxRIeJXpAMztws/XHlN2vu6imG5Dpq+j61AzAX5fLng=
github.com/mitchellh/cli v1.1.5/go.mod h1:v8+iFts2sPIKUV1ltktPXMCC8fumSKFItNcD2cLtRR4=
github.com/mitchellh/colorstring v0.0.0-20190213212951-d06e56a500db/go.mod h1:l0dey0ia/Uv7NcFFVbCLtqEBQbrT4OCwCSKTEv6enCw=
@@ -2162,11 +2142,11 @@ github.com/mitchellh/hashstructure v1.1.0/go.mod h1:xUDAozZz0Wmdiufv0uyhnHkUTN6/
github.com/mitchellh/iochan v1.0.0/go.mod h1:JwYml1nuB7xOzsp52dPpHFffvOCDupsG0QubkSMEySY=
github.com/mitchellh/mapstructure v0.0.0-20160808181253-ca63d7c062ee/go.mod h1:FVVH3fgwuzCH5S8UJGiWEs2h04kUh9fWfEaFds41c1Y=
github.com/mitchellh/mapstructure v1.1.2/go.mod h1:FVVH3fgwuzCH5S8UJGiWEs2h04kUh9fWfEaFds41c1Y=
-github.com/mitchellh/mapstructure v1.3.2/go.mod h1:bFUtVrKA4DC2yAKiSyO/QUcy7e+RRV2QTWOzhPopBRo=
github.com/mitchellh/mapstructure v1.3.3/go.mod h1:bFUtVrKA4DC2yAKiSyO/QUcy7e+RRV2QTWOzhPopBRo=
github.com/mitchellh/mapstructure v1.4.0/go.mod h1:bFUtVrKA4DC2yAKiSyO/QUcy7e+RRV2QTWOzhPopBRo=
github.com/mitchellh/mapstructure v1.4.1/go.mod h1:bFUtVrKA4DC2yAKiSyO/QUcy7e+RRV2QTWOzhPopBRo=
github.com/mitchellh/mapstructure v1.4.2/go.mod h1:bFUtVrKA4DC2yAKiSyO/QUcy7e+RRV2QTWOzhPopBRo=
+github.com/mitchellh/mapstructure v1.4.3/go.mod h1:bFUtVrKA4DC2yAKiSyO/QUcy7e+RRV2QTWOzhPopBRo=
github.com/mitchellh/mapstructure v1.5.0 h1:jeMsZIYE/09sWLaz43PL7Gy6RuMjD2eJVyuac5Z2hdY=
github.com/mitchellh/mapstructure v1.5.0/go.mod h1:bFUtVrKA4DC2yAKiSyO/QUcy7e+RRV2QTWOzhPopBRo=
github.com/mitchellh/osext v0.0.0-20151018003038-5e2d6d41470f/go.mod h1:OkQIRizQZAeMln+1tSwduZz7+Af5oFlKirV/MSYes2A=
@@ -2193,6 +2173,7 @@ github.com/moby/sys/symlink v0.2.0/go.mod h1:7uZVF2dqJjG/NsClqul95CqKOBRQyYSNnJ6
github.com/moby/term v0.0.0-20200312100748-672ec06f55cd/go.mod h1:DdlQx2hp0Ss5/fLikoLlEeIYiATotOjgB//nb973jeo=
github.com/moby/term v0.0.0-20201216013528-df9cb8a40635/go.mod h1:FBS0z0QWA44HXygs7VXDUOGoN/1TV3RuWkLO04am3wc=
github.com/moby/term v0.0.0-20210610120745-9d4ed1856297/go.mod h1:vgPCkQMyxTZ7IDy8SXRufE172gr8+K/JE/7hHFxHW3A=
+github.com/moby/term v0.0.0-20210619224110-3f7ff695adc6/go.mod h1:E2VnQOmVuvZB6UYnnDB0qG5Nq/1tD9acaOpo6xmt0Kw=
github.com/moby/term v0.0.0-20220808134915-39b0c02b01ae/go.mod h1:E2VnQOmVuvZB6UYnnDB0qG5Nq/1tD9acaOpo6xmt0Kw=
github.com/moby/term v0.0.0-20221205130635-1aeaba878587/go.mod h1:8FzsFHVUBGZdbDsJw/ot+X+d5HLUbvklYLJ9uGfcI3Y=
github.com/moby/term v0.5.0 h1:xt8Q1nalod/v7BqbG21f8mQPqH+xAaC9C3N3wfWbVP0=
@@ -2205,11 +2186,20 @@ github.com/modern-go/reflect2 v1.0.1/go.mod h1:bx2lNnkwVCuqBIxFjflWJWanXIb3Rllmb
github.com/modern-go/reflect2 v1.0.2 h1:xBagoLtFs94CBntxluKeaWgTMpvLxC4ur3nMaC9Gz0M=
github.com/modern-go/reflect2 v1.0.2/go.mod h1:yWuevngMOJpCy52FWWMvUC8ws7m/LJsjYzDa0/r8luk=
github.com/modocache/gover v0.0.0-20171022184752-b58185e213c5/go.mod h1:caMODM3PzxT8aQXRPkAt8xlV/e7d7w8GM5g0fa5F0D8=
+github.com/montanaflynn/stats v0.0.0-20171201202039-1bf9dbcd8cbe/go.mod h1:wL8QJuTMNUDYhXwkmfOly8iTdp5TEcJFWZD2D7SIkUc=
github.com/montanaflynn/stats v0.6.6/go.mod h1:etXPPgVO6n31NxCd9KQUMvCM+ve0ruNzt6R8Bnaayow=
github.com/morikuni/aec v1.0.0 h1:nP9CBfwrvYnBRgY6qfDQkygYDmYwOilePFkwzv4dU8A=
github.com/morikuni/aec v1.0.0/go.mod h1:BbKIizmSmc5MMPqRYbxO4ZU0S0+P200+tUnFx7PXmsc=
github.com/mr-tron/base58 v1.2.0/go.mod h1:BinMc/sQntlIE1frQmRFPUoPA1Zkr8VRgBdjWI2mNwc=
github.com/mrunalp/fileutils v0.5.0/go.mod h1:M1WthSahJixYnrXQl/DFQuteStB1weuxD2QJNHXfbSQ=
+github.com/muesli/ansi v0.0.0-20211018074035-2e021307bc4b h1:1XF24mVaiu7u+CFywTdcDo2ie1pzzhwjt6RHqzpMU34=
+github.com/muesli/ansi v0.0.0-20211018074035-2e021307bc4b/go.mod h1:fQuZ0gauxyBcmsdE3ZT4NasjaRdxmbCS0jRHsrWu3Ho=
+github.com/muesli/cancelreader v0.2.2 h1:3I4Kt4BQjOR54NavqnDogx/MIoWBFa0StPA8ELUXHmA=
+github.com/muesli/cancelreader v0.2.2/go.mod h1:3XuTXfFS2VjM+HTLZY9Ak0l6eUKfijIfMUZ4EgX0QYo=
+github.com/muesli/reflow v0.3.0 h1:IFsN6K9NfGtjeggFP+68I4chLZV2yIKsXJFNZ+eWh6s=
+github.com/muesli/reflow v0.3.0/go.mod h1:pbwTDkVPibjO2kyvBQRBxTWEEGDGq0FlB1BIKtnHY/8=
+github.com/muesli/termenv v0.15.1 h1:UzuTb/+hhlBugQz28rpzey4ZuKcZ03MeKsoG7IJZIxs=
+github.com/muesli/termenv v0.15.1/go.mod h1:HeAQPTzpfs016yGtA4g00CsdYnVLJvxsS4ANqrZs2sQ=
github.com/munnerz/goautoneg v0.0.0-20120707110453-a547fc61f48d/go.mod h1:+n7T8mK8HuQTcFwEeznm/DIxMOiR9yIdICNftLE1DvQ=
github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822/go.mod h1:+n7T8mK8HuQTcFwEeznm/DIxMOiR9yIdICNftLE1DvQ=
github.com/mwitkow/go-conntrack v0.0.0-20161129095857-cc309e4a2223/go.mod h1:qRWi+5nqEBWmkhHvq77mSJWrCKwh8bxhgT7d/eI7P4U=
@@ -2217,6 +2207,13 @@ github.com/mwitkow/go-conntrack v0.0.0-20190716064945-2f068394615f/go.mod h1:qRW
github.com/mxk/go-flowrate v0.0.0-20140419014527-cca7078d478f/go.mod h1:ZdcZmHo+o7JKHSa8/e818NopupXU1YMK5fe1lsApnBw=
github.com/natefinch/atomic v1.0.1 h1:ZPYKxkqQOx3KZ+RsbnP/YsgvxWQPGxjC0oBt2AhwV0A=
github.com/natefinch/atomic v1.0.1/go.mod h1:N/D/ELrljoqDyT3rZrsUmtsuzvHkeB/wWjHV22AZRbM=
+github.com/nats-io/jwt v0.3.0/go.mod h1:fRYCDE99xlTsqUzISS1Bi75UBJ6ljOJQOAAu5VglpSg=
+github.com/nats-io/jwt v0.3.2/go.mod h1:/euKqTS1ZD+zzjYrY7pseZrTtWQSjujC7xjPc8wL6eU=
+github.com/nats-io/nats-server/v2 v2.1.2/go.mod h1:Afk+wRZqkMQs/p45uXdrVLuab3gwv3Z8C4HTBu8GD/k=
+github.com/nats-io/nats.go v1.9.1/go.mod h1:ZjDU1L/7fJ09jvUSRVBR2e7+RnLiiIQyqyzEE/Zbp4w=
+github.com/nats-io/nkeys v0.1.0/go.mod h1:xpnFELMwJABBLVhffcfd1MZx6VsNRFpEugbxziKVo7w=
+github.com/nats-io/nkeys v0.1.3/go.mod h1:xpnFELMwJABBLVhffcfd1MZx6VsNRFpEugbxziKVo7w=
+github.com/nats-io/nuid v1.0.1/go.mod h1:19wcPz3Ph3q0Jbyiqsd0kePYG7A95tJPxeL+1OSON2c=
github.com/ncw/swift v1.0.47/go.mod h1:23YIA4yWVnGwv2dQlN4bB7egfYX6YLn0Yo/S6zZO/ZM=
github.com/networkplumbing/go-nft v0.2.0/go.mod h1:HnnM+tYvlGAsMU7yoYwXEVLLiDW9gdMmb5HoGcwpuQs=
github.com/niemeyer/pretty v0.0.0-20200227124842-a10e7caefd8e/go.mod h1:zD1mROLANZcx1PVRCS0qkT7pwLkGfwJo4zjcN/Tysno=
@@ -2224,6 +2221,7 @@ github.com/nightlyone/lockfile v1.0.0 h1:RHep2cFKK4PonZJDdEl4GmkabuhbsRMgk/k3uAm
github.com/nightlyone/lockfile v1.0.0/go.mod h1:rywoIealpdNse2r832aiD9jRk8ErCatROs6LzC841CI=
github.com/nxadm/tail v1.4.4/go.mod h1:kenIhsEOeOJmVchQTgglprH7qJGnHDVpk1VPCcaMI8A=
github.com/nxadm/tail v1.4.8/go.mod h1:+ncqLTQzXmGhMZNUePPaPqPvBxHAIsmXswZKocGu+AU=
+github.com/oklog/oklog v0.3.2/go.mod h1:FCV+B7mhrz4o+ueLpx+KqkyXRGMWOYEvfiXtdGtbWGs=
github.com/oklog/run v1.0.0/go.mod h1:dlhp/R75TPv97u0XWUtDeV/lRKWPKSdTuV0TZvrmrQA=
github.com/oklog/run v1.1.0 h1:GEenZ1cK0+q0+wsJew9qUg/DyD8k3JzYsZAi5gYi2mA=
github.com/oklog/run v1.1.0/go.mod h1:sVPdnTZT1zYwAJeCMu2Th4T21pA3FPOQRfWjQlk7DVU=
@@ -2233,6 +2231,7 @@ github.com/olekukonko/tablewriter v0.0.5/go.mod h1:hPp6KlRPjbx+hW8ykQs1w3UBbZlj6
github.com/onsi/ginkgo v0.0.0-20151202141238-7f8ab55aaf3b/go.mod h1:lLunBs/Ym6LB5Z9jYTR76FiuTmxDTDusOGeTQH+WWjE=
github.com/onsi/ginkgo v0.0.0-20170829012221-11459a886d9c/go.mod h1:lLunBs/Ym6LB5Z9jYTR76FiuTmxDTDusOGeTQH+WWjE=
github.com/onsi/ginkgo v1.6.0/go.mod h1:lLunBs/Ym6LB5Z9jYTR76FiuTmxDTDusOGeTQH+WWjE=
+github.com/onsi/ginkgo v1.7.0/go.mod h1:lLunBs/Ym6LB5Z9jYTR76FiuTmxDTDusOGeTQH+WWjE=
github.com/onsi/ginkgo v1.8.0/go.mod h1:lLunBs/Ym6LB5Z9jYTR76FiuTmxDTDusOGeTQH+WWjE=
github.com/onsi/ginkgo v1.10.1/go.mod h1:lLunBs/Ym6LB5Z9jYTR76FiuTmxDTDusOGeTQH+WWjE=
github.com/onsi/ginkgo v1.10.3/go.mod h1:lLunBs/Ym6LB5Z9jYTR76FiuTmxDTDusOGeTQH+WWjE=
@@ -2252,6 +2251,7 @@ github.com/onsi/ginkgo/v2 v2.5.0/go.mod h1:Luc4sArBICYCS8THh8v3i3i5CuSZO+RaQRaJo
github.com/onsi/ginkgo/v2 v2.6.1/go.mod h1:yjiuMwPokqY1XauOgju45q3sJt6VzQ/Fict1LFVcsAo=
github.com/onsi/gomega v0.0.0-20151007035656-2152b45fa28a/go.mod h1:C1qb7wdrVGGVU+Z6iS04AVkA3Q65CEZX59MT0QO5uiA=
github.com/onsi/gomega v0.0.0-20170829124025-dcabb60a477c/go.mod h1:C1qb7wdrVGGVU+Z6iS04AVkA3Q65CEZX59MT0QO5uiA=
+github.com/onsi/gomega v1.4.3/go.mod h1:ex+gbHU/CVuBBDIJjb2X0qEXbFg53c61hWP/1CpauHY=
github.com/onsi/gomega v1.5.0/go.mod h1:ex+gbHU/CVuBBDIJjb2X0qEXbFg53c61hWP/1CpauHY=
github.com/onsi/gomega v1.7.0/go.mod h1:ex+gbHU/CVuBBDIJjb2X0qEXbFg53c61hWP/1CpauHY=
github.com/onsi/gomega v1.7.1/go.mod h1:XdKZgCCFLUoM/7CFJVPcG8C1xQ1AJ0vpAezJrB7JYyY=
@@ -2268,6 +2268,7 @@ github.com/onsi/gomega v1.23.0/go.mod h1:Z/NWtiqwBrwUt4/2loMmHL63EDLnYHmVbuBpDr2
github.com/onsi/gomega v1.24.0/go.mod h1:Z/NWtiqwBrwUt4/2loMmHL63EDLnYHmVbuBpDr2vQAg=
github.com/onsi/gomega v1.24.1/go.mod h1:3AOiACssS3/MajrniINInwbfOOtfZvplPzuRSmvt1jM=
github.com/onsi/gomega v1.24.2/go.mod h1:gs3J10IS7Z7r7eXRoNJIrNqU4ToQukCJhFtKrWgHWnk=
+github.com/op/go-logging v0.0.0-20160315200505-970db520ece7/go.mod h1:HzydrMdWErDVzsI23lYNej1Htcns9BCg93Dk0bBINWk=
github.com/open-policy-agent/opa v0.42.2/go.mod h1:MrmoTi/BsKWT58kXlVayBb+rYVeaMwuBm3nYAN3923s=
github.com/opencontainers/go-digest v0.0.0-20170106003457-a6d0ee40d420/go.mod h1:cMLVZDEM3+U2I4VmLI6N8jQYUd2OVphdqWwCJHrFt2s=
github.com/opencontainers/go-digest v0.0.0-20180430190053-c9281466c8b2/go.mod h1:cMLVZDEM3+U2I4VmLI6N8jQYUd2OVphdqWwCJHrFt2s=
@@ -2313,24 +2314,35 @@ github.com/opencontainers/selinux v1.9.1/go.mod h1:2i0OySw99QjzBBQByd1Gr9gSjvuho
github.com/opencontainers/selinux v1.10.0/go.mod h1:2i0OySw99QjzBBQByd1Gr9gSjvuho1lHsJxIJ3gGbJI=
github.com/opencontainers/selinux v1.10.1/go.mod h1:2i0OySw99QjzBBQByd1Gr9gSjvuho1lHsJxIJ3gGbJI=
github.com/opencontainers/selinux v1.11.0/go.mod h1:E5dMC3VPuVvVHDYmi78qvhJp8+M586T4DlDRYpFkyec=
+github.com/opentracing-contrib/go-observer v0.0.0-20170622124052-a52f23424492/go.mod h1:Ngi6UdF0k5OKD5t5wlmGhe/EDKPoUM3BXZSSfIuJbis=
+github.com/opentracing/basictracer-go v1.0.0/go.mod h1:QfBfYuafItcjQuMwinw9GhYKwFXS9KnPs5lxoYwgW74=
github.com/opentracing/basictracer-go v1.1.0 h1:Oa1fTSBvAl8pa3U+IJYqrKm0NALwH9OsgwOqDv4xJW0=
github.com/opentracing/basictracer-go v1.1.0/go.mod h1:V2HZueSJEp879yv285Aap1BS69fQMD+MNP1mRs6mBQc=
+github.com/opentracing/opentracing-go v1.0.2/go.mod h1:UkNAQd3GIcIGf0SeVgPpRdFStlNbqXla1AfSYxPUl2o=
github.com/opentracing/opentracing-go v1.1.0/go.mod h1:UkNAQd3GIcIGf0SeVgPpRdFStlNbqXla1AfSYxPUl2o=
github.com/opentracing/opentracing-go v1.2.0 h1:uEJPy/1a5RIPAJ0Ov+OIO8OxWu77jEv+1B0VhjKrZUs=
github.com/opentracing/opentracing-go v1.2.0/go.mod h1:GxEUsuufX4nBwe+T+Wl9TAgYrxe9dPLANfrWvHYVTgc=
+github.com/openzipkin-contrib/zipkin-go-opentracing v0.4.5/go.mod h1:/wsWhb9smxSfWAKL3wpBW7V8scJMt8N8gnaMCS9E/cA=
+github.com/openzipkin/zipkin-go v0.1.6/go.mod h1:QgAqvLzwWbR/WpD4A3cGpPtJrZXNIiJc5AZX7/PBEpw=
+github.com/openzipkin/zipkin-go v0.2.1/go.mod h1:NaW6tEwdmWMaCDZzg8sh+IBNOxHMPnhQw8ySjnjRyN4=
+github.com/openzipkin/zipkin-go v0.2.2/go.mod h1:NaW6tEwdmWMaCDZzg8sh+IBNOxHMPnhQw8ySjnjRyN4=
github.com/oracle/oci-go-sdk v24.3.0+incompatible h1:x4mcfb4agelf1O4/1/auGlZ1lr97jXRSSN5MxTgG/zU=
github.com/oracle/oci-go-sdk v24.3.0+incompatible/go.mod h1:VQb79nF8Z2cwLkLS35ukwStZIg5F66tcBccjip/j888=
github.com/ory/dockertest/v3 v3.10.0 h1:4K3z2VMe8Woe++invjaTB7VRyQXQy5UY+loujO4aNE4=
github.com/ory/dockertest/v3 v3.10.0/go.mod h1:nr57ZbRWMqfsdGdFNLHz5jjNdDb7VVFnzAeW1n5N1Lg=
+github.com/pact-foundation/pact-go v1.0.4/go.mod h1:uExwJY4kCzNPcHRj+hCR/HBbOOIwwtUjcrb0b5/5kLM=
github.com/pascaldekloe/goe v0.0.0-20180627143212-57f6aae5913c/go.mod h1:lzWF7FIEvWOWxwDKqyGYQf6ZUaNfKdP144TG7ZOy1lc=
github.com/pascaldekloe/goe v0.1.0 h1:cBOtyMzM9HTpWjXfbbunk26uA6nG3a8n06Wieeh0MwY=
github.com/pascaldekloe/goe v0.1.0/go.mod h1:lzWF7FIEvWOWxwDKqyGYQf6ZUaNfKdP144TG7ZOy1lc=
github.com/patrickmn/go-cache v2.1.0+incompatible h1:HRMgzkcYKYpi3C8ajMPV8OFXaaRUnok+kx1WdO15EQc=
github.com/patrickmn/go-cache v2.1.0+incompatible/go.mod h1:3Qf8kWWT7OJRJbdiICTKqZju1ZixQ/KpMGzzAfe6+WQ=
+github.com/pborman/uuid v1.2.0/go.mod h1:X/NO0urCmaxf9VXbdlT7C2Yzkj2IKimNn4k+gtPdI/k=
github.com/pelletier/go-toml v1.2.0/go.mod h1:5z9KED0ma1S8pY6P1sdut58dfprrGBbd/94hg7ilaic=
+github.com/pelletier/go-toml v1.7.0/go.mod h1:vwGMzjaWMwyfHwgIBhI2YUM4fB6nL6lVAvS1LBMMhTE=
github.com/pelletier/go-toml v1.8.1/go.mod h1:T2/BmBdy8dvIRq1a/8aqjN41wvWlN4lrapLU/GW4pbc=
github.com/pelletier/go-toml v1.9.3/go.mod h1:u1nR/EPcESfeI/szUZKdtJ0xRNbUoANCkoOuaOx1Y+c=
github.com/pelletier/go-toml v1.9.5/go.mod h1:u1nR/EPcESfeI/szUZKdtJ0xRNbUoANCkoOuaOx1Y+c=
+github.com/performancecopilot/speed v3.0.0+incompatible/go.mod h1:/CLtqpZ5gBg1M9iaPbIdPPGyKcA8hKdoy6hAWba7Yac=
github.com/peterbourgon/diskv v2.0.1+incompatible/go.mod h1:uqqh8zWWbv1HBMNONnaR/tNboyR3/BZd58JJSHlUSCU=
github.com/peterh/liner v0.0.0-20170211195444-bf27d3ba8e1d/go.mod h1:xIteQHvHuaLYG9IFj6mSxM0fCKrs34IrEQUhOYuGPHc=
github.com/pgavlin/goldmark v1.1.33-0.20200616210433-b5eb04559386 h1:LoCV5cscNVWyK5ChN/uCoIFJz8jZD63VQiGJIRgr6uo=
@@ -2339,6 +2351,7 @@ github.com/phayes/freeport v0.0.0-20220201140144-74d24b5ae9f5/go.mod h1:iIss55rK
github.com/phpdave11/gofpdf v1.4.2/go.mod h1:zpO6xFn9yxo3YLyMvW8HcKWVdbNqgIfOOp2dXMnm1mY=
github.com/phpdave11/gofpdi v1.0.12/go.mod h1:vBmVV0Do6hSBHC8uKUQ71JGW+ZGQq74llk/7bXwjDoI=
github.com/phpdave11/gofpdi v1.0.13/go.mod h1:vBmVV0Do6hSBHC8uKUQ71JGW+ZGQq74llk/7bXwjDoI=
+github.com/pierrec/lz4 v1.0.2-0.20190131084431-473cd7ce01a1/go.mod h1:3/3N9NVKO0jef7pBehbT1qWhCMrIgbYNnFAZCqQ5LRc=
github.com/pierrec/lz4 v2.0.5+incompatible/go.mod h1:pdkljMzZIN41W+lC3N2tnIh5sFi+IEE17M5jbnwPHcY=
github.com/pierrec/lz4 v2.5.2+incompatible/go.mod h1:pdkljMzZIN41W+lC3N2tnIh5sFi+IEE17M5jbnwPHcY=
github.com/pierrec/lz4 v2.6.1+incompatible h1:9UY3+iC23yxF0UfGaYrGplQ+79Rg+h/q9FV9ix19jjM=
@@ -2356,6 +2369,7 @@ github.com/pkg/errors v0.8.1-0.20171018195549-f15c970de5b7/go.mod h1:bwawxfHBFNV
github.com/pkg/errors v0.8.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0=
github.com/pkg/errors v0.9.1 h1:FEBLx1zS214owpjy7qsBeixbURkuhQAwrK5UwLGTwt4=
github.com/pkg/errors v0.9.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0=
+github.com/pkg/profile v1.2.1/go.mod h1:hJw3o1OdXxsrSjjVksARp5W95eeEaEfptyVZyv6JUPA=
github.com/pkg/sftp v1.10.1/go.mod h1:lYOWFsE0bwd1+KfKJaKeuokY15vzFx25BLbzYYoAxZI=
github.com/pkg/sftp v1.13.1/go.mod h1:3HaPG6Dq1ILlpPZRO0HVMrsydcdLt6HRDccSgb87qRg=
github.com/pkg/term v1.1.0 h1:xIAAdCMh3QIAy+5FrE8Ad8XoDhEU4ufwbaSozViP9kk=
@@ -2370,12 +2384,14 @@ github.com/posener/complete v1.2.3/go.mod h1:WZIdtGGp+qx0sLrYKtIRAruyNpv6hFCicSg
github.com/pquerna/cachecontrol v0.0.0-20171018203845-0dec1b30a021/go.mod h1:prYjPmNq4d1NPVmpShWobRqXY3q7Vp+80DqgxxUrUIA=
github.com/pquerna/cachecontrol v0.1.0/go.mod h1:NrUG3Z7Rdu85UNR3vm7SOsl1nFIeSiQnrHV5K9mBcUI=
github.com/prashantv/gostub v1.1.0/go.mod h1:A5zLQHz7ieHGG7is6LLXLz7I8+3LZzsrV0P1IAHhP5U=
+github.com/prometheus/alertmanager v0.24.0/go.mod h1:r6fy/D7FRuZh5YbnX6J3MBY0eI4Pb5yPYS7/bPSXXqI=
github.com/prometheus/client_golang v0.0.0-20180209125602-c332b6f63c06/go.mod h1:7SWBe2y4D6OKWSNQJUaRYU/AaXPKyh/dDVn+NZz0KFw=
github.com/prometheus/client_golang v0.9.1/go.mod h1:7SWBe2y4D6OKWSNQJUaRYU/AaXPKyh/dDVn+NZz0KFw=
-github.com/prometheus/client_golang v0.9.2/go.mod h1:OsXs2jCmiKlQ1lTBmv21f2mNfw4xf/QclQDMrYNZzcM=
+github.com/prometheus/client_golang v0.9.3-0.20190127221311-3c4408c8b829/go.mod h1:p2iRAGwDERtqlqzRXnrOVns+ignqQo//hLXqYxZYVNs=
github.com/prometheus/client_golang v0.9.3/go.mod h1:/TN21ttK/J9q6uSwhBd54HahCDft0ttaMvbicHlPoso=
github.com/prometheus/client_golang v1.0.0/go.mod h1:db9x61etRT2tGnBNRi70OPL5FsnadC4Ky3P0J6CfImo=
github.com/prometheus/client_golang v1.1.0/go.mod h1:I1FGZT9+L76gKKOs5djB6ezCbFQP1xR9D75/vuwEF3g=
+github.com/prometheus/client_golang v1.3.0/go.mod h1:hJaj2vgQTGQmVCsAACORcieXFeDPbaTKGT+JTgUa3og=
github.com/prometheus/client_golang v1.4.0/go.mod h1:e9GMxYsXl05ICDXkRhurwBS4Q3OK1iX/F2sw+iXX5zU=
github.com/prometheus/client_golang v1.7.1/go.mod h1:PY5Wy2awLA44sXw4AOSfFBetzPP4j5+D6mVACh+pe2M=
github.com/prometheus/client_golang v1.11.0/go.mod h1:Z6t4BnS23TR94PD6BsDNk8yVqroYurpAkEiz0P2BEV0=
@@ -2386,26 +2402,34 @@ github.com/prometheus/client_golang v1.13.0/go.mod h1:vTeo+zgvILHsnnj/39Ou/1fPN5
github.com/prometheus/client_golang v1.14.0/go.mod h1:8vpkKitgIVNcqrRBWh1C4TIUQgYNtG/XQE4E/Zae36Y=
github.com/prometheus/client_model v0.0.0-20171117100541-99fa1f4be8e5/go.mod h1:MbSGuTsp3dbXC40dX6PRTWyKYBIrTGTE9sqQNg2J8bo=
github.com/prometheus/client_model v0.0.0-20180712105110-5c3871d89910/go.mod h1:MbSGuTsp3dbXC40dX6PRTWyKYBIrTGTE9sqQNg2J8bo=
+github.com/prometheus/client_model v0.0.0-20190115171406-56726106282f/go.mod h1:MbSGuTsp3dbXC40dX6PRTWyKYBIrTGTE9sqQNg2J8bo=
github.com/prometheus/client_model v0.0.0-20190129233127-fd36f4220a90/go.mod h1:xMI15A0UPsDsEKsMN9yxemIoYk6Tm2C1GtYGdfGttqA=
github.com/prometheus/client_model v0.0.0-20190812154241-14fe0d1b01d4/go.mod h1:xMI15A0UPsDsEKsMN9yxemIoYk6Tm2C1GtYGdfGttqA=
+github.com/prometheus/client_model v0.1.0/go.mod h1:xMI15A0UPsDsEKsMN9yxemIoYk6Tm2C1GtYGdfGttqA=
github.com/prometheus/client_model v0.2.0/go.mod h1:xMI15A0UPsDsEKsMN9yxemIoYk6Tm2C1GtYGdfGttqA=
github.com/prometheus/client_model v0.3.0/go.mod h1:LDGWKZIo7rky3hgvBe+caln+Dr3dPggB5dvjtD7w9+w=
-github.com/prometheus/client_model v0.4.0/go.mod h1:oMQmHW1/JoDwqLtg57MGgP/Fb1CJEYF2imWWhWtMkYU=
github.com/prometheus/common v0.0.0-20180110214958-89604d197083/go.mod h1:daVV7qP5qjZbuso7PdcryaAu0sAZbrN9i7WWcTMWvro=
github.com/prometheus/common v0.0.0-20181113130724-41aa239b4cce/go.mod h1:daVV7qP5qjZbuso7PdcryaAu0sAZbrN9i7WWcTMWvro=
-github.com/prometheus/common v0.0.0-20181126121408-4724e9255275/go.mod h1:daVV7qP5qjZbuso7PdcryaAu0sAZbrN9i7WWcTMWvro=
+github.com/prometheus/common v0.2.0/go.mod h1:TNfzLD0ON7rHzMJeJkieUDPYmFC7Snx/y86RQel1bk4=
github.com/prometheus/common v0.4.0/go.mod h1:TNfzLD0ON7rHzMJeJkieUDPYmFC7Snx/y86RQel1bk4=
github.com/prometheus/common v0.4.1/go.mod h1:TNfzLD0ON7rHzMJeJkieUDPYmFC7Snx/y86RQel1bk4=
github.com/prometheus/common v0.6.0/go.mod h1:eBmuwkDJBwy6iBfxCBob6t6dR6ENT/y+J+Zk0j9GMYc=
+github.com/prometheus/common v0.7.0/go.mod h1:DjGbpBbp5NYNiECxcL/VnbXCCaQpKd3tt26CguLLsqA=
github.com/prometheus/common v0.9.1/go.mod h1:yhUN8i9wzaXS3w1O07YhxHEBxD+W35wd8bs7vj7HSQ4=
github.com/prometheus/common v0.10.0/go.mod h1:Tlit/dnDKsSWFlCLTWaA1cyBgKHSMdTB80sz/V91rCo=
github.com/prometheus/common v0.26.0/go.mod h1:M7rCNAaPfAosfx8veZJCuw84e35h3Cfd9VFqTh1DIvc=
+github.com/prometheus/common v0.29.0/go.mod h1:vu+V0TpY+O6vW9J44gczi3Ap/oXXR10b+M/gUGO4Hls=
github.com/prometheus/common v0.30.0/go.mod h1:vu+V0TpY+O6vW9J44gczi3Ap/oXXR10b+M/gUGO4Hls=
github.com/prometheus/common v0.32.1/go.mod h1:vu+V0TpY+O6vW9J44gczi3Ap/oXXR10b+M/gUGO4Hls=
+github.com/prometheus/common v0.34.0/go.mod h1:gB3sOl7P0TvJabZpLY5uQMpUqRCPPCyRLCZYc7JZTNE=
github.com/prometheus/common v0.37.0/go.mod h1:phzohg0JFMnBEFGxTDbfu3QyL5GI8gTQJFhYO5B3mfA=
+github.com/prometheus/common/assets v0.1.0/go.mod h1:D17UVUE12bHbim7HzwUvtqm6gwBEaDQ0F+hIGbFbccI=
+github.com/prometheus/common/assets v0.2.0/go.mod h1:D17UVUE12bHbim7HzwUvtqm6gwBEaDQ0F+hIGbFbccI=
+github.com/prometheus/common/sigv4 v0.1.0/go.mod h1:2Jkxxk9yYvCkE5G1sQT7GuEXm57JrvHu9k5YwTjsNtI=
+github.com/prometheus/exporter-toolkit v0.7.1/go.mod h1:ZUBIj498ePooX9t/2xtDjeQYwvRpiPP2lh5u4iblj2g=
github.com/prometheus/procfs v0.0.0-20180125133057-cb4147076ac7/go.mod h1:c3At6R/oaqEKCNdg8wHV1ftS6bRYblBhIjjI8uT2IGk=
github.com/prometheus/procfs v0.0.0-20181005140218-185b4288413d/go.mod h1:c3At6R/oaqEKCNdg8wHV1ftS6bRYblBhIjjI8uT2IGk=
-github.com/prometheus/procfs v0.0.0-20181204211112-1dc9a6cbc91a/go.mod h1:c3At6R/oaqEKCNdg8wHV1ftS6bRYblBhIjjI8uT2IGk=
+github.com/prometheus/procfs v0.0.0-20190117184657-bf6a532e95b1/go.mod h1:c3At6R/oaqEKCNdg8wHV1ftS6bRYblBhIjjI8uT2IGk=
github.com/prometheus/procfs v0.0.0-20190507164030-5867b95ac084/go.mod h1:TjEm7ze935MbeOT/UhFTIMYKhuLP4wbCsTZCD3I8kEA=
github.com/prometheus/procfs v0.0.0-20190522114515-bc1a522cf7b1/go.mod h1:TjEm7ze935MbeOT/UhFTIMYKhuLP4wbCsTZCD3I8kEA=
github.com/prometheus/procfs v0.0.2/go.mod h1:TjEm7ze935MbeOT/UhFTIMYKhuLP4wbCsTZCD3I8kEA=
@@ -2417,38 +2441,57 @@ github.com/prometheus/procfs v0.2.0/go.mod h1:lV6e/gmhEcM9IjHGsFOCxxuZ+z1YqCvr4O
github.com/prometheus/procfs v0.6.0/go.mod h1:cz+aTbrPOrUb4q7XlbU9ygM+/jj0fzG6c1xBZuNvfVA=
github.com/prometheus/procfs v0.7.3/go.mod h1:cz+aTbrPOrUb4q7XlbU9ygM+/jj0fzG6c1xBZuNvfVA=
github.com/prometheus/procfs v0.8.0/go.mod h1:z7EfXMXOkbkqb9IINtpCn86r/to3BnA0uaxHdg830/4=
+github.com/prometheus/prometheus v0.35.0/go.mod h1:7HaLx5kEPKJ0GDgbODG0fZgXbQ8K/XjZNJXQmbmgQlY=
+github.com/prometheus/prometheus v0.37.0/go.mod h1:egARUgz+K93zwqsVIAneFlLZefyGOON44WyAp4Xqbbk=
github.com/prometheus/tsdb v0.7.1/go.mod h1:qhTCs0VvXwvX/y3TZrWD7rabWM+ijKTux40TwIPHuXU=
-github.com/pulumi/pulumi-java/pkg v0.6.0 h1:haiSQJlhrQIBBcR0r0aQCIF8i69e4znzRnHpaNQUchE=
-github.com/pulumi/pulumi-java/pkg v0.6.0/go.mod h1:xSK2B792P8zjwYZTHYapMM1RJdue2BpRFQNYObWO0C8=
-github.com/pulumi/pulumi-terraform-bridge/v3 v3.32.0 h1:6L5HOeLAL8hHTpilpN8MXiLwkOQ8EvQDbAvf92nXG1c=
-github.com/pulumi/pulumi-terraform-bridge/v3 v3.32.0/go.mod h1:A9zPf7L/1wX6qVBdLmPKLFO9cS27KED5OjkS7s2p3Mc=
-github.com/pulumi/pulumi-yaml v0.5.8 h1:bJp8g6A0wU+5c56Cft8GEQ7/8prGggBlZuDTcgTS40o=
-github.com/pulumi/pulumi-yaml v0.5.8/go.mod h1:rJCp0HXvJGG+hs40wII9yYxuCeBBr2+e8FytW0YnINM=
-github.com/pulumi/pulumi/pkg/v3 v3.40.2 h1:0uDJHd74nM5tvp9JrRr2ODGirpOPH9DRa6WpvlXrlEY=
-github.com/pulumi/pulumi/pkg/v3 v3.40.2/go.mod h1:2deaFjnn816pgaHr4pyrHGgQjIBq2Vyv47wReijquTQ=
-github.com/pulumi/pulumi/sdk/v3 v3.42.0 h1:S1e1dBo5BLCMtp6AYsE08USwEKMgZNe9oAOL74OjKFA=
-github.com/pulumi/pulumi/sdk/v3 v3.42.0/go.mod h1:N5jL+cw5KiOeMn9bwvRuPQEAhbE3KPq2wSb/Kw+6HuY=
-github.com/pulumi/schema-tools v0.1.0 h1:o1nVQaJEnmcA+3trxe+0sIDlrILxEIOvgUQ2Ze4OFsk=
-github.com/pulumi/schema-tools v0.1.0/go.mod h1:feL1siLWdcCNUm+irXoHyNHbGaqoX7pfYojpGZe2ziY=
-github.com/pulumi/terraform-diff-reader v0.0.0-20201211191010-ad4715e9285e h1:Dik4Qe/+xguB8JagPyXNlbOnRiXGmq/PSPQTGunYnTk=
-github.com/pulumi/terraform-diff-reader v0.0.0-20201211191010-ad4715e9285e/go.mod h1:sZ9FUzGO+yM41hsQHs/yIcj/Y993qMdBxBU5mpDmAfQ=
-github.com/pulumi/terraform-plugin-sdk/v2 v2.0.0-20230710100801-03a71d0fca3d h1:DfAVBLi3G5hXbqiWs9wIGYZXF1VZu6+9kbl2CQO6cOE=
-github.com/pulumi/terraform-plugin-sdk/v2 v2.0.0-20230710100801-03a71d0fca3d/go.mod h1:cUEP4ly/nxlHy5HzD6YRrHydtlheGvGRJDhiWqqVik4=
-github.com/pulumi/terraform-provider-vault v1.9.1-0.20231012211048-cc8060e32cc4 h1:Wt/Os3ndhbACarYbHSOhIXa0kgTHnyXT1QNZHChU6ks=
-github.com/pulumi/terraform-provider-vault v1.9.1-0.20231012211048-cc8060e32cc4/go.mod h1:ZABewIastwPOOa9w43JSNCygxKWJkeystrYml6tGbYU=
+github.com/pulumi/esc v0.5.6 h1:4WV3X7OEVcChIwbSG+JxhZDdmq/q7lFPaSjHRYlPwmI=
+github.com/pulumi/esc v0.5.6/go.mod h1:wpwNfVS5fV7Kd51j4dJ6FWYlKfxdqyppgp0gtkzqH04=
+github.com/pulumi/pulumi-java/pkg v0.9.8 h1:c8mYsalnRXA2Ibgvv6scefOn6mW1Vb0UT0mcDqjsivQ=
+github.com/pulumi/pulumi-java/pkg v0.9.8/go.mod h1:c6rSw/+q4O0IImgJ9axxoC6QesbPYWBaG5gimbHouUQ=
+github.com/pulumi/pulumi-terraform-bridge/testing v0.0.1 h1:SCg1gjfY9N4yn8U8peIUYATifjoDABkyR7H9lmefsfc=
+github.com/pulumi/pulumi-terraform-bridge/testing v0.0.1/go.mod h1:7OeUPH8rpt5ipyj9EFcnXpuzQ8SHL0dyqdfa8nOacdk=
+github.com/pulumi/pulumi-terraform-bridge/v3 v3.63.2 h1:6JRJz3Wk7O9OhNFbxCrNvPVQAK+prBm6XBuSlIVqRnU=
+github.com/pulumi/pulumi-terraform-bridge/v3 v3.63.2/go.mod h1:ye7JUFqTNbBh6ohcr1KpyXNv+kYFYvZAIqXqts4Ialc=
+github.com/pulumi/pulumi-terraform-bridge/x/muxer v0.0.4 h1:rIzMmtcVpPX8ynaz6/nW5AHNY63DiNfCohqmxWvMpM4=
+github.com/pulumi/pulumi-terraform-bridge/x/muxer v0.0.4/go.mod h1:Kt8RIZWa/N8rW3+0g6NrqCBmF3o+HuIhFaZpssEkG6w=
+github.com/pulumi/pulumi-yaml v1.2.2 h1:W6BeUBLhDrJ2GSU0em1AUVelG9PBI4ABY61DdhJOO3E=
+github.com/pulumi/pulumi-yaml v1.2.2/go.mod h1:EgakC7b/4+VBNnlgM1RZIea2gUstV8s/7bdFJZt0P64=
+github.com/pulumi/pulumi/pkg/v3 v3.91.1 h1:xHnyEwJO9we2zCiM9gHTkJxjZ6a6yi5vYCwWHCYRj9Y=
+github.com/pulumi/pulumi/pkg/v3 v3.91.1/go.mod h1:dzBQDJyCOEhtBVN5INA5/i9yG9DZlsStl/mAkrhs9II=
+github.com/pulumi/pulumi/sdk/v3 v3.91.1 h1:6I9GMmHv23X+G6hoduU1XE6hBWSNtB+zcb1MX17YvlA=
+github.com/pulumi/pulumi/sdk/v3 v3.91.1/go.mod h1:zYaQQibB2pYKy/uG4c4YkX7lQIBpZ0KsuMaq/3HsIBQ=
+github.com/pulumi/schema-tools v0.1.2 h1:Fd9xvUjgck4NA+7/jSk7InqCUT4Kj940+EcnbQKpfZo=
+github.com/pulumi/schema-tools v0.1.2/go.mod h1:62lgj52Tzq11eqWTIaKd+EVyYAu5dEcDJxMhTjvMO/k=
+github.com/pulumi/terraform-diff-reader v0.0.2 h1:kTE4nEXU3/SYXESvAIem+wyHMI3abqkI3OhJ0G04LLI=
+github.com/pulumi/terraform-diff-reader v0.0.2/go.mod h1:sZ9FUzGO+yM41hsQHs/yIcj/Y993qMdBxBU5mpDmAfQ=
+github.com/pulumi/terraform-plugin-sdk/v2 v2.0.0-20230912190043-e6d96b3b8f7e h1:blSirnXqvm8JXLxwxelsBroUNRhOHakDO7cgJUYTdpQ=
+github.com/pulumi/terraform-plugin-sdk/v2 v2.0.0-20230912190043-e6d96b3b8f7e/go.mod h1:qH/34G25Ugdj5FcM95cSoXzUgIbgfhVLXCcEcYaMwq8=
+github.com/pulumi/terraform-provider-vault v1.9.1-0.20231108235540-710122092170 h1:zpAmrthkSwpXOrardc5gM8zN/E6KOSTCdkdUbG1Ogn4=
+github.com/pulumi/terraform-provider-vault v1.9.1-0.20231108235540-710122092170/go.mod h1:cJPMAqq32ao3lEZKaszPu/lOttyMkuxD24s+Ow2kihE=
+github.com/rakyll/embedmd v0.0.0-20171029212350-c8060a0752a2/go.mod h1:7jOTMgqac46PZcF54q6l2hkLEG8op93fZu61KmxWDV4=
+github.com/rcrowley/go-metrics v0.0.0-20181016184325-3113b8401b8a/go.mod h1:bCqnVzQkZxMG4s8nGwiZ5l3QUCyqpo9Y+/ZMZ9VjZe4=
github.com/rcrowley/go-metrics v0.0.0-20200313005456-10cdbea86bc0/go.mod h1:bCqnVzQkZxMG4s8nGwiZ5l3QUCyqpo9Y+/ZMZ9VjZe4=
github.com/remyoudompheng/bigfft v0.0.0-20200410134404-eec4a21b6bb0/go.mod h1:qqbHyh8v60DhA7CoWK5oRCqLrMHRGoxYCSS9EjAz6Eo=
-github.com/remyoudompheng/bigfft v0.0.0-20230129092748-24d4a6f8daec/go.mod h1:qqbHyh8v60DhA7CoWK5oRCqLrMHRGoxYCSS9EjAz6Eo=
-github.com/rivo/uniseg v0.2.0 h1:S1pD9weZBuJdFmowNwbpi7BJ8TNftyUImj/0WQi72jY=
+github.com/rivo/uniseg v0.1.0/go.mod h1:J6wj4VEh+S6ZtnVlnTBMWIodfgj8LQOQFoIToxlJtxc=
github.com/rivo/uniseg v0.2.0/go.mod h1:J6wj4VEh+S6ZtnVlnTBMWIodfgj8LQOQFoIToxlJtxc=
+github.com/rivo/uniseg v0.4.4 h1:8TfxU8dW6PdqD27gjM8MVNuicgxIjxpm4K7x4jp8sis=
+github.com/rivo/uniseg v0.4.4/go.mod h1:FN3SvrM+Zdj16jyLfmOkMNblXMcoc8DfTHruCPUcx88=
github.com/rogpeppe/fastuuid v0.0.0-20150106093220-6724a57986af/go.mod h1:XWv6SoW27p1b0cqNHllgS5HIMJraePCO15w5zCzIWYg=
github.com/rogpeppe/fastuuid v1.2.0/go.mod h1:jVj6XXZzXRy/MSR5jhDC/2q6DgLz+nrA6LYCDYWNEvQ=
+github.com/rogpeppe/go-charset v0.0.0-20180617210344-2471d30d28b4/go.mod h1:qgYeAmZ5ZIpBWTGllZSQnw97Dj+woV0toclVaRGI8pc=
+github.com/rogpeppe/go-internal v1.1.0/go.mod h1:M8bDsm7K2OlrFYOpmOWEs/qY81heoFRclV5y23lUDJ4=
+github.com/rogpeppe/go-internal v1.2.2/go.mod h1:M8bDsm7K2OlrFYOpmOWEs/qY81heoFRclV5y23lUDJ4=
github.com/rogpeppe/go-internal v1.3.0/go.mod h1:M8bDsm7K2OlrFYOpmOWEs/qY81heoFRclV5y23lUDJ4=
github.com/rogpeppe/go-internal v1.6.1/go.mod h1:xXDCJY+GAPziupqXw64V24skbSoqbTEfhy4qGm1nDQc=
github.com/rogpeppe/go-internal v1.6.2/go.mod h1:xXDCJY+GAPziupqXw64V24skbSoqbTEfhy4qGm1nDQc=
github.com/rogpeppe/go-internal v1.8.1/go.mod h1:JeRgkft04UBgHMgCIwADu4Pn6Mtm5d4nPKWu0nJ5d+o=
-github.com/rogpeppe/go-internal v1.9.0 h1:73kH8U+JUqXU8lRuOHeVHaa/SZPifC7BkcraZVejAe8=
github.com/rogpeppe/go-internal v1.9.0/go.mod h1:WtVeX8xhTBvf0smdhujwtBcq4Qrzq/fJaraNFVN+nFs=
+github.com/rogpeppe/go-internal v1.11.0 h1:cWPaGQEPrBb5/AsnsZesgZZ9yb1OQ+GOISoDNXVBh4M=
+github.com/rogpeppe/go-internal v1.11.0/go.mod h1:ddIwULY96R17DhadqLgMfk9H9tvdUzkipdSkR5nkCZA=
+github.com/rs/cors v1.8.2/go.mod h1:XyqrcTp5zjWr1wsJ8PIRZssZ8b/WMcMf71DJnit4EMU=
+github.com/rs/xid v1.2.1/go.mod h1:+uKXf+4Djp6Md1KODXJxgGQPKngRmWyn10oCKFzNHOQ=
+github.com/rs/zerolog v1.13.0/go.mod h1:YbFCdg8HfsridGWAh22vktObvhZbQsZXe4/zB0OKkWU=
+github.com/rs/zerolog v1.15.0/go.mod h1:xYTKnLHcpfU2225ny5qZjxnj9NvkumZYjJHlAThCjNc=
github.com/russross/blackfriday v1.5.2/go.mod h1:JO/DiYxRf+HjHt06OyowR9PTA263kcR/rfWxYHBV53g=
github.com/russross/blackfriday v1.6.0/go.mod h1:ti0ldHuxg49ri4ksnFxlkCfN+hvslNlmVHqNRXXJNAY=
github.com/russross/blackfriday/v2 v2.0.1/go.mod h1:+Rmxgy9KzJVeS9/2gXHxylqXiyQDYRxCVz55jmeOWTM=
@@ -2465,9 +2508,11 @@ github.com/sabhiram/go-gitignore v0.0.0-20210923224102-525f6e181f06/go.mod h1:+e
github.com/safchain/ethtool v0.0.0-20190326074333-42ed695e3de8/go.mod h1:Z0q5wiBQGYcxhMZ6gUqHn6pYNLypFAvaL3UvgZLR0U4=
github.com/safchain/ethtool v0.0.0-20210803160452-9aa261dae9b1/go.mod h1:Z0q5wiBQGYcxhMZ6gUqHn6pYNLypFAvaL3UvgZLR0U4=
github.com/safchain/ethtool v0.2.0/go.mod h1:WkKB1DnNtvsMlDmQ50sgwowDJV/hGbJSOvJoEXs1AJQ=
+github.com/samuel/go-zookeeper v0.0.0-20190923202752-2cc03de413da/go.mod h1:gi+0XIa01GRL2eRQVjQkKGqKF3SF9vZR/HnPullcV2E=
github.com/santhosh-tekuri/jsonschema/v5 v5.0.0 h1:TToq11gyfNlrMFZiYujSekIsPd9AmsA2Bj/iv+s4JHE=
github.com/santhosh-tekuri/jsonschema/v5 v5.0.0/go.mod h1:FKdcjfQW6rpZSnxxUvEA5H/cDPdvJ/SZJQLWWXWGrZ0=
github.com/satori/go.uuid v1.2.0/go.mod h1:dA0hQrYB0VpLJoorglMZABFdXlWrHn1NEOzdhQKdks0=
+github.com/scaleway/scaleway-sdk-go v1.0.0-beta.9/go.mod h1:fCa7OJZ/9DRTnOKmxvT6pn+LPWUptQAmHF/SBJUGEcg=
github.com/sclevine/agouti v3.0.0+incompatible/go.mod h1:b4WX9W9L1sfQKXeJf1mUTLZKJ48R1S7H23Ji7oFO5Bw=
github.com/sclevine/spec v1.2.0/go.mod h1:W4J29eT/Kzv7/b9IWLB055Z+qvVC9vt0Arko24q7p+U=
github.com/sean-/seed v0.0.0-20170313163322-e2103e2c3529/go.mod h1:DxrIzT+xaE7yg65j358z/aeFdxmN0P9QXhEzd20vsDc=
@@ -2481,16 +2526,22 @@ github.com/segmentio/encoding v0.3.5 h1:UZEiaZ55nlXGDL92scoVuw00RmiRCazIEmvPSbSv
github.com/segmentio/encoding v0.3.5/go.mod h1:n0JeuIqEQrQoPDGsjo8UNd1iA0U8d8+oHAA4E3G3OxM=
github.com/sergi/go-diff v1.0.0/go.mod h1:0CfEIISq7TuYL3j771MWULgwwjU+GofnZX9QAmXWZgo=
github.com/sergi/go-diff v1.1.0/go.mod h1:STckp+ISIX8hZLjrqAeVduY0gWCT9IjLuqbuNXdaHfM=
-github.com/sergi/go-diff v1.2.0 h1:XU+rvMAioB0UC3q1MFrIQy4Vo5/4VsRDQQXHsEya6xQ=
github.com/sergi/go-diff v1.2.0/go.mod h1:STckp+ISIX8hZLjrqAeVduY0gWCT9IjLuqbuNXdaHfM=
-github.com/shopspring/decimal v1.2.0 h1:abSATXmQEYyShuxI4/vyW3tV1MrKAJzCZ/0zLUXYbsQ=
+github.com/sergi/go-diff v1.3.1 h1:xkr+Oxo4BOQKmkn/B9eMK0g5Kg/983T9DqqPHwYqD+8=
+github.com/sergi/go-diff v1.3.1/go.mod h1:aMJSSKb2lpPvRNec0+w3fl7LP9IOFzdc9Pa4NFbPK1I=
+github.com/shopspring/decimal v0.0.0-20180709203117-cd690d0c9e24/go.mod h1:M+9NzErvs504Cn4c5DxATwIqPbtswREoFCre64PpcG4=
github.com/shopspring/decimal v1.2.0/go.mod h1:DKyhrW/HYNuLGql+MJL6WCR6knT2jwCFRcu2hWCYk4o=
+github.com/shopspring/decimal v1.3.1 h1:2Usl1nmF/WZucqkFZhnfFYxxxu8LG21F6nPQBE5gKV8=
+github.com/shopspring/decimal v1.3.1/go.mod h1:DKyhrW/HYNuLGql+MJL6WCR6knT2jwCFRcu2hWCYk4o=
github.com/shurcooL/go-goon v0.0.0-20210110234559-7585751d9a17 h1:lRAUE0dIvigSSFAmaM2dfg7OH8T+a8zJ5smEh09a/GI=
github.com/shurcooL/go-goon v0.0.0-20210110234559-7585751d9a17/go.mod h1:N5mDOmsrJOB+vfqUK+7DmDyjhSLIIBnXo9lvZJj3MWQ=
+github.com/shurcooL/httpfs v0.0.0-20190707220628-8d4bc4ba7749/go.mod h1:ZY1cvUeJuFPAdZ/B6v7RHavJWZn2YPVFQ1OSXhCGOkg=
github.com/shurcooL/sanitized_anchor_name v1.0.0/go.mod h1:1NzhyTcUVG4SuEtjjoZeVRXNmyL/1OwPU0+IJeTBvfc=
+github.com/shurcooL/vfsgen v0.0.0-20200824052919-0d455de96546/go.mod h1:TrYk7fJVaAttu97ZZKrO9UbRa8izdowaMIZcxYMbVaw=
github.com/sirupsen/logrus v1.0.4-0.20170822132746-89742aefa4b2/go.mod h1:pMByvHTf9Beacp5x1UXfOR9xyW/9antXMhjMPG0dEzc=
github.com/sirupsen/logrus v1.0.6/go.mod h1:pMByvHTf9Beacp5x1UXfOR9xyW/9antXMhjMPG0dEzc=
github.com/sirupsen/logrus v1.2.0/go.mod h1:LxeOpSwHxABJmUn/MG1IvRgCAasNZTLOkJPxbbu5VWo=
+github.com/sirupsen/logrus v1.4.0/go.mod h1:LxeOpSwHxABJmUn/MG1IvRgCAasNZTLOkJPxbbu5VWo=
github.com/sirupsen/logrus v1.4.1/go.mod h1:ni0Sbl8bgC9z8RoU9G6nDWqqs/fq4eDPysMBDgk/93Q=
github.com/sirupsen/logrus v1.4.2/go.mod h1:tLMulIdttU9McNUspp0xgXVQah82FyeX6MwdIuYE2rE=
github.com/sirupsen/logrus v1.6.0/go.mod h1:7uNnSEd1DgxDLC74fIahvMZmmYsHGZGEOFrfsX/uA88=
@@ -2498,25 +2549,27 @@ github.com/sirupsen/logrus v1.7.0/go.mod h1:yWOB1SBYBC5VeMP7gHvWumXLIWorT60ONWic
github.com/sirupsen/logrus v1.8.1/go.mod h1:yWOB1SBYBC5VeMP7gHvWumXLIWorT60ONWic61uBYv0=
github.com/sirupsen/logrus v1.9.0 h1:trlNQbNUG3OdDrDil03MCb1H2o9nJ1x4/5LYw7byDE0=
github.com/sirupsen/logrus v1.9.0/go.mod h1:naHLuLoDiP4jHNo9R0sCBMtWGeIprob74mVsIT4qYEQ=
-github.com/skeema/knownhosts v1.1.0 h1:Wvr9V0MxhjRbl3f9nMnKnFfiWTJmtECJ9Njkea3ysW0=
-github.com/skeema/knownhosts v1.1.0/go.mod h1:sKFq3RD6/TKZkSWn8boUbDC7Qkgcv+8XXijpFO6roag=
+github.com/skeema/knownhosts v1.2.0 h1:h9r9cf0+u7wSE+M183ZtMGgOJKiL96brpaz5ekfJCpM=
+github.com/skeema/knownhosts v1.2.0/go.mod h1:g4fPeYpque7P0xefxtGzV81ihjC8sX2IqpAoNkjxbMo=
github.com/smartystreets/assertions v0.0.0-20180927180507-b2de0cb4f26d/go.mod h1:OnSkiWE9lh6wB0YB77sQom3nweQdgAjqCqsofrRNTgc=
github.com/smartystreets/goconvey v0.0.0-20190330032615-68dc04aab96a/go.mod h1:syvi0/a8iFYH4r/RixwvyeAJjdLS9QV7WQ/tjFTllLA=
github.com/smartystreets/goconvey v1.6.4/go.mod h1:syvi0/a8iFYH4r/RixwvyeAJjdLS9QV7WQ/tjFTllLA=
github.com/soheilhy/cmux v0.1.4/go.mod h1:IM3LyeVVIOuxMH7sFAkER9+bJ4dT7Ms6E4xg4kGIyLM=
github.com/soheilhy/cmux v0.1.5/go.mod h1:T7TcVDs9LWfQgPlPsdngu6I6QIoyIFZDDC6sNE1GqG0=
+github.com/sony/gobreaker v0.4.1/go.mod h1:ZKptC7FHNvhBz7dN2LGjPVBz2sZJmc0/PkyDJOjmxWY=
github.com/spaolacci/murmur3 v0.0.0-20180118202830-f09979ecbc72/go.mod h1:JwIasOWyU6f++ZhiEuf87xNszmSA2myDM2Kzu9HwQUA=
github.com/spaolacci/murmur3 v1.1.0/go.mod h1:JwIasOWyU6f++ZhiEuf87xNszmSA2myDM2Kzu9HwQUA=
github.com/spf13/afero v1.1.2/go.mod h1:j4pytiNVoe2o6bmDsKpLACNPDBIoEAkihy7loJ1B0CQ=
github.com/spf13/afero v1.2.2/go.mod h1:9ZxEEn6pIJ8Rxe320qSDBk6AsU0r9pR7Q4OcevTdifk=
github.com/spf13/afero v1.3.3/go.mod h1:5KUK8ByomD5Ti5Artl0RtHeI5pTF7MIDuXL3yY520V4=
github.com/spf13/afero v1.6.0/go.mod h1:Ai8FlHk4v/PARR026UzYexafAt9roJ7LcLMAmO6Z93I=
-github.com/spf13/afero v1.9.2 h1:j49Hj62F0n+DaZ1dDCvhABaPNSGNkt32oRFxI33IEMw=
github.com/spf13/afero v1.9.2/go.mod h1:iUV7ddyEEZPO5gA3zD4fJt6iStLlL+Lg4m2cihcDf8Y=
+github.com/spf13/afero v1.9.5 h1:stMpOSZFs//0Lv29HduCmli3GUfpFoF3Y1Q/aXj/wVM=
+github.com/spf13/afero v1.9.5/go.mod h1:UBogFpq8E9Hx+xc5CNTTEpTnuHVmXDwZcZcE1eb/UhQ=
github.com/spf13/cast v1.3.0/go.mod h1:Qx5cxh0v+4UWYiBimWS+eyWzqEqokIECu5etghLkUJE=
github.com/spf13/cast v1.3.1/go.mod h1:Qx5cxh0v+4UWYiBimWS+eyWzqEqokIECu5etghLkUJE=
-github.com/spf13/cast v1.4.1 h1:s0hze+J0196ZfEMTs80N7UlFt0BDuQ7Q+JDnHiMWKdA=
-github.com/spf13/cast v1.4.1/go.mod h1:Qx5cxh0v+4UWYiBimWS+eyWzqEqokIECu5etghLkUJE=
+github.com/spf13/cast v1.5.0 h1:rj3WzYc11XZaIZMPKmwP96zkFEnnAmV8s6XbB2aY32w=
+github.com/spf13/cast v1.5.0/go.mod h1:SpXXQ5YoyJw6s3/6cMTQuxvgRl3PCJiyaX9p6b155UU=
github.com/spf13/cobra v0.0.2-0.20171109065643-2da4a54c5cee/go.mod h1:1l0Ry5zgKvJasoi3XT1TypsSe7PqH0Sj9dhYf7v3XqQ=
github.com/spf13/cobra v0.0.3/go.mod h1:1l0Ry5zgKvJasoi3XT1TypsSe7PqH0Sj9dhYf7v3XqQ=
github.com/spf13/cobra v0.0.5/go.mod h1:3K3wKZymM7VvHMDS9+Akkh4K60UwM26emMESw8tLCHU=
@@ -2524,8 +2577,9 @@ github.com/spf13/cobra v1.0.0/go.mod h1:/6GTrnGXV9HjY+aR4k0oJ5tcvakLuG6EuKReYlHN
github.com/spf13/cobra v1.1.3/go.mod h1:pGADOWyqRD/YMrPZigI/zbliZ2wVD/23d+is3pSWzOo=
github.com/spf13/cobra v1.4.0/go.mod h1:Wo4iy3BUC+X2Fybo0PDqwJIv3dNRiZLHQymsfxlB84g=
github.com/spf13/cobra v1.5.0/go.mod h1:dWXEIy2H428czQCjInthrTRUg7yKbok+2Qi/yBIJoUM=
-github.com/spf13/cobra v1.6.0 h1:42a0n6jwCot1pUmomAp4T7DeMD+20LFv4Q54pxLf2LI=
github.com/spf13/cobra v1.6.0/go.mod h1:IOw/AERYS7UzyrGinqmz6HLUo219MORXGxhbaJUqzrY=
+github.com/spf13/cobra v1.7.0 h1:hyqWnYt1ZQShIddO5kBpj3vu05/++x6tJ6dg8EC572I=
+github.com/spf13/cobra v1.7.0/go.mod h1:uLxZILRyS/50WlhOIKD7W6V5bgeIt+4sICxh6uRMrb0=
github.com/spf13/jwalterweatherman v1.0.0/go.mod h1:cQK4TGJAtQXfYWX+Ddv3mKDzgVb68N+wFjFa4jdeBTo=
github.com/spf13/pflag v0.0.0-20170130214245-9ff6c6923cff/go.mod h1:DYY7MBk1bdzusC3SYhjObp+wFpr4gzcvqqNjLnInEg4=
github.com/spf13/pflag v1.0.1-0.20171106142849-4c012f6dcd95/go.mod h1:DYY7MBk1bdzusC3SYhjObp+wFpr4gzcvqqNjLnInEg4=
@@ -2539,6 +2593,9 @@ github.com/spf13/viper v1.4.0/go.mod h1:PTJ7Z/lr49W6bUbkmS1V3by4uWynFiR9p7+dSq/y
github.com/spf13/viper v1.7.0/go.mod h1:8WkrPz2fc9jxqZNCJI/76HCieCp4Q8HaLFoCha5qpdg=
github.com/stefanberger/go-pkcs11uri v0.0.0-20201008174630-78d3cae3a980/go.mod h1:AO3tvPzVZ/ayst6UlUKUv6rcPQInYe3IknH3jYhAKu8=
github.com/stoewer/go-strcase v1.2.0/go.mod h1:IBiWB2sKIp3wVVQ3Y035++gc+knqhUQag1KpM8ahLw8=
+github.com/streadway/amqp v0.0.0-20190404075320-75d898a42a94/go.mod h1:AZpEONHx3DKn8O/DFsRAY58/XVQiIPMTMB1SddzLXVw=
+github.com/streadway/amqp v0.0.0-20190827072141-edfb9018d271/go.mod h1:AZpEONHx3DKn8O/DFsRAY58/XVQiIPMTMB1SddzLXVw=
+github.com/streadway/handy v0.0.0-20190108123426-d5acb3125c2a/go.mod h1:qNTQ5P5JnDBl6z3cMAg/SywNDC5ABu5ApDIw6lUbRmI=
github.com/stretchr/objx v0.0.0-20180129172003-8a3f7159479f/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME=
github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME=
github.com/stretchr/objx v0.1.1/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME=
@@ -2547,7 +2604,6 @@ github.com/stretchr/objx v0.4.0/go.mod h1:YvHI0jy2hoMjB+UWwv71VJQ9isScKT/TqJzVSS
github.com/stretchr/objx v0.5.0 h1:1zr/of2m5FGMsad5YfcqgdqdWrIhu+EBEJRhR1U7z/c=
github.com/stretchr/objx v0.5.0/go.mod h1:Yh+to48EsGEfYuaHDzXPcE3xhTkx73EhmCGUpEOglKo=
github.com/stretchr/testify v0.0.0-20180303142811-b89eecf5ca5d/go.mod h1:a8OnRcib4nhh0OaRAV+Yts87kKdq0PP7pXfy6kDkUVs=
-github.com/stretchr/testify v1.2.1/go.mod h1:a8OnRcib4nhh0OaRAV+Yts87kKdq0PP7pXfy6kDkUVs=
github.com/stretchr/testify v1.2.2/go.mod h1:a8OnRcib4nhh0OaRAV+Yts87kKdq0PP7pXfy6kDkUVs=
github.com/stretchr/testify v1.3.0/go.mod h1:M5WIy9Dh21IEIfnGCwXGc5bZfKNJtfHm1UVUgZn+9EI=
github.com/stretchr/testify v1.4.0/go.mod h1:j7eGeouHqKxXV5pUuKE4zz7dFj8WfuZ+81PSLYec5m4=
@@ -2556,6 +2612,7 @@ github.com/stretchr/testify v1.6.1/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/
github.com/stretchr/testify v1.7.0/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg=
github.com/stretchr/testify v1.7.1/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg=
github.com/stretchr/testify v1.7.2/go.mod h1:R6va5+xMeoiuVRoj+gSkQ7d3FALtqAAGI1FQKckRals=
+github.com/stretchr/testify v1.7.5/go.mod h1:yNjHg4UonilssWZ8iaSj1OCr/vHnekPRkoO+kdMU+MU=
github.com/stretchr/testify v1.8.0/go.mod h1:yNjHg4UonilssWZ8iaSj1OCr/vHnekPRkoO+kdMU+MU=
github.com/stretchr/testify v1.8.1/go.mod h1:w2LPCIKwWwSfY2zedu0+kehJoqGctiVI29o6fzry7u4=
github.com/stretchr/testify v1.8.2/go.mod h1:w2LPCIKwWwSfY2zedu0+kehJoqGctiVI29o6fzry7u4=
@@ -2568,8 +2625,10 @@ github.com/syndtr/gocapability v0.0.0-20180916011248-d98352740cb2/go.mod h1:hkRG
github.com/syndtr/gocapability v0.0.0-20200815063812-42c35b437635/go.mod h1:hkRG7XYTFWNJGYcbNJQlaLq0fg1yr4J4t/NcTQtrfww=
github.com/tchap/go-patricia v2.2.6+incompatible/go.mod h1:bmLyhP68RS6kStMGxByiQ23RP/odRBOTVjwp2cDyi6I=
github.com/tchap/go-patricia/v2 v2.3.1/go.mod h1:VZRHKAb53DLaG+nA9EaYYiaEx6YztwDlLElMsnSHD4k=
+github.com/tedsuo/ifrit v0.0.0-20180802180643-bea94bb476cc/go.mod h1:eyZnKCc955uh98WQvzOm0dgAeLnf2O0Rz0LPoC5ze+0=
github.com/texttheater/golang-levenshtein v1.0.1 h1:+cRNoVrfiwufQPhoMzB6N0Yf/Mqajr6t1lOv8GyGE2U=
github.com/texttheater/golang-levenshtein v1.0.1/go.mod h1:PYAKrbF5sAiq9wd+H82hs7gNaen0CplQ9uvm6+enD/8=
+github.com/tidwall/pretty v1.0.0/go.mod h1:XNkn88O1ChpSDQmQeStsy+sBenx6DDtFZJxhVysOjyk=
github.com/tmc/grpc-websocket-proxy v0.0.0-20170815181823-89b8d40f7ca8/go.mod h1:ncp9v5uamzpCO7NfCPTXjqaC+bZgJeR0sMTm6dMHP7U=
github.com/tmc/grpc-websocket-proxy v0.0.0-20190109142713-0ad062ec5ee5/go.mod h1:ncp9v5uamzpCO7NfCPTXjqaC+bZgJeR0sMTm6dMHP7U=
github.com/tmc/grpc-websocket-proxy v0.0.0-20201229170055-e5319fda7802/go.mod h1:ncp9v5uamzpCO7NfCPTXjqaC+bZgJeR0sMTm6dMHP7U=
@@ -2611,18 +2670,19 @@ github.com/vmihailenco/msgpack v3.3.3+incompatible/go.mod h1:fy3FlTQTDXWkZ7Bh6Ac
github.com/vmihailenco/msgpack v4.0.1+incompatible/go.mod h1:fy3FlTQTDXWkZ7Bh6AcGMlsjHatGryHQYUTf1ShIgkk=
github.com/vmihailenco/msgpack v4.0.4+incompatible h1:dSLoQfGFAo3F6OoNhwUmLwVgaUXK79GlxNBwueZn0xI=
github.com/vmihailenco/msgpack v4.0.4+incompatible/go.mod h1:fy3FlTQTDXWkZ7Bh6AcGMlsjHatGryHQYUTf1ShIgkk=
-github.com/vmihailenco/msgpack/v4 v4.3.12/go.mod h1:gborTTJjAo/GWTqqRjrLCn9pgNN+NXzzngzBKDPIqw4=
github.com/vmihailenco/msgpack/v5 v5.3.5 h1:5gO0H1iULLWGhs2H5tbAHIZTV8/cYafcFOr9znI5mJU=
github.com/vmihailenco/msgpack/v5 v5.3.5/go.mod h1:7xyJ9e+0+9SaZT0Wt1RGleJXzli6Q/V5KbhBonMG9jc=
-github.com/vmihailenco/tagparser v0.1.1/go.mod h1:OeAg3pn3UbLjkWt+rN9oFYB6u/cQgqMEUPoW2WPyhdI=
github.com/vmihailenco/tagparser/v2 v2.0.0 h1:y09buUbR+b5aycVFQs/g70pqKVZNBmxwAhO7/IwNM9g=
github.com/vmihailenco/tagparser/v2 v2.0.0/go.mod h1:Wri+At7QHww0WTrCBeu4J6bNtoV6mEfg5OIWRZA9qds=
+github.com/vultr/govultr/v2 v2.17.2/go.mod h1:ZFOKGWmgjytfyjeyAdhQlSWwTjh2ig+X49cAp50dzXI=
github.com/willf/bitset v1.1.11-0.20200630133818-d5bec3311243/go.mod h1:RjeCKbqT1RxIR/KWY6phxZiaY1IyutSBfGjNPySAYV4=
github.com/willf/bitset v1.1.11/go.mod h1:83CECat5yLh5zVOf4P1ErAgKA5UDvKtgyUABdr3+MjI=
github.com/x448/float16 v0.8.4/go.mod h1:14CWIYCyZA/cWjXOioeEpHeN/83MdbZDRQHoFcYsOfg=
-github.com/xanzy/ssh-agent v0.3.0/go.mod h1:3s9xbODqPuuhK9JV1R321M/FlMZSBvE5aY6eAcqrDh0=
github.com/xanzy/ssh-agent v0.3.3 h1:+/15pJfg/RsTxqYcX6fHqOXZwwMP+2VyYWJeWM2qQFM=
github.com/xanzy/ssh-agent v0.3.3/go.mod h1:6dzNDKs0J9rVPHPhaGCukekBHKqfl+L3KghI1Bc68Uw=
+github.com/xdg-go/pbkdf2 v1.0.0/go.mod h1:jrpuAogTd400dnrH08LKmI/xc1MbPOebTwRqcT5RDeI=
+github.com/xdg-go/scram v1.0.2/go.mod h1:1WAq6h33pAW+iRreB34OORO2Nf7qel3VV3fjBj+hCSs=
+github.com/xdg-go/stringprep v1.0.2/go.mod h1:8F9zXuvzgwmyT5DUm4GUfZGDdT3W+LCvS6+da4O5kxM=
github.com/xeipuuv/gojsonpointer v0.0.0-20180127040702-4e3ac2762d5f/go.mod h1:N2zxlSyiKSe5eX1tZViRH5QA0qijqEDrYZiPEAiq3wU=
github.com/xeipuuv/gojsonpointer v0.0.0-20190905194746-02993c407bfb h1:zGWFAtiMcyryUHoUjUJX0/lt1H2+i2Ka2n+D3DImSNo=
github.com/xeipuuv/gojsonpointer v0.0.0-20190905194746-02993c407bfb/go.mod h1:N2zxlSyiKSe5eX1tZViRH5QA0qijqEDrYZiPEAiq3wU=
@@ -2632,9 +2692,10 @@ github.com/xeipuuv/gojsonschema v0.0.0-20180618132009-1d523034197f/go.mod h1:5yf
github.com/xeipuuv/gojsonschema v1.2.0 h1:LhYJRs+L4fBtjZUfuSZIKGeVu0QRy8e5Xi7D17UxZ74=
github.com/xeipuuv/gojsonschema v1.2.0/go.mod h1:anYRn/JVcOK2ZgGU+IjEV4nwlhoK5sQluxsYJ78Id3Y=
github.com/xiang90/probing v0.0.0-20190116061207-43a291ad63a2/go.mod h1:UETIi67q53MR2AWcXfiuqkDkRtnGDLqkBTpCHuJHxtU=
+github.com/xlab/treeprint v1.1.0/go.mod h1:gj5Gd3gPdKtR1ikdDK6fnFLdmIS0X30kTTuNd/WEJu0=
github.com/xordataexchange/crypt v0.0.3-0.20170626215501-b2862e3d0a77/go.mod h1:aYKd//L2LvnjZzWKhF00oedf4jCCReLcmhLdhm1A27Q=
github.com/yashtewari/glob-intersection v0.1.0/go.mod h1:LK7pIC3piUjovexikBbJ26Yml7g8xa5bsjfx2v1fwok=
-github.com/yhat/scrape v0.0.0-20161128144610-24b7890b0945/go.mod h1:4vRFPPNYllgCacoj+0FoKOjTW68rUhEfqPLiEJaK2w8=
+github.com/youmark/pkcs8 v0.0.0-20181117223130-1be2e3e5546d/go.mod h1:rHwXgn7JulP+udvsHwJoVG1YGAP6VLg4y9I5dyZdqmA=
github.com/yuin/goldmark v1.1.25/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74=
github.com/yuin/goldmark v1.1.27/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74=
github.com/yuin/goldmark v1.1.32/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74=
@@ -2649,21 +2710,24 @@ github.com/zclconf/go-cty v1.0.0/go.mod h1:xnAOWiHeOqg2nWS62VtQ7pbOu17FtxJNW8RLE
github.com/zclconf/go-cty v1.1.0/go.mod h1:xnAOWiHeOqg2nWS62VtQ7pbOu17FtxJNW8RLEih+O3s=
github.com/zclconf/go-cty v1.2.0/go.mod h1:hOPWgoHbaTUnI5k4D2ld+GRpFJSCe6bCM7m1q/N4PQ8=
github.com/zclconf/go-cty v1.2.1/go.mod h1:hOPWgoHbaTUnI5k4D2ld+GRpFJSCe6bCM7m1q/N4PQ8=
-github.com/zclconf/go-cty v1.10.0/go.mod h1:vVKLxnk3puL4qRAv72AO+W99LUD4da90g3uUAzyuvAk=
github.com/zclconf/go-cty v1.13.0/go.mod h1:YKQzy/7pZ7iq2jNFzy5go57xdxdWoLLpaEp4u238AE0=
github.com/zclconf/go-cty v1.13.1/go.mod h1:YKQzy/7pZ7iq2jNFzy5go57xdxdWoLLpaEp4u238AE0=
-github.com/zclconf/go-cty v1.13.2 h1:4GvrUxe/QUDYuJKAav4EYqdM47/kZa672LwmXFmEKT0=
github.com/zclconf/go-cty v1.13.2/go.mod h1:YKQzy/7pZ7iq2jNFzy5go57xdxdWoLLpaEp4u238AE0=
+github.com/zclconf/go-cty v1.14.0 h1:/Xrd39K7DXbHzlisFP9c4pHao4yyf+/Ug9LEz+Y/yhc=
+github.com/zclconf/go-cty v1.14.0/go.mod h1:VvMs5i0vgZdhYawQNq5kePSpLAoz8u1xvZgrPIxfnZE=
+github.com/zclconf/go-cty-debug v0.0.0-20191215020915-b22d67c1ba0b h1:FosyBZYxY34Wul7O/MSKey3txpPYyCqVO5ZyceuQJEI=
github.com/zclconf/go-cty-debug v0.0.0-20191215020915-b22d67c1ba0b/go.mod h1:ZRKQfBXbGkpdV6QMzT3rU1kSTAnfu1dO8dPKjYprgj8=
github.com/zclconf/go-cty-yaml v1.0.1 h1:up11wlgAaDvlAGENcFDnZgkn0qUJurso7k6EpURKNF8=
github.com/zclconf/go-cty-yaml v1.0.1/go.mod h1:IP3Ylp0wQpYm50IHK8OZWKMu6sPJIUgKa8XhiVHura0=
github.com/zeebo/assert v1.3.0/go.mod h1:Pq9JiuJQpG8JLJdtkwrJESF0Foym2/D9XMU5ciN/wJ0=
github.com/zeebo/xxh3 v1.0.2/go.mod h1:5NWz9Sef7zIDm2JHfFlcQvNekmcEl9ekUZQQKCYaDcA=
+github.com/zenazn/goji v0.9.0/go.mod h1:7S9M489iMyHBNxwZnk9/EHS098H4/F6TATF2mIxtB1Q=
go.etcd.io/bbolt v1.3.2/go.mod h1:IbVyRI1SCnLcuJnV2u8VeU0CEYM7e686BmAb1XKL+uU=
go.etcd.io/bbolt v1.3.3/go.mod h1:IbVyRI1SCnLcuJnV2u8VeU0CEYM7e686BmAb1XKL+uU=
go.etcd.io/bbolt v1.3.5/go.mod h1:G5EMThwa9y8QZGBClrRx5EY+Yw9kAhnjy3bSjsnlVTQ=
go.etcd.io/bbolt v1.3.6/go.mod h1:qXsaaIqmgQH0T+OPdb99Bf+PKfBBQVAdyD6TY9G8XM4=
go.etcd.io/bbolt v1.3.7/go.mod h1:N9Mkw9X8x5fupy0IKsmuqVtoGDyxsaDlbk4Rd05IAQw=
+go.etcd.io/etcd v0.0.0-20191023171146-3cf2f69b5738/go.mod h1:dnLIgRNXwCJa5e+c6mIZCrds/GIG4ncV9HhK5PX7jPg=
go.etcd.io/etcd v0.5.0-alpha.5.0.20200910180754-dd1b699fc489/go.mod h1:yVHk9ub3CSBatqGNg7GRmsnfLWtoW60w4eDYfh7vHDg=
go.etcd.io/etcd/api/v3 v3.5.0/go.mod h1:cbVKeC6lCfl7j/8jBhAK6aIYO9XOjdptoxU/nLQcPvs=
go.etcd.io/etcd/api/v3 v3.5.5/go.mod h1:KFtNaxGDw4Yx/BA4iPPwevUTAuqcsPxzyX8PHydchN8=
@@ -2680,15 +2744,19 @@ go.etcd.io/etcd/raft/v3 v3.5.5/go.mod h1:76TA48q03g1y1VpTue92jZLr9lIHKUNcYdZOOGy
go.etcd.io/etcd/server/v3 v3.5.0/go.mod h1:3Ah5ruV+M+7RZr0+Y/5mNLwC+eQlni+mQmOVdCRJoS4=
go.etcd.io/etcd/server/v3 v3.5.5/go.mod h1:rZ95vDw/jrvsbj9XpTqPrTAB9/kzchVdhRirySPkUBc=
go.etcd.io/gofail v0.1.0/go.mod h1:VZBCXYGZhHAinaBiiqYvuDynvahNsAyLFwB3kEHKz1M=
+go.mongodb.org/mongo-driver v1.7.3/go.mod h1:NqaYOwnXWr5Pm7AOpO5QFxKJ503nbMse/R79oO62zWg=
+go.mongodb.org/mongo-driver v1.7.5/go.mod h1:VXEWRZ6URJIkUq2SCAyapmhH0ZLRBP+FT4xhp5Zvxng=
+go.mongodb.org/mongo-driver v1.8.3/go.mod h1:0sQWfOeY63QTntERDJJ/0SuKK0T1uVSgKCuAROlKEPY=
go.mozilla.org/pkcs7 v0.0.0-20200128120323-432b2356ecb1/go.mod h1:SNgMg+EgDFwmvSmLRTNKC5fegJjB7v23qTQ0XLGUNHk=
go.opencensus.io v0.15.0/go.mod h1:UffZAU+4sDEINUGP/B7UfBBkq4fqLu9zXAX7ke6CHW0=
+go.opencensus.io v0.20.1/go.mod h1:6WKK9ahsWS3RSO+PY9ZHZUfv2irvY6gN279GOPZjmmk=
+go.opencensus.io v0.20.2/go.mod h1:6WKK9ahsWS3RSO+PY9ZHZUfv2irvY6gN279GOPZjmmk=
go.opencensus.io v0.21.0/go.mod h1:mSImk1erAIZhrmZN+AvHh14ztQfjbGwt4TtuofqLduU=
go.opencensus.io v0.22.0/go.mod h1:+kGneAE2xo2IficOXnaByMWTGM9T73dGwxeWcUqIpI8=
go.opencensus.io v0.22.2/go.mod h1:yxeiOL68Rb0Xd1ddK5vPZ/oVn4vY4Ynel7k9FzqtOIw=
go.opencensus.io v0.22.3/go.mod h1:yxeiOL68Rb0Xd1ddK5vPZ/oVn4vY4Ynel7k9FzqtOIw=
go.opencensus.io v0.22.4/go.mod h1:yxeiOL68Rb0Xd1ddK5vPZ/oVn4vY4Ynel7k9FzqtOIw=
go.opencensus.io v0.22.5/go.mod h1:5pWMHQbX5EPX2/62yrJeAkowc+lfs/XD7Uxpq3pI6kk=
-go.opencensus.io v0.22.6/go.mod h1:XItmlyltB5F7CS4xOC1DcqMoFqwtC6OG2xF7mCv7P7E=
go.opencensus.io v0.23.0/go.mod h1:XItmlyltB5F7CS4xOC1DcqMoFqwtC6OG2xF7mCv7P7E=
go.opencensus.io v0.24.0 h1:y73uSU6J157QMP2kn2r30vwW1A2W2WFwSCGnAVxeaD0=
go.opencensus.io v0.24.0/go.mod h1:vNK8G9p7aAivkbmorf4v+7Hgx+Zs0yY+0fOtgBfjQKo=
@@ -2699,33 +2767,42 @@ go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc v0.2
go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc v0.35.0/go.mod h1:h8TWwRAhQpOd0aM5nYsRD8+flnkj+526GEIVlarH7eY=
go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc v0.40.0/go.mod h1:UMklln0+MRhZC4e3PwmN3pCtq4DyIadWw4yikh6bNrw=
go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.20.0/go.mod h1:2AboqHi0CiIZU0qwhtUfCYD1GeUzvvIXWNkhDt7ZMG4=
+go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.31.0/go.mod h1:PFmBsWbldL1kiWZk9+0LBZz2brhByaGsvp6pRICMlPE=
go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.32.0/go.mod h1:5eCOqeGphOyz6TsY3ZDNjE33SM/TFAK3RGuCL2naTgY=
go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.35.0/go.mod h1:9NiG9I2aHTKkcxqCILhjtyNA1QEiCjdBACv4IvrFQ+c=
go.opentelemetry.io/otel v0.20.0/go.mod h1:Y3ugLH2oa81t5QO+Lty+zXf8zC9L26ax4Nzoxm/dooo=
go.opentelemetry.io/otel v1.0.1/go.mod h1:OPEOD4jIT2SlZPMmwT6FqZz2C0ZNdQqiWcoK6M0SNFU=
go.opentelemetry.io/otel v1.3.0/go.mod h1:PWIKzi6JCp7sM0k9yZ43VX+T345uNbAkDKwHVjb2PTs=
+go.opentelemetry.io/otel v1.6.0/go.mod h1:bfJD2DZVw0LBxghOTlgnlI0CV3hLDu9XF/QKOUXMTQQ=
+go.opentelemetry.io/otel v1.6.1/go.mod h1:blzUabWHkX6LJewxvadmzafgh/wnvBSDBdOuwkAtrWQ=
go.opentelemetry.io/otel v1.7.0/go.mod h1:5BdUoMIz5WEs0vt0CUEMtSSaTSHBBVwrhnz7+nrD5xk=
go.opentelemetry.io/otel v1.8.0/go.mod h1:2pkj+iMj0o03Y+cW6/m8Y4WkRdYN3AvCXCnzRMp9yvM=
go.opentelemetry.io/otel v1.10.0/go.mod h1:NbvWjCthWHKBEUMpf0/v8ZRZlni86PpGFEMA9pnQSnQ=
go.opentelemetry.io/otel v1.14.0/go.mod h1:o4buv+dJzx8rohcUeRmWUZhqupFvzWis188WlggnNeU=
go.opentelemetry.io/otel/exporters/otlp v0.20.0/go.mod h1:YIieizyaN77rtLJra0buKiNBOm9XQfkPEKBeuhoMwAM=
go.opentelemetry.io/otel/exporters/otlp/internal/retry v1.3.0/go.mod h1:VpP4/RMn8bv8gNo9uK7/IMY4mtWLELsS+JIP0inH0h4=
+go.opentelemetry.io/otel/exporters/otlp/internal/retry v1.6.1/go.mod h1:NEu79Xo32iVb+0gVNV8PMd7GoWqnyDXRlj04yFjqz40=
go.opentelemetry.io/otel/exporters/otlp/internal/retry v1.7.0/go.mod h1:M1hVZHNxcbkAlcvrOMlpQ4YOO3Awf+4N2dxkZL3xm04=
go.opentelemetry.io/otel/exporters/otlp/internal/retry v1.10.0/go.mod h1:78XhIg8Ht9vR4tbLNUhXsiOnE2HOuSeKAiAcoVQEpOY=
go.opentelemetry.io/otel/exporters/otlp/internal/retry v1.14.0/go.mod h1:UFG7EBMRdXyFstOwH028U0sVf+AvukSGhF0g8+dmNG8=
go.opentelemetry.io/otel/exporters/otlp/otlptrace v1.0.1/go.mod h1:Kv8liBeVNFkkkbilbgWRpV+wWuu+H5xdOT6HAgd30iw=
go.opentelemetry.io/otel/exporters/otlp/otlptrace v1.3.0/go.mod h1:hO1KLR7jcKaDDKDkvI9dP/FIhpmna5lkqPUQdEjFAM8=
+go.opentelemetry.io/otel/exporters/otlp/otlptrace v1.6.1/go.mod h1:YJ/JbY5ag/tSQFXzH3mtDmHqzF3aFn3DI/aB1n7pt4w=
go.opentelemetry.io/otel/exporters/otlp/otlptrace v1.7.0/go.mod h1:ceUgdyfNv4h4gLxHR0WNfDiiVmZFodZhZSbOLhpxqXE=
go.opentelemetry.io/otel/exporters/otlp/otlptrace v1.10.0/go.mod h1:Krqnjl22jUJ0HgMzw5eveuCvFDXY4nSYb4F8t5gdrag=
go.opentelemetry.io/otel/exporters/otlp/otlptrace v1.14.0/go.mod h1:HrbCVv40OOLTABmOn1ZWty6CHXkU8DK/Urc43tHug70=
go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc v1.0.1/go.mod h1:xOvWoTOrQjxjW61xtOmD/WKGRYb/P4NzRo3bs65U6Rk=
go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc v1.3.0/go.mod h1:keUU7UfnwWTWpJ+FWnyqmogPa82nuU5VUANFq49hlMY=
+go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc v1.6.1/go.mod h1:UJJXJj0rltNIemDMwkOJyggsvyMG9QHfJeFH0HS5JjM=
go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc v1.7.0/go.mod h1:E+/KKhwOSw8yoPxSSuUHG6vKppkvhN+S1Jc7Nib3k3o=
go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc v1.10.0/go.mod h1:OfUCyyIiDvNXHWpcWgbF+MWvqPZiNa3YDEnivcnYsV0=
go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc v1.14.0/go.mod h1:5w41DY6S9gZrbjuq6Y+753e96WfPha5IcsOSZTtullM=
go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp v1.3.0/go.mod h1:QNX1aly8ehqqX1LEa6YniTU7VY9I6R3X/oPxhGdTceE=
+go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp v1.6.1/go.mod h1:DAKwdo06hFLc0U88O10x4xnb5sc7dDRDqRuiN+io8JE=
+go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp v1.7.0/go.mod h1:aFXT9Ng2seM9eizF+LfKiyPBGy8xIZKwhusC1gIu3hA=
go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp v1.14.0/go.mod h1:+N7zNjIJv4K+DeX67XXET0P+eIciESgaFDBqh+ZJFS4=
go.opentelemetry.io/otel/metric v0.20.0/go.mod h1:598I5tYlH1vzBjn+BTuhzTCSb/9debfNp6R3s7Pr1eU=
+go.opentelemetry.io/otel/metric v0.28.0/go.mod h1:TrzsfQAmQaB1PDcdhBauLMk7nyyg9hm+GoQq/ekE9Iw=
go.opentelemetry.io/otel/metric v0.30.0/go.mod h1:/ShZ7+TS4dHzDFmfi1kSXMhMVubNoP0oIaBp70J6UXU=
go.opentelemetry.io/otel/metric v0.31.0/go.mod h1:ohmwj9KTSIeBnDBm/ZwH2PSZxZzoOaG2xZeekTRzL5A=
go.opentelemetry.io/otel/metric v0.37.0/go.mod h1:DmdaHfGt54iV6UKxsV9slj2bBRJcKC1B1uvDLIioc1s=
@@ -2733,6 +2810,7 @@ go.opentelemetry.io/otel/oteltest v0.20.0/go.mod h1:L7bgKf9ZB7qCwT9Up7i9/pn0PWIa
go.opentelemetry.io/otel/sdk v0.20.0/go.mod h1:g/IcepuwNsoiX5Byy2nNV0ySUF1em498m7hBWC279Yc=
go.opentelemetry.io/otel/sdk v1.0.1/go.mod h1:HrdXne+BiwsOHYYkBE5ysIcv2bvdZstxzmCQhxTcZkI=
go.opentelemetry.io/otel/sdk v1.3.0/go.mod h1:rIo4suHNhQwBIPg9axF8V9CA72Wz2mKF1teNrup8yzs=
+go.opentelemetry.io/otel/sdk v1.6.1/go.mod h1:IVYrddmFZ+eJqu2k38qD3WezFR2pymCzm8tdxyh3R4E=
go.opentelemetry.io/otel/sdk v1.7.0/go.mod h1:uTEOTwaqIVuTGiJN7ii13Ibp75wJmYUDe374q6cZwUU=
go.opentelemetry.io/otel/sdk v1.10.0/go.mod h1:vO06iKzD5baltJz1zarxMCNHFpUlUiOy4s65ECtn6kE=
go.opentelemetry.io/otel/sdk v1.14.0/go.mod h1:bwIC5TjrNG6QDCHNWvW4HLHtUQ4I+VQDsnjhvyZCALM=
@@ -2741,6 +2819,8 @@ go.opentelemetry.io/otel/sdk/metric v0.20.0/go.mod h1:knxiS8Xd4E/N+ZqKmUPf3gTTZ4
go.opentelemetry.io/otel/trace v0.20.0/go.mod h1:6GjCW8zgDjwGHGa6GkyeB8+/5vjT16gUEi0Nf1iBdgw=
go.opentelemetry.io/otel/trace v1.0.1/go.mod h1:5g4i4fKLaX2BQpSBsxw8YYcgKpMMSW3x7ZTuYBr3sUk=
go.opentelemetry.io/otel/trace v1.3.0/go.mod h1:c/VDhno8888bvQYmbYLqe41/Ldmr/KKunbvWM4/fEjk=
+go.opentelemetry.io/otel/trace v1.6.0/go.mod h1:qs7BrU5cZ8dXQHBGxHMOxwME/27YH2qEp4/+tZLLwJE=
+go.opentelemetry.io/otel/trace v1.6.1/go.mod h1:RkFRM1m0puWIq10oxImnGEduNBzxiN7TXluRBtE+5j0=
go.opentelemetry.io/otel/trace v1.7.0/go.mod h1:fzLSB9nqR2eXzxPXb2JW9IKE+ScyXA48yyE4TNvoHqU=
go.opentelemetry.io/otel/trace v1.8.0/go.mod h1:0Bt3PXY8w+3pheS3hQUt+wow8b1ojPaTBoTCh2zIFI4=
go.opentelemetry.io/otel/trace v1.10.0/go.mod h1:Sij3YYczqAdz+EhmGhE6TpTxUO5/F/AzrK+kxfGqySM=
@@ -2748,11 +2828,13 @@ go.opentelemetry.io/otel/trace v1.14.0/go.mod h1:8avnQLK+CG77yNLUae4ea2JDQ6iT+go
go.opentelemetry.io/proto/otlp v0.7.0/go.mod h1:PqfVotwruBrMGOCsRd/89rSnXhoiJIqeYNgFYFoEGnI=
go.opentelemetry.io/proto/otlp v0.9.0/go.mod h1:1vKfU9rv61e9EVGthD1zNvUbiwPcimSsOPU9brfSHJg=
go.opentelemetry.io/proto/otlp v0.11.0/go.mod h1:QpEjXPrNQzrFDZgoTo49dgHR9RYRSrg3NAKnUGl9YpQ=
+go.opentelemetry.io/proto/otlp v0.12.1/go.mod h1:H7XAot3MsfNsj7EXtrA2q5xSNQ10UqI405h3+duxN4U=
go.opentelemetry.io/proto/otlp v0.15.0/go.mod h1:H7XAot3MsfNsj7EXtrA2q5xSNQ10UqI405h3+duxN4U=
go.opentelemetry.io/proto/otlp v0.16.0/go.mod h1:H7XAot3MsfNsj7EXtrA2q5xSNQ10UqI405h3+duxN4U=
go.opentelemetry.io/proto/otlp v0.19.0/go.mod h1:H7XAot3MsfNsj7EXtrA2q5xSNQ10UqI405h3+duxN4U=
go.uber.org/atomic v1.3.2/go.mod h1:gD2HeocX3+yG+ygLZcrzQJaqmWj9AIm7n08wl/qW/PE=
go.uber.org/atomic v1.4.0/go.mod h1:gD2HeocX3+yG+ygLZcrzQJaqmWj9AIm7n08wl/qW/PE=
+go.uber.org/atomic v1.5.0/go.mod h1:sABNBOSYdrvTF6hTgEIbc7YasKWGhgEQZyfxyTvoXHQ=
go.uber.org/atomic v1.6.0/go.mod h1:sABNBOSYdrvTF6hTgEIbc7YasKWGhgEQZyfxyTvoXHQ=
go.uber.org/atomic v1.7.0/go.mod h1:fEN4uk6kAWBTFdckzkM89CLk9XfWZrxpCo0nPH17wJc=
go.uber.org/atomic v1.9.0/go.mod h1:fEN4uk6kAWBTFdckzkM89CLk9XfWZrxpCo0nPH17wJc=
@@ -2760,32 +2842,36 @@ go.uber.org/atomic v1.10.0 h1:9qC72Qh0+3MqyJbAn8YU5xVq1frD8bn3JtD2oXtafVQ=
go.uber.org/atomic v1.10.0/go.mod h1:LUxbIzbOniOlMKjJjyPfpl4v+PKK2cNJn91OQbhoJI0=
go.uber.org/automaxprocs v1.5.1/go.mod h1:BF4eumQw0P9GtnuxxovUd06vwm1o18oMzFtK66vU6XU=
go.uber.org/goleak v1.1.10/go.mod h1:8a7PlsEVH3e/a/GLqe5IIrQx6GzcnRmZEufDUTk4A7A=
+go.uber.org/goleak v1.1.11/go.mod h1:cwTWslyiVhfpKIDGSZEM2HlOvcqm+tG4zioyIeLoqMQ=
go.uber.org/goleak v1.1.12/go.mod h1:cwTWslyiVhfpKIDGSZEM2HlOvcqm+tG4zioyIeLoqMQ=
go.uber.org/goleak v1.2.1/go.mod h1:qlT2yGI9QafXHhZZLxlSuNsMw3FFLxBr+tBRlmO1xH4=
go.uber.org/multierr v1.1.0/go.mod h1:wR5kodmAFQ0UK8QlbwjlSNy0Z68gJhDJUG5sjR94q/0=
+go.uber.org/multierr v1.3.0/go.mod h1:VgVr7evmIr6uPjLBxg28wmKNXyqE9akIJ5XnfpiKl+4=
+go.uber.org/multierr v1.5.0/go.mod h1:FeouvMocqHpRaaGuG9EjoKcStLC43Zu/fmqdUMPcKYU=
go.uber.org/multierr v1.6.0/go.mod h1:cdWPpRnG4AhwMwsgIHip0KRBQjJy5kYEpYjJxpXp9iU=
-go.uber.org/multierr v1.7.0/go.mod h1:7EAYxJLBy9rStEaz58O2t4Uvip6FSURkq8/ppBp95ak=
+go.uber.org/multierr v1.8.0/go.mod h1:7EAYxJLBy9rStEaz58O2t4Uvip6FSURkq8/ppBp95ak=
+go.uber.org/tools v0.0.0-20190618225709-2cfd321de3ee/go.mod h1:vJERXedbb3MVM5f9Ejo0C68/HhF8uaILCdgjnY+goOA=
+go.uber.org/zap v1.9.1/go.mod h1:vwi/ZaCAaUcBkycHslxD9B2zi4UTXhF60s6SWpuDF0Q=
go.uber.org/zap v1.10.0/go.mod h1:vwi/ZaCAaUcBkycHslxD9B2zi4UTXhF60s6SWpuDF0Q=
+go.uber.org/zap v1.13.0/go.mod h1:zwrFLgMcdUuIBviXEYEH1YKNaOBnKXsx2IPda5bBwHM=
go.uber.org/zap v1.17.0/go.mod h1:MXVU+bhUf/A7Xi2HNOnopQOrmycQ5Ih87HtOu4q5SSo=
-go.uber.org/zap v1.18.1/go.mod h1:xg/QME4nWcxGxrpdeYfq7UvYrLh66cuVKdrbD1XF/NI=
go.uber.org/zap v1.19.0/go.mod h1:xg/QME4nWcxGxrpdeYfq7UvYrLh66cuVKdrbD1XF/NI=
-gocloud.dev v0.24.0 h1:cNtHD07zQQiv02OiwwDyVMuHmR7iQt2RLkzoAgz7wBs=
-gocloud.dev v0.24.0/go.mod h1:uA+als++iBX5ShuG4upQo/3Zoz49iIPlYUWHV5mM8w8=
-gocloud.dev/secrets/hashivault v0.24.0 h1:rutqnevHcRze+92YMGmjCH3gX+qES8IArg5qPhr8ZnM=
-gocloud.dev/secrets/hashivault v0.24.0/go.mod h1:I4EieZgy8VTp5iVK2jSPlTidjENujhKq2Y/wXz8r8V0=
+go.uber.org/zap v1.21.0/go.mod h1:wjWOCqI0f2ZZrJF/UufIOkiC8ii6tm1iqIsLo76RfJw=
+gocloud.dev v0.27.0 h1:j0WTUsnKTxCsWO7y8T+YCiBZUmLl9w/WIowqAY3yo0g=
+gocloud.dev v0.27.0/go.mod h1:YlYKhYsY5/1JdHGWQDkAuqkezVKowu7qbe9aIeUF6p0=
+gocloud.dev/secrets/hashivault v0.27.0 h1:AAeGJXr0tiHHJgg5tL8atOGktB4eK9EJAqkZbPKAcOo=
+gocloud.dev/secrets/hashivault v0.27.0/go.mod h1:offqsI5oj0B0bVHZdfk/88uIb3NnN93ia8py0yvRlHY=
golang.org/x/arch v0.1.0/go.mod h1:5om86z9Hs0C8fWVUuoMHwpExlXzs5Tkyp9hOrfG7pp8=
golang.org/x/crypto v0.0.0-20171113213409-9f005a07e0d3/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4=
golang.org/x/crypto v0.0.0-20180904163835-0709b304e793/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4=
golang.org/x/crypto v0.0.0-20181009213950-7c1a557ab941/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4=
golang.org/x/crypto v0.0.0-20181029021203-45a5f77698d3/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4=
golang.org/x/crypto v0.0.0-20181203042331-505ab145d0a9/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4=
-golang.org/x/crypto v0.0.0-20190219172222-a4c6cb3142f2/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4=
golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w=
-golang.org/x/crypto v0.0.0-20190325154230-a5d413f7728c/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w=
-golang.org/x/crypto v0.0.0-20190418165655-df01cb2cc480/go.mod h1:WFFai1msRO1wXaEeE5yQxYXgSfI8pQAWXbQop6sCtWE=
+golang.org/x/crypto v0.0.0-20190411191339-88737f569e3a/go.mod h1:WFFai1msRO1wXaEeE5yQxYXgSfI8pQAWXbQop6sCtWE=
+golang.org/x/crypto v0.0.0-20190422162423-af44ce270edf/go.mod h1:WFFai1msRO1wXaEeE5yQxYXgSfI8pQAWXbQop6sCtWE=
golang.org/x/crypto v0.0.0-20190426145343-a29dc8fdc734/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI=
golang.org/x/crypto v0.0.0-20190510104115-cbcb75029529/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI=
-golang.org/x/crypto v0.0.0-20190530122614-20be4c3c3ed5/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI=
golang.org/x/crypto v0.0.0-20190605123033-f99c8df09eb5/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI=
golang.org/x/crypto v0.0.0-20190611184440-5c40567a22f8/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI=
golang.org/x/crypto v0.0.0-20190701094942-4def268fd1a4/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI=
@@ -2793,6 +2879,7 @@ golang.org/x/crypto v0.0.0-20190820162420-60c769a6c586/go.mod h1:yigFU9vqHzYiE8U
golang.org/x/crypto v0.0.0-20190911031432-227b76d455e7/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI=
golang.org/x/crypto v0.0.0-20190923035154-9ee001bba392/go.mod h1:/lpIB1dKB+9EgE3H3cr1v9wB50oz8l4C4h62xy7jSTY=
golang.org/x/crypto v0.0.0-20191011191535-87dc89f01550/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI=
+golang.org/x/crypto v0.0.0-20200302210943-78000ba7a073/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto=
golang.org/x/crypto v0.0.0-20200414173820-0848c9571904/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto=
golang.org/x/crypto v0.0.0-20200604202706-70a84ac30bf9/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto=
golang.org/x/crypto v0.0.0-20200622213623-75b288015ac9/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto=
@@ -2800,21 +2887,24 @@ golang.org/x/crypto v0.0.0-20200728195943-123391ffb6de/go.mod h1:LzIPMQfyMNhhGPh
golang.org/x/crypto v0.0.0-20200820211705-5c72a883971a/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto=
golang.org/x/crypto v0.0.0-20201002170205-7f63de1d35b0/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto=
golang.org/x/crypto v0.0.0-20201016220609-9e8e0b390897/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto=
+golang.org/x/crypto v0.0.0-20201203163018-be400aefbc4c/go.mod h1:jdWPYTVW3xRLrWPugEBEK3UY2ZEsg3UU495nc5E+M+I=
+golang.org/x/crypto v0.0.0-20201216223049-8b5274cf687f/go.mod h1:jdWPYTVW3xRLrWPugEBEK3UY2ZEsg3UU495nc5E+M+I=
golang.org/x/crypto v0.0.0-20210220033148-5ea612d1eb83/go.mod h1:jdWPYTVW3xRLrWPugEBEK3UY2ZEsg3UU495nc5E+M+I=
golang.org/x/crypto v0.0.0-20210322153248-0c34fe9e7dc2/go.mod h1:T9bdIzuCu7OtxOm1hfPfRQxPLYneinmdGuTeoZ9dtd4=
golang.org/x/crypto v0.0.0-20210421170649-83a5a9bb288b/go.mod h1:T9bdIzuCu7OtxOm1hfPfRQxPLYneinmdGuTeoZ9dtd4=
-golang.org/x/crypto v0.0.0-20210513164829-c07d793c2f9a/go.mod h1:P+XmwS30IXTQdn5tA2iutPOUgjI07+tq3H3K9MVA1s8=
+golang.org/x/crypto v0.0.0-20210616213533-5ff15b29337e/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc=
golang.org/x/crypto v0.0.0-20210711020723-a769d52b0f97/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc=
golang.org/x/crypto v0.0.0-20210817164053-32db794688a5/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc=
golang.org/x/crypto v0.0.0-20210921155107-089bfa567519/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc=
golang.org/x/crypto v0.0.0-20211108221036-ceb1ce70b4fa/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc=
+golang.org/x/crypto v0.0.0-20211202192323-5770296d904e/go.mod h1:IxCIyHEi3zRg3s0A5j5BB6A9Jmi73HwBIUl50j+osU4=
golang.org/x/crypto v0.0.0-20211215153901-e495a2d5b3d3/go.mod h1:IxCIyHEi3zRg3s0A5j5BB6A9Jmi73HwBIUl50j+osU4=
golang.org/x/crypto v0.0.0-20220214200702-86341886e292/go.mod h1:IxCIyHEi3zRg3s0A5j5BB6A9Jmi73HwBIUl50j+osU4=
golang.org/x/crypto v0.0.0-20220313003712-b769efc7c000/go.mod h1:IxCIyHEi3zRg3s0A5j5BB6A9Jmi73HwBIUl50j+osU4=
-golang.org/x/crypto v0.0.0-20220314234659-1baeb1ce4c0b/go.mod h1:IxCIyHEi3zRg3s0A5j5BB6A9Jmi73HwBIUl50j+osU4=
golang.org/x/crypto v0.0.0-20220315160706-3147a52a75dd/go.mod h1:IxCIyHEi3zRg3s0A5j5BB6A9Jmi73HwBIUl50j+osU4=
golang.org/x/crypto v0.0.0-20220411220226-7b82a4e95df4/go.mod h1:IxCIyHEi3zRg3s0A5j5BB6A9Jmi73HwBIUl50j+osU4=
golang.org/x/crypto v0.0.0-20220427172511-eb4f295cb31f/go.mod h1:IxCIyHEi3zRg3s0A5j5BB6A9Jmi73HwBIUl50j+osU4=
+golang.org/x/crypto v0.0.0-20220511200225-c6db032c6c88/go.mod h1:IxCIyHEi3zRg3s0A5j5BB6A9Jmi73HwBIUl50j+osU4=
golang.org/x/crypto v0.0.0-20220517005047-85d78b3ac167/go.mod h1:IxCIyHEi3zRg3s0A5j5BB6A9Jmi73HwBIUl50j+osU4=
golang.org/x/crypto v0.0.0-20220525230936-793ad666bf5e/go.mod h1:IxCIyHEi3zRg3s0A5j5BB6A9Jmi73HwBIUl50j+osU4=
golang.org/x/crypto v0.0.0-20220622213112-05595931fe9d/go.mod h1:IxCIyHEi3zRg3s0A5j5BB6A9Jmi73HwBIUl50j+osU4=
@@ -2822,14 +2912,10 @@ golang.org/x/crypto v0.0.0-20220722155217-630584e8d5aa/go.mod h1:IxCIyHEi3zRg3s0
golang.org/x/crypto v0.0.0-20220826181053-bd7e27e6170d/go.mod h1:IxCIyHEi3zRg3s0A5j5BB6A9Jmi73HwBIUl50j+osU4=
golang.org/x/crypto v0.1.0/go.mod h1:RecgLatLF4+eUMCP1PoPZQb+cVrJcOPbHkTkbkB9sbw=
golang.org/x/crypto v0.3.1-0.20221117191849-2c476679df9a/go.mod h1:hebNnKkNXi2UzZN1eVRvBB7co0a+JxK6XbPiWVs/3J4=
-golang.org/x/crypto v0.5.0/go.mod h1:NK/OQwhpMQP3MwtdjgLlYHnH9ebylxKWv3e0fK+mkQU=
golang.org/x/crypto v0.6.0/go.mod h1:OFC/31mSvZgRz0V1QTNCzfAI1aIRzbiufJtkMIlEp58=
golang.org/x/crypto v0.7.0/go.mod h1:pYwdfH91IfpZVANVyUOhSIPZaFoJGxTFbZhFTx+dXZU=
golang.org/x/crypto v0.8.0/go.mod h1:mRqEX+O9/h5TFCrQhkgjo2yKi0yYA+9ecGkdQoHrywE=
-golang.org/x/crypto v0.9.0/go.mod h1:yrmDGqONDYtNj3tH8X9dzUun2m2lzPa9ngI6/RUPGR0=
-golang.org/x/crypto v0.10.0/go.mod h1:o4eNf7Ede1fv+hwOwZsTHl9EsPFO6q6ZvYR8vYfY45I=
golang.org/x/crypto v0.11.0/go.mod h1:xgJhtzW8F9jGdVFWZESrid1U1bjeNy4zgy5cRr/CIio=
-golang.org/x/crypto v0.12.0/go.mod h1:NF0Gs7EO5K4qLn+Ylc+fih8BSTeIjAP05siRnAh98yw=
golang.org/x/crypto v0.13.0/go.mod h1:y6Z2r+Rw4iayiXXAIxJIDAJ1zMW4yaTpebo8fPOliYc=
golang.org/x/crypto v0.14.0 h1:wBqGXzWJW6m1XrIKlAH0Hs1JJ7+9KBwnIO8v66Q9cHc=
golang.org/x/crypto v0.14.0/go.mod h1:MVFd36DqK4CsrnJYDkBA3VC4m2GkXAM0PvzMCn4JQf4=
@@ -2848,6 +2934,8 @@ golang.org/x/exp v0.0.0-20200119233911-0405dc783f0a/go.mod h1:2RIsYlXP63K8oxa1u0
golang.org/x/exp v0.0.0-20200207192155-f17229e696bd/go.mod h1:J/WKrq2StrnmMY6+EHIKF9dgMWnmCNThgcyBT1FY9mM=
golang.org/x/exp v0.0.0-20200224162631-6cc2880d07d6/go.mod h1:3jZMyOhIsHpP37uCMkUooju7aAi5cS1Q23tOzKc+0MU=
golang.org/x/exp v0.0.0-20220827204233-334a2380cb91/go.mod h1:cyybsKvd6eL0RnXn6p/Grxp8F5bW7iYuBgsNCOHpMYE=
+golang.org/x/exp v0.0.0-20231006140011-7918f672742d h1:jtJma62tbqLibJ5sFQz8bKtEM8rJBtfilJ2qTU199MI=
+golang.org/x/exp v0.0.0-20231006140011-7918f672742d/go.mod h1:ldy0pHrwJyGW56pPQzzkH36rKxoZW1tw7ZJpeKx+hdo=
golang.org/x/image v0.0.0-20180708004352-c73c2afc3b81/go.mod h1:ux5Hcp/YLpHSI86hEcLt0YII63i6oz57MZXIpbrjZUs=
golang.org/x/image v0.0.0-20190227222117-0694c2d4d067/go.mod h1:kZ7UVZpmo3dzQBMxlp+ypCbDeSB+sBbTgSJuh5dn5js=
golang.org/x/image v0.0.0-20190802002840-cff245a6509b/go.mod h1:FeLwcggjj3mMvU+oOTbSwawSJRM1uh48EjtB4UJZlP0=
@@ -2892,9 +2980,9 @@ golang.org/x/mod v0.6.0/go.mod h1:4mET923SAdbXp2ki8ey+zGs1SLqsuM2Y0uvdZR/fUNI=
golang.org/x/mod v0.7.0/go.mod h1:iBbtSCu2XBx23ZKBPSOrRkjjQPZFPuis4dIYUhu/chs=
golang.org/x/mod v0.8.0/go.mod h1:iBbtSCu2XBx23ZKBPSOrRkjjQPZFPuis4dIYUhu/chs=
golang.org/x/mod v0.9.0/go.mod h1:iBbtSCu2XBx23ZKBPSOrRkjjQPZFPuis4dIYUhu/chs=
-golang.org/x/mod v0.10.0/go.mod h1:iBbtSCu2XBx23ZKBPSOrRkjjQPZFPuis4dIYUhu/chs=
-golang.org/x/mod v0.11.0 h1:bUO06HqtnRcc/7l71XBe4WcqTZ+3AH1J59zWDDwLKgU=
-golang.org/x/mod v0.11.0/go.mod h1:iBbtSCu2XBx23ZKBPSOrRkjjQPZFPuis4dIYUhu/chs=
+golang.org/x/mod v0.12.0/go.mod h1:iBbtSCu2XBx23ZKBPSOrRkjjQPZFPuis4dIYUhu/chs=
+golang.org/x/mod v0.13.0 h1:I/DsJXRlw/8l/0c24sM9yb0T4z9liZTduXvdAWYiysY=
+golang.org/x/mod v0.13.0/go.mod h1:hTbmBsO62+eylJbnUtE2MGJUyE7QWk4xUqPFrRgJ+7c=
golang.org/x/net v0.0.0-20180530234432-1e491301e022/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4=
golang.org/x/net v0.0.0-20180724234803-3673e40ba225/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4=
golang.org/x/net v0.0.0-20180811021610-c39426892332/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4=
@@ -2906,6 +2994,7 @@ golang.org/x/net v0.0.0-20181114220301-adae6a3d119a/go.mod h1:mL1N/T3taQHkDXs73r
golang.org/x/net v0.0.0-20181201002055-351d144fa1fc/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4=
golang.org/x/net v0.0.0-20181220203305-927f97764cc3/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4=
golang.org/x/net v0.0.0-20190108225652-1e06a53dbb7e/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4=
+golang.org/x/net v0.0.0-20190125091013-d26f9f9a57f3/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4=
golang.org/x/net v0.0.0-20190213061140-3a22650c66bd/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4=
golang.org/x/net v0.0.0-20190311183353-d8887717615a/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg=
golang.org/x/net v0.0.0-20190404232315-eb5bcb51f2a3/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg=
@@ -2923,7 +3012,6 @@ golang.org/x/net v0.0.0-20190827160401-ba9fcec4b297/go.mod h1:z5CRVTTTmAJ677TzLL
golang.org/x/net v0.0.0-20190923162816-aa69164e4478/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s=
golang.org/x/net v0.0.0-20191004110552-13f9640d40b9/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s=
golang.org/x/net v0.0.0-20191009170851-d66e71096ffb/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s=
-golang.org/x/net v0.0.0-20191112182307-2180aed22343/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s=
golang.org/x/net v0.0.0-20191209160850-c0dbc17a3553/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s=
golang.org/x/net v0.0.0-20200114155413-6afb5195e5aa/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s=
golang.org/x/net v0.0.0-20200202094626-16171245cfb2/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s=
@@ -2937,7 +3025,6 @@ golang.org/x/net v0.0.0-20200506145744-7e3656a0809f/go.mod h1:qpuaurCH72eLCgpAm/
golang.org/x/net v0.0.0-20200513185701-a91f0712d120/go.mod h1:qpuaurCH72eLCgpAm/N6yyVIVM9cpaDIP3A8BGJEC5A=
golang.org/x/net v0.0.0-20200520004742-59133d7f0dd7/go.mod h1:qpuaurCH72eLCgpAm/N6yyVIVM9cpaDIP3A8BGJEC5A=
golang.org/x/net v0.0.0-20200520182314-0ba52f642ac2/go.mod h1:qpuaurCH72eLCgpAm/N6yyVIVM9cpaDIP3A8BGJEC5A=
-golang.org/x/net v0.0.0-20200602114024-627f9648deb9/go.mod h1:qpuaurCH72eLCgpAm/N6yyVIVM9cpaDIP3A8BGJEC5A=
golang.org/x/net v0.0.0-20200625001655-4c5254603344/go.mod h1:/O7V0waA8r7cgGh81Ro3o1hOxt32SMVPicZroKQ2sZA=
golang.org/x/net v0.0.0-20200707034311-ab3426394381/go.mod h1:/O7V0waA8r7cgGh81Ro3o1hOxt32SMVPicZroKQ2sZA=
golang.org/x/net v0.0.0-20200822124328-c89045814202/go.mod h1:/O7V0waA8r7cgGh81Ro3o1hOxt32SMVPicZroKQ2sZA=
@@ -2952,14 +3039,14 @@ golang.org/x/net v0.0.0-20201224014010-6772e930b67b/go.mod h1:m0MpNAwzfU5UDzcl9v
golang.org/x/net v0.0.0-20210119194325-5f4716e94777/go.mod h1:m0MpNAwzfU5UDzcl9v0D8zg8gWTRqZa9RBIspLL5mdg=
golang.org/x/net v0.0.0-20210226172049-e18ecbb05110/go.mod h1:m0MpNAwzfU5UDzcl9v0D8zg8gWTRqZa9RBIspLL5mdg=
golang.org/x/net v0.0.0-20210316092652-d523dce5a7f4/go.mod h1:RBQZq4jEuRlivfhVLdyRGr576XBO4/greRjx4P4O3yc=
-golang.org/x/net v0.0.0-20210326060303-6b1517762897/go.mod h1:uSPa2vr4CLtc/ILN5odXGNXS6mhrKVzTaCXzk9m6W3k=
golang.org/x/net v0.0.0-20210405180319-a5a99cb37ef4/go.mod h1:p54w0d4576C0XHj96bSt6lcn1PtDYWL6XObtHCRCNQM=
+golang.org/x/net v0.0.0-20210410081132-afb366fc7cd1/go.mod h1:9tjilg8BloeKEkVJvy7fQ90B1CfIiPueXVOjqfkSzI8=
+golang.org/x/net v0.0.0-20210421230115-4e50805a0758/go.mod h1:72T/g9IO56b78aLF+1Kcs5dz7/ng1VjMUvfKvpfy+jM=
golang.org/x/net v0.0.0-20210428140749-89ef3d95e781/go.mod h1:OJAsFXCWl8Ukc7SiCT/9KSuxbyM7479/AVlXFRxuMCk=
golang.org/x/net v0.0.0-20210503060351-7fd8e65b6420/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y=
golang.org/x/net v0.0.0-20210520170846-37e1c6afe023/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y=
golang.org/x/net v0.0.0-20210525063256-abc453219eb5/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y=
golang.org/x/net v0.0.0-20210610132358-84b48f89b13b/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y=
-golang.org/x/net v0.0.0-20210614182718-04defd469f4e/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y=
golang.org/x/net v0.0.0-20210726213435-c6fcb2dbf985/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y=
golang.org/x/net v0.0.0-20210813160813-60bc85c4be6d/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y=
golang.org/x/net v0.0.0-20210825183410-e898025ed96a/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y=
@@ -2976,6 +3063,7 @@ golang.org/x/net v0.0.0-20220607020251-c690dde0001d/go.mod h1:XRhObCWvk6IyKnWLug
golang.org/x/net v0.0.0-20220617184016-355a448f1bc9/go.mod h1:XRhObCWvk6IyKnWLug+ECip1KBveYUHfp+8e9klMJ9c=
golang.org/x/net v0.0.0-20220624214902-1bab6f366d9e/go.mod h1:XRhObCWvk6IyKnWLug+ECip1KBveYUHfp+8e9klMJ9c=
golang.org/x/net v0.0.0-20220722155237-a158d28d115b/go.mod h1:XRhObCWvk6IyKnWLug+ECip1KBveYUHfp+8e9klMJ9c=
+golang.org/x/net v0.0.0-20220802222814-0bcc04d9c69b/go.mod h1:YDH+HFinaLZZlnHAfSS6ZXJJ9M9t4Dl22yv3iI2vPwk=
golang.org/x/net v0.0.0-20220826154423-83b083e8dc8b/go.mod h1:YDH+HFinaLZZlnHAfSS6ZXJJ9M9t4Dl22yv3iI2vPwk=
golang.org/x/net v0.0.0-20220909164309-bea034e7d591/go.mod h1:YDH+HFinaLZZlnHAfSS6ZXJJ9M9t4Dl22yv3iI2vPwk=
golang.org/x/net v0.0.0-20221012135044-0b7e1fb9d458/go.mod h1:YDH+HFinaLZZlnHAfSS6ZXJJ9M9t4Dl22yv3iI2vPwk=
@@ -2990,9 +3078,8 @@ golang.org/x/net v0.7.0/go.mod h1:2Tu9+aMcznHK/AK1HMvgo6xiTLG5rD5rZLDS+rp2Bjs=
golang.org/x/net v0.8.0/go.mod h1:QVkue5JL9kW//ek3r6jTKnTFis1tRmNAW2P1shuFdJc=
golang.org/x/net v0.9.0/go.mod h1:d48xBJpPfHeWQsugry2m+kC02ZBRGRgulfHnEXEuWns=
golang.org/x/net v0.10.0/go.mod h1:0qNGK6F8kojg2nk9dLZ2mShWaEBan6FAoqfSigmmuDg=
-golang.org/x/net v0.11.0/go.mod h1:2L/ixqYpgIVXmeoSA/4Lu7BzTG4KIyPIryS4IsOd1oQ=
golang.org/x/net v0.12.0/go.mod h1:zEVYFnQC7m/vmpQFELhcD1EWkZlX69l4oqgmer6hfKA=
-golang.org/x/net v0.14.0/go.mod h1:PpSgVXXLK0OxS0F31C1/tv6XNguvCrnXIDrFMspZIUI=
+golang.org/x/net v0.13.0/go.mod h1:zEVYFnQC7m/vmpQFELhcD1EWkZlX69l4oqgmer6hfKA=
golang.org/x/net v0.15.0/go.mod h1:idbUs1IY1+zTqbi8yxTbhexhEEk5ur9LInksu6HrEpk=
golang.org/x/net v0.17.0 h1:pVaXccu2ozPjCXewfr1S7xza/zcXTity9cCdXQYSjIM=
golang.org/x/net v0.17.0/go.mod h1:NxSsAGuq816PNPmqtQdLE42eU2Fs7NoRIZrHJAlaCOE=
@@ -3004,7 +3091,6 @@ golang.org/x/oauth2 v0.0.0-20200107190931-bf48bf16ab8d/go.mod h1:gOpvHmFTYa4Iltr
golang.org/x/oauth2 v0.0.0-20200902213428-5d25da1a8d43/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A=
golang.org/x/oauth2 v0.0.0-20201109201403-9fd604954f58/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A=
golang.org/x/oauth2 v0.0.0-20201208152858-08078c50e5b5/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A=
-golang.org/x/oauth2 v0.0.0-20210126194326-f9ce19ea3013/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A=
golang.org/x/oauth2 v0.0.0-20210218202405-ba52d332ba99/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A=
golang.org/x/oauth2 v0.0.0-20210220000619-9bb904979d93/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A=
golang.org/x/oauth2 v0.0.0-20210313182246-cd4f82c27b84/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A=
@@ -3013,12 +3099,15 @@ golang.org/x/oauth2 v0.0.0-20210514164344-f6687ab2804c/go.mod h1:KelEdhl1UZF7XfJ
golang.org/x/oauth2 v0.0.0-20210628180205-a41e5a781914/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A=
golang.org/x/oauth2 v0.0.0-20210805134026-6f1e6394065a/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A=
golang.org/x/oauth2 v0.0.0-20210819190943-2bc19b11175f/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A=
+golang.org/x/oauth2 v0.0.0-20211005180243-6b3c2da341f1/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A=
golang.org/x/oauth2 v0.0.0-20211104180415-d3ed0bb246c8/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A=
golang.org/x/oauth2 v0.0.0-20220223155221-ee480838109b/go.mod h1:DAh4E804XQdzx2j+YRIaUnCqCV2RuMz24cGBJ5QYIrc=
golang.org/x/oauth2 v0.0.0-20220309155454-6242fa91716a/go.mod h1:DAh4E804XQdzx2j+YRIaUnCqCV2RuMz24cGBJ5QYIrc=
golang.org/x/oauth2 v0.0.0-20220411215720-9780585627b5/go.mod h1:DAh4E804XQdzx2j+YRIaUnCqCV2RuMz24cGBJ5QYIrc=
golang.org/x/oauth2 v0.0.0-20220608161450-d0670ef3b1eb/go.mod h1:jaDAt6Dkxork7LmZnYtzbRWj0W47D86a3TGe0YHBvmE=
golang.org/x/oauth2 v0.0.0-20220622183110-fd043fe589d2/go.mod h1:jaDAt6Dkxork7LmZnYtzbRWj0W47D86a3TGe0YHBvmE=
+golang.org/x/oauth2 v0.0.0-20220628200809-02e64fa58f26/go.mod h1:jaDAt6Dkxork7LmZnYtzbRWj0W47D86a3TGe0YHBvmE=
+golang.org/x/oauth2 v0.0.0-20220722155238-128564f6959c/go.mod h1:h4gKUeWbJ4rQPri7E0u6Gs4e9Ri2zaLxzw5DI5XGrYg=
golang.org/x/oauth2 v0.0.0-20220822191816-0ebed06d0094/go.mod h1:h4gKUeWbJ4rQPri7E0u6Gs4e9Ri2zaLxzw5DI5XGrYg=
golang.org/x/oauth2 v0.0.0-20220909003341-f21342109be1/go.mod h1:h4gKUeWbJ4rQPri7E0u6Gs4e9Ri2zaLxzw5DI5XGrYg=
golang.org/x/oauth2 v0.0.0-20221006150949-b44042a4b9c1/go.mod h1:h4gKUeWbJ4rQPri7E0u6Gs4e9Ri2zaLxzw5DI5XGrYg=
@@ -3029,15 +3118,13 @@ golang.org/x/oauth2 v0.4.0/go.mod h1:RznEsdpjGAINPTOF0UH/t+xJ75L18YO3Ho6Pyn+uRec
golang.org/x/oauth2 v0.5.0/go.mod h1:9/XBHVqLaWO3/BRHs5jbpYCnOZVjj5V0ndyaAM7KB4I=
golang.org/x/oauth2 v0.6.0/go.mod h1:ycmewcwgD4Rpr3eZJLSB4Kyyljb3qDh40vJ8STE5HKw=
golang.org/x/oauth2 v0.7.0/go.mod h1:hPLQkd9LyjfXTiRohC/41GhcFqxisoUQ99sCUOHO9x4=
-golang.org/x/oauth2 v0.8.0/go.mod h1:yr7u4HXZRm1R1kBWqr/xKNqewf0plRYoB7sla+BCIXE=
-golang.org/x/oauth2 v0.10.0/go.mod h1:kTpgurOux7LqtuxjuyZa4Gj2gdezIt/jQtGnNFfypQI=
-golang.org/x/oauth2 v0.11.0/go.mod h1:LdF7O/8bLR/qWK9DrpXmbHLTouvRHK0SgJl0GmDBchk=
golang.org/x/oauth2 v0.12.0 h1:smVPGxink+n1ZI5pkQa8y6fZT0RW0MgCO5bFpepy4B4=
golang.org/x/oauth2 v0.12.0/go.mod h1:A74bZ3aGXgCY0qaIC9Ahg6Lglin4AMAco8cIv9baba4=
golang.org/x/sync v0.0.0-20180314180146-1d60e4601c6f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
golang.org/x/sync v0.0.0-20181108010431-42b317875d0f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
golang.org/x/sync v0.0.0-20181221193216-37e7f081c4d4/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
golang.org/x/sync v0.0.0-20190227155943-e225da77a7e6/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
+golang.org/x/sync v0.0.0-20190412183630-56d357773e84/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
golang.org/x/sync v0.0.0-20190911185100-cd5d95a43a6e/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
golang.org/x/sync v0.0.0-20200317015054-43a5402ce75a/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
@@ -3050,9 +3137,8 @@ golang.org/x/sync v0.0.0-20220722155255-886fb9371eb4/go.mod h1:RxMgew5VJxzue5/jJ
golang.org/x/sync v0.0.0-20220819030929-7fc1605a5dde/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
golang.org/x/sync v0.0.0-20220929204114-8fcdb60fdcc0/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
golang.org/x/sync v0.1.0/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
-golang.org/x/sync v0.2.0/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
-golang.org/x/sync v0.3.0 h1:ftCYgMx6zT/asHUrPw8BLLscYtGznsLAnjq5RH9P66E=
-golang.org/x/sync v0.3.0/go.mod h1:FU7BRWz2tNW+3quACPkgCx/L+uEAv1htQ0V83Z9Rj+Y=
+golang.org/x/sync v0.4.0 h1:zxkM55ReGkDlKSM+Fu41A+zmbZuaPVbGMzvvdUPznYQ=
+golang.org/x/sync v0.4.0/go.mod h1:FU7BRWz2tNW+3quACPkgCx/L+uEAv1htQ0V83Z9Rj+Y=
golang.org/x/sys v0.0.0-20180823144017-11551d06cbcc/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
golang.org/x/sys v0.0.0-20180830151530-49385e6e1522/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
golang.org/x/sys v0.0.0-20180905080454-ebe1bf3edb33/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
@@ -3060,6 +3146,7 @@ golang.org/x/sys v0.0.0-20180909124046-d0be0721c37e/go.mod h1:STP8DvDyc/dI5b8T5h
golang.org/x/sys v0.0.0-20181026203630-95b1ffbd15a5/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
golang.org/x/sys v0.0.0-20181107165924-66b7b1311ac8/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
golang.org/x/sys v0.0.0-20181116152217-5ac8a444bdc5/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
+golang.org/x/sys v0.0.0-20181122145206-62eef0e2fa9b/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
golang.org/x/sys v0.0.0-20181205085412-a5c9d58dba9a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
golang.org/x/sys v0.0.0-20190129075346-302c3dd5f1cc/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
@@ -3067,13 +3154,14 @@ golang.org/x/sys v0.0.0-20190222072716-a9d3bda3a223/go.mod h1:STP8DvDyc/dI5b8T5h
golang.org/x/sys v0.0.0-20190312061237-fead79001313/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/sys v0.0.0-20190403152447-81d4e9dc473e/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/sys v0.0.0-20190412213103-97732733099d/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
+golang.org/x/sys v0.0.0-20190419153524-e8e3143a4f4a/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/sys v0.0.0-20190422165155-953cdadca894/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/sys v0.0.0-20190502145724-3ef323f4f1fd/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/sys v0.0.0-20190502175342-a43fa875dd82/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/sys v0.0.0-20190507160741-ecd444e8653b/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/sys v0.0.0-20190514135907-3a4b5fb9f71f/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/sys v0.0.0-20190522044717-8097e1b27ff5/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
-golang.org/x/sys v0.0.0-20190530182044-ad28b68e88f1/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
+golang.org/x/sys v0.0.0-20190531175056-4c3a928424d2/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/sys v0.0.0-20190602015325-4c4f7f33c9ed/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/sys v0.0.0-20190606165138-5da285871e9c/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/sys v0.0.0-20190606203320-7fc4e5ec1444/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
@@ -3084,6 +3172,7 @@ golang.org/x/sys v0.0.0-20190726091711-fc99dfbffb4e/go.mod h1:h1NjWce9XRLGQEsW7w
golang.org/x/sys v0.0.0-20190801041406-cbf593c0f2f3/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/sys v0.0.0-20190804053845-51ab0e2deafa/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/sys v0.0.0-20190812073006-9eafafc0a87e/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
+golang.org/x/sys v0.0.0-20190813064441-fde4db37ae7a/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/sys v0.0.0-20190826190057-c7b8b68b1456/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/sys v0.0.0-20190904154756-749cb33beabd/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/sys v0.0.0-20190916202348-b4ddaad3f8a3/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
@@ -3094,11 +3183,11 @@ golang.org/x/sys v0.0.0-20191005200804-aed5e4c7ecf9/go.mod h1:h1NjWce9XRLGQEsW7w
golang.org/x/sys v0.0.0-20191008105621-543471e840be/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/sys v0.0.0-20191022100944-742c48ecaeb7/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/sys v0.0.0-20191026070338-33540a1f6037/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
-golang.org/x/sys v0.0.0-20191112214154-59a1497f0cea/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/sys v0.0.0-20191115151921-52ab43148777/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/sys v0.0.0-20191120155948-bd437916bb0e/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/sys v0.0.0-20191204072324-ce4227a45e2e/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/sys v0.0.0-20191210023423-ac6580df4449/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
+golang.org/x/sys v0.0.0-20191220142924-d4481acd189f/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/sys v0.0.0-20191228213918-04cbcbbfeed8/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/sys v0.0.0-20200106162015-b016eb3dc98e/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/sys v0.0.0-20200113162924-86b910548bc1/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
@@ -3118,14 +3207,12 @@ golang.org/x/sys v0.0.0-20200511232937-7e40ca221e25/go.mod h1:h1NjWce9XRLGQEsW7w
golang.org/x/sys v0.0.0-20200515095857-1151b9dac4a9/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/sys v0.0.0-20200519105757-fe76b779f299/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/sys v0.0.0-20200523222454-059865788121/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
-golang.org/x/sys v0.0.0-20200602225109-6fdc65e7d980/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/sys v0.0.0-20200615200032-f1bc736245b1/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/sys v0.0.0-20200622214017-ed371f2e16b4/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/sys v0.0.0-20200625212154-ddb9806d33ae/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/sys v0.0.0-20200728102440-3e129f6d46b1/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/sys v0.0.0-20200803210538-64077c9b5642/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/sys v0.0.0-20200817155316-9781c653f443/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
-golang.org/x/sys v0.0.0-20200828194041-157a740278f4/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/sys v0.0.0-20200831180312-196b9ba8737a/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/sys v0.0.0-20200905004654-be1d3432aa8f/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/sys v0.0.0-20200909081042-eff7692f9009/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
@@ -3143,7 +3230,6 @@ golang.org/x/sys v0.0.0-20210112080510-489259a85091/go.mod h1:h1NjWce9XRLGQEsW7w
golang.org/x/sys v0.0.0-20210119212857-b64e53b001e4/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/sys v0.0.0-20210124154548-22da62e12c0c/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/sys v0.0.0-20210220050731-9a76102bfb43/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
-golang.org/x/sys v0.0.0-20210223095934-7937bea0104d/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/sys v0.0.0-20210225134936-a50acf3fe073/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/sys v0.0.0-20210303074136-134d130e1a04/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/sys v0.0.0-20210304124612-50617c2ba197/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
@@ -3153,10 +3239,10 @@ golang.org/x/sys v0.0.0-20210320140829-1e4c9ba3b0c4/go.mod h1:h1NjWce9XRLGQEsW7w
golang.org/x/sys v0.0.0-20210324051608-47abb6519492/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/sys v0.0.0-20210330210617-4fbd30eecc44/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/sys v0.0.0-20210403161142-5e06dd20ab57/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
+golang.org/x/sys v0.0.0-20210420072515-93ed5bcd2bfe/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/sys v0.0.0-20210423082822-04245dca01da/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/sys v0.0.0-20210423185535-09eb48e85fd7/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/sys v0.0.0-20210426230700-d19ff857e887/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
-golang.org/x/sys v0.0.0-20210502180810-71e4cd670f79/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/sys v0.0.0-20210503080704-8803ae5d1324/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/sys v0.0.0-20210510120138-977fb7262007/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.0.0-20210514084401-e8d321eab015/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
@@ -3175,6 +3261,7 @@ golang.org/x/sys v0.0.0-20210831042530-f4d43177bf5e/go.mod h1:oPkhp1MJrh7nUepCBc
golang.org/x/sys v0.0.0-20210903071746-97244b99971b/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.0.0-20210906170528-6f6e22806c34/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.0.0-20210908233432-aa78b53d3365/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
+golang.org/x/sys v0.0.0-20210917161153-d61c044b1678/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.0.0-20210927094055-39ccf1dd6fa6/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.0.0-20211007075335-d3039528d8ac/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.0.0-20211019181941-9d821ace8654/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
@@ -3188,6 +3275,7 @@ golang.org/x/sys v0.0.0-20220114195835-da31bd327af9/go.mod h1:oPkhp1MJrh7nUepCBc
golang.org/x/sys v0.0.0-20220128215802-99c3d69c2c27/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.0.0-20220209214540-3681064d5158/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.0.0-20220227234510-4e6760a101f9/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
+golang.org/x/sys v0.0.0-20220310020820-b874c991c1a5/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.0.0-20220319134239-a9b59b0215f8/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.0.0-20220328115105-d36c6a25d886/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.0.0-20220405210540-1e041c57c461/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
@@ -3199,9 +3287,11 @@ golang.org/x/sys v0.0.0-20220520151302-bc2c85ada10a/go.mod h1:oPkhp1MJrh7nUepCBc
golang.org/x/sys v0.0.0-20220610221304-9f5ed59c137d/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.0.0-20220615213510-4f61da869c0c/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.0.0-20220624220833-87e55d714810/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
+golang.org/x/sys v0.0.0-20220627191245-f75cf1eec38b/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.0.0-20220715151400-c0bba94af5f8/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.0.0-20220722155257-8c9f86f7a55f/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.0.0-20220728004956-3c1f35247d10/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
+golang.org/x/sys v0.0.0-20220731174439-a90be440212d/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.0.0-20220811171246-fbc7d0a398ab/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.0.0-20220825204002-c680a09ffe64/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.0.0-20220829200755-d48e67d00261/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
@@ -3214,9 +3304,7 @@ golang.org/x/sys v0.5.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.6.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.7.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.8.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
-golang.org/x/sys v0.9.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.10.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
-golang.org/x/sys v0.11.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.12.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.13.0 h1:Af8nKPmuFypiUBjVoU9V20FiaFXOcuZI21p0ycVYYGE=
golang.org/x/sys v0.13.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
@@ -3234,9 +3322,7 @@ golang.org/x/term v0.5.0/go.mod h1:jMB1sMXY+tzblOD4FWmEbocvup2/aLOaQEp7JmGp78k=
golang.org/x/term v0.6.0/go.mod h1:m6U89DPEgQRMq3DNkDClhWw02AUbt2daBVO4cn4Hv9U=
golang.org/x/term v0.7.0/go.mod h1:P32HKFT3hSsZrRxla30E9HqToFYAQPCMs/zFMBUFqPY=
golang.org/x/term v0.8.0/go.mod h1:xPskH00ivmX89bAKVGSKKtLOWNx2+17Eiy94tnKShWo=
-golang.org/x/term v0.9.0/go.mod h1:M6DEAAIenWoTxdKrOltXcmDY3rSplQUkrvaDU5FcQyo=
golang.org/x/term v0.10.0/go.mod h1:lpqdcUyK/oCiQxvxVrppt5ggO2KCZ5QblwqPnfZ6d5o=
-golang.org/x/term v0.11.0/go.mod h1:zC9APTIj3jG3FdV/Ons+XE1riIZXG4aZ4GTHiPZJPIU=
golang.org/x/term v0.12.0/go.mod h1:owVbMEjm3cBLCHdkQu9b1opXd4ETQWc3BhuQGKgXgvU=
golang.org/x/term v0.13.0 h1:bb+I9cTfFazGW51MZqBVmZy7+JEJMouUHTUSKVQLBek=
golang.org/x/term v0.13.0/go.mod h1:LTmsnFJwVN6bCy1rVCoS+qHT1HhALEFxKncY3WNNh4U=
@@ -3256,9 +3342,7 @@ golang.org/x/text v0.6.0/go.mod h1:mrYo+phRRbMaCq/xk9113O4dZlRixOauAjOtrjsXDZ8=
golang.org/x/text v0.7.0/go.mod h1:mrYo+phRRbMaCq/xk9113O4dZlRixOauAjOtrjsXDZ8=
golang.org/x/text v0.8.0/go.mod h1:e1OnstbJyHTd6l/uOt8jFFHp6TRDWZR/bV3emEE/zU8=
golang.org/x/text v0.9.0/go.mod h1:e1OnstbJyHTd6l/uOt8jFFHp6TRDWZR/bV3emEE/zU8=
-golang.org/x/text v0.10.0/go.mod h1:TvPlkZtksWOMsz7fbANvkp4WM8x/WCo/om8BMLbz+aE=
golang.org/x/text v0.11.0/go.mod h1:TvPlkZtksWOMsz7fbANvkp4WM8x/WCo/om8BMLbz+aE=
-golang.org/x/text v0.12.0/go.mod h1:TvPlkZtksWOMsz7fbANvkp4WM8x/WCo/om8BMLbz+aE=
golang.org/x/text v0.13.0 h1:ablQoSUd0tRdKxZewP80B+BaqeKJuVhuRxj/dkrun3k=
golang.org/x/text v0.13.0/go.mod h1:TvPlkZtksWOMsz7fbANvkp4WM8x/WCo/om8BMLbz+aE=
golang.org/x/time v0.0.0-20180412165947-fbb02b2291d2/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ=
@@ -3270,13 +3354,17 @@ golang.org/x/time v0.0.0-20200630173020-3af7569d3a1e/go.mod h1:tRJNPiyCQ0inRvYxb
golang.org/x/time v0.0.0-20210220033141-f8bda1e9f3ba/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ=
golang.org/x/time v0.0.0-20210723032227-1f47c861a9ac/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ=
golang.org/x/time v0.0.0-20220210224613-90d013bbcef8/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ=
+golang.org/x/time v0.0.0-20220224211638-0e9765cccd65/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ=
golang.org/x/time v0.0.0-20220411224347-583f2d630306/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ=
+golang.org/x/time v0.0.0-20220609170525-579cf78fd858/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ=
+golang.org/x/time v0.0.0-20220722155302-e5dcc9cfc0b9/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ=
golang.org/x/time v0.0.0-20220922220347-f3bd1da661af/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ=
golang.org/x/time v0.1.0/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ=
golang.org/x/time v0.3.0 h1:rg5rLMjNzMS1RkNLzCG38eapWhnYLFYXDXj2gOlr8j4=
golang.org/x/time v0.3.0/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ=
golang.org/x/tools v0.0.0-20180221164845-07fd8470d635/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ=
golang.org/x/tools v0.0.0-20180525024113-a5b4c53f6e8b/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ=
+golang.org/x/tools v0.0.0-20180828015842-6cd1fcedba52/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ=
golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ=
golang.org/x/tools v0.0.0-20181011042414-1f849cf54d09/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ=
golang.org/x/tools v0.0.0-20181030221726-6c7e314b6563/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ=
@@ -3287,10 +3375,15 @@ golang.org/x/tools v0.0.0-20190311212946-11955173bddd/go.mod h1:LCzVGOaR6xXOjkQ3
golang.org/x/tools v0.0.0-20190312151545-0bb0c0a6e846/go.mod h1:LCzVGOaR6xXOjkQ3onu1FJEFr0SW1gC7cKk1uF8kGRs=
golang.org/x/tools v0.0.0-20190312170243-e65039ee4138/go.mod h1:LCzVGOaR6xXOjkQ3onu1FJEFr0SW1gC7cKk1uF8kGRs=
golang.org/x/tools v0.0.0-20190328211700-ab21143f2384/go.mod h1:LCzVGOaR6xXOjkQ3onu1FJEFr0SW1gC7cKk1uF8kGRs=
+golang.org/x/tools v0.0.0-20190329151228-23e29df326fe/go.mod h1:LCzVGOaR6xXOjkQ3onu1FJEFr0SW1gC7cKk1uF8kGRs=
+golang.org/x/tools v0.0.0-20190416151739-9c9e1878f421/go.mod h1:LCzVGOaR6xXOjkQ3onu1FJEFr0SW1gC7cKk1uF8kGRs=
+golang.org/x/tools v0.0.0-20190420181800-aa740d480789/go.mod h1:LCzVGOaR6xXOjkQ3onu1FJEFr0SW1gC7cKk1uF8kGRs=
golang.org/x/tools v0.0.0-20190422233926-fe54fb35175b/go.mod h1:LCzVGOaR6xXOjkQ3onu1FJEFr0SW1gC7cKk1uF8kGRs=
golang.org/x/tools v0.0.0-20190425150028-36563e24a262/go.mod h1:RgjU9mgBXZiqYHBnxXauZ1Gv1EHHAz9KjViQ78xBX0Q=
+golang.org/x/tools v0.0.0-20190425163242-31fd60d6bfdc/go.mod h1:RgjU9mgBXZiqYHBnxXauZ1Gv1EHHAz9KjViQ78xBX0Q=
golang.org/x/tools v0.0.0-20190506145303-2d16b83fe98c/go.mod h1:RgjU9mgBXZiqYHBnxXauZ1Gv1EHHAz9KjViQ78xBX0Q=
golang.org/x/tools v0.0.0-20190524140312-2c0ae7006135/go.mod h1:RgjU9mgBXZiqYHBnxXauZ1Gv1EHHAz9KjViQ78xBX0Q=
+golang.org/x/tools v0.0.0-20190531172133-b3315ee88b7d/go.mod h1:/rFqwRUd4F7ZHNgwSSTFct+R/Kf4OFW1sUzUTQQTgfc=
golang.org/x/tools v0.0.0-20190606124116-d0a3d012864b/go.mod h1:/rFqwRUd4F7ZHNgwSSTFct+R/Kf4OFW1sUzUTQQTgfc=
golang.org/x/tools v0.0.0-20190614205625-5aca471b1d59/go.mod h1:/rFqwRUd4F7ZHNgwSSTFct+R/Kf4OFW1sUzUTQQTgfc=
golang.org/x/tools v0.0.0-20190621195816-6e04913cbbac/go.mod h1:/rFqwRUd4F7ZHNgwSSTFct+R/Kf4OFW1sUzUTQQTgfc=
@@ -3298,11 +3391,13 @@ golang.org/x/tools v0.0.0-20190624222133-a101b041ded4/go.mod h1:/rFqwRUd4F7ZHNgw
golang.org/x/tools v0.0.0-20190628153133-6cdbf07be9d0/go.mod h1:/rFqwRUd4F7ZHNgwSSTFct+R/Kf4OFW1sUzUTQQTgfc=
golang.org/x/tools v0.0.0-20190706070813-72ffa07ba3db/go.mod h1:jcCCGcm9btYwXyDqrUWc6MKQKKGJCWEQ3AfLSRIbEuI=
golang.org/x/tools v0.0.0-20190816200558-6889da9d5479/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo=
+golang.org/x/tools v0.0.0-20190823170909-c4a336ef6a2f/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo=
golang.org/x/tools v0.0.0-20190907020128-2ca718005c18/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo=
golang.org/x/tools v0.0.0-20190911174233-4f2ddba30aff/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo=
golang.org/x/tools v0.0.0-20190927191325-030b2cf1153e/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo=
golang.org/x/tools v0.0.0-20191012152004-8de300cfc20a/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo=
golang.org/x/tools v0.0.0-20191029041327-9cc4af7d6b2c/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo=
+golang.org/x/tools v0.0.0-20191029190741-b9c20aec41a5/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo=
golang.org/x/tools v0.0.0-20191108193012-7d206e10da11/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo=
golang.org/x/tools v0.0.0-20191112195655-aa38f8e97acc/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo=
golang.org/x/tools v0.0.0-20191113191852-77e3bb0ad9e7/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo=
@@ -3312,6 +3407,7 @@ golang.org/x/tools v0.0.0-20191125144606-a911d9008d1f/go.mod h1:b+2E5dAYhXwXZwtn
golang.org/x/tools v0.0.0-20191130070609-6e064ea0cf2d/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo=
golang.org/x/tools v0.0.0-20191216173652-a0e659d51361/go.mod h1:TB2adYChydJhpapKDTa4BR/hXlZSLoq2Wpct/0txZ28=
golang.org/x/tools v0.0.0-20191227053925-7b8e75db28f4/go.mod h1:TB2adYChydJhpapKDTa4BR/hXlZSLoq2Wpct/0txZ28=
+golang.org/x/tools v0.0.0-20200103221440-774c71fcf114/go.mod h1:TB2adYChydJhpapKDTa4BR/hXlZSLoq2Wpct/0txZ28=
golang.org/x/tools v0.0.0-20200117161641-43d50277825c/go.mod h1:TB2adYChydJhpapKDTa4BR/hXlZSLoq2Wpct/0txZ28=
golang.org/x/tools v0.0.0-20200122220014-bf1340f18c4a/go.mod h1:TB2adYChydJhpapKDTa4BR/hXlZSLoq2Wpct/0txZ28=
golang.org/x/tools v0.0.0-20200130002326-2f3ba24bd6e7/go.mod h1:TB2adYChydJhpapKDTa4BR/hXlZSLoq2Wpct/0txZ28=
@@ -3350,8 +3446,10 @@ golang.org/x/tools v0.1.2/go.mod h1:o0xws9oXOQQZyjljx8fwUC0k7L1pTE6eaCbjGeHmOkk=
golang.org/x/tools v0.1.3/go.mod h1:o0xws9oXOQQZyjljx8fwUC0k7L1pTE6eaCbjGeHmOkk=
golang.org/x/tools v0.1.4/go.mod h1:o0xws9oXOQQZyjljx8fwUC0k7L1pTE6eaCbjGeHmOkk=
golang.org/x/tools v0.1.5/go.mod h1:o0xws9oXOQQZyjljx8fwUC0k7L1pTE6eaCbjGeHmOkk=
+golang.org/x/tools v0.1.6-0.20210726203631-07bc1bf47fb2/go.mod h1:o0xws9oXOQQZyjljx8fwUC0k7L1pTE6eaCbjGeHmOkk=
golang.org/x/tools v0.1.9/go.mod h1:nABZi5QlRsZVlzPpHl034qft6wpY4eDcsTt5AaioBiU=
golang.org/x/tools v0.1.10/go.mod h1:Uh6Zz+xoGYZom868N8YTex3t7RhtHDBrE8Gzo9bV56E=
+golang.org/x/tools v0.1.11/go.mod h1:SgwaegtQh8clINPpECJMqnxLv9I09HLqnW3RMqW0CA4=
golang.org/x/tools v0.1.12/go.mod h1:hNGJHUnrk76NpqgfD5Aqm5Crs+Hm0VOH/i9J2+nxYbc=
golang.org/x/tools v0.2.0/go.mod h1:y4OqIKeOV/fWJetJ8bXPU1sEVniLMIyDAZWeHdV+NTA=
golang.org/x/tools v0.3.0/go.mod h1:/rWhSS2+zyEVwoJf8YAX6L2f0ntZ7Kn/mGgAWcipA5k=
@@ -3359,10 +3457,10 @@ golang.org/x/tools v0.4.0/go.mod h1:UE5sM2OK9E/d67R0ANs2xJizIymRP5gJU295PvKXxjQ=
golang.org/x/tools v0.5.0/go.mod h1:N+Kgy78s5I24c24dU8OfWNEotWjutIs8SnJvn5IDq+k=
golang.org/x/tools v0.6.0/go.mod h1:Xwgl3UAJ/d3gWutnCtw505GrjyAbvKui8lOU390QaIU=
golang.org/x/tools v0.7.0/go.mod h1:4pg6aUX35JBAogB10C9AtvVL+qowtN4pT3CGSQex14s=
-golang.org/x/tools v0.8.0/go.mod h1:JxBZ99ISMI5ViVkT1tr6tdNmXeTrcpVSD3vZ1RsRdN4=
-golang.org/x/tools v0.9.1/go.mod h1:owI94Op576fPu3cIGQeHs3joujW/2Oc6MtlxbF5dfNc=
-golang.org/x/tools v0.10.0 h1:tvDr/iQoUqNdohiYm0LmmKcBk+q86lb9EprIUFhHHGg=
-golang.org/x/tools v0.10.0/go.mod h1:UJwyiVBsOA2uwvK/e5OY3GTpDUJriEd+/YlqAwLPmyM=
+golang.org/x/tools v0.14.0 h1:jvNa2pY0M4r62jkRQ6RwEZZyPcymeL9XZMLBbV7U2nc=
+golang.org/x/tools v0.14.0/go.mod h1:uYBEerGOWcJyEORxN+Ek8+TT266gXkNlHdJBwexUsBg=
+golang.org/x/xerrors v0.0.0-20190410155217-1f06c39b4373/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
+golang.org/x/xerrors v0.0.0-20190513163551-3ee3066db522/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
golang.org/x/xerrors v0.0.0-20191011141410-1b5146add898/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
@@ -3381,6 +3479,7 @@ gonum.org/v1/plot v0.0.0-20190515093506-e2840ee46a6b/go.mod h1:Wt8AAjI+ypCyYX3nZ
gonum.org/v1/plot v0.9.0/go.mod h1:3Pcqqmp6RHvJI72kgb8fThyUnav364FOsdDo2aGW5lY=
gonum.org/v1/plot v0.10.1/go.mod h1:VZW5OlhkL1mysU9vaqNHnsy86inf6Ot+jB3r+BczCEo=
google.golang.org/api v0.0.0-20160322025152-9bf6e6e569ff/go.mod h1:4mhQ8q/RsB7i+udVvVy5NUi08OU8ZlA0gRVgrF7VFY0=
+google.golang.org/api v0.3.1/go.mod h1:6wY9I6uQWHQ8EM57III9mq/AjF+i8G65rmVagqKMtkk=
google.golang.org/api v0.4.0/go.mod h1:8k5glujaEP+g9n7WNsDg8QP6cUVNI86fCNMcbazEtwE=
google.golang.org/api v0.7.0/go.mod h1:WtwebWUNSVBH/HAw79HIFXZNqEvBhG+Ra+ax0hx3E3M=
google.golang.org/api v0.8.0/go.mod h1:o4eAsZoiT+ibD93RtjEohWalFOjRDx6CVaqeizhEnKg=
@@ -3399,7 +3498,6 @@ google.golang.org/api v0.29.0/go.mod h1:Lcubydp8VUV7KeIHD9z2Bys/sm/vGKnG1UHuDBSr
google.golang.org/api v0.30.0/go.mod h1:QGmEvQ87FHZNiUVJkT14jQNYJ4ZJjdRF23ZXz5138Fc=
google.golang.org/api v0.35.0/go.mod h1:/XrVsuzM0rZmrsbjJutiuftIzeuTQcEeaYcSk/mQ1dg=
google.golang.org/api v0.36.0/go.mod h1:+z5ficQTmoYpPn8LCUNVpK5I7hwkpjbcgqA7I34qYtE=
-google.golang.org/api v0.37.0/go.mod h1:fYKFpnQN0DsDSKRVRcQSDQNtqWPfM9i+zNPxepjRCQ8=
google.golang.org/api v0.40.0/go.mod h1:fYKFpnQN0DsDSKRVRcQSDQNtqWPfM9i+zNPxepjRCQ8=
google.golang.org/api v0.41.0/go.mod h1:RkxM5lITDfTzmyKFPt+wGrCJbVfniCr2ool8kTBzRTU=
google.golang.org/api v0.43.0/go.mod h1:nQsDGjRXMo4lvh5hP0TKqF244gqhGcr/YSIykhUk/94=
@@ -3408,11 +3506,12 @@ google.golang.org/api v0.47.0/go.mod h1:Wbvgpq1HddcWVtzsVLyfLp8lDg6AA241LmgIL59t
google.golang.org/api v0.48.0/go.mod h1:71Pr1vy+TAZRPkPs/xlCf5SsU8WjuAWv1Pfjbtukyy4=
google.golang.org/api v0.50.0/go.mod h1:4bNT5pAuq5ji4SRZm+5QIkjny9JAyVD/3gaSihNefaw=
google.golang.org/api v0.51.0/go.mod h1:t4HdrdoNgyN5cbEfm7Lum0lcLDLiise1F8qDKX00sOU=
-google.golang.org/api v0.52.0/go.mod h1:Him/adpjt0sxtkWViy0b6xyKW/SD71CwdJ7HqJo7SrU=
google.golang.org/api v0.54.0/go.mod h1:7C4bFFOvVDGXjfDTAsgGwDgAxRDeQ4X8NvUedIt6z3k=
google.golang.org/api v0.55.0/go.mod h1:38yMfeP1kfjsl8isn0tliTjIb1rJXcQi4UXlbqivdVE=
google.golang.org/api v0.56.0/go.mod h1:38yMfeP1kfjsl8isn0tliTjIb1rJXcQi4UXlbqivdVE=
google.golang.org/api v0.57.0/go.mod h1:dVPlbZyBo2/OjBpmvNdpn2GRm6rPy75jyU7bmhdrMgI=
+google.golang.org/api v0.58.0/go.mod h1:cAbP2FsxoGVNwtgNAmmn3y5G1TWAiVYRmg4yku3lv+E=
+google.golang.org/api v0.59.0/go.mod h1:sT2boj7M9YJxZzgeZqXogmhfmRWDtPzT31xkieUbuZU=
google.golang.org/api v0.61.0/go.mod h1:xQRti5UdCmoCEqFxcz93fTl338AVqDgyaDRuOZ3hg9I=
google.golang.org/api v0.63.0/go.mod h1:gs4ij2ffTRXwuzzgJl/56BdwJaA194ijkfn++9tDuPo=
google.golang.org/api v0.67.0/go.mod h1:ShHKP8E60yPsKNw/w8w+VYaj9H6buA5UqDp8dhbQZ6g=
@@ -3425,7 +3524,9 @@ google.golang.org/api v0.78.0/go.mod h1:1Sg78yoMLOhlQTeF+ARBoytAcH1NNyyl390YMy6r
google.golang.org/api v0.80.0/go.mod h1:xY3nI94gbvBrE0J6NHXhxOmW97HG7Khjkku6AFB3Hyg=
google.golang.org/api v0.84.0/go.mod h1:NTsGnUFJMYROtiquksZHBWtHfeMC7iYthki7Eq3pa8o=
google.golang.org/api v0.85.0/go.mod h1:AqZf8Ep9uZ2pyTvgL+x0D3Zt0eoT9b5E8fmzfu6FO2g=
+google.golang.org/api v0.86.0/go.mod h1:+Sem1dnrKlrXMR/X0bPnMWyluQe4RsNoYfmNLhOIkzw=
google.golang.org/api v0.90.0/go.mod h1:+Sem1dnrKlrXMR/X0bPnMWyluQe4RsNoYfmNLhOIkzw=
+google.golang.org/api v0.91.0/go.mod h1:+Sem1dnrKlrXMR/X0bPnMWyluQe4RsNoYfmNLhOIkzw=
google.golang.org/api v0.93.0/go.mod h1:+Sem1dnrKlrXMR/X0bPnMWyluQe4RsNoYfmNLhOIkzw=
google.golang.org/api v0.95.0/go.mod h1:eADj+UBuxkh5zlrSntJghuNeg8HwQ1w5lTKkuqaETEI=
google.golang.org/api v0.96.0/go.mod h1:w7wJQLTM+wvQpNf5JyEcBoxK0RH7EDrh/L4qfsuJ13s=
@@ -3441,16 +3542,10 @@ google.golang.org/api v0.108.0/go.mod h1:2Ts0XTHNVWxypznxWOYUeI4g3WdP9Pk2Qk58+a/
google.golang.org/api v0.110.0/go.mod h1:7FC4Vvx1Mooxh8C5HWjzZHcavuS2f6pmJpZx60ca7iI=
google.golang.org/api v0.111.0/go.mod h1:qtFHvU9mhgTJegR31csQ+rwxyUTHOKFqCKWp1J0fdw0=
google.golang.org/api v0.114.0/go.mod h1:ifYI2ZsFK6/uGddGfAD5BMxlnkBqCmqHSDUVi45N5Yg=
-google.golang.org/api v0.118.0/go.mod h1:76TtD3vkgmZ66zZzp72bUUklpmQmKlhh6sYtIjYK+5E=
-google.golang.org/api v0.122.0/go.mod h1:gcitW0lvnyWjSp9nKxAbdHKIZ6vF4aajGueeslZOyms=
-google.golang.org/api v0.124.0/go.mod h1:xu2HQurE5gi/3t1aFCvhPD781p0a3p11sdunTJ2BlP4=
-google.golang.org/api v0.125.0/go.mod h1:mBwVAtz+87bEN6CbA1GtZPDOqY2R5ONPqJeIlvyo4Aw=
-google.golang.org/api v0.126.0/go.mod h1:mBwVAtz+87bEN6CbA1GtZPDOqY2R5ONPqJeIlvyo4Aw=
-google.golang.org/api v0.128.0/go.mod h1:Y611qgqaE92On/7g65MQgxYul3c0rEB894kniWLY750=
-google.golang.org/api v0.138.0/go.mod h1:4xyob8CxC+0GChNBvEUAk8VBKNvYOTWM9T3v3UfRxuY=
google.golang.org/api v0.144.0 h1:01xgplvIwdMpnrlenPHMgRAAgAH9N5Zv21Qu6XwJxSU=
google.golang.org/api v0.144.0/go.mod h1:OARJqIfoYjXJj4C1AiBSXYZt03qsoz8FQYU6fBEfrHM=
google.golang.org/appengine v1.1.0/go.mod h1:EbEs0AVv82hx2wNQdGPgUI5lhzA/G0D9YwlJXL52JkM=
+google.golang.org/appengine v1.2.0/go.mod h1:xpcJRLb0r/rnEns0DIKYYv+WjYCduHsrkT7/EB5XEv4=
google.golang.org/appengine v1.4.0/go.mod h1:xpcJRLb0r/rnEns0DIKYYv+WjYCduHsrkT7/EB5XEv4=
google.golang.org/appengine v1.5.0/go.mod h1:xpcJRLb0r/rnEns0DIKYYv+WjYCduHsrkT7/EB5XEv4=
google.golang.org/appengine v1.6.1/go.mod h1:i06prIuMbXzDqacNJfV5OdTW448YApPu5ww/cMBSeb0=
@@ -3466,6 +3561,7 @@ google.golang.org/genproto v0.0.0-20190418145605-e7d98fc518a7/go.mod h1:VzzqZJRn
google.golang.org/genproto v0.0.0-20190425155659-357c62f0e4bb/go.mod h1:VzzqZJRnGkLBvHegQrXjBqPurQTc5/KpmUdxsrq26oE=
google.golang.org/genproto v0.0.0-20190502173448-54afdca5d873/go.mod h1:VzzqZJRnGkLBvHegQrXjBqPurQTc5/KpmUdxsrq26oE=
google.golang.org/genproto v0.0.0-20190522204451-c2c4e71fbf69/go.mod h1:z3L6/3dTEVtUr6QSP8miRzeRqwQOioJ9I66odjN4I7s=
+google.golang.org/genproto v0.0.0-20190530194941-fb225487d101/go.mod h1:z3L6/3dTEVtUr6QSP8miRzeRqwQOioJ9I66odjN4I7s=
google.golang.org/genproto v0.0.0-20190801165951-fa694d86fc64/go.mod h1:DMBHOl98Agz4BDEuKkezgsaosCRResVns1a3J2ZsMNc=
google.golang.org/genproto v0.0.0-20190819201941-24fa4b261c55/go.mod h1:DMBHOl98Agz4BDEuKkezgsaosCRResVns1a3J2ZsMNc=
google.golang.org/genproto v0.0.0-20190911173649-1774047e7e51/go.mod h1:IbNlFCBrqXvoKpeg0TB2l7cyZUmoaFKYIwrEpbDKLA8=
@@ -3502,7 +3598,6 @@ google.golang.org/genproto v0.0.0-20201201144952-b05cb90ed32e/go.mod h1:FWY/as6D
google.golang.org/genproto v0.0.0-20201210142538-e3217bee35cc/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no=
google.golang.org/genproto v0.0.0-20201214200347-8c77b98c765d/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no=
google.golang.org/genproto v0.0.0-20210108203827-ffc7fda8c3d7/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no=
-google.golang.org/genproto v0.0.0-20210126160654-44e461bb6506/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no=
google.golang.org/genproto v0.0.0-20210222152913-aa3ee6e6a81c/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no=
google.golang.org/genproto v0.0.0-20210226172003-ab064af71705/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no=
google.golang.org/genproto v0.0.0-20210303154014-9728d6b83eeb/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no=
@@ -3519,18 +3614,20 @@ google.golang.org/genproto v0.0.0-20210608205507-b6d2f5bf0d7d/go.mod h1:UODoCrxH
google.golang.org/genproto v0.0.0-20210624195500-8bfb893ecb84/go.mod h1:SzzZ/N+nwJDaO1kznhnlzqS8ocJICar6hYhVyhi++24=
google.golang.org/genproto v0.0.0-20210713002101-d411969a0d9a/go.mod h1:AxrInvYm1dci+enl5hChSFPOmmUF1+uAa/UsgNRWd7k=
google.golang.org/genproto v0.0.0-20210716133855-ce7ef5c701ea/go.mod h1:AxrInvYm1dci+enl5hChSFPOmmUF1+uAa/UsgNRWd7k=
-google.golang.org/genproto v0.0.0-20210721163202-f1cecdd8b78a/go.mod h1:ob2IJxKrgPT52GcgX759i1sleT07tiKowYBGbczaW48=
-google.golang.org/genproto v0.0.0-20210722135532-667f2b7c528f/go.mod h1:ob2IJxKrgPT52GcgX759i1sleT07tiKowYBGbczaW48=
google.golang.org/genproto v0.0.0-20210728212813-7823e685a01f/go.mod h1:ob2IJxKrgPT52GcgX759i1sleT07tiKowYBGbczaW48=
google.golang.org/genproto v0.0.0-20210805201207-89edb61ffb67/go.mod h1:ob2IJxKrgPT52GcgX759i1sleT07tiKowYBGbczaW48=
google.golang.org/genproto v0.0.0-20210813162853-db860fec028c/go.mod h1:cFeNkxwySK631ADgubI+/XFU/xp8FD5KIVV4rj8UC5w=
google.golang.org/genproto v0.0.0-20210821163610-241b8fcbd6c8/go.mod h1:eFjDcFEctNawg4eG61bRv87N7iHBWyVhJu7u1kqDUXY=
-google.golang.org/genproto v0.0.0-20210825212027-de86158e7fda/go.mod h1:eFjDcFEctNawg4eG61bRv87N7iHBWyVhJu7u1kqDUXY=
google.golang.org/genproto v0.0.0-20210828152312-66f60bf46e71/go.mod h1:eFjDcFEctNawg4eG61bRv87N7iHBWyVhJu7u1kqDUXY=
google.golang.org/genproto v0.0.0-20210831024726-fe130286e0e2/go.mod h1:eFjDcFEctNawg4eG61bRv87N7iHBWyVhJu7u1kqDUXY=
google.golang.org/genproto v0.0.0-20210903162649-d08c68adba83/go.mod h1:eFjDcFEctNawg4eG61bRv87N7iHBWyVhJu7u1kqDUXY=
google.golang.org/genproto v0.0.0-20210909211513-a8c4777a87af/go.mod h1:eFjDcFEctNawg4eG61bRv87N7iHBWyVhJu7u1kqDUXY=
+google.golang.org/genproto v0.0.0-20210917145530-b395a37504d4/go.mod h1:eFjDcFEctNawg4eG61bRv87N7iHBWyVhJu7u1kqDUXY=
+google.golang.org/genproto v0.0.0-20210921142501-181ce0d877f6/go.mod h1:5CzLGKJ67TSI2B9POpiiyGha0AjJvZIUgRMt1dSmuhc=
google.golang.org/genproto v0.0.0-20210924002016-3dee208752a0/go.mod h1:5CzLGKJ67TSI2B9POpiiyGha0AjJvZIUgRMt1dSmuhc=
+google.golang.org/genproto v0.0.0-20211008145708-270636b82663/go.mod h1:5CzLGKJ67TSI2B9POpiiyGha0AjJvZIUgRMt1dSmuhc=
+google.golang.org/genproto v0.0.0-20211018162055-cf77aa76bad2/go.mod h1:5CzLGKJ67TSI2B9POpiiyGha0AjJvZIUgRMt1dSmuhc=
+google.golang.org/genproto v0.0.0-20211028162531-8db9c33dc351/go.mod h1:5CzLGKJ67TSI2B9POpiiyGha0AjJvZIUgRMt1dSmuhc=
google.golang.org/genproto v0.0.0-20211118181313-81c1377c94b1/go.mod h1:5CzLGKJ67TSI2B9POpiiyGha0AjJvZIUgRMt1dSmuhc=
google.golang.org/genproto v0.0.0-20211206160659-862468c7d6e0/go.mod h1:5CzLGKJ67TSI2B9POpiiyGha0AjJvZIUgRMt1dSmuhc=
google.golang.org/genproto v0.0.0-20211208223120-3a66f561d7aa/go.mod h1:5CzLGKJ67TSI2B9POpiiyGha0AjJvZIUgRMt1dSmuhc=
@@ -3552,6 +3649,7 @@ google.golang.org/genproto v0.0.0-20220429170224-98d788798c3e/go.mod h1:8w6bsBMX
google.golang.org/genproto v0.0.0-20220502173005-c8bf987b8c21/go.mod h1:RAyBrSAP7Fh3Nc84ghnVLDPuV51xc9agzmm4Ph6i0Q4=
google.golang.org/genproto v0.0.0-20220505152158-f39f71e6c8f3/go.mod h1:RAyBrSAP7Fh3Nc84ghnVLDPuV51xc9agzmm4Ph6i0Q4=
google.golang.org/genproto v0.0.0-20220518221133-4f43b3371335/go.mod h1:RAyBrSAP7Fh3Nc84ghnVLDPuV51xc9agzmm4Ph6i0Q4=
+google.golang.org/genproto v0.0.0-20220519153652-3a47de7e79bd/go.mod h1:RAyBrSAP7Fh3Nc84ghnVLDPuV51xc9agzmm4Ph6i0Q4=
google.golang.org/genproto v0.0.0-20220523171625-347a074981d8/go.mod h1:RAyBrSAP7Fh3Nc84ghnVLDPuV51xc9agzmm4Ph6i0Q4=
google.golang.org/genproto v0.0.0-20220608133413-ed9918b62aac/go.mod h1:KEWEmljWE5zPzLBa/oHl6DaEt9LmfH6WtH1OHIvleBA=
google.golang.org/genproto v0.0.0-20220616135557-88e70c0c3a90/go.mod h1:KEWEmljWE5zPzLBa/oHl6DaEt9LmfH6WtH1OHIvleBA=
@@ -3560,6 +3658,7 @@ google.golang.org/genproto v0.0.0-20220624142145-8cd45d7dbd1f/go.mod h1:KEWEmljW
google.golang.org/genproto v0.0.0-20220628213854-d9e0b6570c03/go.mod h1:KEWEmljWE5zPzLBa/oHl6DaEt9LmfH6WtH1OHIvleBA=
google.golang.org/genproto v0.0.0-20220722212130-b98a9ff5e252/go.mod h1:GkXuJDJ6aQ7lnJcRF+SJVgFdQhypqgl3LB1C9vabdRE=
google.golang.org/genproto v0.0.0-20220801145646-83ce21fca29f/go.mod h1:iHe1svFLAZg9VWz891+QbRMwUv9O/1Ww+/mngYeThbc=
+google.golang.org/genproto v0.0.0-20220802133213-ce4fa296bf78/go.mod h1:iHe1svFLAZg9VWz891+QbRMwUv9O/1Ww+/mngYeThbc=
google.golang.org/genproto v0.0.0-20220815135757-37a418bb8959/go.mod h1:dbqgFATTzChvnt+ujMdZwITVAJHFtfyN1qUhDqEiIlk=
google.golang.org/genproto v0.0.0-20220817144833-d7fd3f11b9b1/go.mod h1:dbqgFATTzChvnt+ujMdZwITVAJHFtfyN1qUhDqEiIlk=
google.golang.org/genproto v0.0.0-20220822174746-9e6da59bd2fc/go.mod h1:dbqgFATTzChvnt+ujMdZwITVAJHFtfyN1qUhDqEiIlk=
@@ -3604,58 +3703,28 @@ google.golang.org/genproto v0.0.0-20230320184635-7606e756e683/go.mod h1:NWraEVix
google.golang.org/genproto v0.0.0-20230323212658-478b75c54725/go.mod h1:UUQDJDOlWu4KYeJZffbWgBkS1YFobzKbLVfK69pe0Ak=
google.golang.org/genproto v0.0.0-20230330154414-c0448cd141ea/go.mod h1:UUQDJDOlWu4KYeJZffbWgBkS1YFobzKbLVfK69pe0Ak=
google.golang.org/genproto v0.0.0-20230331144136-dcfb400f0633/go.mod h1:UUQDJDOlWu4KYeJZffbWgBkS1YFobzKbLVfK69pe0Ak=
-google.golang.org/genproto v0.0.0-20230403163135-c38d8f061ccd/go.mod h1:UUQDJDOlWu4KYeJZffbWgBkS1YFobzKbLVfK69pe0Ak=
-google.golang.org/genproto v0.0.0-20230410155749-daa745c078e1/go.mod h1:nKE/iIaLqn2bQwXBg8f1g2Ylh6r5MN5CmZvuzZCgsCU=
google.golang.org/genproto v0.0.0-20230525234025-438c736192d0/go.mod h1:9ExIQyXL5hZrHzQceCwuSYwZZ5QZBazOcprJ5rgs3lY=
google.golang.org/genproto v0.0.0-20230526161137-0005af68ea54/go.mod h1:zqTuNwFlFRsw5zIts5VnzLQxSRqh+CGOTVMlYbY0Eyk=
-google.golang.org/genproto v0.0.0-20230526203410-71b5a4ffd15e/go.mod h1:zqTuNwFlFRsw5zIts5VnzLQxSRqh+CGOTVMlYbY0Eyk=
-google.golang.org/genproto v0.0.0-20230530153820-e85fd2cbaebc/go.mod h1:xZnkP7mREFX5MORlOPEzLMr+90PPZQ2QWzrVTWfAq64=
-google.golang.org/genproto v0.0.0-20230629202037-9506855d4529/go.mod h1:xZnkP7mREFX5MORlOPEzLMr+90PPZQ2QWzrVTWfAq64=
-google.golang.org/genproto v0.0.0-20230706204954-ccb25ca9f130/go.mod h1:O9kGHb51iE/nOGvQaDUuadVYqovW56s5emA88lQnj6Y=
-google.golang.org/genproto v0.0.0-20230711160842-782d3b101e98/go.mod h1:S7mY02OqCJTD0E1OiQy1F72PWFB4bZJ87cAtLPYgDR0=
-google.golang.org/genproto v0.0.0-20230726155614-23370e0ffb3e/go.mod h1:0ggbjUrZYpy1q+ANUS30SEoGZ53cdfwtbuG7Ptgy108=
-google.golang.org/genproto v0.0.0-20230803162519-f966b187b2e5/go.mod h1:oH/ZOT02u4kWEp7oYBGYFFkCdKS/uYR9Z7+0/xuuFp8=
-google.golang.org/genproto v0.0.0-20230821184602-ccc8af3d0e93/go.mod h1:yZTlhN0tQnXo3h00fuXNCxJdLdIdnVFVBaRJ5LWBbw4=
-google.golang.org/genproto v0.0.0-20230913181813-007df8e322eb/go.mod h1:yZTlhN0tQnXo3h00fuXNCxJdLdIdnVFVBaRJ5LWBbw4=
google.golang.org/genproto v0.0.0-20231002182017-d307bd883b97 h1:SeZZZx0cP0fqUyA+oRzP9k7cSwJlvDFiROO72uwD6i0=
google.golang.org/genproto v0.0.0-20231002182017-d307bd883b97/go.mod h1:t1VqOqqvce95G3hIDCT5FeO3YUc6Q4Oe24L/+rNMxRk=
google.golang.org/genproto/googleapis/api v0.0.0-20230525234020-1aefcd67740a/go.mod h1:ts19tUU+Z0ZShN1y3aPyq2+O3d5FUNNgT6FtOzmrNn8=
google.golang.org/genproto/googleapis/api v0.0.0-20230525234035-dd9d682886f9/go.mod h1:vHYtlOoi6TsQ3Uk2yxR7NI5z8uoV+3pZtR4jmHIkRig=
-google.golang.org/genproto/googleapis/api v0.0.0-20230526203410-71b5a4ffd15e/go.mod h1:vHYtlOoi6TsQ3Uk2yxR7NI5z8uoV+3pZtR4jmHIkRig=
-google.golang.org/genproto/googleapis/api v0.0.0-20230530153820-e85fd2cbaebc/go.mod h1:vHYtlOoi6TsQ3Uk2yxR7NI5z8uoV+3pZtR4jmHIkRig=
-google.golang.org/genproto/googleapis/api v0.0.0-20230629202037-9506855d4529/go.mod h1:vHYtlOoi6TsQ3Uk2yxR7NI5z8uoV+3pZtR4jmHIkRig=
-google.golang.org/genproto/googleapis/api v0.0.0-20230706204954-ccb25ca9f130/go.mod h1:mPBs5jNgx2GuQGvFwUvVKqtn6HsUw9nP64BedgvqEsQ=
-google.golang.org/genproto/googleapis/api v0.0.0-20230711160842-782d3b101e98/go.mod h1:rsr7RhLuwsDKL7RmgDDCUc6yaGr1iqceVb5Wv6f6YvQ=
-google.golang.org/genproto/googleapis/api v0.0.0-20230726155614-23370e0ffb3e/go.mod h1:rsr7RhLuwsDKL7RmgDDCUc6yaGr1iqceVb5Wv6f6YvQ=
-google.golang.org/genproto/googleapis/api v0.0.0-20230803162519-f966b187b2e5/go.mod h1:5DZzOUPCLYL3mNkQ0ms0F3EuUNZ7py1Bqeq6sxzI7/Q=
-google.golang.org/genproto/googleapis/api v0.0.0-20230913181813-007df8e322eb/go.mod h1:KjSP20unUpOx5kyQUFa7k4OJg0qeJ7DEZflGDu2p6Bk=
google.golang.org/genproto/googleapis/api v0.0.0-20230920204549-e6e6cdab5c13 h1:U7+wNaVuSTaUqNvK2+osJ9ejEZxbjHHk8F2b6Hpx0AE=
google.golang.org/genproto/googleapis/api v0.0.0-20230920204549-e6e6cdab5c13/go.mod h1:RdyHbowztCGQySiCvQPgWQWgWhGnouTdCflKoDBt32U=
-google.golang.org/genproto/googleapis/bytestream v0.0.0-20230530153820-e85fd2cbaebc/go.mod h1:ylj+BE99M198VPbBh6A8d9n3w8fChvyLK3wwBOjXBFA=
-google.golang.org/genproto/googleapis/bytestream v0.0.0-20230807174057-1744710a1577/go.mod h1:NjCQG/D8JandXxM57PZbAJL1DCNL6EypA0vPPwfsc7c=
-google.golang.org/genproto/googleapis/bytestream v0.0.0-20230920204549-e6e6cdab5c13/go.mod h1:qDbnxtViX5J6CvFbxeNUSzKgVlDLJ/6L+caxye9+Flo=
google.golang.org/genproto/googleapis/rpc v0.0.0-20230525234015-3fc162c6f38a/go.mod h1:xURIpW9ES5+/GZhnV6beoEtxQrnkRGIfP5VQG2tCBLc=
google.golang.org/genproto/googleapis/rpc v0.0.0-20230525234030-28d5490b6b19/go.mod h1:66JfowdXAEgad5O9NnYcsNPLCPZJD++2L9X0PCMODrA=
-google.golang.org/genproto/googleapis/rpc v0.0.0-20230526203410-71b5a4ffd15e/go.mod h1:66JfowdXAEgad5O9NnYcsNPLCPZJD++2L9X0PCMODrA=
-google.golang.org/genproto/googleapis/rpc v0.0.0-20230530153820-e85fd2cbaebc/go.mod h1:66JfowdXAEgad5O9NnYcsNPLCPZJD++2L9X0PCMODrA=
-google.golang.org/genproto/googleapis/rpc v0.0.0-20230629202037-9506855d4529/go.mod h1:66JfowdXAEgad5O9NnYcsNPLCPZJD++2L9X0PCMODrA=
-google.golang.org/genproto/googleapis/rpc v0.0.0-20230706204954-ccb25ca9f130/go.mod h1:8mL13HKkDa+IuJ8yruA3ci0q+0vsUz4m//+ottjwS5o=
-google.golang.org/genproto/googleapis/rpc v0.0.0-20230711160842-782d3b101e98/go.mod h1:TUfxEVdsvPg18p6AslUXFoLdpED4oBnGwyqk3dV1XzM=
-google.golang.org/genproto/googleapis/rpc v0.0.0-20230731190214-cbb8c96f2d6d/go.mod h1:TUfxEVdsvPg18p6AslUXFoLdpED4oBnGwyqk3dV1XzM=
-google.golang.org/genproto/googleapis/rpc v0.0.0-20230803162519-f966b187b2e5/go.mod h1:zBEcrKX2ZOcEkHWxBPAIvYUWOKKMIhYcmNiUIu2ji3I=
-google.golang.org/genproto/googleapis/rpc v0.0.0-20230807174057-1744710a1577/go.mod h1:+Bk1OCOj40wS2hwAMA+aCW9ypzm63QTBBHp6lQ3p+9M=
-google.golang.org/genproto/googleapis/rpc v0.0.0-20230822172742-b8732ec3820d/go.mod h1:+Bk1OCOj40wS2hwAMA+aCW9ypzm63QTBBHp6lQ3p+9M=
-google.golang.org/genproto/googleapis/rpc v0.0.0-20230920183334-c177e329c48b/go.mod h1:+Bk1OCOj40wS2hwAMA+aCW9ypzm63QTBBHp6lQ3p+9M=
google.golang.org/genproto/googleapis/rpc v0.0.0-20230920204549-e6e6cdab5c13 h1:N3bU/SQDCDyD6R528GJ/PwW9KjYcJA3dgyH+MovAkIM=
google.golang.org/genproto/googleapis/rpc v0.0.0-20230920204549-e6e6cdab5c13/go.mod h1:KSqppvjFjtoCI+KGd4PELB0qLNxdJHRGqRI09mB6pQA=
google.golang.org/grpc v0.0.0-20160317175043-d3ddb4469d5a/go.mod h1:yo6s7OP7yaDglbqo1J04qKzAhqBH6lvTonzMVmEdcZw=
google.golang.org/grpc v1.8.0/go.mod h1:yo6s7OP7yaDglbqo1J04qKzAhqBH6lvTonzMVmEdcZw=
google.golang.org/grpc v1.14.0/go.mod h1:yo6s7OP7yaDglbqo1J04qKzAhqBH6lvTonzMVmEdcZw=
+google.golang.org/grpc v1.17.0/go.mod h1:6QZJwpn2B+Zp71q/5VxRsJ6NXXVCE5NRUHRo+f3cWCs=
google.golang.org/grpc v1.19.0/go.mod h1:mqu4LbDTu4XGKhr4mRzUsmM4RtVoemTSY81AxZiDr8c=
+google.golang.org/grpc v1.20.0/go.mod h1:chYK+tFQF0nDUGJgXMSgLCQk3phJEuONr2DCgLDdAQM=
google.golang.org/grpc v1.20.1/go.mod h1:10oTOabMzJvdu6/UiuZezV6QK5dSlG84ov/aaiqXj38=
google.golang.org/grpc v1.21.0/go.mod h1:oYelfM1adQP15Ek0mdvEgi9Df8B9CZIaU1084ijfRaM=
google.golang.org/grpc v1.21.1/go.mod h1:oYelfM1adQP15Ek0mdvEgi9Df8B9CZIaU1084ijfRaM=
-google.golang.org/grpc v1.22.0/go.mod h1:Y5yQAOtifL1yxbo5wqy6BxZv8vAUGQwXBOALyacEbxg=
+google.golang.org/grpc v1.22.1/go.mod h1:Y5yQAOtifL1yxbo5wqy6BxZv8vAUGQwXBOALyacEbxg=
google.golang.org/grpc v1.23.0/go.mod h1:Y5yQAOtifL1yxbo5wqy6BxZv8vAUGQwXBOALyacEbxg=
google.golang.org/grpc v1.23.1/go.mod h1:Y5yQAOtifL1yxbo5wqy6BxZv8vAUGQwXBOALyacEbxg=
google.golang.org/grpc v1.24.0/go.mod h1:XDChyiUovWa60DnaeDeZmSW86xtLtjtZbwvSiRnRtcA=
@@ -3694,14 +3763,9 @@ google.golang.org/grpc v1.49.0/go.mod h1:ZgQEeidpAuNRZ8iRrlBKXZQP1ghovWIVhdJRyCD
google.golang.org/grpc v1.50.0/go.mod h1:ZgQEeidpAuNRZ8iRrlBKXZQP1ghovWIVhdJRyCDK+GI=
google.golang.org/grpc v1.50.1/go.mod h1:ZgQEeidpAuNRZ8iRrlBKXZQP1ghovWIVhdJRyCDK+GI=
google.golang.org/grpc v1.51.0/go.mod h1:wgNDFcnuBGmxLKI/qn4T+m5BtEBYXJPvibbUPsAIPww=
-google.golang.org/grpc v1.52.0/go.mod h1:pu6fVzoFb+NBYNAvQL08ic+lvB2IojljRYuun5vorUY=
google.golang.org/grpc v1.52.3/go.mod h1:pu6fVzoFb+NBYNAvQL08ic+lvB2IojljRYuun5vorUY=
google.golang.org/grpc v1.53.0/go.mod h1:OnIrk0ipVdj4N5d9IUoFUx72/VlD7+jUsHwZgwSMQpw=
google.golang.org/grpc v1.54.0/go.mod h1:PUSEXI6iWghWaB6lXM4knEgpJNu2qUcKfDtNci3EC2g=
-google.golang.org/grpc v1.55.0/go.mod h1:iYEXKGkEBhg1PjZQvoYEVPTDkHo1/bjTnfwTeGONTY8=
-google.golang.org/grpc v1.56.0/go.mod h1:I9bI3vqKfayGqPUAwGdOSu7kt6oIJLixfffKrpXqQ9s=
-google.golang.org/grpc v1.56.1/go.mod h1:I9bI3vqKfayGqPUAwGdOSu7kt6oIJLixfffKrpXqQ9s=
-google.golang.org/grpc v1.56.2/go.mod h1:I9bI3vqKfayGqPUAwGdOSu7kt6oIJLixfffKrpXqQ9s=
google.golang.org/grpc v1.57.0/go.mod h1:Sd+9RMTACXwmub0zcNY2c4arhtrbBYD1AUHI/dt16Mo=
google.golang.org/grpc v1.58.2 h1:SXUpjxeVF3FKrTYQI4f4KvbGD5u2xccdYdurwowix5I=
google.golang.org/grpc v1.58.2/go.mod h1:tgX3ZQDlNJGU96V6yHh1T/JeoBQ2TXdr43YbYSsCJk0=
@@ -3726,8 +3790,6 @@ google.golang.org/protobuf v1.29.1/go.mod h1:HV8QOd/L58Z+nl8r43ehVNZIU/HEI6OcFqw
google.golang.org/protobuf v1.30.0/go.mod h1:HV8QOd/L58Z+nl8r43ehVNZIU/HEI6OcFqwMG9pJV4I=
google.golang.org/protobuf v1.31.0 h1:g0LDEJHgrBl9N9r17Ru3sqWhkIx2NB67okBHPwC7hs8=
google.golang.org/protobuf v1.31.0/go.mod h1:HV8QOd/L58Z+nl8r43ehVNZIU/HEI6OcFqwMG9pJV4I=
-gopkg.in/AlecAivazis/survey.v1 v1.8.9-0.20200217094205-6773bdf39b7f h1:AQkMzsSzHWrgZWqGRpuRaRPDmyNibcXlpGcnQJ7HxZw=
-gopkg.in/AlecAivazis/survey.v1 v1.8.9-0.20200217094205-6773bdf39b7f/go.mod h1:CaHjv79TCgAvXMSFJSVgonHXYWxnhzI3eoHtnX5UgUo=
gopkg.in/airbrake/gobrake.v2 v2.0.9/go.mod h1:/h5ZAUhDkGaJfjzjKLSjv6zCL6O0LLBxU4K+aSYdM/U=
gopkg.in/alecthomas/kingpin.v2 v2.2.6/go.mod h1:FMv+mEhP44yOT+4EoQTLFTRgOQ1FBLkstjWtayDeSgw=
gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
@@ -3741,9 +3803,12 @@ gopkg.in/cheggaaa/pb.v1 v1.0.25/go.mod h1:V/YB90LKu/1FcN3WVnfiiE5oMCibMjukxqG/qS
gopkg.in/cheggaaa/pb.v1 v1.0.27/go.mod h1:V/YB90LKu/1FcN3WVnfiiE5oMCibMjukxqG/qStrOgw=
gopkg.in/errgo.v2 v2.1.0/go.mod h1:hNsd1EY+bozCKY1Ytp96fpM3vjJbqLJn88ws8XvfDNI=
gopkg.in/fsnotify.v1 v1.4.7/go.mod h1:Tz8NjZHkW78fSQdbUxIjBTcgA1z1m8ZHf0WmKUhAMys=
+gopkg.in/gcfg.v1 v1.2.3/go.mod h1:yesOnuUOFQAhST5vPY4nbZsb/huCgGGXlipJsBn0b3o=
gopkg.in/gemnasium/logrus-airbrake-hook.v2 v2.1.2/go.mod h1:Xk6kEKp8OKb+X14hQBKWaSkCsqBpgog8nAV2xsGOxlo=
+gopkg.in/inconshreveable/log15.v2 v2.0.0-20180818164646-67afb5ed74ec/go.mod h1:aPpfJ7XW+gOuirDoZ8gHhLh3kZ1B08FtV2bbmy7Jv3s=
gopkg.in/inf.v0 v0.9.1/go.mod h1:cWUDdTG/fYaXco+Dcufb5Vnc6Gp2YChqWtbxRZE0mXw=
gopkg.in/ini.v1 v1.51.0/go.mod h1:pNLf8WUiyNEtQjuu5G5vTm06TEv9tsIgeAvK8hOrP4k=
+gopkg.in/ini.v1 v1.66.4/go.mod h1:pNLf8WUiyNEtQjuu5G5vTm06TEv9tsIgeAvK8hOrP4k=
gopkg.in/jcmturner/goidentity.v3 v3.0.0 h1:1duIyWiTaYvVx3YX2CYtpJbUFd7/UuPYCfgXtQ3VTbI=
gopkg.in/jcmturner/goidentity.v3 v3.0.0/go.mod h1:oG2kH0IvSYNIu80dVAyu/yoefjq1mNfM5bm88whjWx4=
gopkg.in/natefinch/lumberjack.v2 v2.0.0/go.mod h1:l0ndWWf7gzL7RNwBG7wST/UCcT4T24xpD6X8LsfU/+k=
@@ -3753,6 +3818,7 @@ gopkg.in/square/go-jose.v2 v2.3.1/go.mod h1:M9dMgbHiYLoDGQrXy7OpJDJWiKiU//h+vD76
gopkg.in/square/go-jose.v2 v2.5.1/go.mod h1:M9dMgbHiYLoDGQrXy7OpJDJWiKiU//h+vD76mk0e1AI=
gopkg.in/square/go-jose.v2 v2.6.0 h1:NGk74WTnPKBNUhNzQX7PYcTLUjoq7mzKk2OKbvwk2iI=
gopkg.in/square/go-jose.v2 v2.6.0/go.mod h1:M9dMgbHiYLoDGQrXy7OpJDJWiKiU//h+vD76mk0e1AI=
+gopkg.in/telebot.v3 v3.0.0/go.mod h1:7rExV8/0mDDNu9epSrDm/8j22KLaActH1Tbee6YjzWg=
gopkg.in/tomb.v1 v1.0.0-20141024135613-dd632973f1e7/go.mod h1:dt/ZhP58zS4L8KSrWDmTeBkI65Dw0HsyUHuEVlX15mw=
gopkg.in/warnings.v0 v0.1.2 h1:wFXVbFY8DY5/xOe1ECiWdKCzZlxgshcYVNkBHstARME=
gopkg.in/warnings.v0 v0.1.2/go.mod h1:jksf8JmL6Qr/oQM2OXTHunEvvTAsrWBLb6OOjuVWRNI=
@@ -3767,6 +3833,7 @@ gopkg.in/yaml.v2 v2.3.0/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI=
gopkg.in/yaml.v2 v2.4.0 h1:D8xgwECY7CYvx+Y2n4sBz93Jn9JRvxdiyyo8CTfuKaY=
gopkg.in/yaml.v2 v2.4.0/go.mod h1:RDklbk79AGWmwhnvt/jBztapEOGDOx6ZbXqjP6csGnQ=
gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM=
+gopkg.in/yaml.v3 v3.0.0-20200605160147-a5ece683394c/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM=
gopkg.in/yaml.v3 v3.0.0-20200615113413-eeeca48fe776/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM=
gopkg.in/yaml.v3 v3.0.0-20210107192922-496545a6307b/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM=
gopkg.in/yaml.v3 v3.0.0/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM=
@@ -3780,6 +3847,7 @@ gotest.tools/v3 v3.3.0/go.mod h1:Mcr9QNxkg0uMvy/YElmo4SpXgJKWgQvYrT7Kw5RzJ1A=
gotest.tools/v3 v3.4.0/go.mod h1:CtbdzLSsqVhDgMtKsx03ird5YTGB3ar27v0u/yKBW5g=
gotest.tools/v3 v3.5.0 h1:Ljk6PdHdOhAb5aDMWXjDLMMhph+BpztA4v1QdqEW2eY=
gotest.tools/v3 v3.5.0/go.mod h1:isy3WKz7GK6uNw/sbHzfKBLvlvXwUyV06n6brMxxopU=
+honnef.co/go/tools v0.0.0-20180728063816-88497007e858/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4=
honnef.co/go/tools v0.0.0-20190102054323-c2f93a96b099/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4=
honnef.co/go/tools v0.0.0-20190106161140-3f1c8253044a/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4=
honnef.co/go/tools v0.0.0-20190418001031-e561f6794a2a/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4=
@@ -3792,12 +3860,16 @@ k8s.io/api v0.20.1/go.mod h1:KqwcCVogGxQY3nBlRpwt+wpAMF/KjaCc7RpywacvqUo=
k8s.io/api v0.20.4/go.mod h1:++lNL1AJMkDymriNniQsWRkMDzRaX2Y/POTUi8yvqYQ=
k8s.io/api v0.20.6/go.mod h1:X9e8Qag6JV/bL5G6bU8sdVRltWKmdHsFUGS3eVndqE8=
k8s.io/api v0.22.5/go.mod h1:mEhXyLaSD1qTOf40rRiKXkc+2iCem09rWLlFwhCEiAs=
+k8s.io/api v0.23.5/go.mod h1:Na4XuKng8PXJ2JsploYYrivXrINeTaycCGcYgF91Xm8=
+k8s.io/api v0.24.2/go.mod h1:AHqbSkTm6YrQ0ObxjO3Pmp/ubFF/KuM7jU+3khoBsOg=
k8s.io/api v0.26.2/go.mod h1:1kjMQsFE+QHPfskEcVNgL3+Hp88B80uj0QtSOlj8itU=
k8s.io/apimachinery v0.20.1/go.mod h1:WlLqWAHZGg07AeltaI0MV5uk1Omp8xaN0JGLY6gkRpU=
k8s.io/apimachinery v0.20.4/go.mod h1:WlLqWAHZGg07AeltaI0MV5uk1Omp8xaN0JGLY6gkRpU=
k8s.io/apimachinery v0.20.6/go.mod h1:ejZXtW1Ra6V1O5H8xPBGz+T3+4gfkTCeExAHKU57MAc=
k8s.io/apimachinery v0.22.1/go.mod h1:O3oNtNadZdeOMxHFVxOreoznohCpy0z6mocxbZr7oJ0=
k8s.io/apimachinery v0.22.5/go.mod h1:xziclGKwuuJ2RM5/rSFQSYAj0zdbci3DH8kj+WvyN0U=
+k8s.io/apimachinery v0.23.5/go.mod h1:BEuFMMBaIbcOqVIJqNZJXGFTP4W6AycEpb5+m/97hrM=
+k8s.io/apimachinery v0.24.2/go.mod h1:82Bi4sCzVBdpYjyI4jY6aHX+YCUchUIrZrXKedjd2UM=
k8s.io/apimachinery v0.25.0/go.mod h1:qMx9eAk0sZQGsXGu86fab8tZdffHbwUfsvzqKn4mfB0=
k8s.io/apimachinery v0.26.2/go.mod h1:ats7nN1LExKHvJ9TmwootT00Yz05MuYqPXEXaVeOy5I=
k8s.io/apiserver v0.20.1/go.mod h1:ro5QHeQkgMS7ZGpvf4tSMx6bBOgPfE+f52KwvXfScaU=
@@ -3809,6 +3881,8 @@ k8s.io/client-go v0.20.1/go.mod h1:/zcHdt1TeWSd5HoUe6elJmHSQ6uLLgp4bIJHVEuy+/Y=
k8s.io/client-go v0.20.4/go.mod h1:LiMv25ND1gLUdBeYxBIwKpkSC5IsozMMmOOeSJboP+k=
k8s.io/client-go v0.20.6/go.mod h1:nNQMnOvEUEsOzRRFIIkdmYOjAZrC8bgq0ExboWSU1I0=
k8s.io/client-go v0.22.5/go.mod h1:cs6yf/61q2T1SdQL5Rdcjg9J1ElXSwbjSrW2vFImM4Y=
+k8s.io/client-go v0.23.5/go.mod h1:flkeinTO1CirYgzMPRWxUCnV0G4Fbu2vLhYCObnt/r4=
+k8s.io/client-go v0.24.2/go.mod h1:zg4Xaoo+umDsfCWr4fCnmLEtQXyCNXCvJuSsglNcV30=
k8s.io/client-go v0.26.2/go.mod h1:u5EjOuSyBa09yqqyY7m3abZeovO/7D/WehVVlZ2qcqU=
k8s.io/code-generator v0.19.7/go.mod h1:lwEq3YnLYb/7uVXLorOJfxg+cUu2oihFhHZ0n9NIla0=
k8s.io/component-base v0.20.1/go.mod h1:guxkoJnNoh8LNrbtiQOlyp2Y2XFCZQmrcg2n/DeYNLk=
@@ -3828,11 +3902,15 @@ k8s.io/gengo v0.0.0-20200413195148-3a45101e95ac/go.mod h1:ezvh/TsK7cY6rbqRK0oQQ8
k8s.io/gengo v0.0.0-20200428234225-8167cfdcfc14/go.mod h1:ezvh/TsK7cY6rbqRK0oQQ8IAqLxYwwyPxAX1Pzy0ii0=
k8s.io/gengo v0.0.0-20201113003025-83324d819ded/go.mod h1:FiNAH4ZV3gBg2Kwh89tzAEV2be7d5xI0vBa/VySYy3E=
k8s.io/gengo v0.0.0-20210813121822-485abfe95c7c/go.mod h1:FiNAH4ZV3gBg2Kwh89tzAEV2be7d5xI0vBa/VySYy3E=
+k8s.io/klog v1.0.0/go.mod h1:4Bi6QPql/J/LkTDqv7R/cd3hPo4k2DG6Ptcz060Ez5I=
k8s.io/klog/v2 v2.0.0/go.mod h1:PBfzABfn139FHAV07az/IF9Wp1bkk3vpT2XSJ76fSDE=
k8s.io/klog/v2 v2.2.0/go.mod h1:Od+F08eJP+W3HUb4pSrPpgp9DGU4GzlpG/TmITuYh/Y=
k8s.io/klog/v2 v2.4.0/go.mod h1:Od+F08eJP+W3HUb4pSrPpgp9DGU4GzlpG/TmITuYh/Y=
k8s.io/klog/v2 v2.9.0/go.mod h1:hy9LJ/NvuK+iVyP4Ehqva4HxZG/oXyIS3n3Jmire4Ec=
k8s.io/klog/v2 v2.30.0/go.mod h1:y1WjHnz7Dj687irZUWR/WLkLc5N1YHtjLdmgWjndZn0=
+k8s.io/klog/v2 v2.40.1/go.mod h1:y1WjHnz7Dj687irZUWR/WLkLc5N1YHtjLdmgWjndZn0=
+k8s.io/klog/v2 v2.60.1/go.mod h1:y1WjHnz7Dj687irZUWR/WLkLc5N1YHtjLdmgWjndZn0=
+k8s.io/klog/v2 v2.70.0/go.mod h1:y1WjHnz7Dj687irZUWR/WLkLc5N1YHtjLdmgWjndZn0=
k8s.io/klog/v2 v2.70.1/go.mod h1:y1WjHnz7Dj687irZUWR/WLkLc5N1YHtjLdmgWjndZn0=
k8s.io/klog/v2 v2.80.1/go.mod h1:y1WjHnz7Dj687irZUWR/WLkLc5N1YHtjLdmgWjndZn0=
k8s.io/klog/v2 v2.90.1/go.mod h1:y1WjHnz7Dj687irZUWR/WLkLc5N1YHtjLdmgWjndZn0=
@@ -3841,6 +3919,8 @@ k8s.io/kube-openapi v0.0.0-20200805222855-6aeccd4b50c6/go.mod h1:UuqjUnNftUyPE5H
k8s.io/kube-openapi v0.0.0-20201113171705-d219536bb9fd/go.mod h1:WOJ3KddDSol4tAGcJo0Tvi+dK12EcqSLqcWsryKMpfM=
k8s.io/kube-openapi v0.0.0-20210421082810-95288971da7e/go.mod h1:vHXdDvt9+2spS2Rx9ql3I8tycm3H9FDfdUoIuKCefvw=
k8s.io/kube-openapi v0.0.0-20211109043538-20434351676c/go.mod h1:vHXdDvt9+2spS2Rx9ql3I8tycm3H9FDfdUoIuKCefvw=
+k8s.io/kube-openapi v0.0.0-20211115234752-e816edb12b65/go.mod h1:sX9MT8g7NVZM5lVL/j8QyCCJe8YSMW30QvGZWaCIDIk=
+k8s.io/kube-openapi v0.0.0-20220328201542-3ee0da9b0b42/go.mod h1:Z/45zLw8lUo4wdiUkI+v/ImEGAvu3WatcZl3lPMR4Rk=
k8s.io/kube-openapi v0.0.0-20220803162953-67bda5d908f1/go.mod h1:C/N6wCaBHeBHkHUesQOQy2/MZqGgMAFPqGsGQLdbZBU=
k8s.io/kube-openapi v0.0.0-20221012153701-172d655c2280/go.mod h1:+Axhij7bCpeqhklhUTe3xmOn6bWxolyZEeyaFpjGtl4=
k8s.io/kubernetes v1.13.0/go.mod h1:ocZa8+6APFNC2tX1DZASIbocyYT5jHzqFVsY5aoB7Jk=
@@ -3848,6 +3928,8 @@ k8s.io/utils v0.0.0-20201110183641-67b214c5f920/go.mod h1:jPW/WVKK9YHAvNhRxK0md/
k8s.io/utils v0.0.0-20210802155522-efc7438f0176/go.mod h1:jPW/WVKK9YHAvNhRxK0md/EJ228hCsBRufyofKtW8HA=
k8s.io/utils v0.0.0-20210819203725-bdf08cb9a70a/go.mod h1:jPW/WVKK9YHAvNhRxK0md/EJ228hCsBRufyofKtW8HA=
k8s.io/utils v0.0.0-20210930125809-cb0fa318a74b/go.mod h1:jPW/WVKK9YHAvNhRxK0md/EJ228hCsBRufyofKtW8HA=
+k8s.io/utils v0.0.0-20211116205334-6203023598ed/go.mod h1:jPW/WVKK9YHAvNhRxK0md/EJ228hCsBRufyofKtW8HA=
+k8s.io/utils v0.0.0-20220210201930-3a6ce19ff2f9/go.mod h1:jPW/WVKK9YHAvNhRxK0md/EJ228hCsBRufyofKtW8HA=
k8s.io/utils v0.0.0-20220728103510-ee6ede2d64ed/go.mod h1:jPW/WVKK9YHAvNhRxK0md/EJ228hCsBRufyofKtW8HA=
k8s.io/utils v0.0.0-20221107191617-1a15be271d1d/go.mod h1:OLgZIPagt7ERELqWJFomSt595RzquPNLL48iOWgYOg0=
k8s.io/utils v0.0.0-20230220204549-a5ecb0141aa5/go.mod h1:OLgZIPagt7ERELqWJFomSt595RzquPNLL48iOWgYOg0=
@@ -3860,17 +3942,12 @@ lukechampine.com/uint128 v1.2.0/go.mod h1:c4eWIwlEGaxC/+H1VguhU4PHXNWDCDMUlWdIWl
modernc.org/cc/v3 v3.36.0/go.mod h1:NFUHyPn4ekoC/JHeZFfZurN6ixxawE1BnVonP/oahEI=
modernc.org/cc/v3 v3.36.2/go.mod h1:NFUHyPn4ekoC/JHeZFfZurN6ixxawE1BnVonP/oahEI=
modernc.org/cc/v3 v3.36.3/go.mod h1:NFUHyPn4ekoC/JHeZFfZurN6ixxawE1BnVonP/oahEI=
-modernc.org/cc/v3 v3.37.0/go.mod h1:vtL+3mdHx/wcj3iEGz84rQa8vEqR6XM84v5Lcvfph20=
-modernc.org/cc/v3 v3.40.0/go.mod h1:/bTg4dnWkSXowUO6ssQKnOV0yMVxDYNIsIrzqTFDGH0=
modernc.org/ccgo/v3 v3.0.0-20220428102840-41399a37e894/go.mod h1:eI31LL8EwEBKPpNpA4bU1/i+sKOwOrQy8D87zWUcRZc=
modernc.org/ccgo/v3 v3.0.0-20220430103911-bc99d88307be/go.mod h1:bwdAnOoaIt8Ax9YdWGjxWsdkPcZyRPHqrOvJxaKAKGw=
-modernc.org/ccgo/v3 v3.0.0-20220904174949-82d86e1b6d56/go.mod h1:YSXjPL62P2AMSxBphRHPn7IkzhVHqkvOnRKAKh+W6ZI=
modernc.org/ccgo/v3 v3.16.4/go.mod h1:tGtX0gE9Jn7hdZFeU88slbTh1UtCYKusWOoCJuvkWsQ=
modernc.org/ccgo/v3 v3.16.6/go.mod h1:tGtX0gE9Jn7hdZFeU88slbTh1UtCYKusWOoCJuvkWsQ=
modernc.org/ccgo/v3 v3.16.8/go.mod h1:zNjwkizS+fIFDrDjIAgBSCLkWbJuHF+ar3QRn+Z9aws=
modernc.org/ccgo/v3 v3.16.9/go.mod h1:zNMzC9A9xeNUepy6KuZBbugn3c0Mc9TeiJO4lgvkJDo=
-modernc.org/ccgo/v3 v3.16.13-0.20221017192402-261537637ce8/go.mod h1:fUB3Vn0nVPReA+7IG7yZDfjv1TMWjhQP8gCxrFAtL5g=
-modernc.org/ccgo/v3 v3.16.13/go.mod h1:2Quk+5YgpImhPjv2Qsob1DnZ/4som1lJTodubIcoUkY=
modernc.org/ccorpus v1.11.6/go.mod h1:2gEUTrWqdpH2pXsmTM1ZkjeSrUWDpjMu2T6m29L/ErQ=
modernc.org/httpfs v1.0.6/go.mod h1:7dosgurJGp0sPaRanU53W4xZYKh14wfzX420oZADeHM=
modernc.org/libc v0.0.0-20220428101251-2d5f3daf273b/go.mod h1:p7Mg4+koNjc8jkqwcoFBJx7tXkpj00G77X7A72jXPXA=
@@ -3880,39 +3957,26 @@ modernc.org/libc v1.16.17/go.mod h1:hYIV5VZczAmGZAnG15Vdngn5HSF5cSkbvfz2B7GRuVU=
modernc.org/libc v1.16.19/go.mod h1:p7Mg4+koNjc8jkqwcoFBJx7tXkpj00G77X7A72jXPXA=
modernc.org/libc v1.17.0/go.mod h1:XsgLldpP4aWlPlsjqKRdHPqCxCjISdHfM/yeWC5GyW0=
modernc.org/libc v1.17.1/go.mod h1:FZ23b+8LjxZs7XtFMbSzL/EhPxNbfZbErxEHc7cbD9s=
-modernc.org/libc v1.17.4/go.mod h1:WNg2ZH56rDEwdropAJeZPQkXmDwh+JCA1s/htl6r2fA=
-modernc.org/libc v1.18.0/go.mod h1:vj6zehR5bfc98ipowQOM2nIDUZnVew/wNC/2tOGS+q0=
-modernc.org/libc v1.20.3/go.mod h1:ZRfIaEkgrYgZDl6pa4W39HgN5G/yDW+NRmNKZBDFrk0=
-modernc.org/libc v1.21.4/go.mod h1:przBsL5RDOZajTVslkugzLBj1evTue36jEomFQOoYuI=
-modernc.org/libc v1.22.2/go.mod h1:uvQavJ1pZ0hIoC/jfqNoMLURIMhKzINIWypNM17puug=
modernc.org/mathutil v1.2.2/go.mod h1:mZW8CKdRPY1v87qxC/wUdX5O1qDzXMP5TH3wjfpga6E=
modernc.org/mathutil v1.4.1/go.mod h1:mZW8CKdRPY1v87qxC/wUdX5O1qDzXMP5TH3wjfpga6E=
modernc.org/mathutil v1.5.0/go.mod h1:mZW8CKdRPY1v87qxC/wUdX5O1qDzXMP5TH3wjfpga6E=
modernc.org/memory v1.1.1/go.mod h1:/0wo5ibyrQiaoUoH7f9D8dnglAmILJ5/cxZlRECf+Nw=
modernc.org/memory v1.2.0/go.mod h1:/0wo5ibyrQiaoUoH7f9D8dnglAmILJ5/cxZlRECf+Nw=
modernc.org/memory v1.2.1/go.mod h1:PkUhL0Mugw21sHPeskwZW4D6VscE/GQJOnIpCnW6pSU=
-modernc.org/memory v1.3.0/go.mod h1:PkUhL0Mugw21sHPeskwZW4D6VscE/GQJOnIpCnW6pSU=
-modernc.org/memory v1.4.0/go.mod h1:PkUhL0Mugw21sHPeskwZW4D6VscE/GQJOnIpCnW6pSU=
-modernc.org/memory v1.5.0/go.mod h1:PkUhL0Mugw21sHPeskwZW4D6VscE/GQJOnIpCnW6pSU=
modernc.org/opt v0.1.1/go.mod h1:WdSiB5evDcignE70guQKxYUl14mgWtbClRi5wmkkTX0=
modernc.org/opt v0.1.3/go.mod h1:WdSiB5evDcignE70guQKxYUl14mgWtbClRi5wmkkTX0=
modernc.org/sqlite v1.18.1/go.mod h1:6ho+Gow7oX5V+OiOQ6Tr4xeqbx13UZ6t+Fw9IRUG4d4=
-modernc.org/sqlite v1.18.2/go.mod h1:kvrTLEWgxUcHa2GfHBQtanR1H9ht3hTJNtKpzH9k1u0=
modernc.org/strutil v1.1.1/go.mod h1:DE+MQQ/hjKBZS2zNInV5hhcipt5rLPWkmpbGeW5mmdw=
modernc.org/strutil v1.1.3/go.mod h1:MEHNA7PdEnEwLvspRMtWTNnp2nnyvMfkimT1NKNAGbw=
modernc.org/tcl v1.13.1/go.mod h1:XOLfOwzhkljL4itZkK6T72ckMgvj0BDsnKNdZVUOecw=
-modernc.org/tcl v1.13.2/go.mod h1:7CLiGIPo1M8Rv1Mitpv5akc2+8fxUd2y2UzC/MfMzy0=
modernc.org/token v1.0.0/go.mod h1:UGzOrNV1mAFSEB63lOFHIpNRUVMvYTc6yu1SMY/XTDM=
-modernc.org/token v1.0.1/go.mod h1:UGzOrNV1mAFSEB63lOFHIpNRUVMvYTc6yu1SMY/XTDM=
-modernc.org/token v1.1.0/go.mod h1:UGzOrNV1mAFSEB63lOFHIpNRUVMvYTc6yu1SMY/XTDM=
modernc.org/z v1.5.1/go.mod h1:eWFB510QWW5Th9YGZT81s+LwvaAs3Q2yr4sP0rmLkv8=
mvdan.cc/gofumpt v0.1.1 h1:bi/1aS/5W00E2ny5q65w9SnKpWEF/UIOqDYBILpo9rA=
mvdan.cc/gofumpt v0.1.1/go.mod h1:yXG1r1WqZVKWbVRtBWKWX9+CxGYfA51nSomhM0woR48=
nhooyr.io/websocket v1.8.6/go.mod h1:B70DZP8IakI65RVQ51MsWP/8jndNma26DVA/nFSCgW0=
-nhooyr.io/websocket v1.8.7/go.mod h1:B70DZP8IakI65RVQ51MsWP/8jndNma26DVA/nFSCgW0=
oras.land/oras-go v1.2.0/go.mod h1:pFNs7oHp2dYsYMSS82HaX5l4mpnGO7hbpPN6EWH2ltc=
-pgregory.net/rapid v0.4.7 h1:MTNRktPuv5FNqOO151TM9mDTa+XHcX6ypYeISDVD14g=
-pgregory.net/rapid v0.4.7/go.mod h1:UYpPVyjFHzYBGHIxLFoupi8vwk6rXNzRY9OMvVxFIOU=
+pgregory.net/rapid v0.6.1 h1:4eyrDxyht86tT4Ztm+kvlyNBLIk071gR+ZQdhphc9dQ=
+pgregory.net/rapid v0.6.1/go.mod h1:PY5XlDGj0+V1FCq0o192FdRhpKHGTRIWBgqjDBTrq04=
rsc.io/binaryregexp v0.2.0/go.mod h1:qTv7/COck+e2FymRvadv62gMdZztPaShugOCi3I+8D8=
rsc.io/pdf v0.1.1/go.mod h1:n8OzWcQ6Sp37PL01nO98y4iUCRdTGarVfzxY20ICaU4=
rsc.io/quote/v3 v3.1.0/go.mod h1:yEA65RcK8LyAZtP9Kv3t0HmxON59tX3rD+tICJqUlj0=
@@ -3921,14 +3985,18 @@ sigs.k8s.io/apiserver-network-proxy/konnectivity-client v0.0.14/go.mod h1:LEScyz
sigs.k8s.io/apiserver-network-proxy/konnectivity-client v0.0.15/go.mod h1:LEScyzhFmoF5pso/YSeBstl57mOzx9xlU9n85RGrDQg=
sigs.k8s.io/apiserver-network-proxy/konnectivity-client v0.0.22/go.mod h1:LEScyzhFmoF5pso/YSeBstl57mOzx9xlU9n85RGrDQg=
sigs.k8s.io/apiserver-network-proxy/konnectivity-client v0.0.35/go.mod h1:WxjusMwXlKzfAs4p9km6XJRndVt2FROgMVCE4cdohFo=
+sigs.k8s.io/json v0.0.0-20211020170558-c049b76a60c6/go.mod h1:p4QtZmO4uMYipTQNzagwnNoseA6OxSUutVw05NhYDRs=
+sigs.k8s.io/json v0.0.0-20211208200746-9f7c6b3444d2/go.mod h1:B+TnT182UBxE84DiCz4CVE26eOSDAeYCpfDnC2kdKMY=
sigs.k8s.io/json v0.0.0-20220713155537-f223a00ba0e2/go.mod h1:B8JuhiUyNFVKdsE8h686QcCxMaH6HrOAZj4vswFpcB0=
sigs.k8s.io/structured-merge-diff/v4 v4.0.1/go.mod h1:bJZC9H9iH24zzfZ/41RGcq60oK1F7G282QMXDPYydCw=
sigs.k8s.io/structured-merge-diff/v4 v4.0.2/go.mod h1:bJZC9H9iH24zzfZ/41RGcq60oK1F7G282QMXDPYydCw=
sigs.k8s.io/structured-merge-diff/v4 v4.0.3/go.mod h1:bJZC9H9iH24zzfZ/41RGcq60oK1F7G282QMXDPYydCw=
sigs.k8s.io/structured-merge-diff/v4 v4.1.2/go.mod h1:j/nl6xW8vLS49O8YvXW1ocPhZawJtm+Yrr7PPRQ0Vg4=
+sigs.k8s.io/structured-merge-diff/v4 v4.2.1/go.mod h1:j/nl6xW8vLS49O8YvXW1ocPhZawJtm+Yrr7PPRQ0Vg4=
sigs.k8s.io/structured-merge-diff/v4 v4.2.3/go.mod h1:qjx8mGObPmV2aSZepjQjbmb2ihdVs8cGKBraizNC69E=
sigs.k8s.io/yaml v1.1.0/go.mod h1:UJmg0vDUVViEyp3mgSv9WPwZCDxu4rQW1olrI1uml+o=
sigs.k8s.io/yaml v1.2.0/go.mod h1:yfXDCHCao9+ENCvLSE62v9VSji2MKu5jeNfTrofGhJc=
sigs.k8s.io/yaml v1.3.0/go.mod h1:GeOyir5tyXNByN85N/dRIT9es5UQNerPYEKK56eTBm8=
+sourcegraph.com/sourcegraph/appdash v0.0.0-20190731080439-ebfcffb1b5c0/go.mod h1:hI742Nqp5OhwiqlzhgfbWU4mW4yO10fP+LoT9WOswdU=
sourcegraph.com/sourcegraph/appdash v0.0.0-20211028080628-e2786a622600 h1:hfyJ5ku9yFtLVOiSxa3IN+dx5eBQT9mPmKFypAmg8XM=
sourcegraph.com/sourcegraph/appdash v0.0.0-20211028080628-e2786a622600/go.mod h1:hI742Nqp5OhwiqlzhgfbWU4mW4yO10fP+LoT9WOswdU=
diff --git a/provider/resources.go b/provider/resources.go
index b260c59ed..276ca5038 100644
--- a/provider/resources.go
+++ b/provider/resources.go
@@ -19,15 +19,15 @@ import (
"path/filepath"
"strings"
"unicode"
+ // embed is used to store bridge-metadata.json in the compiled binary
+ _ "embed"
- "github.com/hashicorp/terraform-provider-vault/generated"
"github.com/hashicorp/terraform-provider-vault/schema"
"github.com/hashicorp/terraform-provider-vault/vault"
"github.com/pulumi/pulumi-terraform-bridge/v3/pkg/tfbridge"
- shim "github.com/pulumi/pulumi-terraform-bridge/v3/pkg/tfshim"
+ tks "github.com/pulumi/pulumi-terraform-bridge/v3/pkg/tfbridge/tokens"
shimv2 "github.com/pulumi/pulumi-terraform-bridge/v3/pkg/tfshim/sdk-v2"
"github.com/pulumi/pulumi-vault/provider/v5/pkg/version"
- "github.com/pulumi/pulumi/sdk/v3/go/common/resource"
"github.com/pulumi/pulumi/sdk/v3/go/common/tokens"
)
@@ -38,9 +38,9 @@ const (
// modules:
mainMod = "index"
- appRoleMod = "AppRole"
adMod = "AD"
aliCloudMod = "AliCloud"
+ appRoleMod = "AppRole"
awsMod = "Aws"
azureMod = "Azure"
consulMod = "Consul"
@@ -59,6 +59,7 @@ const (
oktaMod = "Okta"
pkiSecretMod = "PkiSecret"
rabbitMqMod = "RabbitMQ"
+ samlMod = "Saml"
sshMod = "Ssh"
terraformCloudMod = "TerraformCloud"
tokenMod = "TokenAuth"
@@ -66,6 +67,36 @@ const (
transitMod = "Transit"
)
+var moduleMap = map[string]string{
+ "ad": adMod,
+ "alicloud": aliCloudMod,
+ "approle": appRoleMod,
+ "aws": awsMod,
+ "azure": azureMod,
+ "consul": consulMod,
+ "database": databaseMod,
+ "gcp": gcpMod,
+ "generic": genericMod,
+ "github": githubMod,
+ "identity": identityMod,
+ "jwt": jwtMod,
+ "kmip": kmipMod,
+ "kubernetes": kubernetesMod,
+ "kv": kvMod,
+ "ldap": ldapMod,
+ "managed": managedMod,
+ "mongodbatlas": mongoDBAtlasMod,
+ "okta": oktaMod,
+ "pki_secret": pkiSecretMod,
+ "rabbitmq": rabbitMqMod,
+ "saml": samlMod,
+ "ssh": sshMod,
+ "terraform_cloud": terraformCloudMod,
+ "token": tokenMod,
+ "transform": transformMod,
+ "transit": transitMod,
+}
+
var namespaceMap = map[string]string{
mainPkg: "Vault",
}
@@ -100,39 +131,26 @@ func makeResource(mod string, res string) tokens.Type {
return makeType(mod, res)
}
-func preConfigureCallback(vars resource.PropertyMap, c shim.ResourceConfig) error {
- return nil
-}
+func ref[T any](v T) *T { return &v }
-func stringRef(s string) *string {
- return &s
-}
+//go:embed cmd/pulumi-resource-vault/bridge-metadata.json
+var metadata []byte
// Provider returns additional overlaid schema and metadata associated with the provider.
func Provider() tfbridge.ProviderInfo {
- provider := vault.Provider()
- generatedProvider := schema.NewProvider(provider)
- for name, resource := range generated.DataSourceRegistry {
- generatedProvider.RegisterDataSource(name, resource)
- }
- for name, resource := range generated.ResourceRegistry {
- generatedProvider.RegisterResource(name, resource)
- }
- p := shimv2.NewProvider(generatedProvider.SchemaProvider())
-
- // Temporarily override the secretness of `headers` field.
- // https://github.com/pulumi/pulumi/issues/11278
- overrideSecretFlagForHeaders := false
prov := tfbridge.ProviderInfo{
- P: p,
- Name: "vault",
- DisplayName: "HashiCorp Vault",
- Description: "A Pulumi package for creating and managing HashiCorp Vault cloud resources.",
- Keywords: []string{"pulumi", "vault"},
- License: "Apache-2.0",
- Homepage: "https://pulumi.io",
- GitHubOrg: "hashicorp",
- Repository: "https://github.com/pulumi/pulumi-vault",
+ P: shimv2.NewProvider(schema.NewProvider(vault.Provider()).SchemaProvider()),
+ Name: "vault",
+ DisplayName: "HashiCorp Vault",
+ Description: "A Pulumi package for creating and managing HashiCorp Vault cloud resources.",
+ Keywords: []string{"pulumi", "vault"},
+ License: "Apache-2.0",
+ Homepage: "https://pulumi.io",
+ GitHubOrg: "hashicorp",
+ Repository: "https://github.com/pulumi/pulumi-vault",
+ Version: version.Version,
+ MetadataInfo: tfbridge.NewProviderMetadata(metadata),
+
Config: map[string]*tfbridge.SchemaInfo{
"skip_tls_verify": {
Default: &tfbridge.DefaultInfo{
@@ -157,11 +175,7 @@ func Provider() tfbridge.ProviderInfo {
Value: 2,
},
},
- "headers": {
- Secret: &overrideSecretFlagForHeaders,
- },
},
- PreConfigureCallback: preConfigureCallback,
Resources: map[string]*tfbridge.ResourceInfo{
// Main
"vault_audit": {Tok: makeResource(mainMod, "Audit")},
@@ -213,37 +227,14 @@ func Provider() tfbridge.ProviderInfo {
"vault_approle_auth_backend_role_secret_id": {
Tok: makeResource(appRoleMod, "AuthBackendRoleSecretId"),
Aliases: []tfbridge.AliasInfo{
- {Type: stringRef(makeResource(appRoleMod, "AuthBackendRoleSecretID").String())},
+ {Type: ref(makeResource(appRoleMod, "AuthBackendRoleSecretID").String())},
},
},
- // AliCloud
- "vault_alicloud_auth_backend_role": {Tok: makeResource(aliCloudMod, "AuthBackendRole")},
-
- // AWS
- "vault_aws_auth_backend_cert": {Tok: makeResource(awsMod, "AuthBackendCert")},
- "vault_aws_auth_backend_client": {Tok: makeResource(awsMod, "AuthBackendClient")},
- "vault_aws_auth_backend_config_identity": {Tok: makeResource(awsMod, "AuthBackendConfigIdentity")},
- "vault_aws_auth_backend_identity_whitelist": {Tok: makeResource(awsMod, "AuthBackendIdentityWhitelist")},
- "vault_aws_auth_backend_login": {Tok: makeResource(awsMod, "AuthBackendLogin")},
- "vault_aws_auth_backend_role": {Tok: makeResource(awsMod, "AuthBackendRole")},
- "vault_aws_auth_backend_role_tag": {Tok: makeResource(awsMod, "AuthBackendRoleTag")},
- "vault_aws_auth_backend_roletag_blacklist": {Tok: makeResource(awsMod, "AuthBackendRoletagBlacklist")},
- "vault_aws_auth_backend_sts_role": {Tok: makeResource(awsMod, "AuthBackendStsRole")},
- "vault_aws_secret_backend": {Tok: makeResource(awsMod, "SecretBackend")},
- "vault_aws_secret_backend_role": {Tok: makeResource(awsMod, "SecretBackendRole")},
- "vault_aws_secret_backend_static_role": {Tok: makeResource(awsMod, "SecretBackendStaticRole")},
-
// Azure
- "vault_azure_auth_backend_config": {Tok: makeResource(azureMod, "AuthBackendConfig")},
- "vault_azure_auth_backend_role": {Tok: makeResource(azureMod, "AuthBackendRole")},
"vault_azure_secret_backend": {Tok: makeResource(azureMod, "Backend")},
"vault_azure_secret_backend_role": {Tok: makeResource(azureMod, "BackendRole")},
- // Consul
- "vault_consul_secret_backend": {Tok: makeResource(consulMod, "SecretBackend")},
- "vault_consul_secret_backend_role": {Tok: makeResource(consulMod, "SecretBackendRole")},
-
// Database
"vault_database_secret_backend_connection": {
Tok: makeResource(databaseMod, "SecretBackendConnection"),
@@ -296,6 +287,10 @@ func Provider() tfbridge.ProviderInfo {
},
},
+ // SAML
+ "vault_saml_auth_backend": {Tok: makeResource(samlMod, "AuthBackend")},
+ "vault_saml_auth_backend_role": {Tok: makeResource(samlMod, "AuthBackendRole")},
+
// Identity
"vault_identity_entity": {Tok: makeResource(identityMod, "Entity")},
"vault_identity_entity_alias": {Tok: makeResource(identityMod, "EntityAlias")},
@@ -421,22 +416,6 @@ func Provider() tfbridge.ProviderInfo {
"vault_pki_secret_backend_sign": {Tok: makeResource(pkiSecretMod, "SecretBackendSign")},
"vault_pki_secret_backend_crl_config": {Tok: makeResource(pkiSecretMod, "SecretBackendCrlConfig")},
- // Token
- "vault_token_auth_backend_role": {Tok: makeResource(tokenMod, "AuthBackendRole")},
-
- // SSH
- "vault_ssh_secret_backend_ca": {Tok: makeResource(sshMod, "SecretBackendCa")},
- "vault_ssh_secret_backend_role": {Tok: makeResource(sshMod, "SecretBackendRole")},
-
- // RabbitMQ
- "vault_rabbitmq_secret_backend": {Tok: makeResource(rabbitMqMod, "SecretBackend")},
- "vault_rabbitmq_secret_backend_role": {Tok: makeResource(rabbitMqMod, "SecretBackendRole")},
-
- // Terraform Cloud
- "vault_terraform_cloud_secret_backend": {Tok: makeResource(terraformCloudMod, "SecretBackend")},
- "vault_terraform_cloud_secret_creds": {Tok: makeResource(terraformCloudMod, "SecretCreds")},
- "vault_terraform_cloud_secret_role": {Tok: makeResource(terraformCloudMod, "SecretRole")},
-
// Transform
"vault_transform_alphabet": {
Tok: makeResource(transformMod, "Alphabet"),
@@ -446,14 +425,9 @@ func Provider() tfbridge.ProviderInfo {
},
},
},
- "vault_transform_role": {Tok: makeResource(transformMod, "Role")},
- "vault_transform_template": {Tok: makeResource(transformMod, "Template")},
- "vault_transform_transformation": {Tok: makeResource(transformMod, "Transformation")},
// Transit
- "vault_transit_secret_backend_key": {Tok: makeResource(transitMod, "SecretBackendKey")},
"vault_transit_secret_cache_config": {
- Tok: makeResource(transitMod, "SecretCacheConfig"),
Docs: &tfbridge.DocInfo{
Source: "transit_secret_backend_cache_config.html.md",
},
@@ -473,77 +447,34 @@ func Provider() tfbridge.ProviderInfo {
Source: "auth_backend.html.md",
},
},
- "vault_nomad_access_token": {Tok: makeDataSource(mainMod, "getNomadAccessToken")},
-
- // AD
- "vault_ad_access_credentials": {Tok: makeDataSource(adMod, "getAccessCredentials")},
+ "vault_nomad_access_token": {Tok: makeDataSource(mainMod, "getNomadAccessToken")},
+ "vault_auth_backends": {Tok: makeDataSource(mainMod, "getAuthBackends")},
+ "vault_raft_autopilot_state": {Tok: makeDataSource(mainMod, "getRaftAutopilotState")},
// AppRole
"vault_approle_auth_backend_role_id": {
- Tok: makeDataSource(appRoleMod, "getAuthBackendRoleId"),
- Docs: &tfbridge.DocInfo{
- Source: "approle_auth_backend_role_id.md",
- },
+ Docs: &tfbridge.DocInfo{Source: "approle_auth_backend_role_id.md"},
},
- // AWS
- "vault_aws_access_credentials": {Tok: makeDataSource(awsMod, "getAccessCredentials")},
-
- // Azure
- "vault_azure_access_credentials": {Tok: makeDataSource(azureMod, "getAccessCredentials")},
-
- // Generic
- "vault_generic_secret": {Tok: makeDataSource(genericMod, "getSecret")},
-
- // GCP
- "vault_gcp_auth_backend_role": {Tok: makeDataSource(gcpMod, "getAuthBackendRole")},
-
- // Identity
- "vault_identity_group": {Tok: makeDataSource(identityMod, "getGroup")},
- "vault_identity_entity": {Tok: makeDataSource(identityMod, "getEntity")},
- "vault_identity_oidc_client_creds": {Tok: makeDataSource(identityMod, "getOidcClientCreds")},
- "vault_identity_oidc_openid_config": {Tok: makeDataSource(identityMod, "getOidcOpenidConfig")},
- "vault_identity_oidc_public_keys": {Tok: makeDataSource(identityMod, "getOidcPublicKeys")},
-
// Kubernetes
"vault_kubernetes_auth_backend_config": {
- Tok: makeDataSource(kubernetesMod, "getAuthBackendConfig"),
Docs: &tfbridge.DocInfo{
Source: "kubernetes_auth_backend_config.md",
},
},
"vault_kubernetes_auth_backend_role": {
- Tok: makeDataSource(kubernetesMod, "getAuthBackendRole"),
Docs: &tfbridge.DocInfo{
Source: "kubernetes_auth_backend_role.md",
},
},
"vault_kubernetes_service_account_token": {
- Tok: makeDataSource(kubernetesMod, "getServiceAccountToken"),
- Docs: &tfbridge.DocInfo{
- Source: "kubernetes_credentials.html.md",
- },
+ Docs: &tfbridge.DocInfo{Source: "kubernetes_credentials.html.md"},
},
// KV
- "vault_kv_secret": {Tok: makeDataSource(kvMod, "getSecret")},
"vault_kv_secret_subkeys_v2": {
- Tok: makeDataSource(kvMod, "getSecretSubkeysV2"),
- Docs: &tfbridge.DocInfo{
- Source: "kv_subkeys_v2.html.md",
- },
+ Docs: &tfbridge.DocInfo{Source: "kv_subkeys_v2.html.md"},
},
- "vault_kv_secret_v2": {Tok: makeDataSource(kvMod, "getSecretV2")},
- "vault_kv_secrets_list": {Tok: makeDataSource(kvMod, "getSecretsList")},
- "vault_kv_secrets_list_v2": {Tok: makeDataSource(kvMod, "getSecretsListV2")},
-
- // Transform
- "vault_transform_encode": {Tok: makeDataSource(transformMod, "getEncode")},
- "vault_transform_decode": {Tok: makeDataSource(transformMod, "getDecode")},
-
- // Transit
- "vault_transit_decrypt": {Tok: makeDataSource(transitMod, "getDecrypt")},
- "vault_transit_encrypt": {Tok: makeDataSource(transitMod, "getEncrypt")},
},
JavaScript: &tfbridge.JavaScriptInfo{
Dependencies: map[string]string{
@@ -576,7 +507,13 @@ func Provider() tfbridge.ProviderInfo {
},
}
+ prov.MustComputeTokens(tks.MappedModules("vault_", "", moduleMap,
+ func(module, name string) (string, error) {
+ return string(makeResource(module, name)), nil
+ }))
prov.SetAutonaming(255, "-")
+ prov.MustApplyAutoAliases()
+
return prov
}
diff --git a/sdk/dotnet/AD/SecretBackend.cs b/sdk/dotnet/AD/SecretBackend.cs
index bafed9466..43f77517d 100644
--- a/sdk/dotnet/AD/SecretBackend.cs
+++ b/sdk/dotnet/AD/SecretBackend.cs
@@ -14,6 +14,7 @@ namespace Pulumi.Vault.AD
///
/// ```csharp
/// using System.Collections.Generic;
+ /// using System.Linq;
/// using Pulumi;
/// using Vault = Pulumi.Vault;
///
diff --git a/sdk/dotnet/AD/SecretLibrary.cs b/sdk/dotnet/AD/SecretLibrary.cs
index 41402b8d5..3f5d12554 100644
--- a/sdk/dotnet/AD/SecretLibrary.cs
+++ b/sdk/dotnet/AD/SecretLibrary.cs
@@ -14,6 +14,7 @@ namespace Pulumi.Vault.AD
///
/// ```csharp
/// using System.Collections.Generic;
+ /// using System.Linq;
/// using Pulumi;
/// using Vault = Pulumi.Vault;
///
diff --git a/sdk/dotnet/AD/SecretRole.cs b/sdk/dotnet/AD/SecretRole.cs
index fdbb68550..fd74c998c 100644
--- a/sdk/dotnet/AD/SecretRole.cs
+++ b/sdk/dotnet/AD/SecretRole.cs
@@ -14,6 +14,7 @@ namespace Pulumi.Vault.AD
///
/// ```csharp
/// using System.Collections.Generic;
+ /// using System.Linq;
/// using Pulumi;
/// using Vault = Pulumi.Vault;
///
diff --git a/sdk/dotnet/AliCloud/AuthBackendRole.cs b/sdk/dotnet/AliCloud/AuthBackendRole.cs
index df7240ab4..1e5ffc846 100644
--- a/sdk/dotnet/AliCloud/AuthBackendRole.cs
+++ b/sdk/dotnet/AliCloud/AuthBackendRole.cs
@@ -16,6 +16,7 @@ namespace Pulumi.Vault.AliCloud
///
/// ```csharp
/// using System.Collections.Generic;
+ /// using System.Linq;
/// using Pulumi;
/// using Vault = Pulumi.Vault;
///
@@ -57,6 +58,8 @@ public partial class AuthBackendRole : global::Pulumi.CustomResource
///
/// Path to the mounted AliCloud auth backend.
/// Defaults to `alicloud`
+ ///
+ /// For more details on the usage of each argument consult the [Vault AliCloud API documentation](https://www.vaultproject.io/api-docs/auth/alicloud).
///
[Output("backend")]
public Output Backend { get; private set; } = null!;
@@ -203,6 +206,8 @@ public sealed class AuthBackendRoleArgs : global::Pulumi.ResourceArgs
///
/// Path to the mounted AliCloud auth backend.
/// Defaults to `alicloud`
+ ///
+ /// For more details on the usage of each argument consult the [Vault AliCloud API documentation](https://www.vaultproject.io/api-docs/auth/alicloud).
///
[Input("backend")]
public Input? Backend { get; set; }
@@ -323,6 +328,8 @@ public sealed class AuthBackendRoleState : global::Pulumi.ResourceArgs
///
/// Path to the mounted AliCloud auth backend.
/// Defaults to `alicloud`
+ ///
+ /// For more details on the usage of each argument consult the [Vault AliCloud API documentation](https://www.vaultproject.io/api-docs/auth/alicloud).
///
[Input("backend")]
public Input? Backend { get; set; }
diff --git a/sdk/dotnet/AppRole/AuthBackendLogin.cs b/sdk/dotnet/AppRole/AuthBackendLogin.cs
index 9e740a970..d4bae8529 100644
--- a/sdk/dotnet/AppRole/AuthBackendLogin.cs
+++ b/sdk/dotnet/AppRole/AuthBackendLogin.cs
@@ -18,6 +18,7 @@ namespace Pulumi.Vault.AppRole
///
/// ```csharp
/// using System.Collections.Generic;
+ /// using System.Linq;
/// using Pulumi;
/// using Vault = Pulumi.Vault;
///
diff --git a/sdk/dotnet/AppRole/AuthBackendRole.cs b/sdk/dotnet/AppRole/AuthBackendRole.cs
index dddc6f0fc..9c5efa229 100644
--- a/sdk/dotnet/AppRole/AuthBackendRole.cs
+++ b/sdk/dotnet/AppRole/AuthBackendRole.cs
@@ -18,6 +18,7 @@ namespace Pulumi.Vault.AppRole
///
/// ```csharp
/// using System.Collections.Generic;
+ /// using System.Linq;
/// using Pulumi;
/// using Vault = Pulumi.Vault;
///
diff --git a/sdk/dotnet/AppRole/AuthBackendRoleSecretId.cs b/sdk/dotnet/AppRole/AuthBackendRoleSecretId.cs
index d7ce1bc0c..398fd1c57 100644
--- a/sdk/dotnet/AppRole/AuthBackendRoleSecretId.cs
+++ b/sdk/dotnet/AppRole/AuthBackendRoleSecretId.cs
@@ -18,6 +18,7 @@ namespace Pulumi.Vault.AppRole
///
/// ```csharp
/// using System.Collections.Generic;
+ /// using System.Linq;
/// using System.Text.Json;
/// using Pulumi;
/// using Vault = Pulumi.Vault;
diff --git a/sdk/dotnet/AppRole/GetAuthBackendRoleId.cs b/sdk/dotnet/AppRole/GetAuthBackendRoleId.cs
index dc525e233..fd1926e2f 100644
--- a/sdk/dotnet/AppRole/GetAuthBackendRoleId.cs
+++ b/sdk/dotnet/AppRole/GetAuthBackendRoleId.cs
@@ -20,6 +20,7 @@ public static class GetAuthBackendRoleId
///
/// ```csharp
/// using System.Collections.Generic;
+ /// using System.Linq;
/// using Pulumi;
/// using Vault = Pulumi.Vault;
///
@@ -52,6 +53,7 @@ public static Task InvokeAsync(GetAuthBackendRoleIdA
///
/// ```csharp
/// using System.Collections.Generic;
+ /// using System.Linq;
/// using Pulumi;
/// using Vault = Pulumi.Vault;
///
diff --git a/sdk/dotnet/Audit.cs b/sdk/dotnet/Audit.cs
index a3f5fa96e..308c1ffdc 100644
--- a/sdk/dotnet/Audit.cs
+++ b/sdk/dotnet/Audit.cs
@@ -15,6 +15,7 @@ namespace Pulumi.Vault
///
/// ```csharp
/// using System.Collections.Generic;
+ /// using System.Linq;
/// using Pulumi;
/// using Vault = Pulumi.Vault;
///
@@ -35,6 +36,7 @@ namespace Pulumi.Vault
///
/// ```csharp
/// using System.Collections.Generic;
+ /// using System.Linq;
/// using Pulumi;
/// using Vault = Pulumi.Vault;
///
@@ -90,6 +92,8 @@ public partial class Audit : global::Pulumi.CustomResource
///
/// Configuration options to pass to the audit device itself.
+ ///
+ /// For a reference of the device types and their options, consult the [Vault documentation.](https://www.vaultproject.io/docs/audit/index.html)
///
[Output("options")]
public Output> Options { get; private set; } = null!;
@@ -178,6 +182,8 @@ public sealed class AuditArgs : global::Pulumi.ResourceArgs
///
/// Configuration options to pass to the audit device itself.
+ ///
+ /// For a reference of the device types and their options, consult the [Vault documentation.](https://www.vaultproject.io/docs/audit/index.html)
///
public InputMap Options
{
@@ -231,6 +237,8 @@ public sealed class AuditState : global::Pulumi.ResourceArgs
///
/// Configuration options to pass to the audit device itself.
+ ///
+ /// For a reference of the device types and their options, consult the [Vault documentation.](https://www.vaultproject.io/docs/audit/index.html)
///
public InputMap Options
{
diff --git a/sdk/dotnet/AuditRequestHeader.cs b/sdk/dotnet/AuditRequestHeader.cs
index 88917b348..03784bdac 100644
--- a/sdk/dotnet/AuditRequestHeader.cs
+++ b/sdk/dotnet/AuditRequestHeader.cs
@@ -21,6 +21,7 @@ namespace Pulumi.Vault
///
/// ```csharp
/// using System.Collections.Generic;
+ /// using System.Linq;
/// using Pulumi;
/// using Vault = Pulumi.Vault;
///
diff --git a/sdk/dotnet/AuthBackend.cs b/sdk/dotnet/AuthBackend.cs
index 202c8814a..441f7fd01 100644
--- a/sdk/dotnet/AuthBackend.cs
+++ b/sdk/dotnet/AuthBackend.cs
@@ -63,6 +63,8 @@ public partial class AuthBackend : global::Pulumi.CustomResource
///
/// Extra configuration block. Structure is documented below.
+ ///
+ /// The `tune` block is used to tune the auth backend:
///
[Output("tune")]
public Output Tune { get; private set; } = null!;
@@ -155,6 +157,8 @@ public sealed class AuthBackendArgs : global::Pulumi.ResourceArgs
///
/// Extra configuration block. Structure is documented below.
+ ///
+ /// The `tune` block is used to tune the auth backend:
///
[Input("tune")]
public Input? Tune { get; set; }
@@ -215,6 +219,8 @@ public sealed class AuthBackendState : global::Pulumi.ResourceArgs
///
/// Extra configuration block. Structure is documented below.
+ ///
+ /// The `tune` block is used to tune the auth backend:
///
[Input("tune")]
public Input? Tune { get; set; }
diff --git a/sdk/dotnet/Aws/AuthBackendClient.cs b/sdk/dotnet/Aws/AuthBackendClient.cs
index 86125c3b2..9d51b69f8 100644
--- a/sdk/dotnet/Aws/AuthBackendClient.cs
+++ b/sdk/dotnet/Aws/AuthBackendClient.cs
@@ -14,6 +14,7 @@ namespace Pulumi.Vault.Aws
///
/// ```csharp
/// using System.Collections.Generic;
+ /// using System.Linq;
/// using Pulumi;
/// using Vault = Pulumi.Vault;
///
diff --git a/sdk/dotnet/Aws/AuthBackendConfigIdentity.cs b/sdk/dotnet/Aws/AuthBackendConfigIdentity.cs
index d18286dc1..308a6d183 100644
--- a/sdk/dotnet/Aws/AuthBackendConfigIdentity.cs
+++ b/sdk/dotnet/Aws/AuthBackendConfigIdentity.cs
@@ -18,6 +18,7 @@ namespace Pulumi.Vault.Aws
///
/// ```csharp
/// using System.Collections.Generic;
+ /// using System.Linq;
/// using Pulumi;
/// using Vault = Pulumi.Vault;
///
diff --git a/sdk/dotnet/Aws/AuthBackendIdentityWhitelist.cs b/sdk/dotnet/Aws/AuthBackendIdentityWhitelist.cs
index 0248f8c91..71ff1cf0c 100644
--- a/sdk/dotnet/Aws/AuthBackendIdentityWhitelist.cs
+++ b/sdk/dotnet/Aws/AuthBackendIdentityWhitelist.cs
@@ -19,6 +19,7 @@ namespace Pulumi.Vault.Aws
///
/// ```csharp
/// using System.Collections.Generic;
+ /// using System.Linq;
/// using Pulumi;
/// using Vault = Pulumi.Vault;
///
diff --git a/sdk/dotnet/Aws/AuthBackendRole.cs b/sdk/dotnet/Aws/AuthBackendRole.cs
index de85675c2..a49b699bf 100644
--- a/sdk/dotnet/Aws/AuthBackendRole.cs
+++ b/sdk/dotnet/Aws/AuthBackendRole.cs
@@ -20,6 +20,7 @@ namespace Pulumi.Vault.Aws
///
/// ```csharp
/// using System.Collections.Generic;
+ /// using System.Linq;
/// using Pulumi;
/// using Vault = Pulumi.Vault;
///
diff --git a/sdk/dotnet/Aws/AuthBackendRoletagBlacklist.cs b/sdk/dotnet/Aws/AuthBackendRoletagBlacklist.cs
index 6a1254ecc..637486bbf 100644
--- a/sdk/dotnet/Aws/AuthBackendRoletagBlacklist.cs
+++ b/sdk/dotnet/Aws/AuthBackendRoletagBlacklist.cs
@@ -16,6 +16,7 @@ namespace Pulumi.Vault.Aws
///
/// ```csharp
/// using System.Collections.Generic;
+ /// using System.Linq;
/// using Pulumi;
/// using Vault = Pulumi.Vault;
///
diff --git a/sdk/dotnet/Aws/AuthBackendStsRole.cs b/sdk/dotnet/Aws/AuthBackendStsRole.cs
index 17155e610..8d56d5799 100644
--- a/sdk/dotnet/Aws/AuthBackendStsRole.cs
+++ b/sdk/dotnet/Aws/AuthBackendStsRole.cs
@@ -14,6 +14,7 @@ namespace Pulumi.Vault.Aws
///
/// ```csharp
/// using System.Collections.Generic;
+ /// using System.Linq;
/// using Pulumi;
/// using Vault = Pulumi.Vault;
///
diff --git a/sdk/dotnet/Aws/GetStaticAccessCredentials.cs b/sdk/dotnet/Aws/GetStaticAccessCredentials.cs
new file mode 100644
index 000000000..c63973d96
--- /dev/null
+++ b/sdk/dotnet/Aws/GetStaticAccessCredentials.cs
@@ -0,0 +1,92 @@
+// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
+// *** Do not edit by hand unless you're certain you know what you are doing! ***
+
+using System;
+using System.Collections.Generic;
+using System.Collections.Immutable;
+using System.Threading.Tasks;
+using Pulumi.Serialization;
+
+namespace Pulumi.Vault.Aws
+{
+ public static class GetStaticAccessCredentials
+ {
+ public static Task InvokeAsync(GetStaticAccessCredentialsArgs args, InvokeOptions? options = null)
+ => global::Pulumi.Deployment.Instance.InvokeAsync("vault:aws/getStaticAccessCredentials:getStaticAccessCredentials", args ?? new GetStaticAccessCredentialsArgs(), options.WithDefaults());
+
+ public static Output Invoke(GetStaticAccessCredentialsInvokeArgs args, InvokeOptions? options = null)
+ => global::Pulumi.Deployment.Instance.Invoke("vault:aws/getStaticAccessCredentials:getStaticAccessCredentials", args ?? new GetStaticAccessCredentialsInvokeArgs(), options.WithDefaults());
+ }
+
+
+ public sealed class GetStaticAccessCredentialsArgs : global::Pulumi.InvokeArgs
+ {
+ [Input("backend", required: true)]
+ public string Backend { get; set; } = null!;
+
+ [Input("name", required: true)]
+ public string Name { get; set; } = null!;
+
+ [Input("namespace")]
+ public string? Namespace { get; set; }
+
+ public GetStaticAccessCredentialsArgs()
+ {
+ }
+ public static new GetStaticAccessCredentialsArgs Empty => new GetStaticAccessCredentialsArgs();
+ }
+
+ public sealed class GetStaticAccessCredentialsInvokeArgs : global::Pulumi.InvokeArgs
+ {
+ [Input("backend", required: true)]
+ public Input Backend { get; set; } = null!;
+
+ [Input("name", required: true)]
+ public Input Name { get; set; } = null!;
+
+ [Input("namespace")]
+ public Input? Namespace { get; set; }
+
+ public GetStaticAccessCredentialsInvokeArgs()
+ {
+ }
+ public static new GetStaticAccessCredentialsInvokeArgs Empty => new GetStaticAccessCredentialsInvokeArgs();
+ }
+
+
+ [OutputType]
+ public sealed class GetStaticAccessCredentialsResult
+ {
+ public readonly string AccessKey;
+ public readonly string Backend;
+ ///
+ /// The provider-assigned unique ID for this managed resource.
+ ///
+ public readonly string Id;
+ public readonly string Name;
+ public readonly string? Namespace;
+ public readonly string SecretKey;
+
+ [OutputConstructor]
+ private GetStaticAccessCredentialsResult(
+ string accessKey,
+
+ string backend,
+
+ string id,
+
+ string name,
+
+ string? @namespace,
+
+ string secretKey)
+ {
+ AccessKey = accessKey;
+ Backend = backend;
+ Id = id;
+ Name = name;
+ Namespace = @namespace;
+ SecretKey = secretKey;
+ }
+ }
+}
diff --git a/sdk/dotnet/Aws/SecretBackend.cs b/sdk/dotnet/Aws/SecretBackend.cs
index 588aecb1e..d6a1f7478 100644
--- a/sdk/dotnet/Aws/SecretBackend.cs
+++ b/sdk/dotnet/Aws/SecretBackend.cs
@@ -84,14 +84,13 @@ public partial class SecretBackend : global::Pulumi.CustomResource
public Output Path { get; private set; } = null!;
///
- /// The AWS region for API calls. Defaults to `us-east-1`.
+ /// The AWS region to make API calls against. Defaults to us-east-1.
///
[Output("region")]
public Output Region { get; private set; } = null!;
///
- /// The AWS Secret Key this backend should use to
- /// issue new credentials. Vault uses the official AWS SDK to authenticate, and thus can also use standard AWS environment credentials, shared file credentials or IAM role/ECS task credentials.
+ /// The AWS Secret Access Key to use when generating new credentials.
///
[Output("secretKey")]
public Output SecretKey { get; private set; } = null!;
@@ -232,7 +231,7 @@ public Input? AccessKey
public Input? Path { get; set; }
///
- /// The AWS region for API calls. Defaults to `us-east-1`.
+ /// The AWS region to make API calls against. Defaults to us-east-1.
///
[Input("region")]
public Input? Region { get; set; }
@@ -241,8 +240,7 @@ public Input? AccessKey
private Input? _secretKey;
///
- /// The AWS Secret Key this backend should use to
- /// issue new credentials. Vault uses the official AWS SDK to authenticate, and thus can also use standard AWS environment credentials, shared file credentials or IAM role/ECS task credentials.
+ /// The AWS Secret Access Key to use when generating new credentials.
///
public Input? SecretKey
{
@@ -347,7 +345,7 @@ public Input? AccessKey
public Input? Path { get; set; }
///
- /// The AWS region for API calls. Defaults to `us-east-1`.
+ /// The AWS region to make API calls against. Defaults to us-east-1.
///
[Input("region")]
public Input? Region { get; set; }
@@ -356,8 +354,7 @@ public Input? AccessKey
private Input? _secretKey;
///
- /// The AWS Secret Key this backend should use to
- /// issue new credentials. Vault uses the official AWS SDK to authenticate, and thus can also use standard AWS environment credentials, shared file credentials or IAM role/ECS task credentials.
+ /// The AWS Secret Access Key to use when generating new credentials.
///
public Input? SecretKey
{
diff --git a/sdk/dotnet/Aws/SecretBackendRole.cs b/sdk/dotnet/Aws/SecretBackendRole.cs
index 0f71d6b84..523b79d86 100644
--- a/sdk/dotnet/Aws/SecretBackendRole.cs
+++ b/sdk/dotnet/Aws/SecretBackendRole.cs
@@ -14,6 +14,7 @@ namespace Pulumi.Vault.Aws
///
/// ```csharp
/// using System.Collections.Generic;
+ /// using System.Linq;
/// using Pulumi;
/// using Vault = Pulumi.Vault;
///
diff --git a/sdk/dotnet/Aws/SecretBackendStaticRole.cs b/sdk/dotnet/Aws/SecretBackendStaticRole.cs
index f00fcee1e..b335f9e2a 100644
--- a/sdk/dotnet/Aws/SecretBackendStaticRole.cs
+++ b/sdk/dotnet/Aws/SecretBackendStaticRole.cs
@@ -14,6 +14,7 @@ namespace Pulumi.Vault.Aws
///
/// ```csharp
/// using System.Collections.Generic;
+ /// using System.Linq;
/// using Pulumi;
/// using Vault = Pulumi.Vault;
///
diff --git a/sdk/dotnet/Azure/AuthBackendConfig.cs b/sdk/dotnet/Azure/AuthBackendConfig.cs
index 040039451..b502b8e9b 100644
--- a/sdk/dotnet/Azure/AuthBackendConfig.cs
+++ b/sdk/dotnet/Azure/AuthBackendConfig.cs
@@ -14,6 +14,7 @@ namespace Pulumi.Vault.Azure
///
/// ```csharp
/// using System.Collections.Generic;
+ /// using System.Linq;
/// using Pulumi;
/// using Vault = Pulumi.Vault;
///
diff --git a/sdk/dotnet/Azure/AuthBackendRole.cs b/sdk/dotnet/Azure/AuthBackendRole.cs
index 1d9ec1c31..14a6c15a4 100644
--- a/sdk/dotnet/Azure/AuthBackendRole.cs
+++ b/sdk/dotnet/Azure/AuthBackendRole.cs
@@ -20,6 +20,7 @@ namespace Pulumi.Vault.Azure
///
/// ```csharp
/// using System.Collections.Generic;
+ /// using System.Linq;
/// using Pulumi;
/// using Vault = Pulumi.Vault;
///
diff --git a/sdk/dotnet/Azure/Backend.cs b/sdk/dotnet/Azure/Backend.cs
index 874f4c8df..151dc956d 100644
--- a/sdk/dotnet/Azure/Backend.cs
+++ b/sdk/dotnet/Azure/Backend.cs
@@ -15,6 +15,7 @@ namespace Pulumi.Vault.Azure
///
/// ```csharp
/// using System.Collections.Generic;
+ /// using System.Linq;
/// using Pulumi;
/// using Vault = Pulumi.Vault;
///
@@ -36,6 +37,7 @@ namespace Pulumi.Vault.Azure
///
/// ```csharp
/// using System.Collections.Generic;
+ /// using System.Linq;
/// using Pulumi;
/// using Vault = Pulumi.Vault;
///
@@ -58,13 +60,13 @@ namespace Pulumi.Vault.Azure
public partial class Backend : global::Pulumi.CustomResource
{
///
- /// - The OAuth2 client id to connect to Azure.
+ /// The OAuth2 client id to connect to Azure.
///
[Output("clientId")]
public Output ClientId { get; private set; } = null!;
///
- /// - The OAuth2 client secret to connect to Azure.
+ /// The OAuth2 client secret to connect to Azure.
///
[Output("clientSecret")]
public Output ClientSecret { get; private set; } = null!;
@@ -83,7 +85,7 @@ public partial class Backend : global::Pulumi.CustomResource
public Output DisableRemount { get; private set; } = null!;
///
- /// - The Azure environment.
+ /// The Azure environment.
///
[Output("environment")]
public Output Environment { get; private set; } = null!;
@@ -98,25 +100,25 @@ public partial class Backend : global::Pulumi.CustomResource
public Output Namespace { get; private set; } = null!;
///
- /// - The unique path this backend should be mounted at. Defaults to `azure`.
+ /// The unique path this backend should be mounted at. Defaults to `azure`.
///
[Output("path")]
public Output Path { get; private set; } = null!;
///
- /// - The subscription id for the Azure Active Directory.
+ /// The subscription id for the Azure Active Directory.
///
[Output("subscriptionId")]
public Output SubscriptionId { get; private set; } = null!;
///
- /// - The tenant id for the Azure Active Directory.
+ /// The tenant id for the Azure Active Directory.
///
[Output("tenantId")]
public Output TenantId { get; private set; } = null!;
///
- /// - Indicates whether the secrets engine should use
+ /// Indicates whether the secrets engine should use
/// the Microsoft Graph API. This parameter has been deprecated and will be ignored in `vault-1.12+`.
/// For more information, please refer to the [Vault docs](https://developer.hashicorp.com/vault/api-docs/secret/azure#use_microsoft_graph_api)
///
@@ -180,7 +182,7 @@ public sealed class BackendArgs : global::Pulumi.ResourceArgs
private Input? _clientId;
///
- /// - The OAuth2 client id to connect to Azure.
+ /// The OAuth2 client id to connect to Azure.
///
public Input? ClientId
{
@@ -196,7 +198,7 @@ public Input? ClientId
private Input? _clientSecret;
///
- /// - The OAuth2 client secret to connect to Azure.
+ /// The OAuth2 client secret to connect to Azure.
///
public Input? ClientSecret
{
@@ -222,7 +224,7 @@ public Input? ClientSecret
public Input? DisableRemount { get; set; }
///
- /// - The Azure environment.
+ /// The Azure environment.
///
[Input("environment")]
public Input? Environment { get; set; }
@@ -237,7 +239,7 @@ public Input? ClientSecret
public Input? Namespace { get; set; }
///
- /// - The unique path this backend should be mounted at. Defaults to `azure`.
+ /// The unique path this backend should be mounted at. Defaults to `azure`.
///
[Input("path")]
public Input? Path { get; set; }
@@ -246,7 +248,7 @@ public Input? ClientSecret
private Input? _subscriptionId;
///
- /// - The subscription id for the Azure Active Directory.
+ /// The subscription id for the Azure Active Directory.
///
public Input? SubscriptionId
{
@@ -262,7 +264,7 @@ public Input? SubscriptionId
private Input? _tenantId;
///
- /// - The tenant id for the Azure Active Directory.
+ /// The tenant id for the Azure Active Directory.
///
public Input? TenantId
{
@@ -275,7 +277,7 @@ public Input? TenantId
}
///
- /// - Indicates whether the secrets engine should use
+ /// Indicates whether the secrets engine should use
/// the Microsoft Graph API. This parameter has been deprecated and will be ignored in `vault-1.12+`.
/// For more information, please refer to the [Vault docs](https://developer.hashicorp.com/vault/api-docs/secret/azure#use_microsoft_graph_api)
///
@@ -294,7 +296,7 @@ public sealed class BackendState : global::Pulumi.ResourceArgs
private Input? _clientId;
///
- /// - The OAuth2 client id to connect to Azure.
+ /// The OAuth2 client id to connect to Azure.
///
public Input? ClientId
{
@@ -310,7 +312,7 @@ public Input? ClientId
private Input? _clientSecret;
///
- /// - The OAuth2 client secret to connect to Azure.
+ /// The OAuth2 client secret to connect to Azure.
///
public Input? ClientSecret
{
@@ -336,7 +338,7 @@ public Input? ClientSecret
public Input? DisableRemount { get; set; }
///
- /// - The Azure environment.
+ /// The Azure environment.
///
[Input("environment")]
public Input? Environment { get; set; }
@@ -351,7 +353,7 @@ public Input? ClientSecret
public Input? Namespace { get; set; }
///
- /// - The unique path this backend should be mounted at. Defaults to `azure`.
+ /// The unique path this backend should be mounted at. Defaults to `azure`.
///
[Input("path")]
public Input? Path { get; set; }
@@ -360,7 +362,7 @@ public Input? ClientSecret
private Input? _subscriptionId;
///
- /// - The subscription id for the Azure Active Directory.
+ /// The subscription id for the Azure Active Directory.
///
public Input? SubscriptionId
{
@@ -376,7 +378,7 @@ public Input? SubscriptionId
private Input? _tenantId;
///
- /// - The tenant id for the Azure Active Directory.
+ /// The tenant id for the Azure Active Directory.
///
public Input? TenantId
{
@@ -389,7 +391,7 @@ public Input? TenantId
}
///
- /// - Indicates whether the secrets engine should use
+ /// Indicates whether the secrets engine should use
/// the Microsoft Graph API. This parameter has been deprecated and will be ignored in `vault-1.12+`.
/// For more information, please refer to the [Vault docs](https://developer.hashicorp.com/vault/api-docs/secret/azure#use_microsoft_graph_api)
///
diff --git a/sdk/dotnet/Azure/BackendRole.cs b/sdk/dotnet/Azure/BackendRole.cs
index 827df81a0..c1ec29773 100644
--- a/sdk/dotnet/Azure/BackendRole.cs
+++ b/sdk/dotnet/Azure/BackendRole.cs
@@ -14,6 +14,7 @@ namespace Pulumi.Vault.Azure
///
/// ```csharp
/// using System.Collections.Generic;
+ /// using System.Linq;
/// using Pulumi;
/// using Vault = Pulumi.Vault;
///
diff --git a/sdk/dotnet/Azure/GetAccessCredentials.cs b/sdk/dotnet/Azure/GetAccessCredentials.cs
index 2ae0dbbdf..f616efef8 100644
--- a/sdk/dotnet/Azure/GetAccessCredentials.cs
+++ b/sdk/dotnet/Azure/GetAccessCredentials.cs
@@ -18,6 +18,7 @@ public static class GetAccessCredentials
///
/// ```csharp
/// using System.Collections.Generic;
+ /// using System.Linq;
/// using Pulumi;
/// using Vault = Pulumi.Vault;
///
@@ -52,6 +53,7 @@ public static Task InvokeAsync(GetAccessCredentialsA
///
/// ```csharp
/// using System.Collections.Generic;
+ /// using System.Linq;
/// using Pulumi;
/// using Vault = Pulumi.Vault;
///
diff --git a/sdk/dotnet/CertAuthBackendRole.cs b/sdk/dotnet/CertAuthBackendRole.cs
index 0b8046ee3..84c05e858 100644
--- a/sdk/dotnet/CertAuthBackendRole.cs
+++ b/sdk/dotnet/CertAuthBackendRole.cs
@@ -17,6 +17,7 @@ namespace Pulumi.Vault
/// ```csharp
/// using System.Collections.Generic;
/// using System.IO;
+ /// using System.Linq;
/// using Pulumi;
/// using Vault = Pulumi.Vault;
///
@@ -125,7 +126,50 @@ public partial class CertAuthBackendRole : global::Pulumi.CustomResource
public Output Namespace { get; private set; } = null!;
///
- /// TLS extensions required on client certificates
+ /// Any additional CA certificates
+ /// needed to verify OCSP responses. Provided as base64 encoded PEM data.
+ /// Requires Vault version 1.13+.
+ ///
+ [Output("ocspCaCertificates")]
+ public Output OcspCaCertificates { get; private set; } = null!;
+
+ ///
+ /// If enabled, validate certificates'
+ /// revocation status using OCSP. Requires Vault version 1.13+.
+ ///
+ [Output("ocspEnabled")]
+ public Output OcspEnabled { get; private set; } = null!;
+
+ ///
+ /// If true and an OCSP response cannot
+ /// be fetched or is of an unknown status, the login will proceed as if the
+ /// certificate has not been revoked.
+ /// Requires Vault version 1.13+.
+ ///
+ [Output("ocspFailOpen")]
+ public Output OcspFailOpen { get; private set; } = null!;
+
+ ///
+ /// If set to true, rather than
+ /// accepting the first successful OCSP response, query all servers and consider
+ /// the certificate valid only if all servers agree.
+ /// Requires Vault version 1.13+.
+ ///
+ [Output("ocspQueryAllServers")]
+ public Output OcspQueryAllServers { get; private set; } = null!;
+
+ ///
+ /// : A comma-separated list of OCSP
+ /// server addresses. If unset, the OCSP server is determined from the
+ /// AuthorityInformationAccess extension on the certificate being inspected.
+ /// Requires Vault version 1.13+.
+ ///
+ [Output("ocspServersOverrides")]
+ public Output> OcspServersOverrides { get; private set; } = null!;
+
+ ///
+ /// TLS extensions required on
+ /// client certificates
///
[Output("requiredExtensions")]
public Output> RequiredExtensions { get; private set; } = null!;
@@ -197,6 +241,8 @@ public partial class CertAuthBackendRole : global::Pulumi.CustomResource
/// `service` tokens). For token store roles, there are two additional possibilities:
/// `default-service` and `default-batch` which specify the type to return unless the client
/// requests a different type at generation time.
+ ///
+ /// For more details on the usage of each argument consult the [Vault Cert API documentation](https://www.vaultproject.io/api-docs/auth/cert).
///
[Output("tokenType")]
public Output TokenType { get; private set; } = null!;
@@ -362,11 +408,60 @@ public InputList AllowedUriSans
[Input("namespace")]
public Input? Namespace { get; set; }
+ ///
+ /// Any additional CA certificates
+ /// needed to verify OCSP responses. Provided as base64 encoded PEM data.
+ /// Requires Vault version 1.13+.
+ ///
+ [Input("ocspCaCertificates")]
+ public Input? OcspCaCertificates { get; set; }
+
+ ///
+ /// If enabled, validate certificates'
+ /// revocation status using OCSP. Requires Vault version 1.13+.
+ ///
+ [Input("ocspEnabled")]
+ public Input? OcspEnabled { get; set; }
+
+ ///
+ /// If true and an OCSP response cannot
+ /// be fetched or is of an unknown status, the login will proceed as if the
+ /// certificate has not been revoked.
+ /// Requires Vault version 1.13+.
+ ///
+ [Input("ocspFailOpen")]
+ public Input? OcspFailOpen { get; set; }
+
+ ///
+ /// If set to true, rather than
+ /// accepting the first successful OCSP response, query all servers and consider
+ /// the certificate valid only if all servers agree.
+ /// Requires Vault version 1.13+.
+ ///
+ [Input("ocspQueryAllServers")]
+ public Input? OcspQueryAllServers { get; set; }
+
+ [Input("ocspServersOverrides")]
+ private InputList? _ocspServersOverrides;
+
+ ///
+ /// : A comma-separated list of OCSP
+ /// server addresses. If unset, the OCSP server is determined from the
+ /// AuthorityInformationAccess extension on the certificate being inspected.
+ /// Requires Vault version 1.13+.
+ ///
+ public InputList OcspServersOverrides
+ {
+ get => _ocspServersOverrides ?? (_ocspServersOverrides = new InputList());
+ set => _ocspServersOverrides = value;
+ }
+
[Input("requiredExtensions")]
private InputList? _requiredExtensions;
///
- /// TLS extensions required on client certificates
+ /// TLS extensions required on
+ /// client certificates
///
public InputList RequiredExtensions
{
@@ -453,6 +548,8 @@ public InputList TokenPolicies
/// `service` tokens). For token store roles, there are two additional possibilities:
/// `default-service` and `default-batch` which specify the type to return unless the client
/// requests a different type at generation time.
+ ///
+ /// For more details on the usage of each argument consult the [Vault Cert API documentation](https://www.vaultproject.io/api-docs/auth/cert).
///
[Input("tokenType")]
public Input? TokenType { get; set; }
@@ -580,11 +677,60 @@ public InputList AllowedUriSans
[Input("namespace")]
public Input? Namespace { get; set; }
+ ///
+ /// Any additional CA certificates
+ /// needed to verify OCSP responses. Provided as base64 encoded PEM data.
+ /// Requires Vault version 1.13+.
+ ///
+ [Input("ocspCaCertificates")]
+ public Input? OcspCaCertificates { get; set; }
+
+ ///
+ /// If enabled, validate certificates'
+ /// revocation status using OCSP. Requires Vault version 1.13+.
+ ///
+ [Input("ocspEnabled")]
+ public Input? OcspEnabled { get; set; }
+
+ ///
+ /// If true and an OCSP response cannot
+ /// be fetched or is of an unknown status, the login will proceed as if the
+ /// certificate has not been revoked.
+ /// Requires Vault version 1.13+.
+ ///
+ [Input("ocspFailOpen")]
+ public Input? OcspFailOpen { get; set; }
+
+ ///
+ /// If set to true, rather than
+ /// accepting the first successful OCSP response, query all servers and consider
+ /// the certificate valid only if all servers agree.
+ /// Requires Vault version 1.13+.
+ ///
+ [Input("ocspQueryAllServers")]
+ public Input? OcspQueryAllServers { get; set; }
+
+ [Input("ocspServersOverrides")]
+ private InputList? _ocspServersOverrides;
+
+ ///
+ /// : A comma-separated list of OCSP
+ /// server addresses. If unset, the OCSP server is determined from the
+ /// AuthorityInformationAccess extension on the certificate being inspected.
+ /// Requires Vault version 1.13+.
+ ///
+ public InputList OcspServersOverrides
+ {
+ get => _ocspServersOverrides ?? (_ocspServersOverrides = new InputList());
+ set => _ocspServersOverrides = value;
+ }
+
[Input("requiredExtensions")]
private InputList? _requiredExtensions;
///
- /// TLS extensions required on client certificates
+ /// TLS extensions required on
+ /// client certificates
///
public InputList RequiredExtensions
{
@@ -671,6 +817,8 @@ public InputList TokenPolicies
/// `service` tokens). For token store roles, there are two additional possibilities:
/// `default-service` and `default-batch` which specify the type to return unless the client
/// requests a different type at generation time.
+ ///
+ /// For more details on the usage of each argument consult the [Vault Cert API documentation](https://www.vaultproject.io/api-docs/auth/cert).
///
[Input("tokenType")]
public Input? TokenType { get; set; }
diff --git a/sdk/dotnet/Config/Config.cs b/sdk/dotnet/Config/Config.cs
index 50a873652..3f0872367 100644
--- a/sdk/dotnet/Config/Config.cs
+++ b/sdk/dotnet/Config/Config.cs
@@ -8,7 +8,7 @@ namespace Pulumi.Vault
{
public static class Config
{
- [System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Design", "IDE1006", Justification =
+ [global::System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Design", "IDE1006", Justification =
"Double underscore prefix used to avoid conflicts with variable names.")]
private sealed class __Value
{
@@ -252,6 +252,17 @@ public static string? Namespace
set => _namespace.Set(value);
}
+ private static readonly __Value _setNamespaceFromToken = new __Value(() => __config.GetBoolean("setNamespaceFromToken"));
+ ///
+ /// In the case where the Vault token is for a specific namespace and the provider namespace is not configured, use the
+ /// token namespace as the root namespace for all resources.
+ ///
+ public static bool? SetNamespaceFromToken
+ {
+ get => _setNamespaceFromToken.Get();
+ set => _setNamespaceFromToken.Set(value);
+ }
+
private static readonly __Value _skipChildToken = new __Value(() => __config.GetBoolean("skipChildToken"));
///
/// Set this to true to prevent the creation of ephemeral child token used by this provider.
@@ -331,6 +342,7 @@ public class AuthLogin
public string? Namespace { get; set; } = null!;
public ImmutableDictionary? Parameters { get; set; } = null!;
public string Path { get; set; }
+ public bool? UseRootNamespace { get; set; }
}
public class AuthLoginAws
@@ -350,6 +362,7 @@ public class AuthLoginAws
public string? Mount { get; set; } = null!;
public string? Namespace { get; set; } = null!;
public string Role { get; set; }
+ public bool? UseRootNamespace { get; set; }
}
public class AuthLoginAzure
@@ -363,6 +376,7 @@ public class AuthLoginAzure
public string? Scope { get; set; } = null!;
public string SubscriptionId { get; set; }
public string? TenantId { get; set; } = null!;
+ public bool? UseRootNamespace { get; set; }
public string? VmName { get; set; } = null!;
public string? VmssName { get; set; } = null!;
}
@@ -374,6 +388,7 @@ public class AuthLoginCert
public string? Mount { get; set; } = null!;
public string? Name { get; set; } = null!;
public string? Namespace { get; set; } = null!;
+ public bool? UseRootNamespace { get; set; }
}
public class AuthLoginGcp
@@ -384,6 +399,7 @@ public class AuthLoginGcp
public string? Namespace { get; set; } = null!;
public string Role { get; set; }
public string? ServiceAccount { get; set; } = null!;
+ public bool? UseRootNamespace { get; set; }
}
public class AuthLoginJwt
@@ -392,6 +408,7 @@ public class AuthLoginJwt
public string? Mount { get; set; } = null!;
public string? Namespace { get; set; } = null!;
public string Role { get; set; }
+ public bool? UseRootNamespace { get; set; }
}
public class AuthLoginKerberos
@@ -405,6 +422,7 @@ public class AuthLoginKerberos
public bool? RemoveInstanceName { get; set; }
public string? Service { get; set; } = null!;
public string? Token { get; set; } = null!;
+ public bool? UseRootNamespace { get; set; }
public string? Username { get; set; } = null!;
}
@@ -414,6 +432,7 @@ public class AuthLoginOci
public string? Mount { get; set; } = null!;
public string? Namespace { get; set; } = null!;
public string Role { get; set; }
+ public bool? UseRootNamespace { get; set; }
}
public class AuthLoginOidc
@@ -423,6 +442,7 @@ public class AuthLoginOidc
public string? Mount { get; set; } = null!;
public string? Namespace { get; set; } = null!;
public string Role { get; set; }
+ public bool? UseRootNamespace { get; set; }
}
public class AuthLoginRadius
@@ -430,6 +450,7 @@ public class AuthLoginRadius
public string? Mount { get; set; } = null!;
public string? Namespace { get; set; } = null!;
public string Password { get; set; }
+ public bool? UseRootNamespace { get; set; }
public string Username { get; set; }
}
@@ -437,6 +458,7 @@ public class AuthLoginTokenFile
{
public string Filename { get; set; }
public string? Namespace { get; set; } = null!;
+ public bool? UseRootNamespace { get; set; }
}
public class AuthLoginUserpass
@@ -445,6 +467,7 @@ public class AuthLoginUserpass
public string? Namespace { get; set; } = null!;
public string? Password { get; set; } = null!;
public string? PasswordFile { get; set; } = null!;
+ public bool? UseRootNamespace { get; set; }
public string Username { get; set; }
}
diff --git a/sdk/dotnet/Consul/SecretBackend.cs b/sdk/dotnet/Consul/SecretBackend.cs
index d9ee45d10..d1eceb0bb 100644
--- a/sdk/dotnet/Consul/SecretBackend.cs
+++ b/sdk/dotnet/Consul/SecretBackend.cs
@@ -14,6 +14,7 @@ namespace Pulumi.Vault.Consul
/// ### Creating a standard backend resource:
/// ```csharp
/// using System.Collections.Generic;
+ /// using System.Linq;
/// using Pulumi;
/// using Vault = Pulumi.Vault;
///
@@ -32,6 +33,7 @@ namespace Pulumi.Vault.Consul
/// ### Creating a backend resource to bootstrap a new Consul instance:
/// ```csharp
/// using System.Collections.Generic;
+ /// using System.Linq;
/// using Pulumi;
/// using Vault = Pulumi.Vault;
///
@@ -67,6 +69,10 @@ public partial class SecretBackend : global::Pulumi.CustomResource
///
/// Denotes that the resource is used to bootstrap the Consul ACL system.
+ ///
+ /// > **Important** When `bootstrap` is true, Vault will attempt to bootstrap the Consul server. The token returned from
+ /// this operation will only ever be known to Vault. If the resource is ever destroyed, the bootstrap token will be lost
+ /// and a [Consul reset may be required.](https://learn.hashicorp.com/tutorials/consul/access-control-troubleshoot#reset-the-acl-system)
///
[Output("bootstrap")]
public Output Bootstrap { get; private set; } = null!;
@@ -146,8 +152,7 @@ public partial class SecretBackend : global::Pulumi.CustomResource
public Output Scheme { get; private set; } = null!;
///
- /// The Consul management token this backend should use to issue new tokens. This field is required
- /// when `bootstrap` is false.
+ /// Specifies the Consul token to use when managing or issuing new tokens.
///
[Output("token")]
public Output Token { get; private set; } = null!;
@@ -212,6 +217,10 @@ public sealed class SecretBackendArgs : global::Pulumi.ResourceArgs
///
/// Denotes that the resource is used to bootstrap the Consul ACL system.
+ ///
+ /// > **Important** When `bootstrap` is true, Vault will attempt to bootstrap the Consul server. The token returned from
+ /// this operation will only ever be known to Vault. If the resource is ever destroyed, the bootstrap token will be lost
+ /// and a [Consul reset may be required.](https://learn.hashicorp.com/tutorials/consul/access-control-troubleshoot#reset-the-acl-system)
///
[Input("bootstrap")]
public Input? Bootstrap { get; set; }
@@ -314,8 +323,7 @@ public Input? ClientKey
private Input? _token;
///
- /// The Consul management token this backend should use to issue new tokens. This field is required
- /// when `bootstrap` is false.
+ /// Specifies the Consul token to use when managing or issuing new tokens.
///
public Input? Token
{
@@ -343,6 +351,10 @@ public sealed class SecretBackendState : global::Pulumi.ResourceArgs
///
/// Denotes that the resource is used to bootstrap the Consul ACL system.
+ ///
+ /// > **Important** When `bootstrap` is true, Vault will attempt to bootstrap the Consul server. The token returned from
+ /// this operation will only ever be known to Vault. If the resource is ever destroyed, the bootstrap token will be lost
+ /// and a [Consul reset may be required.](https://learn.hashicorp.com/tutorials/consul/access-control-troubleshoot#reset-the-acl-system)
///
[Input("bootstrap")]
public Input? Bootstrap { get; set; }
@@ -445,8 +457,7 @@ public Input? ClientKey
private Input? _token;
///
- /// The Consul management token this backend should use to issue new tokens. This field is required
- /// when `bootstrap` is false.
+ /// Specifies the Consul token to use when managing or issuing new tokens.
///
public Input? Token
{
diff --git a/sdk/dotnet/Consul/SecretBackendRole.cs b/sdk/dotnet/Consul/SecretBackendRole.cs
index 08623253d..f0a7c39b8 100644
--- a/sdk/dotnet/Consul/SecretBackendRole.cs
+++ b/sdk/dotnet/Consul/SecretBackendRole.cs
@@ -16,6 +16,7 @@ namespace Pulumi.Vault.Consul
///
/// ```csharp
/// using System.Collections.Generic;
+ /// using System.Linq;
/// using Pulumi;
/// using Vault = Pulumi.Vault;
///
diff --git a/sdk/dotnet/Database/Inputs/SecretBackendConnectionCassandraArgs.cs b/sdk/dotnet/Database/Inputs/SecretBackendConnectionCassandraArgs.cs
index 0bd9cd576..625569742 100644
--- a/sdk/dotnet/Database/Inputs/SecretBackendConnectionCassandraArgs.cs
+++ b/sdk/dotnet/Database/Inputs/SecretBackendConnectionCassandraArgs.cs
@@ -23,7 +23,7 @@ public sealed class SecretBackendConnectionCassandraArgs : global::Pulumi.Resour
private InputList? _hosts;
///
- /// A set of Couchbase URIs to connect to. Must use `couchbases://` scheme if `tls` is `true`.
+ /// The hosts to connect to.
///
public InputList Hosts
{
@@ -42,7 +42,7 @@ public InputList Hosts
private Input? _password;
///
- /// The root credential password used in the connection URL.
+ /// The password to authenticate with.
///
public Input? Password
{
@@ -101,13 +101,13 @@ public Input? PemJson
public Input? ProtocolVersion { get; set; }
///
- /// Whether to use TLS when connecting to Redis.
+ /// Whether to use TLS when connecting to Cassandra.
///
[Input("tls")]
public Input? Tls { get; set; }
///
- /// The root credential username used in the connection URL.
+ /// The username to authenticate with.
///
[Input("username")]
public Input? Username { get; set; }
diff --git a/sdk/dotnet/Database/Inputs/SecretBackendConnectionCassandraGetArgs.cs b/sdk/dotnet/Database/Inputs/SecretBackendConnectionCassandraGetArgs.cs
index ea75b8c5a..9faab5741 100644
--- a/sdk/dotnet/Database/Inputs/SecretBackendConnectionCassandraGetArgs.cs
+++ b/sdk/dotnet/Database/Inputs/SecretBackendConnectionCassandraGetArgs.cs
@@ -23,7 +23,7 @@ public sealed class SecretBackendConnectionCassandraGetArgs : global::Pulumi.Res
private InputList? _hosts;
///
- /// A set of Couchbase URIs to connect to. Must use `couchbases://` scheme if `tls` is `true`.
+ /// The hosts to connect to.
///
public InputList Hosts
{
@@ -42,7 +42,7 @@ public InputList Hosts
private Input? _password;
///
- /// The root credential password used in the connection URL.
+ /// The password to authenticate with.
///
public Input? Password
{
@@ -101,13 +101,13 @@ public Input? PemJson
public Input? ProtocolVersion { get; set; }
///
- /// Whether to use TLS when connecting to Redis.
+ /// Whether to use TLS when connecting to Cassandra.
///
[Input("tls")]
public Input? Tls { get; set; }
///
- /// The root credential username used in the connection URL.
+ /// The username to authenticate with.
///
[Input("username")]
public Input? Username { get; set; }
diff --git a/sdk/dotnet/Database/Inputs/SecretBackendConnectionCouchbaseArgs.cs b/sdk/dotnet/Database/Inputs/SecretBackendConnectionCouchbaseArgs.cs
index 360437ac3..16edbbaa8 100644
--- a/sdk/dotnet/Database/Inputs/SecretBackendConnectionCouchbaseArgs.cs
+++ b/sdk/dotnet/Database/Inputs/SecretBackendConnectionCouchbaseArgs.cs
@@ -38,7 +38,7 @@ public Input? Base64Pem
private InputList? _hosts;
///
- /// A set of Couchbase URIs to connect to. Must use `couchbases://` scheme if `tls` is `true`.
+ /// The hosts to connect to.
///
public InputList Hosts
{
@@ -57,7 +57,7 @@ public InputList Hosts
private Input? _password;
///
- /// The root credential password used in the connection URL.
+ /// The password to authenticate with.
///
public Input? Password
{
@@ -70,19 +70,19 @@ public Input? Password
}
///
- /// Whether to use TLS when connecting to Redis.
+ /// Whether to use TLS when connecting to Cassandra.
///
[Input("tls")]
public Input? Tls { get; set; }
///
- /// The root credential username used in the connection URL.
+ /// The username to authenticate with.
///
[Input("username", required: true)]
public Input Username { get; set; } = null!;
///
- /// - [Template](https://www.vaultproject.io/docs/concepts/username-templating) describing how dynamic usernames are generated.
+ /// Template describing how dynamic usernames are generated.
///
[Input("usernameTemplate")]
public Input? UsernameTemplate { get; set; }
diff --git a/sdk/dotnet/Database/Inputs/SecretBackendConnectionCouchbaseGetArgs.cs b/sdk/dotnet/Database/Inputs/SecretBackendConnectionCouchbaseGetArgs.cs
index 1209544fa..ccaf2348b 100644
--- a/sdk/dotnet/Database/Inputs/SecretBackendConnectionCouchbaseGetArgs.cs
+++ b/sdk/dotnet/Database/Inputs/SecretBackendConnectionCouchbaseGetArgs.cs
@@ -38,7 +38,7 @@ public Input? Base64Pem
private InputList? _hosts;
///
- /// A set of Couchbase URIs to connect to. Must use `couchbases://` scheme if `tls` is `true`.
+ /// The hosts to connect to.
///
public InputList Hosts
{
@@ -57,7 +57,7 @@ public InputList Hosts
private Input? _password;
///
- /// The root credential password used in the connection URL.
+ /// The password to authenticate with.
///
public Input? Password
{
@@ -70,19 +70,19 @@ public Input? Password
}
///
- /// Whether to use TLS when connecting to Redis.
+ /// Whether to use TLS when connecting to Cassandra.
///
[Input("tls")]
public Input? Tls { get; set; }
///
- /// The root credential username used in the connection URL.
+ /// The username to authenticate with.
///
[Input("username", required: true)]
public Input Username { get; set; } = null!;
///
- /// - [Template](https://www.vaultproject.io/docs/concepts/username-templating) describing how dynamic usernames are generated.
+ /// Template describing how dynamic usernames are generated.
///
[Input("usernameTemplate")]
public Input? UsernameTemplate { get; set; }
diff --git a/sdk/dotnet/Database/Inputs/SecretBackendConnectionElasticsearchArgs.cs b/sdk/dotnet/Database/Inputs/SecretBackendConnectionElasticsearchArgs.cs
index 9c5cebd5f..b1ab00c30 100644
--- a/sdk/dotnet/Database/Inputs/SecretBackendConnectionElasticsearchArgs.cs
+++ b/sdk/dotnet/Database/Inputs/SecretBackendConnectionElasticsearchArgs.cs
@@ -46,7 +46,7 @@ public sealed class SecretBackendConnectionElasticsearchArgs : global::Pulumi.Re
private Input? _password;
///
- /// The root credential password used in the connection URL.
+ /// The password to authenticate with.
///
public Input? Password
{
@@ -72,13 +72,13 @@ public Input? Password
public Input Url { get; set; } = null!;
///
- /// The root credential username used in the connection URL.
+ /// The username to authenticate with.
///
[Input("username", required: true)]
public Input Username { get; set; } = null!;
///
- /// - [Template](https://www.vaultproject.io/docs/concepts/username-templating) describing how dynamic usernames are generated.
+ /// Template describing how dynamic usernames are generated.
///
[Input("usernameTemplate")]
public Input? UsernameTemplate { get; set; }
diff --git a/sdk/dotnet/Database/Inputs/SecretBackendConnectionElasticsearchGetArgs.cs b/sdk/dotnet/Database/Inputs/SecretBackendConnectionElasticsearchGetArgs.cs
index 3d09b0d7f..ea6a1ddd2 100644
--- a/sdk/dotnet/Database/Inputs/SecretBackendConnectionElasticsearchGetArgs.cs
+++ b/sdk/dotnet/Database/Inputs/SecretBackendConnectionElasticsearchGetArgs.cs
@@ -46,7 +46,7 @@ public sealed class SecretBackendConnectionElasticsearchGetArgs : global::Pulumi
private Input? _password;
///
- /// The root credential password used in the connection URL.
+ /// The password to authenticate with.
///
public Input? Password
{
@@ -72,13 +72,13 @@ public Input? Password
public Input Url { get; set; } = null!;
///
- /// The root credential username used in the connection URL.
+ /// The username to authenticate with.
///
[Input("username", required: true)]
public Input Username { get; set; } = null!;
///
- /// - [Template](https://www.vaultproject.io/docs/concepts/username-templating) describing how dynamic usernames are generated.
+ /// Template describing how dynamic usernames are generated.
///
[Input("usernameTemplate")]
public Input? UsernameTemplate { get; set; }
diff --git a/sdk/dotnet/Database/Inputs/SecretBackendConnectionHanaArgs.cs b/sdk/dotnet/Database/Inputs/SecretBackendConnectionHanaArgs.cs
index 93936f5b4..4094ae337 100644
--- a/sdk/dotnet/Database/Inputs/SecretBackendConnectionHanaArgs.cs
+++ b/sdk/dotnet/Database/Inputs/SecretBackendConnectionHanaArgs.cs
@@ -13,9 +13,9 @@ namespace Pulumi.Vault.Database.Inputs
public sealed class SecretBackendConnectionHanaArgs : global::Pulumi.ResourceArgs
{
///
- /// Specifies the Redshift DSN. See
+ /// A URL containing connection information. See
/// the [Vault
- /// docs](https://www.vaultproject.io/api-docs/secret/databases/redshift#sample-payload)
+ /// docs](https://www.vaultproject.io/api-docs/secret/databases/mongodb.html#sample-payload)
/// for an example.
///
[Input("connectionUrl")]
@@ -28,21 +28,22 @@ public sealed class SecretBackendConnectionHanaArgs : global::Pulumi.ResourceArg
public Input? DisableEscaping { get; set; }
///
- /// The maximum amount of time a connection may be reused.
+ /// The maximum number of seconds to keep
+ /// a connection alive for.
///
[Input("maxConnectionLifetime")]
public Input? MaxConnectionLifetime { get; set; }
///
/// The maximum number of idle connections to
- /// the database.
+ /// maintain.
///
[Input("maxIdleConnections")]
public Input? MaxIdleConnections { get; set; }
///
/// The maximum number of open connections to
- /// the database.
+ /// use.
///
[Input("maxOpenConnections")]
public Input? MaxOpenConnections { get; set; }
@@ -51,7 +52,7 @@ public sealed class SecretBackendConnectionHanaArgs : global::Pulumi.ResourceArg
private Input? _password;
///
- /// The root credential password used in the connection URL.
+ /// The password to authenticate with.
///
public Input? Password
{
@@ -64,7 +65,7 @@ public Input? Password
}
///
- /// The root credential username used in the connection URL.
+ /// The username to authenticate with.
///
[Input("username")]
public Input? Username { get; set; }
diff --git a/sdk/dotnet/Database/Inputs/SecretBackendConnectionHanaGetArgs.cs b/sdk/dotnet/Database/Inputs/SecretBackendConnectionHanaGetArgs.cs
index b098d8fac..f0f6a7215 100644
--- a/sdk/dotnet/Database/Inputs/SecretBackendConnectionHanaGetArgs.cs
+++ b/sdk/dotnet/Database/Inputs/SecretBackendConnectionHanaGetArgs.cs
@@ -13,9 +13,9 @@ namespace Pulumi.Vault.Database.Inputs
public sealed class SecretBackendConnectionHanaGetArgs : global::Pulumi.ResourceArgs
{
///
- /// Specifies the Redshift DSN. See
+ /// A URL containing connection information. See
/// the [Vault
- /// docs](https://www.vaultproject.io/api-docs/secret/databases/redshift#sample-payload)
+ /// docs](https://www.vaultproject.io/api-docs/secret/databases/mongodb.html#sample-payload)
/// for an example.
///
[Input("connectionUrl")]
@@ -28,21 +28,22 @@ public sealed class SecretBackendConnectionHanaGetArgs : global::Pulumi.Resource
public Input? DisableEscaping { get; set; }
///
- /// The maximum amount of time a connection may be reused.
+ /// The maximum number of seconds to keep
+ /// a connection alive for.
///
[Input("maxConnectionLifetime")]
public Input? MaxConnectionLifetime { get; set; }
///
/// The maximum number of idle connections to
- /// the database.
+ /// maintain.
///
[Input("maxIdleConnections")]
public Input? MaxIdleConnections { get; set; }
///
/// The maximum number of open connections to
- /// the database.
+ /// use.
///
[Input("maxOpenConnections")]
public Input? MaxOpenConnections { get; set; }
@@ -51,7 +52,7 @@ public sealed class SecretBackendConnectionHanaGetArgs : global::Pulumi.Resource
private Input? _password;
///
- /// The root credential password used in the connection URL.
+ /// The password to authenticate with.
///
public Input? Password
{
@@ -64,7 +65,7 @@ public Input? Password
}
///
- /// The root credential username used in the connection URL.
+ /// The username to authenticate with.
///
[Input("username")]
public Input? Username { get; set; }
diff --git a/sdk/dotnet/Database/Inputs/SecretBackendConnectionInfluxdbArgs.cs b/sdk/dotnet/Database/Inputs/SecretBackendConnectionInfluxdbArgs.cs
index f86cf5763..d5a6cce68 100644
--- a/sdk/dotnet/Database/Inputs/SecretBackendConnectionInfluxdbArgs.cs
+++ b/sdk/dotnet/Database/Inputs/SecretBackendConnectionInfluxdbArgs.cs
@@ -36,7 +36,7 @@ public sealed class SecretBackendConnectionInfluxdbArgs : global::Pulumi.Resourc
private Input? _password;
///
- /// The root credential password used in the connection URL.
+ /// The password to authenticate with.
///
public Input? Password
{
@@ -89,19 +89,19 @@ public Input? PemJson
public Input? Port { get; set; }
///
- /// Whether to use TLS when connecting to Redis.
+ /// Whether to use TLS when connecting to Cassandra.
///
[Input("tls")]
public Input? Tls { get; set; }
///
- /// The root credential username used in the connection URL.
+ /// The username to authenticate with.
///
[Input("username", required: true)]
public Input Username { get; set; } = null!;
///
- /// - [Template](https://www.vaultproject.io/docs/concepts/username-templating) describing how dynamic usernames are generated.
+ /// Template describing how dynamic usernames are generated.
///
[Input("usernameTemplate")]
public Input? UsernameTemplate { get; set; }
diff --git a/sdk/dotnet/Database/Inputs/SecretBackendConnectionInfluxdbGetArgs.cs b/sdk/dotnet/Database/Inputs/SecretBackendConnectionInfluxdbGetArgs.cs
index 6d80f0fa0..b8ecf4e83 100644
--- a/sdk/dotnet/Database/Inputs/SecretBackendConnectionInfluxdbGetArgs.cs
+++ b/sdk/dotnet/Database/Inputs/SecretBackendConnectionInfluxdbGetArgs.cs
@@ -36,7 +36,7 @@ public sealed class SecretBackendConnectionInfluxdbGetArgs : global::Pulumi.Reso
private Input? _password;
///
- /// The root credential password used in the connection URL.
+ /// The password to authenticate with.
///
public Input? Password
{
@@ -89,19 +89,19 @@ public Input? PemJson
public Input? Port { get; set; }
///
- /// Whether to use TLS when connecting to Redis.
+ /// Whether to use TLS when connecting to Cassandra.
///
[Input("tls")]
public Input? Tls { get; set; }
///
- /// The root credential username used in the connection URL.
+ /// The username to authenticate with.
///
[Input("username", required: true)]
public Input Username { get; set; } = null!;
///
- /// - [Template](https://www.vaultproject.io/docs/concepts/username-templating) describing how dynamic usernames are generated.
+ /// Template describing how dynamic usernames are generated.
///
[Input("usernameTemplate")]
public Input? UsernameTemplate { get; set; }
diff --git a/sdk/dotnet/Database/Inputs/SecretBackendConnectionMongodbArgs.cs b/sdk/dotnet/Database/Inputs/SecretBackendConnectionMongodbArgs.cs
index 1ffeba9aa..f399fdb39 100644
--- a/sdk/dotnet/Database/Inputs/SecretBackendConnectionMongodbArgs.cs
+++ b/sdk/dotnet/Database/Inputs/SecretBackendConnectionMongodbArgs.cs
@@ -13,30 +13,31 @@ namespace Pulumi.Vault.Database.Inputs
public sealed class SecretBackendConnectionMongodbArgs : global::Pulumi.ResourceArgs
{
///
- /// Specifies the Redshift DSN. See
+ /// A URL containing connection information. See
/// the [Vault
- /// docs](https://www.vaultproject.io/api-docs/secret/databases/redshift#sample-payload)
+ /// docs](https://www.vaultproject.io/api-docs/secret/databases/mongodb.html#sample-payload)
/// for an example.
///
[Input("connectionUrl")]
public Input? ConnectionUrl { get; set; }
///
- /// The maximum amount of time a connection may be reused.
+ /// The maximum number of seconds to keep
+ /// a connection alive for.
///
[Input("maxConnectionLifetime")]
public Input? MaxConnectionLifetime { get; set; }
///
/// The maximum number of idle connections to
- /// the database.
+ /// maintain.
///
[Input("maxIdleConnections")]
public Input? MaxIdleConnections { get; set; }
///
/// The maximum number of open connections to
- /// the database.
+ /// use.
///
[Input("maxOpenConnections")]
public Input? MaxOpenConnections { get; set; }
@@ -45,7 +46,7 @@ public sealed class SecretBackendConnectionMongodbArgs : global::Pulumi.Resource
private Input? _password;
///
- /// The root credential password used in the connection URL.
+ /// The password to authenticate with.
///
public Input? Password
{
@@ -58,13 +59,13 @@ public Input? Password
}
///
- /// The root credential username used in the connection URL.
+ /// The username to authenticate with.
///
[Input("username")]
public Input? Username { get; set; }
///
- /// - [Template](https://www.vaultproject.io/docs/concepts/username-templating) describing how dynamic usernames are generated.
+ /// Template describing how dynamic usernames are generated.
///
[Input("usernameTemplate")]
public Input? UsernameTemplate { get; set; }
diff --git a/sdk/dotnet/Database/Inputs/SecretBackendConnectionMongodbGetArgs.cs b/sdk/dotnet/Database/Inputs/SecretBackendConnectionMongodbGetArgs.cs
index 2758a4d86..824c4ff69 100644
--- a/sdk/dotnet/Database/Inputs/SecretBackendConnectionMongodbGetArgs.cs
+++ b/sdk/dotnet/Database/Inputs/SecretBackendConnectionMongodbGetArgs.cs
@@ -13,30 +13,31 @@ namespace Pulumi.Vault.Database.Inputs
public sealed class SecretBackendConnectionMongodbGetArgs : global::Pulumi.ResourceArgs
{
///
- /// Specifies the Redshift DSN. See
+ /// A URL containing connection information. See
/// the [Vault
- /// docs](https://www.vaultproject.io/api-docs/secret/databases/redshift#sample-payload)
+ /// docs](https://www.vaultproject.io/api-docs/secret/databases/mongodb.html#sample-payload)
/// for an example.
///
[Input("connectionUrl")]
public Input? ConnectionUrl { get; set; }
///
- /// The maximum amount of time a connection may be reused.
+ /// The maximum number of seconds to keep
+ /// a connection alive for.
///
[Input("maxConnectionLifetime")]
public Input? MaxConnectionLifetime { get; set; }
///
/// The maximum number of idle connections to
- /// the database.
+ /// maintain.
///
[Input("maxIdleConnections")]
public Input? MaxIdleConnections { get; set; }
///
/// The maximum number of open connections to
- /// the database.
+ /// use.
///
[Input("maxOpenConnections")]
public Input? MaxOpenConnections { get; set; }
@@ -45,7 +46,7 @@ public sealed class SecretBackendConnectionMongodbGetArgs : global::Pulumi.Resou
private Input? _password;
///
- /// The root credential password used in the connection URL.
+ /// The password to authenticate with.
///
public Input? Password
{
@@ -58,13 +59,13 @@ public Input? Password
}
///
- /// The root credential username used in the connection URL.
+ /// The username to authenticate with.
///
[Input("username")]
public Input? Username { get; set; }
///
- /// - [Template](https://www.vaultproject.io/docs/concepts/username-templating) describing how dynamic usernames are generated.
+ /// Template describing how dynamic usernames are generated.
///
[Input("usernameTemplate")]
public Input? UsernameTemplate { get; set; }
diff --git a/sdk/dotnet/Database/Inputs/SecretBackendConnectionMssqlArgs.cs b/sdk/dotnet/Database/Inputs/SecretBackendConnectionMssqlArgs.cs
index 86a6cca2a..70e47f677 100644
--- a/sdk/dotnet/Database/Inputs/SecretBackendConnectionMssqlArgs.cs
+++ b/sdk/dotnet/Database/Inputs/SecretBackendConnectionMssqlArgs.cs
@@ -13,9 +13,9 @@ namespace Pulumi.Vault.Database.Inputs
public sealed class SecretBackendConnectionMssqlArgs : global::Pulumi.ResourceArgs
{
///
- /// Specifies the Redshift DSN. See
+ /// A URL containing connection information. See
/// the [Vault
- /// docs](https://www.vaultproject.io/api-docs/secret/databases/redshift#sample-payload)
+ /// docs](https://www.vaultproject.io/api-docs/secret/databases/mongodb.html#sample-payload)
/// for an example.
///
[Input("connectionUrl")]
@@ -37,21 +37,22 @@ public sealed class SecretBackendConnectionMssqlArgs : global::Pulumi.ResourceAr
public Input? DisableEscaping { get; set; }
///
- /// The maximum amount of time a connection may be reused.
+ /// The maximum number of seconds to keep
+ /// a connection alive for.
///
[Input("maxConnectionLifetime")]
public Input? MaxConnectionLifetime { get; set; }
///
/// The maximum number of idle connections to
- /// the database.
+ /// maintain.
///
[Input("maxIdleConnections")]
public Input? MaxIdleConnections { get; set; }
///
/// The maximum number of open connections to
- /// the database.
+ /// use.
///
[Input("maxOpenConnections")]
public Input? MaxOpenConnections { get; set; }
@@ -60,7 +61,7 @@ public sealed class SecretBackendConnectionMssqlArgs : global::Pulumi.ResourceAr
private Input? _password;
///
- /// The root credential password used in the connection URL.
+ /// The password to authenticate with.
///
public Input? Password
{
@@ -73,13 +74,13 @@ public Input? Password
}
///
- /// The root credential username used in the connection URL.
+ /// The username to authenticate with.
///
[Input("username")]
public Input? Username { get; set; }
///
- /// - [Template](https://www.vaultproject.io/docs/concepts/username-templating) describing how dynamic usernames are generated.
+ /// Template describing how dynamic usernames are generated.
///
[Input("usernameTemplate")]
public Input? UsernameTemplate { get; set; }
diff --git a/sdk/dotnet/Database/Inputs/SecretBackendConnectionMssqlGetArgs.cs b/sdk/dotnet/Database/Inputs/SecretBackendConnectionMssqlGetArgs.cs
index cbfb85d6c..62f3001df 100644
--- a/sdk/dotnet/Database/Inputs/SecretBackendConnectionMssqlGetArgs.cs
+++ b/sdk/dotnet/Database/Inputs/SecretBackendConnectionMssqlGetArgs.cs
@@ -13,9 +13,9 @@ namespace Pulumi.Vault.Database.Inputs
public sealed class SecretBackendConnectionMssqlGetArgs : global::Pulumi.ResourceArgs
{
///
- /// Specifies the Redshift DSN. See
+ /// A URL containing connection information. See
/// the [Vault
- /// docs](https://www.vaultproject.io/api-docs/secret/databases/redshift#sample-payload)
+ /// docs](https://www.vaultproject.io/api-docs/secret/databases/mongodb.html#sample-payload)
/// for an example.
///
[Input("connectionUrl")]
@@ -37,21 +37,22 @@ public sealed class SecretBackendConnectionMssqlGetArgs : global::Pulumi.Resourc
public Input? DisableEscaping { get; set; }
///
- /// The maximum amount of time a connection may be reused.
+ /// The maximum number of seconds to keep
+ /// a connection alive for.
///
[Input("maxConnectionLifetime")]
public Input? MaxConnectionLifetime { get; set; }
///
/// The maximum number of idle connections to
- /// the database.
+ /// maintain.
///
[Input("maxIdleConnections")]
public Input? MaxIdleConnections { get; set; }
///
/// The maximum number of open connections to
- /// the database.
+ /// use.
///
[Input("maxOpenConnections")]
public Input? MaxOpenConnections { get; set; }
@@ -60,7 +61,7 @@ public sealed class SecretBackendConnectionMssqlGetArgs : global::Pulumi.Resourc
private Input? _password;
///
- /// The root credential password used in the connection URL.
+ /// The password to authenticate with.
///
public Input? Password
{
@@ -73,13 +74,13 @@ public Input? Password
}
///
- /// The root credential username used in the connection URL.
+ /// The username to authenticate with.
///
[Input("username")]
public Input? Username { get; set; }
///
- /// - [Template](https://www.vaultproject.io/docs/concepts/username-templating) describing how dynamic usernames are generated.
+ /// Template describing how dynamic usernames are generated.
///
[Input("usernameTemplate")]
public Input? UsernameTemplate { get; set; }
diff --git a/sdk/dotnet/Database/Inputs/SecretBackendConnectionMysqlArgs.cs b/sdk/dotnet/Database/Inputs/SecretBackendConnectionMysqlArgs.cs
index 137dabb22..bb79f3db3 100644
--- a/sdk/dotnet/Database/Inputs/SecretBackendConnectionMysqlArgs.cs
+++ b/sdk/dotnet/Database/Inputs/SecretBackendConnectionMysqlArgs.cs
@@ -19,30 +19,31 @@ public sealed class SecretBackendConnectionMysqlArgs : global::Pulumi.ResourceAr
public Input? AuthType { get; set; }
///
- /// Specifies the Redshift DSN. See
+ /// A URL containing connection information. See
/// the [Vault
- /// docs](https://www.vaultproject.io/api-docs/secret/databases/redshift#sample-payload)
+ /// docs](https://www.vaultproject.io/api-docs/secret/databases/mongodb.html#sample-payload)
/// for an example.
///
[Input("connectionUrl")]
public Input? ConnectionUrl { get; set; }
///
- /// The maximum amount of time a connection may be reused.
+ /// The maximum number of seconds to keep
+ /// a connection alive for.
///
[Input("maxConnectionLifetime")]
public Input? MaxConnectionLifetime { get; set; }
///
/// The maximum number of idle connections to
- /// the database.
+ /// maintain.
///
[Input("maxIdleConnections")]
public Input? MaxIdleConnections { get; set; }
///
/// The maximum number of open connections to
- /// the database.
+ /// use.
///
[Input("maxOpenConnections")]
public Input? MaxOpenConnections { get; set; }
@@ -51,7 +52,7 @@ public sealed class SecretBackendConnectionMysqlArgs : global::Pulumi.ResourceAr
private Input? _password;
///
- /// The root credential password used in the connection URL.
+ /// The password to authenticate with.
///
public Input? Password
{
@@ -102,13 +103,13 @@ public Input? TlsCertificateKey
}
///
- /// The root credential username used in the connection URL.
+ /// The username to authenticate with.
///
[Input("username")]
public Input? Username { get; set; }
///