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

com.pulumi.awsnative.rolesanywhere.kotlin.outputs.GetProfileResult.kt Maven / Gradle / Ivy

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

package com.pulumi.awsnative.rolesanywhere.kotlin.outputs

import com.pulumi.awsnative.kotlin.outputs.Tag
import kotlin.Boolean
import kotlin.Double
import kotlin.String
import kotlin.Suppress
import kotlin.collections.List

/**
 *
 * @property acceptRoleSessionName Used to determine if a custom role session name will be accepted in a temporary credential request.
 * @property attributeMappings A mapping applied to the authenticating end-entity certificate.
 * @property durationSeconds The number of seconds vended session credentials will be valid for
 * @property enabled The enabled status of the resource.
 * @property managedPolicyArns A list of managed policy ARNs. Managed policies identified by this list will be applied to the vended session credentials.
 * @property name The customer specified name of the resource.
 * @property profileArn The ARN of the profile.
 * @property profileId The unique primary identifier of the Profile
 * @property requireInstanceProperties Specifies whether instance properties are required in CreateSession requests with this profile.
 * @property roleArns A list of IAM role ARNs that can be assumed when this profile is specified in a CreateSession request.
 * @property sessionPolicy A session policy that will applied to the trust boundary of the vended session credentials.
 * @property tags A list of Tags.
 */
public data class GetProfileResult(
    public val acceptRoleSessionName: Boolean? = null,
    public val attributeMappings: List? = null,
    public val durationSeconds: Double? = null,
    public val enabled: Boolean? = null,
    public val managedPolicyArns: List? = null,
    public val name: String? = null,
    public val profileArn: String? = null,
    public val profileId: String? = null,
    public val requireInstanceProperties: Boolean? = null,
    public val roleArns: List? = null,
    public val sessionPolicy: String? = null,
    public val tags: List? = null,
) {
    public companion object {
        public fun toKotlin(javaType: com.pulumi.awsnative.rolesanywhere.outputs.GetProfileResult): GetProfileResult = GetProfileResult(
            acceptRoleSessionName = javaType.acceptRoleSessionName().map({ args0 -> args0 }).orElse(null),
            attributeMappings = javaType.attributeMappings().map({ args0 ->
                args0.let({ args0 ->
                    com.pulumi.awsnative.rolesanywhere.kotlin.outputs.ProfileAttributeMapping.Companion.toKotlin(args0)
                })
            }),
            durationSeconds = javaType.durationSeconds().map({ args0 -> args0 }).orElse(null),
            enabled = javaType.enabled().map({ args0 -> args0 }).orElse(null),
            managedPolicyArns = javaType.managedPolicyArns().map({ args0 -> args0 }),
            name = javaType.name().map({ args0 -> args0 }).orElse(null),
            profileArn = javaType.profileArn().map({ args0 -> args0 }).orElse(null),
            profileId = javaType.profileId().map({ args0 -> args0 }).orElse(null),
            requireInstanceProperties = javaType.requireInstanceProperties().map({ args0 ->
                args0
            }).orElse(null),
            roleArns = javaType.roleArns().map({ args0 -> args0 }),
            sessionPolicy = javaType.sessionPolicy().map({ args0 -> args0 }).orElse(null),
            tags = javaType.tags().map({ args0 ->
                args0.let({ args0 ->
                    com.pulumi.awsnative.kotlin.outputs.Tag.Companion.toKotlin(args0)
                })
            }),
        )
    }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy