adsecretbackend

package
v5.0.2 Latest Latest
Warning

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

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

README

vault_ad_secret_backend

Refer to the Terraform Registory for docs: vault_ad_secret_backend.

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func AdSecretBackend_IsConstruct

func AdSecretBackend_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 AdSecretBackend_IsTerraformElement

func AdSecretBackend_IsTerraformElement(x interface{}) *bool

Experimental.

func AdSecretBackend_IsTerraformResource

func AdSecretBackend_IsTerraformResource(x interface{}) *bool

Experimental.

func AdSecretBackend_TfResourceType

func AdSecretBackend_TfResourceType() *string

func NewAdSecretBackend_Override

func NewAdSecretBackend_Override(a AdSecretBackend, scope constructs.Construct, id *string, config *AdSecretBackendConfig)

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

Types

type AdSecretBackend

type AdSecretBackend interface {
	cdktf.TerraformResource
	AnonymousGroupSearch() interface{}
	SetAnonymousGroupSearch(val interface{})
	AnonymousGroupSearchInput() interface{}
	Backend() *string
	SetBackend(val *string)
	BackendInput() *string
	Binddn() *string
	SetBinddn(val *string)
	BinddnInput() *string
	Bindpass() *string
	SetBindpass(val *string)
	BindpassInput() *string
	CaseSensitiveNames() interface{}
	SetCaseSensitiveNames(val interface{})
	CaseSensitiveNamesInput() interface{}
	// Experimental.
	CdktfStack() cdktf.TerraformStack
	Certificate() *string
	SetCertificate(val *string)
	CertificateInput() *string
	ClientTlsCert() *string
	SetClientTlsCert(val *string)
	ClientTlsCertInput() *string
	ClientTlsKey() *string
	SetClientTlsKey(val *string)
	ClientTlsKeyInput() *string
	// Experimental.
	Connection() interface{}
	// Experimental.
	SetConnection(val interface{})
	// Experimental.
	ConstructNodeMetadata() *map[string]interface{}
	// Experimental.
	Count() *float64
	// Experimental.
	SetCount(val *float64)
	DefaultLeaseTtlSeconds() *float64
	SetDefaultLeaseTtlSeconds(val *float64)
	DefaultLeaseTtlSecondsInput() *float64
	DenyNullBind() interface{}
	SetDenyNullBind(val interface{})
	DenyNullBindInput() interface{}
	// Experimental.
	DependsOn() *[]*string
	// Experimental.
	SetDependsOn(val *[]*string)
	Description() *string
	SetDescription(val *string)
	DescriptionInput() *string
	DisableRemount() interface{}
	SetDisableRemount(val interface{})
	DisableRemountInput() interface{}
	Discoverdn() interface{}
	SetDiscoverdn(val interface{})
	DiscoverdnInput() interface{}
	// Experimental.
	ForEach() cdktf.ITerraformIterator
	// Experimental.
	SetForEach(val cdktf.ITerraformIterator)
	Formatter() *string
	SetFormatter(val *string)
	FormatterInput() *string
	// Experimental.
	Fqn() *string
	// Experimental.
	FriendlyUniqueId() *string
	Groupattr() *string
	SetGroupattr(val *string)
	GroupattrInput() *string
	Groupdn() *string
	SetGroupdn(val *string)
	GroupdnInput() *string
	Groupfilter() *string
	SetGroupfilter(val *string)
	GroupfilterInput() *string
	Id() *string
	SetId(val *string)
	IdInput() *string
	InsecureTls() interface{}
	SetInsecureTls(val interface{})
	InsecureTlsInput() interface{}
	LastRotationTolerance() *float64
	SetLastRotationTolerance(val *float64)
	LastRotationToleranceInput() *float64
	Length() *float64
	SetLength(val *float64)
	LengthInput() *float64
	// Experimental.
	Lifecycle() *cdktf.TerraformResourceLifecycle
	// Experimental.
	SetLifecycle(val *cdktf.TerraformResourceLifecycle)
	Local() interface{}
	SetLocal(val interface{})
	LocalInput() interface{}
	MaxLeaseTtlSeconds() *float64
	SetMaxLeaseTtlSeconds(val *float64)
	MaxLeaseTtlSecondsInput() *float64
	MaxTtl() *float64
	SetMaxTtl(val *float64)
	MaxTtlInput() *float64
	Namespace() *string
	SetNamespace(val *string)
	NamespaceInput() *string
	// The tree node.
	Node() constructs.Node
	PasswordPolicy() *string
	SetPasswordPolicy(val *string)
	PasswordPolicyInput() *string
	// Experimental.
	Provider() cdktf.TerraformProvider
	// Experimental.
	SetProvider(val cdktf.TerraformProvider)
	// Experimental.
	Provisioners() *[]interface{}
	// Experimental.
	SetProvisioners(val *[]interface{})
	// Experimental.
	RawOverrides() interface{}
	RequestTimeout() *float64
	SetRequestTimeout(val *float64)
	RequestTimeoutInput() *float64
	Starttls() interface{}
	SetStarttls(val interface{})
	StarttlsInput() interface{}
	// Experimental.
	TerraformGeneratorMetadata() *cdktf.TerraformProviderGeneratorMetadata
	// Experimental.
	TerraformMetaArguments() *map[string]interface{}
	// Experimental.
	TerraformResourceType() *string
	TlsMaxVersion() *string
	SetTlsMaxVersion(val *string)
	TlsMaxVersionInput() *string
	TlsMinVersion() *string
	SetTlsMinVersion(val *string)
	TlsMinVersionInput() *string
	Ttl() *float64
	SetTtl(val *float64)
	TtlInput() *float64
	Upndomain() *string
	SetUpndomain(val *string)
	UpndomainInput() *string
	Url() *string
	SetUrl(val *string)
	UrlInput() *string
	UsePre111GroupCnBehavior() interface{}
	SetUsePre111GroupCnBehavior(val interface{})
	UsePre111GroupCnBehaviorInput() interface{}
	Userattr() *string
	SetUserattr(val *string)
	UserattrInput() *string
	Userdn() *string
	SetUserdn(val *string)
	UserdnInput() *string
	UseTokenGroups() interface{}
	SetUseTokenGroups(val interface{})
	UseTokenGroupsInput() interface{}
	// Experimental.
	AddOverride(path *string, value interface{})
	// Experimental.
	GetAnyMapAttribute(terraformAttribute *string) *map[string]interface{}
	// Experimental.
	GetBooleanAttribute(terraformAttribute *string) cdktf.IResolvable
	// Experimental.
	GetBooleanMapAttribute(terraformAttribute *string) *map[string]*bool
	// Experimental.
	GetListAttribute(terraformAttribute *string) *[]*string
	// Experimental.
	GetNumberAttribute(terraformAttribute *string) *float64
	// Experimental.
	GetNumberListAttribute(terraformAttribute *string) *[]*float64
	// Experimental.
	GetNumberMapAttribute(terraformAttribute *string) *map[string]*float64
	// Experimental.
	GetStringAttribute(terraformAttribute *string) *string
	// Experimental.
	GetStringMapAttribute(terraformAttribute *string) *map[string]*string
	// Experimental.
	InterpolationForAttribute(terraformAttribute *string) cdktf.IResolvable
	// Overrides the auto-generated logical ID with a specific ID.
	// Experimental.
	OverrideLogicalId(newLogicalId *string)
	ResetAnonymousGroupSearch()
	ResetBackend()
	ResetCaseSensitiveNames()
	ResetCertificate()
	ResetClientTlsCert()
	ResetClientTlsKey()
	ResetDefaultLeaseTtlSeconds()
	ResetDenyNullBind()
	ResetDescription()
	ResetDisableRemount()
	ResetDiscoverdn()
	ResetFormatter()
	ResetGroupattr()
	ResetGroupdn()
	ResetGroupfilter()
	ResetId()
	ResetInsecureTls()
	ResetLastRotationTolerance()
	ResetLength()
	ResetLocal()
	ResetMaxLeaseTtlSeconds()
	ResetMaxTtl()
	ResetNamespace()
	// Resets a previously passed logical Id to use the auto-generated logical id again.
	// Experimental.
	ResetOverrideLogicalId()
	ResetPasswordPolicy()
	ResetRequestTimeout()
	ResetStarttls()
	ResetTlsMaxVersion()
	ResetTlsMinVersion()
	ResetTtl()
	ResetUpndomain()
	ResetUrl()
	ResetUsePre111GroupCnBehavior()
	ResetUserattr()
	ResetUserdn()
	ResetUseTokenGroups()
	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/r/ad_secret_backend vault_ad_secret_backend}.

func NewAdSecretBackend

func NewAdSecretBackend(scope constructs.Construct, id *string, config *AdSecretBackendConfig) AdSecretBackend

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

type AdSecretBackendConfig

type AdSecretBackendConfig struct {
	// Experimental.
	Connection interface{} `field:"optional" json:"connection" yaml:"connection"`
	// Experimental.
	Count *float64 `field:"optional" json:"count" yaml:"count"`
	// Experimental.
	DependsOn *[]cdktf.ITerraformDependable `field:"optional" json:"dependsOn" yaml:"dependsOn"`
	// Experimental.
	ForEach cdktf.ITerraformIterator `field:"optional" json:"forEach" yaml:"forEach"`
	// Experimental.
	Lifecycle *cdktf.TerraformResourceLifecycle `field:"optional" json:"lifecycle" yaml:"lifecycle"`
	// Experimental.
	Provider cdktf.TerraformProvider `field:"optional" json:"provider" yaml:"provider"`
	// Experimental.
	Provisioners *[]interface{} `field:"optional" json:"provisioners" yaml:"provisioners"`
	// Distinguished name of object to bind when performing user and group search.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/vault/r/ad_secret_backend#binddn AdSecretBackend#binddn}
	Binddn *string `field:"required" json:"binddn" yaml:"binddn"`
	// LDAP password for searching for the user DN.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/vault/r/ad_secret_backend#bindpass AdSecretBackend#bindpass}
	Bindpass *string `field:"required" json:"bindpass" yaml:"bindpass"`
	// Use anonymous binds when performing LDAP group searches (if true the initial credentials will still be used for the initial connection test).
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/vault/r/ad_secret_backend#anonymous_group_search AdSecretBackend#anonymous_group_search}
	AnonymousGroupSearch interface{} `field:"optional" json:"anonymousGroupSearch" yaml:"anonymousGroupSearch"`
	// The mount path for a backend, for example, the path given in "$ vault auth enable -path=my-ad ad".
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/vault/r/ad_secret_backend#backend AdSecretBackend#backend}
	Backend *string `field:"optional" json:"backend" yaml:"backend"`
	// If true, case sensitivity will be used when comparing usernames and groups for matching policies.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/vault/r/ad_secret_backend#case_sensitive_names AdSecretBackend#case_sensitive_names}
	CaseSensitiveNames interface{} `field:"optional" json:"caseSensitiveNames" yaml:"caseSensitiveNames"`
	// CA certificate to use when verifying LDAP server certificate, must be x509 PEM encoded.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/vault/r/ad_secret_backend#certificate AdSecretBackend#certificate}
	Certificate *string `field:"optional" json:"certificate" yaml:"certificate"`
	// Client certificate to provide to the LDAP server, must be x509 PEM encoded.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/vault/r/ad_secret_backend#client_tls_cert AdSecretBackend#client_tls_cert}
	ClientTlsCert *string `field:"optional" json:"clientTlsCert" yaml:"clientTlsCert"`
	// Client certificate key to provide to the LDAP server, must be x509 PEM encoded.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/vault/r/ad_secret_backend#client_tls_key AdSecretBackend#client_tls_key}
	ClientTlsKey *string `field:"optional" json:"clientTlsKey" yaml:"clientTlsKey"`
	// Default lease duration for secrets in seconds.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/vault/r/ad_secret_backend#default_lease_ttl_seconds AdSecretBackend#default_lease_ttl_seconds}
	DefaultLeaseTtlSeconds *float64 `field:"optional" json:"defaultLeaseTtlSeconds" yaml:"defaultLeaseTtlSeconds"`
	// Denies an unauthenticated LDAP bind request if the user's password is empty; defaults to true.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/vault/r/ad_secret_backend#deny_null_bind AdSecretBackend#deny_null_bind}
	DenyNullBind interface{} `field:"optional" json:"denyNullBind" yaml:"denyNullBind"`
	// Human-friendly description of the mount for the backend.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/vault/r/ad_secret_backend#description AdSecretBackend#description}
	Description *string `field:"optional" json:"description" yaml:"description"`
	// If set, opts out of mount migration on path updates.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/vault/r/ad_secret_backend#disable_remount AdSecretBackend#disable_remount}
	DisableRemount interface{} `field:"optional" json:"disableRemount" yaml:"disableRemount"`
	// Use anonymous bind to discover the bind DN of a user.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/vault/r/ad_secret_backend#discoverdn AdSecretBackend#discoverdn}
	Discoverdn interface{} `field:"optional" json:"discoverdn" yaml:"discoverdn"`
	// Text to insert the password into, ex. "customPrefix{{PASSWORD}}customSuffix".
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/vault/r/ad_secret_backend#formatter AdSecretBackend#formatter}
	Formatter *string `field:"optional" json:"formatter" yaml:"formatter"`
	// LDAP attribute to follow on objects returned by <groupfilter> in order to enumerate user group membership.
	//
	// Examples: "cn" or "memberOf", etc. Default: cn
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/vault/r/ad_secret_backend#groupattr AdSecretBackend#groupattr}
	Groupattr *string `field:"optional" json:"groupattr" yaml:"groupattr"`
	// LDAP search base to use for group membership search (eg: ou=Groups,dc=example,dc=org).
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/vault/r/ad_secret_backend#groupdn AdSecretBackend#groupdn}
	Groupdn *string `field:"optional" json:"groupdn" yaml:"groupdn"`
	// Go template for querying group membership of user.
	//
	// The template can access the following context variables: UserDN, Username Example: (&(objectClass=group)(member:1.2.840.113556.1.4.1941:={{.UserDN}})) Default: (|(memberUid={{.Username}})(member={{.UserDN}})(uniqueMember={{.UserDN}}))
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/vault/r/ad_secret_backend#groupfilter AdSecretBackend#groupfilter}
	Groupfilter *string `field:"optional" json:"groupfilter" yaml:"groupfilter"`
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/vault/r/ad_secret_backend#id AdSecretBackend#id}.
	//
	// Please be aware that the id field is automatically added to all resources in Terraform providers using a Terraform provider SDK version below 2.
	// If you experience problems setting this value it might not be settable. Please take a look at the provider documentation to ensure it should be settable.
	Id *string `field:"optional" json:"id" yaml:"id"`
	// Skip LDAP server SSL Certificate verification - insecure and not recommended for production use.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/vault/r/ad_secret_backend#insecure_tls AdSecretBackend#insecure_tls}
	InsecureTls interface{} `field:"optional" json:"insecureTls" yaml:"insecureTls"`
	// The number of seconds after a Vault rotation where, if Active Directory shows a later rotation, it should be considered out-of-band.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/vault/r/ad_secret_backend#last_rotation_tolerance AdSecretBackend#last_rotation_tolerance}
	LastRotationTolerance *float64 `field:"optional" json:"lastRotationTolerance" yaml:"lastRotationTolerance"`
	// The desired length of passwords that Vault generates.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/vault/r/ad_secret_backend#length AdSecretBackend#length}
	Length *float64 `field:"optional" json:"length" yaml:"length"`
	// Mark the secrets engine as local-only.
	//
	// Local engines are not replicated or removed by replication.Tolerance duration to use when checking the last rotation time.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/vault/r/ad_secret_backend#local AdSecretBackend#local}
	Local interface{} `field:"optional" json:"local" yaml:"local"`
	// Maximum possible lease duration for secrets in seconds.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/vault/r/ad_secret_backend#max_lease_ttl_seconds AdSecretBackend#max_lease_ttl_seconds}
	MaxLeaseTtlSeconds *float64 `field:"optional" json:"maxLeaseTtlSeconds" yaml:"maxLeaseTtlSeconds"`
	// In seconds, the maximum password time-to-live.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/vault/r/ad_secret_backend#max_ttl AdSecretBackend#max_ttl}
	MaxTtl *float64 `field:"optional" json:"maxTtl" yaml:"maxTtl"`
	// Target namespace. (requires Enterprise).
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/vault/r/ad_secret_backend#namespace AdSecretBackend#namespace}
	Namespace *string `field:"optional" json:"namespace" yaml:"namespace"`
	// Name of the password policy to use to generate passwords.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/vault/r/ad_secret_backend#password_policy AdSecretBackend#password_policy}
	PasswordPolicy *string `field:"optional" json:"passwordPolicy" yaml:"passwordPolicy"`
	// Timeout, in seconds, for the connection when making requests against the server before returning back an error.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/vault/r/ad_secret_backend#request_timeout AdSecretBackend#request_timeout}
	RequestTimeout *float64 `field:"optional" json:"requestTimeout" yaml:"requestTimeout"`
	// Issue a StartTLS command after establishing unencrypted connection.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/vault/r/ad_secret_backend#starttls AdSecretBackend#starttls}
	Starttls interface{} `field:"optional" json:"starttls" yaml:"starttls"`
	// Maximum TLS version to use. Accepted values are 'tls10', 'tls11', 'tls12' or 'tls13'. Defaults to 'tls12'.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/vault/r/ad_secret_backend#tls_max_version AdSecretBackend#tls_max_version}
	TlsMaxVersion *string `field:"optional" json:"tlsMaxVersion" yaml:"tlsMaxVersion"`
	// Minimum TLS version to use. Accepted values are 'tls10', 'tls11', 'tls12' or 'tls13'. Defaults to 'tls12'.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/vault/r/ad_secret_backend#tls_min_version AdSecretBackend#tls_min_version}
	TlsMinVersion *string `field:"optional" json:"tlsMinVersion" yaml:"tlsMinVersion"`
	// In seconds, the default password time-to-live.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/vault/r/ad_secret_backend#ttl AdSecretBackend#ttl}
	Ttl *float64 `field:"optional" json:"ttl" yaml:"ttl"`
	// Enables userPrincipalDomain login with [username]@UPNDomain.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/vault/r/ad_secret_backend#upndomain AdSecretBackend#upndomain}
	Upndomain *string `field:"optional" json:"upndomain" yaml:"upndomain"`
	// LDAP URL to connect to (default: ldap://127.0.0.1). Multiple URLs can be specified by concatenating them with commas; they will be tried in-order.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/vault/r/ad_secret_backend#url AdSecretBackend#url}
	Url *string `field:"optional" json:"url" yaml:"url"`
	// In Vault 1.1.1 a fix for handling group CN values of different cases unfortunately introduced a regression that could cause previously defined groups to not be found due to a change in the resulting name. If set true, the pre-1.1.1 behavior for matching group CNs will be used. This is only needed in some upgrade scenarios for backwards compatibility. It is enabled by default if the config is upgraded but disabled by default on new configurations.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/vault/r/ad_secret_backend#use_pre111_group_cn_behavior AdSecretBackend#use_pre111_group_cn_behavior}
	UsePre111GroupCnBehavior interface{} `field:"optional" json:"usePre111GroupCnBehavior" yaml:"usePre111GroupCnBehavior"`
	// Attribute used for users (default: cn).
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/vault/r/ad_secret_backend#userattr AdSecretBackend#userattr}
	Userattr *string `field:"optional" json:"userattr" yaml:"userattr"`
	// LDAP domain to use for users (eg: ou=People,dc=example,dc=org).
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/vault/r/ad_secret_backend#userdn AdSecretBackend#userdn}
	Userdn *string `field:"optional" json:"userdn" yaml:"userdn"`
	// If true, use the Active Directory tokenGroups constructed attribute of the user to find the group memberships.
	//
	// This will find all security groups including nested ones.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/vault/r/ad_secret_backend#use_token_groups AdSecretBackend#use_token_groups}
	UseTokenGroups interface{} `field:"optional" json:"useTokenGroups" yaml:"useTokenGroups"`
}

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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