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

com.pulumi.gcp.dataproc.kotlin.outputs.ClusterClusterConfigSecurityConfigKerberosConfig.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.dataproc.kotlin.outputs

import kotlin.Boolean
import kotlin.Int
import kotlin.String
import kotlin.Suppress

/**
 *
 * @property crossRealmTrustAdminServer The admin server (IP or hostname) for the
 * remote trusted realm in a cross realm trust relationship.
 * @property crossRealmTrustKdc The KDC (IP or hostname) for the
 * remote trusted realm in a cross realm trust relationship.
 * @property crossRealmTrustRealm The remote realm the Dataproc on-cluster KDC will
 * trust, should the user enable cross realm trust.
 * @property crossRealmTrustSharedPasswordUri The Cloud Storage URI of a KMS
 * encrypted file containing the shared password between the on-cluster Kerberos realm
 * and the remote trusted realm, in a cross realm trust relationship.
 * @property enableKerberos Flag to indicate whether to Kerberize the cluster.
 * @property kdcDbKeyUri The Cloud Storage URI of a KMS encrypted file containing
 * the master key of the KDC database.
 * @property keyPasswordUri The Cloud Storage URI of a KMS encrypted file containing
 * the password to the user provided key. For the self-signed certificate, this password
 * is generated by Dataproc.
 * @property keystorePasswordUri The Cloud Storage URI of a KMS encrypted file containing
 * the password to the user provided keystore. For the self-signed certificated, the password
 * is generated by Dataproc.
 * @property keystoreUri The Cloud Storage URI of the keystore file used for SSL encryption.
 * If not provided, Dataproc will provide a self-signed certificate.
 * @property kmsKeyUri The URI of the KMS key used to encrypt various sensitive files.
 * @property realm The name of the on-cluster Kerberos realm. If not specified, the
 * uppercased domain of hostnames will be the realm.
 * @property rootPrincipalPasswordUri The Cloud Storage URI of a KMS encrypted file
 * containing the root principal password.
 * @property tgtLifetimeHours The lifetime of the ticket granting ticket, in hours.
 * @property truststorePasswordUri The Cloud Storage URI of a KMS encrypted file
 * containing the password to the user provided truststore. For the self-signed
 * certificate, this password is generated by Dataproc.
 * @property truststoreUri The Cloud Storage URI of the truststore file used for
 * SSL encryption. If not provided, Dataproc will provide a self-signed certificate.
 * - - -
 */
public data class ClusterClusterConfigSecurityConfigKerberosConfig(
    public val crossRealmTrustAdminServer: String? = null,
    public val crossRealmTrustKdc: String? = null,
    public val crossRealmTrustRealm: String? = null,
    public val crossRealmTrustSharedPasswordUri: String? = null,
    public val enableKerberos: Boolean? = null,
    public val kdcDbKeyUri: String? = null,
    public val keyPasswordUri: String? = null,
    public val keystorePasswordUri: String? = null,
    public val keystoreUri: String? = null,
    public val kmsKeyUri: String,
    public val realm: String? = null,
    public val rootPrincipalPasswordUri: String,
    public val tgtLifetimeHours: Int? = null,
    public val truststorePasswordUri: String? = null,
    public val truststoreUri: String? = null,
) {
    public companion object {
        public fun toKotlin(javaType: com.pulumi.gcp.dataproc.outputs.ClusterClusterConfigSecurityConfigKerberosConfig): ClusterClusterConfigSecurityConfigKerberosConfig =
            ClusterClusterConfigSecurityConfigKerberosConfig(
                crossRealmTrustAdminServer = javaType.crossRealmTrustAdminServer().map({ args0 ->
                    args0
                }).orElse(null),
                crossRealmTrustKdc = javaType.crossRealmTrustKdc().map({ args0 -> args0 }).orElse(null),
                crossRealmTrustRealm = javaType.crossRealmTrustRealm().map({ args0 -> args0 }).orElse(null),
                crossRealmTrustSharedPasswordUri = javaType.crossRealmTrustSharedPasswordUri().map({ args0 ->
                    args0
                }).orElse(null),
                enableKerberos = javaType.enableKerberos().map({ args0 -> args0 }).orElse(null),
                kdcDbKeyUri = javaType.kdcDbKeyUri().map({ args0 -> args0 }).orElse(null),
                keyPasswordUri = javaType.keyPasswordUri().map({ args0 -> args0 }).orElse(null),
                keystorePasswordUri = javaType.keystorePasswordUri().map({ args0 -> args0 }).orElse(null),
                keystoreUri = javaType.keystoreUri().map({ args0 -> args0 }).orElse(null),
                kmsKeyUri = javaType.kmsKeyUri(),
                realm = javaType.realm().map({ args0 -> args0 }).orElse(null),
                rootPrincipalPasswordUri = javaType.rootPrincipalPasswordUri(),
                tgtLifetimeHours = javaType.tgtLifetimeHours().map({ args0 -> args0 }).orElse(null),
                truststorePasswordUri = javaType.truststorePasswordUri().map({ args0 -> args0 }).orElse(null),
                truststoreUri = javaType.truststoreUri().map({ args0 -> args0 }).orElse(null),
            )
    }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy