com.pulumi.azure.appservice.kotlin.outputs.SlotIdentity.kt Maven / Gradle / Ivy
@file:Suppress("NAME_SHADOWING", "DEPRECATION")
package com.pulumi.azure.appservice.kotlin.outputs
import kotlin.String
import kotlin.Suppress
import kotlin.collections.List
/**
*
* @property identityIds Specifies a list of user managed identity ids to be assigned. Required if `type` is `UserAssigned`.
* @property principalId The Principal ID for the Service Principal associated with the Managed Service Identity of this App Service slot.
* @property tenantId The Tenant ID for the Service Principal associated with the Managed Service Identity of this App Service slot.
* @property type Specifies the identity type of the App Service. Possible values are `SystemAssigned` (where Azure will generate a Service Principal for you), `UserAssigned` where you can specify the Service Principal IDs in the `identity_ids` field, and `SystemAssigned, UserAssigned` which assigns both a system managed identity as well as the specified user assigned identities.
* > **NOTE:** When `type` is set to `SystemAssigned`, The assigned `principal_id` and `tenant_id` can be retrieved after the App Service has been created. More details are available below.
*/
public data class SlotIdentity(
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.appservice.outputs.SlotIdentity): SlotIdentity =
SlotIdentity(
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(),
)
}
}