provider

package
v4.0.2 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jan 10, 2023 License: MPL-2.0 Imports: 7 Imported by: 0

README

provider

Refer to the Terraform Registory for docs: vault.

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func NewVaultProvider_Override

func NewVaultProvider_Override(v VaultProvider, scope constructs.Construct, id *string, config *VaultProviderConfig)

Create a new {@link https://www.terraform.io/docs/providers/vault vault} Resource.

func VaultProvider_IsConstruct

func VaultProvider_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

Use this method instead of `instanceof` to properly detect `Construct` instances, even when the construct library is symlinked.

Explanation: in JavaScript, multiple copies of the `constructs` library on disk are seen as independent, completely different libraries. As a consequence, the class `Construct` in each copy of the `constructs` library is seen as a different class, and an instance of one class will not test as `instanceof` the other class. `npm install` will not create installations like this, but users may manually symlink construct libraries together or use a monorepo tool: in those cases, multiple copies of the `constructs` library can be accidentally installed, and `instanceof` will behave unpredictably. It is safest to avoid using `instanceof`, and using this type-testing method instead.

Returns: true if `x` is an object created from a class which extends `Construct`.

func VaultProvider_IsTerraformElement

func VaultProvider_IsTerraformElement(x interface{}) *bool

Experimental.

func VaultProvider_IsTerraformProvider

func VaultProvider_IsTerraformProvider(x interface{}) *bool

Experimental.

func VaultProvider_TfResourceType

func VaultProvider_TfResourceType() *string

Types

type VaultProvider

type VaultProvider interface {
	cdktf.TerraformProvider
	AddAddressToEnv() *string
	SetAddAddressToEnv(val *string)
	AddAddressToEnvInput() *string
	Address() *string
	SetAddress(val *string)
	AddressInput() *string
	Alias() *string
	SetAlias(val *string)
	AliasInput() *string
	AuthLogin() *VaultProviderAuthLogin
	SetAuthLogin(val *VaultProviderAuthLogin)
	AuthLoginAws() *VaultProviderAuthLoginAws
	SetAuthLoginAws(val *VaultProviderAuthLoginAws)
	AuthLoginAwsInput() *VaultProviderAuthLoginAws
	AuthLoginAzure() *VaultProviderAuthLoginAzure
	SetAuthLoginAzure(val *VaultProviderAuthLoginAzure)
	AuthLoginAzureInput() *VaultProviderAuthLoginAzure
	AuthLoginCert() *VaultProviderAuthLoginCert
	SetAuthLoginCert(val *VaultProviderAuthLoginCert)
	AuthLoginCertInput() *VaultProviderAuthLoginCert
	AuthLoginGcp() *VaultProviderAuthLoginGcp
	SetAuthLoginGcp(val *VaultProviderAuthLoginGcp)
	AuthLoginGcpInput() *VaultProviderAuthLoginGcp
	AuthLoginInput() *VaultProviderAuthLogin
	AuthLoginJwt() *VaultProviderAuthLoginJwt
	SetAuthLoginJwt(val *VaultProviderAuthLoginJwt)
	AuthLoginJwtInput() *VaultProviderAuthLoginJwt
	AuthLoginKerberos() *VaultProviderAuthLoginKerberos
	SetAuthLoginKerberos(val *VaultProviderAuthLoginKerberos)
	AuthLoginKerberosInput() *VaultProviderAuthLoginKerberos
	AuthLoginOci() *VaultProviderAuthLoginOci
	SetAuthLoginOci(val *VaultProviderAuthLoginOci)
	AuthLoginOciInput() *VaultProviderAuthLoginOci
	AuthLoginOidc() *VaultProviderAuthLoginOidc
	SetAuthLoginOidc(val *VaultProviderAuthLoginOidc)
	AuthLoginOidcInput() *VaultProviderAuthLoginOidc
	AuthLoginRadius() *VaultProviderAuthLoginRadius
	SetAuthLoginRadius(val *VaultProviderAuthLoginRadius)
	AuthLoginRadiusInput() *VaultProviderAuthLoginRadius
	AuthLoginUserpass() *VaultProviderAuthLoginUserpass
	SetAuthLoginUserpass(val *VaultProviderAuthLoginUserpass)
	AuthLoginUserpassInput() *VaultProviderAuthLoginUserpass
	CaCertDir() *string
	SetCaCertDir(val *string)
	CaCertDirInput() *string
	CaCertFile() *string
	SetCaCertFile(val *string)
	CaCertFileInput() *string
	// Experimental.
	CdktfStack() cdktf.TerraformStack
	ClientAuth() *VaultProviderClientAuth
	SetClientAuth(val *VaultProviderClientAuth)
	ClientAuthInput() *VaultProviderClientAuth
	// Experimental.
	ConstructNodeMetadata() *map[string]interface{}
	// Experimental.
	Fqn() *string
	// Experimental.
	FriendlyUniqueId() *string
	Headers() interface{}
	SetHeaders(val interface{})
	HeadersInput() interface{}
	MaxLeaseTtlSeconds() *float64
	SetMaxLeaseTtlSeconds(val *float64)
	MaxLeaseTtlSecondsInput() *float64
	MaxRetries() *float64
	SetMaxRetries(val *float64)
	MaxRetriesCcc() *float64
	SetMaxRetriesCcc(val *float64)
	MaxRetriesCccInput() *float64
	MaxRetriesInput() *float64
	// Experimental.
	MetaAttributes() *map[string]interface{}
	Namespace() *string
	SetNamespace(val *string)
	NamespaceInput() *string
	// The tree node.
	Node() constructs.Node
	// Experimental.
	RawOverrides() interface{}
	SkipChildToken() interface{}
	SetSkipChildToken(val interface{})
	SkipChildTokenInput() interface{}
	SkipGetVaultVersion() interface{}
	SetSkipGetVaultVersion(val interface{})
	SkipGetVaultVersionInput() interface{}
	SkipTlsVerify() interface{}
	SetSkipTlsVerify(val interface{})
	SkipTlsVerifyInput() interface{}
	// Experimental.
	TerraformGeneratorMetadata() *cdktf.TerraformProviderGeneratorMetadata
	// Experimental.
	TerraformProviderSource() *string
	// Experimental.
	TerraformResourceType() *string
	TlsServerName() *string
	SetTlsServerName(val *string)
	TlsServerNameInput() *string
	Token() *string
	SetToken(val *string)
	TokenInput() *string
	TokenName() *string
	SetTokenName(val *string)
	TokenNameInput() *string
	VaultVersionOverride() *string
	SetVaultVersionOverride(val *string)
	VaultVersionOverrideInput() *string
	// Experimental.
	AddOverride(path *string, value interface{})
	// Overrides the auto-generated logical ID with a specific ID.
	// Experimental.
	OverrideLogicalId(newLogicalId *string)
	ResetAddAddressToEnv()
	ResetAlias()
	ResetAuthLogin()
	ResetAuthLoginAws()
	ResetAuthLoginAzure()
	ResetAuthLoginCert()
	ResetAuthLoginGcp()
	ResetAuthLoginJwt()
	ResetAuthLoginKerberos()
	ResetAuthLoginOci()
	ResetAuthLoginOidc()
	ResetAuthLoginRadius()
	ResetAuthLoginUserpass()
	ResetCaCertDir()
	ResetCaCertFile()
	ResetClientAuth()
	ResetHeaders()
	ResetMaxLeaseTtlSeconds()
	ResetMaxRetries()
	ResetMaxRetriesCcc()
	ResetNamespace()
	// Resets a previously passed logical Id to use the auto-generated logical id again.
	// Experimental.
	ResetOverrideLogicalId()
	ResetSkipChildToken()
	ResetSkipGetVaultVersion()
	ResetSkipTlsVerify()
	ResetTlsServerName()
	ResetToken()
	ResetTokenName()
	ResetVaultVersionOverride()
	SynthesizeAttributes() *map[string]interface{}
	// Experimental.
	ToMetadata() interface{}
	// Returns a string representation of this construct.
	ToString() *string
	// Adds this resource to the terraform JSON output.
	// Experimental.
	ToTerraform() interface{}
}

Represents a {@link https://www.terraform.io/docs/providers/vault vault}.

func NewVaultProvider

func NewVaultProvider(scope constructs.Construct, id *string, config *VaultProviderConfig) VaultProvider

Create a new {@link https://www.terraform.io/docs/providers/vault vault} Resource.

type VaultProviderAuthLogin

type VaultProviderAuthLogin struct {
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/vault#path VaultProvider#path}.
	Path *string `field:"required" json:"path" yaml:"path"`
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/vault#method VaultProvider#method}.
	Method *string `field:"optional" json:"method" yaml:"method"`
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/vault#namespace VaultProvider#namespace}.
	Namespace *string `field:"optional" json:"namespace" yaml:"namespace"`
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/vault#parameters VaultProvider#parameters}.
	Parameters *map[string]*string `field:"optional" json:"parameters" yaml:"parameters"`
}

type VaultProviderAuthLoginAws

type VaultProviderAuthLoginAws struct {
	// The Vault role to use when logging into Vault.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/vault#role VaultProvider#role}
	Role *string `field:"required" json:"role" yaml:"role"`
	// The AWS access key ID.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/vault#aws_access_key_id VaultProvider#aws_access_key_id}
	AwsAccessKeyId *string `field:"optional" json:"awsAccessKeyId" yaml:"awsAccessKeyId"`
	// The IAM endpoint URL.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/vault#aws_iam_endpoint VaultProvider#aws_iam_endpoint}
	AwsIamEndpoint *string `field:"optional" json:"awsIamEndpoint" yaml:"awsIamEndpoint"`
	// The name of the AWS profile.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/vault#aws_profile VaultProvider#aws_profile}
	AwsProfile *string `field:"optional" json:"awsProfile" yaml:"awsProfile"`
	// The AWS region.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/vault#aws_region VaultProvider#aws_region}
	AwsRegion *string `field:"optional" json:"awsRegion" yaml:"awsRegion"`
	// The ARN of the AWS Role to assume.Used during STS AssumeRole.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/vault#aws_role_arn VaultProvider#aws_role_arn}
	AwsRoleArn *string `field:"optional" json:"awsRoleArn" yaml:"awsRoleArn"`
	// Specifies the name to attach to the AWS role session. Used during STS AssumeRole.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/vault#aws_role_session_name VaultProvider#aws_role_session_name}
	AwsRoleSessionName *string `field:"optional" json:"awsRoleSessionName" yaml:"awsRoleSessionName"`
	// The AWS secret access key.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/vault#aws_secret_access_key VaultProvider#aws_secret_access_key}
	AwsSecretAccessKey *string `field:"optional" json:"awsSecretAccessKey" yaml:"awsSecretAccessKey"`
	// The AWS session token.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/vault#aws_session_token VaultProvider#aws_session_token}
	AwsSessionToken *string `field:"optional" json:"awsSessionToken" yaml:"awsSessionToken"`
	// Path to the AWS shared credentials file.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/vault#aws_shared_credentials_file VaultProvider#aws_shared_credentials_file}
	AwsSharedCredentialsFile *string `field:"optional" json:"awsSharedCredentialsFile" yaml:"awsSharedCredentialsFile"`
	// The STS endpoint URL.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/vault#aws_sts_endpoint VaultProvider#aws_sts_endpoint}
	AwsStsEndpoint *string `field:"optional" json:"awsStsEndpoint" yaml:"awsStsEndpoint"`
	// Path to the file containing an OAuth 2.0 access token or OpenID Connect ID token.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/vault#aws_web_identity_token_file VaultProvider#aws_web_identity_token_file}
	AwsWebIdentityTokenFile *string `field:"optional" json:"awsWebIdentityTokenFile" yaml:"awsWebIdentityTokenFile"`
	// The Vault header value to include in the STS signing request.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/vault#header_value VaultProvider#header_value}
	HeaderValue *string `field:"optional" json:"headerValue" yaml:"headerValue"`
	// The path where the authentication engine is mounted.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/vault#mount VaultProvider#mount}
	Mount *string `field:"optional" json:"mount" yaml:"mount"`
	// The authentication engine's namespace.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/vault#namespace VaultProvider#namespace}
	Namespace *string `field:"optional" json:"namespace" yaml:"namespace"`
}

type VaultProviderAuthLoginAzure

type VaultProviderAuthLoginAzure struct {
	// The resource group for the machine that generated the MSI token. This information can be obtained through instance metadata.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/vault#resource_group_name VaultProvider#resource_group_name}
	ResourceGroupName *string `field:"required" json:"resourceGroupName" yaml:"resourceGroupName"`
	// Name of the login role.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/vault#role VaultProvider#role}
	Role *string `field:"required" json:"role" yaml:"role"`
	// The subscription ID for the machine that generated the MSI token. This information can be obtained through instance metadata.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/vault#subscription_id VaultProvider#subscription_id}
	SubscriptionId *string `field:"required" json:"subscriptionId" yaml:"subscriptionId"`
	// The identity's client ID.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/vault#client_id VaultProvider#client_id}
	ClientId *string `field:"optional" json:"clientId" yaml:"clientId"`
	// A signed JSON Web Token. If not specified on will be created automatically.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/vault#jwt VaultProvider#jwt}
	Jwt *string `field:"optional" json:"jwt" yaml:"jwt"`
	// The path where the authentication engine is mounted.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/vault#mount VaultProvider#mount}
	Mount *string `field:"optional" json:"mount" yaml:"mount"`
	// The authentication engine's namespace.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/vault#namespace VaultProvider#namespace}
	Namespace *string `field:"optional" json:"namespace" yaml:"namespace"`
	// The scopes to include in the token request.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/vault#scope VaultProvider#scope}
	Scope *string `field:"optional" json:"scope" yaml:"scope"`
	// Provides the tenant ID to use in a multi-tenant authentication scenario.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/vault#tenant_id VaultProvider#tenant_id}
	TenantId *string `field:"optional" json:"tenantId" yaml:"tenantId"`
	// The virtual machine name for the machine that generated the MSI token.
	//
	// This information can be obtained through instance metadata.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/vault#vm_name VaultProvider#vm_name}
	VmName *string `field:"optional" json:"vmName" yaml:"vmName"`
	// The virtual machine scale set name for the machine that generated the MSI token.
	//
	// This information can be obtained through instance metadata.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/vault#vmss_name VaultProvider#vmss_name}
	VmssName *string `field:"optional" json:"vmssName" yaml:"vmssName"`
}

type VaultProviderAuthLoginCert

type VaultProviderAuthLoginCert struct {
	// Path to a file containing the client certificate.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/vault#cert_file VaultProvider#cert_file}
	CertFile *string `field:"required" json:"certFile" yaml:"certFile"`
	// Path to a file containing the private key that the certificate was issued for.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/vault#key_file VaultProvider#key_file}
	KeyFile *string `field:"required" json:"keyFile" yaml:"keyFile"`
	// The path where the authentication engine is mounted.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/vault#mount VaultProvider#mount}
	Mount *string `field:"optional" json:"mount" yaml:"mount"`
	// Name of the certificate's role.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/vault#name VaultProvider#name}
	Name *string `field:"optional" json:"name" yaml:"name"`
	// The authentication engine's namespace.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/vault#namespace VaultProvider#namespace}
	Namespace *string `field:"optional" json:"namespace" yaml:"namespace"`
}

type VaultProviderAuthLoginGcp

type VaultProviderAuthLoginGcp struct {
	// Name of the login role.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/vault#role VaultProvider#role}
	Role *string `field:"required" json:"role" yaml:"role"`
	// Path to the Google Cloud credentials file.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/vault#credentials VaultProvider#credentials}
	Credentials *string `field:"optional" json:"credentials" yaml:"credentials"`
	// A signed JSON Web Token.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/vault#jwt VaultProvider#jwt}
	Jwt *string `field:"optional" json:"jwt" yaml:"jwt"`
	// The path where the authentication engine is mounted.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/vault#mount VaultProvider#mount}
	Mount *string `field:"optional" json:"mount" yaml:"mount"`
	// The authentication engine's namespace.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/vault#namespace VaultProvider#namespace}
	Namespace *string `field:"optional" json:"namespace" yaml:"namespace"`
	// IAM service account.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/vault#service_account VaultProvider#service_account}
	ServiceAccount *string `field:"optional" json:"serviceAccount" yaml:"serviceAccount"`
}

type VaultProviderAuthLoginJwt

type VaultProviderAuthLoginJwt struct {
	// A signed JSON Web Token.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/vault#jwt VaultProvider#jwt}
	Jwt *string `field:"required" json:"jwt" yaml:"jwt"`
	// Name of the login role.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/vault#role VaultProvider#role}
	Role *string `field:"required" json:"role" yaml:"role"`
	// The path where the authentication engine is mounted.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/vault#mount VaultProvider#mount}
	Mount *string `field:"optional" json:"mount" yaml:"mount"`
	// The authentication engine's namespace.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/vault#namespace VaultProvider#namespace}
	Namespace *string `field:"optional" json:"namespace" yaml:"namespace"`
}

type VaultProviderAuthLoginKerberos

type VaultProviderAuthLoginKerberos struct {
	// Disable the Kerberos FAST negotiation.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/vault#disable_fast_negotiation VaultProvider#disable_fast_negotiation}
	DisableFastNegotiation interface{} `field:"optional" json:"disableFastNegotiation" yaml:"disableFastNegotiation"`
	// The Kerberos keytab file containing the entry of the login entity.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/vault#keytab_path VaultProvider#keytab_path}
	KeytabPath *string `field:"optional" json:"keytabPath" yaml:"keytabPath"`
	// A valid Kerberos configuration file e.g. /etc/krb5.conf.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/vault#krb5conf_path VaultProvider#krb5conf_path}
	Krb5ConfPath *string `field:"optional" json:"krb5ConfPath" yaml:"krb5ConfPath"`
	// The path where the authentication engine is mounted.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/vault#mount VaultProvider#mount}
	Mount *string `field:"optional" json:"mount" yaml:"mount"`
	// The authentication engine's namespace.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/vault#namespace VaultProvider#namespace}
	Namespace *string `field:"optional" json:"namespace" yaml:"namespace"`
	// The Kerberos server's authoritative authentication domain.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/vault#realm VaultProvider#realm}
	Realm *string `field:"optional" json:"realm" yaml:"realm"`
	// Strip the host from the username found in the keytab.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/vault#remove_instance_name VaultProvider#remove_instance_name}
	RemoveInstanceName interface{} `field:"optional" json:"removeInstanceName" yaml:"removeInstanceName"`
	// The service principle name.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/vault#service VaultProvider#service}
	Service *string `field:"optional" json:"service" yaml:"service"`
	// Simple and Protected GSSAPI Negotiation Mechanism (SPNEGO) token.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/vault#token VaultProvider#token}
	Token *string `field:"optional" json:"token" yaml:"token"`
	// The username to login into Kerberos with.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/vault#username VaultProvider#username}
	Username *string `field:"optional" json:"username" yaml:"username"`
}

type VaultProviderAuthLoginOci

type VaultProviderAuthLoginOci struct {
	// Authentication type to use when getting OCI credentials.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/vault#auth_type VaultProvider#auth_type}
	AuthType *string `field:"required" json:"authType" yaml:"authType"`
	// Name of the login role.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/vault#role VaultProvider#role}
	Role *string `field:"required" json:"role" yaml:"role"`
	// The path where the authentication engine is mounted.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/vault#mount VaultProvider#mount}
	Mount *string `field:"optional" json:"mount" yaml:"mount"`
	// The authentication engine's namespace.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/vault#namespace VaultProvider#namespace}
	Namespace *string `field:"optional" json:"namespace" yaml:"namespace"`
}

type VaultProviderAuthLoginOidc

type VaultProviderAuthLoginOidc struct {
	// Name of the login role.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/vault#role VaultProvider#role}
	Role *string `field:"required" json:"role" yaml:"role"`
	// The callback address. Must be a valid URI without the path.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/vault#callback_address VaultProvider#callback_address}
	CallbackAddress *string `field:"optional" json:"callbackAddress" yaml:"callbackAddress"`
	// The callback listener's address. Must be a valid URI without the path.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/vault#callback_listener_address VaultProvider#callback_listener_address}
	CallbackListenerAddress *string `field:"optional" json:"callbackListenerAddress" yaml:"callbackListenerAddress"`
	// The path where the authentication engine is mounted.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/vault#mount VaultProvider#mount}
	Mount *string `field:"optional" json:"mount" yaml:"mount"`
	// The authentication engine's namespace.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/vault#namespace VaultProvider#namespace}
	Namespace *string `field:"optional" json:"namespace" yaml:"namespace"`
}

type VaultProviderAuthLoginRadius

type VaultProviderAuthLoginRadius struct {
	// The Radius password for username.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/vault#password VaultProvider#password}
	Password *string `field:"required" json:"password" yaml:"password"`
	// The Radius username.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/vault#username VaultProvider#username}
	Username *string `field:"required" json:"username" yaml:"username"`
	// The path where the authentication engine is mounted.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/vault#mount VaultProvider#mount}
	Mount *string `field:"optional" json:"mount" yaml:"mount"`
	// The authentication engine's namespace.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/vault#namespace VaultProvider#namespace}
	Namespace *string `field:"optional" json:"namespace" yaml:"namespace"`
}

type VaultProviderAuthLoginUserpass

type VaultProviderAuthLoginUserpass struct {
	// Login with username.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/vault#username VaultProvider#username}
	Username *string `field:"required" json:"username" yaml:"username"`
	// The path where the authentication engine is mounted.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/vault#mount VaultProvider#mount}
	Mount *string `field:"optional" json:"mount" yaml:"mount"`
	// The authentication engine's namespace.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/vault#namespace VaultProvider#namespace}
	Namespace *string `field:"optional" json:"namespace" yaml:"namespace"`
	// Login with password.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/vault#password VaultProvider#password}
	Password *string `field:"optional" json:"password" yaml:"password"`
	// Login with password from a file.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/vault#password_file VaultProvider#password_file}
	PasswordFile *string `field:"optional" json:"passwordFile" yaml:"passwordFile"`
}

type VaultProviderClientAuth

type VaultProviderClientAuth struct {
	// Path to a file containing the client certificate.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/vault#cert_file VaultProvider#cert_file}
	CertFile *string `field:"optional" json:"certFile" yaml:"certFile"`
	// Path to a file containing the private key that the certificate was issued for.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/vault#key_file VaultProvider#key_file}
	KeyFile *string `field:"optional" json:"keyFile" yaml:"keyFile"`
}

type VaultProviderConfig

type VaultProviderConfig struct {
	// URL of the root of the target Vault server.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/vault#address VaultProvider#address}
	Address *string `field:"required" json:"address" yaml:"address"`
	// If true, adds the value of the `address` argument to the Terraform process environment.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/vault#add_address_to_env VaultProvider#add_address_to_env}
	AddAddressToEnv *string `field:"optional" json:"addAddressToEnv" yaml:"addAddressToEnv"`
	// Alias name.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/vault#alias VaultProvider#alias}
	Alias *string `field:"optional" json:"alias" yaml:"alias"`
	// auth_login block.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/vault#auth_login VaultProvider#auth_login}
	AuthLogin *VaultProviderAuthLogin `field:"optional" json:"authLogin" yaml:"authLogin"`
	// auth_login_aws block.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/vault#auth_login_aws VaultProvider#auth_login_aws}
	AuthLoginAws *VaultProviderAuthLoginAws `field:"optional" json:"authLoginAws" yaml:"authLoginAws"`
	// auth_login_azure block.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/vault#auth_login_azure VaultProvider#auth_login_azure}
	AuthLoginAzure *VaultProviderAuthLoginAzure `field:"optional" json:"authLoginAzure" yaml:"authLoginAzure"`
	// auth_login_cert block.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/vault#auth_login_cert VaultProvider#auth_login_cert}
	AuthLoginCert *VaultProviderAuthLoginCert `field:"optional" json:"authLoginCert" yaml:"authLoginCert"`
	// auth_login_gcp block.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/vault#auth_login_gcp VaultProvider#auth_login_gcp}
	AuthLoginGcp *VaultProviderAuthLoginGcp `field:"optional" json:"authLoginGcp" yaml:"authLoginGcp"`
	// auth_login_jwt block.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/vault#auth_login_jwt VaultProvider#auth_login_jwt}
	AuthLoginJwt *VaultProviderAuthLoginJwt `field:"optional" json:"authLoginJwt" yaml:"authLoginJwt"`
	// auth_login_kerberos block.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/vault#auth_login_kerberos VaultProvider#auth_login_kerberos}
	AuthLoginKerberos *VaultProviderAuthLoginKerberos `field:"optional" json:"authLoginKerberos" yaml:"authLoginKerberos"`
	// auth_login_oci block.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/vault#auth_login_oci VaultProvider#auth_login_oci}
	AuthLoginOci *VaultProviderAuthLoginOci `field:"optional" json:"authLoginOci" yaml:"authLoginOci"`
	// auth_login_oidc block.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/vault#auth_login_oidc VaultProvider#auth_login_oidc}
	AuthLoginOidc *VaultProviderAuthLoginOidc `field:"optional" json:"authLoginOidc" yaml:"authLoginOidc"`
	// auth_login_radius block.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/vault#auth_login_radius VaultProvider#auth_login_radius}
	AuthLoginRadius *VaultProviderAuthLoginRadius `field:"optional" json:"authLoginRadius" yaml:"authLoginRadius"`
	// auth_login_userpass block.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/vault#auth_login_userpass VaultProvider#auth_login_userpass}
	AuthLoginUserpass *VaultProviderAuthLoginUserpass `field:"optional" json:"authLoginUserpass" yaml:"authLoginUserpass"`
	// Path to directory containing CA certificate files to validate the server's certificate.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/vault#ca_cert_dir VaultProvider#ca_cert_dir}
	CaCertDir *string `field:"optional" json:"caCertDir" yaml:"caCertDir"`
	// Path to a CA certificate file to validate the server's certificate.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/vault#ca_cert_file VaultProvider#ca_cert_file}
	CaCertFile *string `field:"optional" json:"caCertFile" yaml:"caCertFile"`
	// client_auth block.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/vault#client_auth VaultProvider#client_auth}
	ClientAuth *VaultProviderClientAuth `field:"optional" json:"clientAuth" yaml:"clientAuth"`
	// headers block.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/vault#headers VaultProvider#headers}
	Headers interface{} `field:"optional" json:"headers" yaml:"headers"`
	// Maximum TTL for secret leases requested by this provider.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/vault#max_lease_ttl_seconds VaultProvider#max_lease_ttl_seconds}
	MaxLeaseTtlSeconds *float64 `field:"optional" json:"maxLeaseTtlSeconds" yaml:"maxLeaseTtlSeconds"`
	// Maximum number of retries when a 5xx error code is encountered.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/vault#max_retries VaultProvider#max_retries}
	MaxRetries *float64 `field:"optional" json:"maxRetries" yaml:"maxRetries"`
	// Maximum number of retries for Client Controlled Consistency related operations.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/vault#max_retries_ccc VaultProvider#max_retries_ccc}
	MaxRetriesCcc *float64 `field:"optional" json:"maxRetriesCcc" yaml:"maxRetriesCcc"`
	// The namespace to use. Available only for Vault Enterprise.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/vault#namespace VaultProvider#namespace}
	Namespace *string `field:"optional" json:"namespace" yaml:"namespace"`
	// Set this to true to prevent the creation of ephemeral child token used by this provider.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/vault#skip_child_token VaultProvider#skip_child_token}
	SkipChildToken interface{} `field:"optional" json:"skipChildToken" yaml:"skipChildToken"`
	// Skip the dynamic fetching of the Vault server version.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/vault#skip_get_vault_version VaultProvider#skip_get_vault_version}
	SkipGetVaultVersion interface{} `field:"optional" json:"skipGetVaultVersion" yaml:"skipGetVaultVersion"`
	// Set this to true only if the target Vault server is an insecure development instance.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/vault#skip_tls_verify VaultProvider#skip_tls_verify}
	SkipTlsVerify interface{} `field:"optional" json:"skipTlsVerify" yaml:"skipTlsVerify"`
	// Name to use as the SNI host when connecting via TLS.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/vault#tls_server_name VaultProvider#tls_server_name}
	TlsServerName *string `field:"optional" json:"tlsServerName" yaml:"tlsServerName"`
	// Token to use to authenticate to Vault.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/vault#token VaultProvider#token}
	Token *string `field:"optional" json:"token" yaml:"token"`
	// Token name to use for creating the Vault child token.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/vault#token_name VaultProvider#token_name}
	TokenName *string `field:"optional" json:"tokenName" yaml:"tokenName"`
	// Override the Vault server version, which is normally determined dynamically from the target Vault server.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/vault#vault_version_override VaultProvider#vault_version_override}
	VaultVersionOverride *string `field:"optional" json:"vaultVersionOverride" yaml:"vaultVersionOverride"`
}

type VaultProviderHeaders

type VaultProviderHeaders struct {
	// The header name.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/vault#name VaultProvider#name}
	Name *string `field:"required" json:"name" yaml:"name"`
	// The header value.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/vault#value VaultProvider#value}
	Value *string `field:"required" json:"value" yaml:"value"`
}

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL