com.pulumi.awsnative.quicksight.kotlin.outputs.DataSetRowLevelPermissionDataSet.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.quicksight.kotlin.outputs
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 kotlin.String
import kotlin.Suppress
/**
* 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 DataSetRowLevelPermissionDataSet(
public val arn: String,
public val formatVersion: DataSetRowLevelPermissionFormatVersion? = null,
public val namespace: String? = null,
public val permissionPolicy: DataSetRowLevelPermissionPolicy,
public val status: DataSetStatus? = null,
) {
public companion object {
public fun toKotlin(javaType: com.pulumi.awsnative.quicksight.outputs.DataSetRowLevelPermissionDataSet): DataSetRowLevelPermissionDataSet = DataSetRowLevelPermissionDataSet(
arn = javaType.arn(),
formatVersion = javaType.formatVersion().map({ args0 ->
args0.let({ args0 ->
com.pulumi.awsnative.quicksight.kotlin.enums.DataSetRowLevelPermissionFormatVersion.Companion.toKotlin(args0)
})
}).orElse(null),
namespace = javaType.namespace().map({ args0 -> args0 }).orElse(null),
permissionPolicy = javaType.permissionPolicy().let({ args0 ->
com.pulumi.awsnative.quicksight.kotlin.enums.DataSetRowLevelPermissionPolicy.Companion.toKotlin(args0)
}),
status = javaType.status().map({ args0 ->
args0.let({ args0 ->
com.pulumi.awsnative.quicksight.kotlin.enums.DataSetStatus.Companion.toKotlin(args0)
})
}).orElse(null),
)
}
}