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

com.pulumi.gcp.apigee.kotlin.outputs.TargetServerSSlInfo.kt Maven / Gradle / Ivy

Go to download

Build cloud applications and infrastructure by combining the safety and reliability of infrastructure as code with the power of the Kotlin programming language.

There is a newer version: 8.10.0.0
Show newest version
@file:Suppress("NAME_SHADOWING", "DEPRECATION")

package com.pulumi.gcp.apigee.kotlin.outputs

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

/**
 *
 * @property ciphers The SSL/TLS cipher suites to be used. For programmable proxies, it must be one of the cipher suite names listed in: http://docs.oracle.com/javase/8/docs/technotes/guides/security/StandardNames.html#ciphersuites. For configurable proxies, it must follow the configuration specified in: https://commondatastorage.googleapis.com/chromium-boringssl-docs/ssl.h.html#Cipher-suite-configuration. This setting has no effect for configurable proxies when negotiating TLS 1.3.
 * @property clientAuthEnabled Enables two-way TLS.
 * @property commonName The TLS Common Name of the certificate.
 * Structure is documented below.
 * @property enabled Enables TLS. If false, neither one-way nor two-way TLS will be enabled.
 * @property ignoreValidationErrors If true, Edge ignores TLS certificate errors. Valid when configuring TLS for target servers and target endpoints, and when configuring virtual hosts that use 2-way TLS. When used with a target endpoint/target server, if the backend system uses SNI and returns a cert with a subject Distinguished Name (DN) that does not match the hostname, there is no way to ignore the error and the connection fails.
 * @property keyAlias Required if clientAuthEnabled is true. The resource ID for the alias containing the private key and cert.
 * @property keyStore Required if clientAuthEnabled is true. The resource ID of the keystore.
 * @property protocols The TLS versioins to be used.
 * @property trustStore The resource ID of the truststore.
 */
public data class TargetServerSSlInfo(
    public val ciphers: List? = null,
    public val clientAuthEnabled: Boolean? = null,
    public val commonName: TargetServerSSlInfoCommonName? = null,
    public val enabled: Boolean,
    public val ignoreValidationErrors: Boolean? = null,
    public val keyAlias: String? = null,
    public val keyStore: String? = null,
    public val protocols: List? = null,
    public val trustStore: String? = null,
) {
    public companion object {
        public fun toKotlin(javaType: com.pulumi.gcp.apigee.outputs.TargetServerSSlInfo): TargetServerSSlInfo = TargetServerSSlInfo(
            ciphers = javaType.ciphers().map({ args0 -> args0 }),
            clientAuthEnabled = javaType.clientAuthEnabled().map({ args0 -> args0 }).orElse(null),
            commonName = javaType.commonName().map({ args0 ->
                args0.let({ args0 ->
                    com.pulumi.gcp.apigee.kotlin.outputs.TargetServerSSlInfoCommonName.Companion.toKotlin(args0)
                })
            }).orElse(null),
            enabled = javaType.enabled(),
            ignoreValidationErrors = javaType.ignoreValidationErrors().map({ args0 -> args0 }).orElse(null),
            keyAlias = javaType.keyAlias().map({ args0 -> args0 }).orElse(null),
            keyStore = javaType.keyStore().map({ args0 -> args0 }).orElse(null),
            protocols = javaType.protocols().map({ args0 -> args0 }),
            trustStore = javaType.trustStore().map({ args0 -> args0 }).orElse(null),
        )
    }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy