All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.pulumi.awsnative.quicksight.kotlin.inputs.DataSetRowLevelPermissionDataSetArgs.kt Maven / Gradle / Ivy

@file:Suppress("NAME_SHADOWING", "DEPRECATION")

package com.pulumi.awsnative.quicksight.kotlin.inputs

import com.pulumi.awsnative.quicksight.inputs.DataSetRowLevelPermissionDataSetArgs.builder
import com.pulumi.awsnative.quicksight.kotlin.enums.DataSetRowLevelPermissionFormatVersion
import com.pulumi.awsnative.quicksight.kotlin.enums.DataSetRowLevelPermissionPolicy
import com.pulumi.awsnative.quicksight.kotlin.enums.DataSetStatus
import com.pulumi.core.Output
import com.pulumi.core.Output.of
import com.pulumi.kotlin.ConvertibleToJava
import com.pulumi.kotlin.PulumiNullFieldException
import com.pulumi.kotlin.PulumiTagMarker
import kotlin.String
import kotlin.Suppress
import kotlin.jvm.JvmName

/**
 * 

Information about a dataset that contains permissions for row-level security (RLS). * The permissions dataset maps fields to users or groups. For more information, see * Using Row-Level Security (RLS) to Restrict Access to a Dataset in the Amazon QuickSight User * Guide.

*

The option to deny permissions by setting PermissionPolicy to DENY_ACCESS is * not supported for new RLS datasets.

* @property arn

The Amazon Resource Name (ARN) of the dataset that contains permissions for RLS.

* @property formatVersion The user or group rules associated with the dataset that contains permissions for RLS. * By default, `FormatVersion` is `VERSION_1` . When `FormatVersion` is `VERSION_1` , `UserName` and `GroupName` are required. When `FormatVersion` is `VERSION_2` , `UserARN` and `GroupARN` are required, and `Namespace` must not exist. * @property namespace

The namespace associated with the dataset that contains permissions for RLS.

* @property permissionPolicy The type of permissions to use when interpreting the permissions for RLS. `DENY_ACCESS` is included for backward compatibility only. * @property status The status of the row-level security permission dataset. If enabled, the status is `ENABLED` . If disabled, the status is `DISABLED` . */ public data class DataSetRowLevelPermissionDataSetArgs( public val arn: Output, public val formatVersion: Output? = null, public val namespace: Output? = null, public val permissionPolicy: Output, public val status: Output? = null, ) : ConvertibleToJava { override fun toJava(): com.pulumi.awsnative.quicksight.inputs.DataSetRowLevelPermissionDataSetArgs = com.pulumi.awsnative.quicksight.inputs.DataSetRowLevelPermissionDataSetArgs.builder() .arn(arn.applyValue({ args0 -> args0 })) .formatVersion(formatVersion?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) })) .namespace(namespace?.applyValue({ args0 -> args0 })) .permissionPolicy(permissionPolicy.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) })) .status(status?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) })).build() } /** * Builder for [DataSetRowLevelPermissionDataSetArgs]. */ @PulumiTagMarker public class DataSetRowLevelPermissionDataSetArgsBuilder internal constructor() { private var arn: Output? = null private var formatVersion: Output? = null private var namespace: Output? = null private var permissionPolicy: Output? = null private var status: Output? = null /** * @param value

The Amazon Resource Name (ARN) of the dataset that contains permissions for RLS.

*/ @JvmName("mtrvcllaetqpprof") public suspend fun arn(`value`: Output) { this.arn = value } /** * @param value The user or group rules associated with the dataset that contains permissions for RLS. * By default, `FormatVersion` is `VERSION_1` . When `FormatVersion` is `VERSION_1` , `UserName` and `GroupName` are required. When `FormatVersion` is `VERSION_2` , `UserARN` and `GroupARN` are required, and `Namespace` must not exist. */ @JvmName("bjuchxdvtnjpetvi") public suspend fun formatVersion(`value`: Output) { this.formatVersion = value } /** * @param value

The namespace associated with the dataset that contains permissions for RLS.

*/ @JvmName("whacxwypcpiiwyhl") public suspend fun namespace(`value`: Output) { this.namespace = value } /** * @param value The type of permissions to use when interpreting the permissions for RLS. `DENY_ACCESS` is included for backward compatibility only. */ @JvmName("vxlohlnpgbashuth") public suspend fun permissionPolicy(`value`: Output) { this.permissionPolicy = value } /** * @param value The status of the row-level security permission dataset. If enabled, the status is `ENABLED` . If disabled, the status is `DISABLED` . */ @JvmName("cdrmyhamtnympoel") public suspend fun status(`value`: Output) { this.status = value } /** * @param value

The Amazon Resource Name (ARN) of the dataset that contains permissions for RLS.

*/ @JvmName("odrttkkiuonldcgf") public suspend fun arn(`value`: String) { val toBeMapped = value val mapped = toBeMapped.let({ args0 -> of(args0) }) this.arn = mapped } /** * @param value The user or group rules associated with the dataset that contains permissions for RLS. * By default, `FormatVersion` is `VERSION_1` . When `FormatVersion` is `VERSION_1` , `UserName` and `GroupName` are required. When `FormatVersion` is `VERSION_2` , `UserARN` and `GroupARN` are required, and `Namespace` must not exist. */ @JvmName("hhnalabhytkmtjdj") public suspend fun formatVersion(`value`: DataSetRowLevelPermissionFormatVersion?) { val toBeMapped = value val mapped = toBeMapped?.let({ args0 -> of(args0) }) this.formatVersion = mapped } /** * @param value

The namespace associated with the dataset that contains permissions for RLS.

*/ @JvmName("vdasoetvfxciwtyy") public suspend fun namespace(`value`: String?) { val toBeMapped = value val mapped = toBeMapped?.let({ args0 -> of(args0) }) this.namespace = mapped } /** * @param value The type of permissions to use when interpreting the permissions for RLS. `DENY_ACCESS` is included for backward compatibility only. */ @JvmName("dclvuoenciimeplk") public suspend fun permissionPolicy(`value`: DataSetRowLevelPermissionPolicy) { val toBeMapped = value val mapped = toBeMapped.let({ args0 -> of(args0) }) this.permissionPolicy = mapped } /** * @param value The status of the row-level security permission dataset. If enabled, the status is `ENABLED` . If disabled, the status is `DISABLED` . */ @JvmName("iuqdrjeuovmlikmm") public suspend fun status(`value`: DataSetStatus?) { val toBeMapped = value val mapped = toBeMapped?.let({ args0 -> of(args0) }) this.status = mapped } internal fun build(): DataSetRowLevelPermissionDataSetArgs = DataSetRowLevelPermissionDataSetArgs( arn = arn ?: throw PulumiNullFieldException("arn"), formatVersion = formatVersion, namespace = namespace, permissionPolicy = permissionPolicy ?: throw PulumiNullFieldException("permissionPolicy"), status = status, ) }




© 2015 - 2025 Weber Informatics LLC | Privacy Policy