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.
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.acmpca.kotlin.inputs
import com.pulumi.awsnative.acmpca.inputs.CertificateExtensionsArgs.builder
import com.pulumi.core.Output
import com.pulumi.core.Output.of
import com.pulumi.kotlin.ConvertibleToJava
import com.pulumi.kotlin.PulumiTagMarker
import com.pulumi.kotlin.applySuspend
import kotlin.Suppress
import kotlin.Unit
import kotlin.collections.List
import kotlin.jvm.JvmName
/**
* Contains X.509 extension information for a certificate.
* @property certificatePolicies Contains a sequence of one or more policy information terms, each of which consists of an object identifier (OID) and optional qualifiers. For more information, see NIST's definition of [Object Identifier (OID)](https://docs.aws.amazon.com/https://csrc.nist.gov/glossary/term/Object_Identifier).
* In an end-entity certificate, these terms indicate the policy under which the certificate was issued and the purposes for which it may be used. In a CA certificate, these terms limit the set of policies for certification paths that include this certificate.
* @property customExtensions Contains a sequence of one or more X.509 extensions, each of which consists of an object identifier (OID), a base64-encoded value, and the critical flag. For more information, see the [Global OID reference database.](https://docs.aws.amazon.com/https://oidref.com/2.5.29)
* @property extendedKeyUsage Specifies additional purposes for which the certified public key may be used other than basic purposes indicated in the ``KeyUsage`` extension.
* @property keyUsage Defines one or more purposes for which the key contained in the certificate can be used. Default value for each option is false.
* @property subjectAlternativeNames The subject alternative name extension allows identities to be bound to the subject of the certificate. These identities may be included in addition to or in place of the identity in the subject field of the certificate.
*/
public data class CertificateExtensionsArgs(
public val certificatePolicies: Output>? = null,
public val customExtensions: Output>? = null,
public val extendedKeyUsage: Output>? = null,
public val keyUsage: Output? = null,
public val subjectAlternativeNames: Output>? = null,
) : ConvertibleToJava {
override fun toJava(): com.pulumi.awsnative.acmpca.inputs.CertificateExtensionsArgs =
com.pulumi.awsnative.acmpca.inputs.CertificateExtensionsArgs.builder()
.certificatePolicies(
certificatePolicies?.applyValue({ args0 ->
args0.map({ args0 ->
args0.let({ args0 -> args0.toJava() })
})
}),
)
.customExtensions(
customExtensions?.applyValue({ args0 ->
args0.map({ args0 ->
args0.let({ args0 ->
args0.toJava()
})
})
}),
)
.extendedKeyUsage(
extendedKeyUsage?.applyValue({ args0 ->
args0.map({ args0 ->
args0.let({ args0 ->
args0.toJava()
})
})
}),
)
.keyUsage(keyUsage?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
.subjectAlternativeNames(
subjectAlternativeNames?.applyValue({ args0 ->
args0.map({ args0 ->
args0.let({ args0 -> args0.toJava() })
})
}),
).build()
}
/**
* Builder for [CertificateExtensionsArgs].
*/
@PulumiTagMarker
public class CertificateExtensionsArgsBuilder internal constructor() {
private var certificatePolicies: Output>? = null
private var customExtensions: Output>? = null
private var extendedKeyUsage: Output>? = null
private var keyUsage: Output? = null
private var subjectAlternativeNames: Output>? = null
/**
* @param value Contains a sequence of one or more policy information terms, each of which consists of an object identifier (OID) and optional qualifiers. For more information, see NIST's definition of [Object Identifier (OID)](https://docs.aws.amazon.com/https://csrc.nist.gov/glossary/term/Object_Identifier).
* In an end-entity certificate, these terms indicate the policy under which the certificate was issued and the purposes for which it may be used. In a CA certificate, these terms limit the set of policies for certification paths that include this certificate.
*/
@JvmName("lvitfkungoggvwjd")
public suspend fun certificatePolicies(`value`: Output>) {
this.certificatePolicies = value
}
@JvmName("waboxtrasoslqoeb")
public suspend fun certificatePolicies(vararg values: Output) {
this.certificatePolicies = Output.all(values.asList())
}
/**
* @param values Contains a sequence of one or more policy information terms, each of which consists of an object identifier (OID) and optional qualifiers. For more information, see NIST's definition of [Object Identifier (OID)](https://docs.aws.amazon.com/https://csrc.nist.gov/glossary/term/Object_Identifier).
* In an end-entity certificate, these terms indicate the policy under which the certificate was issued and the purposes for which it may be used. In a CA certificate, these terms limit the set of policies for certification paths that include this certificate.
*/
@JvmName("rqwkuunltqhrqywx")
public suspend fun certificatePolicies(values: List