Many resources are needed to download a project. Please understand that we have to compensate our server costs. Thank you in advance. Project price only 1 $
You can buy this project and download/modify it how often you want.
@file:Suppress("NAME_SHADOWING", "DEPRECATION")
package com.pulumi.azure.apimanagement.kotlin.inputs
import com.pulumi.azure.apimanagement.inputs.CustomDomainGatewayArgs.builder
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.Boolean
import kotlin.String
import kotlin.Suppress
import kotlin.jvm.JvmName
/**
*
* @property certificate The Base64 Encoded Certificate. (Mutually exclusive with `key_vault_id`.)
* @property certificatePassword The password associated with the certificate provided above.
* @property certificateSource
* @property certificateStatus
* @property defaultSslBinding Is the certificate associated with this Hostname the Default SSL Certificate? This is used when an SNI header isn't specified by a client. Defaults to `false`.
* @property expiry
* @property hostName The Hostname to use for the API Proxy Endpoint.
* @property keyVaultId The ID of the Key Vault Secret containing the SSL Certificate, which must be should be of the type application/x-pkcs12.
* @property negotiateClientCertificate Should Client Certificate Negotiation be enabled for this Hostname? Defaults to `false`.
* @property sslKeyvaultIdentityClientId System or User Assigned Managed identity clientId as generated by Azure AD, which has `GET` access to the keyVault containing the SSL certificate.
* > **NOTE:** If a User Assigned Managed identity is specified for `ssl_keyvault_identity_client_id` then this identity must be associated to the `azure.apimanagement.Service` within an `identity` block.
* @property subject
* @property thumbprint
*/
public data class CustomDomainGatewayArgs(
public val certificate: Output? = null,
public val certificatePassword: Output? = null,
public val certificateSource: Output? = null,
public val certificateStatus: Output? = null,
public val defaultSslBinding: Output? = null,
public val expiry: Output? = null,
public val hostName: Output,
public val keyVaultId: Output? = null,
public val negotiateClientCertificate: Output? = null,
public val sslKeyvaultIdentityClientId: Output? = null,
public val subject: Output? = null,
public val thumbprint: Output? = null,
) : ConvertibleToJava {
override fun toJava(): com.pulumi.azure.apimanagement.inputs.CustomDomainGatewayArgs =
com.pulumi.azure.apimanagement.inputs.CustomDomainGatewayArgs.builder()
.certificate(certificate?.applyValue({ args0 -> args0 }))
.certificatePassword(certificatePassword?.applyValue({ args0 -> args0 }))
.certificateSource(certificateSource?.applyValue({ args0 -> args0 }))
.certificateStatus(certificateStatus?.applyValue({ args0 -> args0 }))
.defaultSslBinding(defaultSslBinding?.applyValue({ args0 -> args0 }))
.expiry(expiry?.applyValue({ args0 -> args0 }))
.hostName(hostName.applyValue({ args0 -> args0 }))
.keyVaultId(keyVaultId?.applyValue({ args0 -> args0 }))
.negotiateClientCertificate(negotiateClientCertificate?.applyValue({ args0 -> args0 }))
.sslKeyvaultIdentityClientId(sslKeyvaultIdentityClientId?.applyValue({ args0 -> args0 }))
.subject(subject?.applyValue({ args0 -> args0 }))
.thumbprint(thumbprint?.applyValue({ args0 -> args0 })).build()
}
/**
* Builder for [CustomDomainGatewayArgs].
*/
@PulumiTagMarker
public class CustomDomainGatewayArgsBuilder internal constructor() {
private var certificate: Output? = null
private var certificatePassword: Output? = null
private var certificateSource: Output? = null
private var certificateStatus: Output? = null
private var defaultSslBinding: Output? = null
private var expiry: Output? = null
private var hostName: Output? = null
private var keyVaultId: Output? = null
private var negotiateClientCertificate: Output? = null
private var sslKeyvaultIdentityClientId: Output? = null
private var subject: Output? = null
private var thumbprint: Output? = null
/**
* @param value The Base64 Encoded Certificate. (Mutually exclusive with `key_vault_id`.)
*/
@JvmName("rxnfxgvrfgmbqxsv")
public suspend fun certificate(`value`: Output) {
this.certificate = value
}
/**
* @param value The password associated with the certificate provided above.
*/
@JvmName("ffddoxoknharqvvq")
public suspend fun certificatePassword(`value`: Output) {
this.certificatePassword = value
}
/**
* @param value
*/
@JvmName("gwrqglrvoxawxtxs")
public suspend fun certificateSource(`value`: Output) {
this.certificateSource = value
}
/**
* @param value
*/
@JvmName("ymoymtqsatqafekq")
public suspend fun certificateStatus(`value`: Output) {
this.certificateStatus = value
}
/**
* @param value Is the certificate associated with this Hostname the Default SSL Certificate? This is used when an SNI header isn't specified by a client. Defaults to `false`.
*/
@JvmName("bibluflgdodnhxuh")
public suspend fun defaultSslBinding(`value`: Output) {
this.defaultSslBinding = value
}
/**
* @param value
*/
@JvmName("bawyyfnsrxicbcwk")
public suspend fun expiry(`value`: Output) {
this.expiry = value
}
/**
* @param value The Hostname to use for the API Proxy Endpoint.
*/
@JvmName("lilkeadgxylqkinx")
public suspend fun hostName(`value`: Output) {
this.hostName = value
}
/**
* @param value The ID of the Key Vault Secret containing the SSL Certificate, which must be should be of the type application/x-pkcs12.
*/
@JvmName("vvcwjihybdldtyvu")
public suspend fun keyVaultId(`value`: Output) {
this.keyVaultId = value
}
/**
* @param value Should Client Certificate Negotiation be enabled for this Hostname? Defaults to `false`.
*/
@JvmName("uxubrdywiruyubxx")
public suspend fun negotiateClientCertificate(`value`: Output) {
this.negotiateClientCertificate = value
}
/**
* @param value System or User Assigned Managed identity clientId as generated by Azure AD, which has `GET` access to the keyVault containing the SSL certificate.
* > **NOTE:** If a User Assigned Managed identity is specified for `ssl_keyvault_identity_client_id` then this identity must be associated to the `azure.apimanagement.Service` within an `identity` block.
*/
@JvmName("upcsccyqsucqvlwd")
public suspend fun sslKeyvaultIdentityClientId(`value`: Output) {
this.sslKeyvaultIdentityClientId = value
}
/**
* @param value
*/
@JvmName("qkofxuonyhjattop")
public suspend fun subject(`value`: Output) {
this.subject = value
}
/**
* @param value
*/
@JvmName("wnxbornrsqukngix")
public suspend fun thumbprint(`value`: Output) {
this.thumbprint = value
}
/**
* @param value The Base64 Encoded Certificate. (Mutually exclusive with `key_vault_id`.)
*/
@JvmName("axiqsdxyupfcyujr")
public suspend fun certificate(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.certificate = mapped
}
/**
* @param value The password associated with the certificate provided above.
*/
@JvmName("waimdriypqpiejqf")
public suspend fun certificatePassword(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.certificatePassword = mapped
}
/**
* @param value
*/
@JvmName("lxsqtgwhxkynhlna")
public suspend fun certificateSource(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.certificateSource = mapped
}
/**
* @param value
*/
@JvmName("qvbloaglfemsvaaw")
public suspend fun certificateStatus(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.certificateStatus = mapped
}
/**
* @param value Is the certificate associated with this Hostname the Default SSL Certificate? This is used when an SNI header isn't specified by a client. Defaults to `false`.
*/
@JvmName("uduysusujndxhdwc")
public suspend fun defaultSslBinding(`value`: Boolean?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.defaultSslBinding = mapped
}
/**
* @param value
*/
@JvmName("haknqbggbkoocaxm")
public suspend fun expiry(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.expiry = mapped
}
/**
* @param value The Hostname to use for the API Proxy Endpoint.
*/
@JvmName("dtwvtcglesvvfnmr")
public suspend fun hostName(`value`: String) {
val toBeMapped = value
val mapped = toBeMapped.let({ args0 -> of(args0) })
this.hostName = mapped
}
/**
* @param value The ID of the Key Vault Secret containing the SSL Certificate, which must be should be of the type application/x-pkcs12.
*/
@JvmName("qiexcqvueefhstsg")
public suspend fun keyVaultId(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.keyVaultId = mapped
}
/**
* @param value Should Client Certificate Negotiation be enabled for this Hostname? Defaults to `false`.
*/
@JvmName("vtkqigrsjvtidqti")
public suspend fun negotiateClientCertificate(`value`: Boolean?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.negotiateClientCertificate = mapped
}
/**
* @param value System or User Assigned Managed identity clientId as generated by Azure AD, which has `GET` access to the keyVault containing the SSL certificate.
* > **NOTE:** If a User Assigned Managed identity is specified for `ssl_keyvault_identity_client_id` then this identity must be associated to the `azure.apimanagement.Service` within an `identity` block.
*/
@JvmName("bhwwplyhmvvrgevk")
public suspend fun sslKeyvaultIdentityClientId(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.sslKeyvaultIdentityClientId = mapped
}
/**
* @param value
*/
@JvmName("gjlebtecytkaqqol")
public suspend fun subject(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.subject = mapped
}
/**
* @param value
*/
@JvmName("rjbybsglwfillbkx")
public suspend fun thumbprint(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.thumbprint = mapped
}
internal fun build(): CustomDomainGatewayArgs = CustomDomainGatewayArgs(
certificate = certificate,
certificatePassword = certificatePassword,
certificateSource = certificateSource,
certificateStatus = certificateStatus,
defaultSslBinding = defaultSslBinding,
expiry = expiry,
hostName = hostName ?: throw PulumiNullFieldException("hostName"),
keyVaultId = keyVaultId,
negotiateClientCertificate = negotiateClientCertificate,
sslKeyvaultIdentityClientId = sslKeyvaultIdentityClientId,
subject = subject,
thumbprint = thumbprint,
)
}