com.pulumi.awsnative.memorydb.kotlin.UserArgs.kt Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of pulumi-aws-native-kotlin Show documentation
Show all versions of pulumi-aws-native-kotlin Show documentation
Build cloud applications and infrastructure by combining the safety and reliability of infrastructure as code with the power of the Kotlin programming language.
@file:Suppress("NAME_SHADOWING", "DEPRECATION")
package com.pulumi.awsnative.memorydb.kotlin
import com.pulumi.awsnative.kotlin.inputs.TagArgs
import com.pulumi.awsnative.kotlin.inputs.TagArgsBuilder
import com.pulumi.awsnative.memorydb.UserArgs.builder
import com.pulumi.awsnative.memorydb.kotlin.inputs.AuthenticationModePropertiesArgs
import com.pulumi.awsnative.memorydb.kotlin.inputs.AuthenticationModePropertiesArgsBuilder
import com.pulumi.core.Output
import com.pulumi.core.Output.of
import com.pulumi.kotlin.ConvertibleToJava
import com.pulumi.kotlin.PulumiTagMarker
import com.pulumi.kotlin.applySuspend
import kotlin.String
import kotlin.Suppress
import kotlin.Unit
import kotlin.collections.List
import kotlin.jvm.JvmName
/**
* Resource Type definition for AWS::MemoryDB::User
* @property accessString Access permissions string used for this user account.
* @property authenticationMode Denotes whether the user requires a password to authenticate.
* *Example:*
* `mynewdbuser: Type: AWS::MemoryDB::User Properties: AccessString: on ~* &* +@all AuthenticationMode: Passwords: '1234567890123456' Type: password UserName: mynewdbuser AuthenticationMode: { "Passwords": ["1234567890123456"], "Type": "Password" }`
* @property tags An array of key-value pairs to apply to this user.
* @property userName The name of the user.
*/
public data class UserArgs(
public val accessString: Output? = null,
public val authenticationMode: Output? = null,
public val tags: Output>? = null,
public val userName: Output? = null,
) : ConvertibleToJava {
override fun toJava(): com.pulumi.awsnative.memorydb.UserArgs =
com.pulumi.awsnative.memorydb.UserArgs.builder()
.accessString(accessString?.applyValue({ args0 -> args0 }))
.authenticationMode(
authenticationMode?.applyValue({ args0 ->
args0.let({ args0 ->
args0.toJava()
})
}),
)
.tags(tags?.applyValue({ args0 -> args0.map({ args0 -> args0.let({ args0 -> args0.toJava() }) }) }))
.userName(userName?.applyValue({ args0 -> args0 })).build()
}
/**
* Builder for [UserArgs].
*/
@PulumiTagMarker
public class UserArgsBuilder internal constructor() {
private var accessString: Output? = null
private var authenticationMode: Output? = null
private var tags: Output>? = null
private var userName: Output? = null
/**
* @param value Access permissions string used for this user account.
*/
@JvmName("pyfblejqpdliwydr")
public suspend fun accessString(`value`: Output) {
this.accessString = value
}
/**
* @param value Denotes whether the user requires a password to authenticate.
* *Example:*
* `mynewdbuser: Type: AWS::MemoryDB::User Properties: AccessString: on ~* &* +@all AuthenticationMode: Passwords: '1234567890123456' Type: password UserName: mynewdbuser AuthenticationMode: { "Passwords": ["1234567890123456"], "Type": "Password" }`
*/
@JvmName("sdlwoevwmlrayddn")
public suspend fun authenticationMode(`value`: Output) {
this.authenticationMode = value
}
/**
* @param value An array of key-value pairs to apply to this user.
*/
@JvmName("juotovhaxbhldmlv")
public suspend fun tags(`value`: Output>) {
this.tags = value
}
@JvmName("acpenfpbcpacfcve")
public suspend fun tags(vararg values: Output) {
this.tags = Output.all(values.asList())
}
/**
* @param values An array of key-value pairs to apply to this user.
*/
@JvmName("hqpqdmvhtylxkoyv")
public suspend fun tags(values: List