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

com.pulumi.azure.storage.kotlin.outputs.AccountIdentity.kt Maven / Gradle / Ivy

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

package com.pulumi.azure.storage.kotlin.outputs

import kotlin.String
import kotlin.Suppress
import kotlin.collections.List

/**
 *
 * @property identityIds Specifies a list of User Assigned Managed Identity IDs to be assigned to this Storage Account.
 * > **Note:** This is required when `type` is set to `UserAssigned` or `SystemAssigned, UserAssigned`.
 * > The assigned `principal_id` and `tenant_id` can be retrieved after the identity `type` has been set to `SystemAssigned`  and Storage Account has been created. More details are available below.
 * @property principalId The Principal ID for the Service Principal associated with the Identity of this Storage Account.
 * @property tenantId The Tenant ID for the Service Principal associated with the Identity of this Storage Account.
 * @property type Specifies the type of Managed Service Identity that should be configured on this Storage Account. Possible values are `SystemAssigned`, `UserAssigned`, `SystemAssigned, UserAssigned` (to enable both).
 */
public data class AccountIdentity(
    public val identityIds: List? = null,
    public val principalId: String? = null,
    public val tenantId: String? = null,
    public val type: String,
) {
    public companion object {
        public fun toKotlin(javaType: com.pulumi.azure.storage.outputs.AccountIdentity): AccountIdentity = AccountIdentity(
            identityIds = javaType.identityIds().map({ args0 -> args0 }),
            principalId = javaType.principalId().map({ args0 -> args0 }).orElse(null),
            tenantId = javaType.tenantId().map({ args0 -> args0 }).orElse(null),
            type = javaType.type(),
        )
    }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy