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

com.pulumi.cloudflare.kotlin.outputs.AccessPolicyRequire.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: 5.40.0.0
Show newest version
@file:Suppress("NAME_SHADOWING", "DEPRECATION")

package com.pulumi.cloudflare.kotlin.outputs

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

/**
 *
 * @property anyValidServiceToken
 * @property authContexts
 * @property authMethod
 * @property azures
 * @property certificate
 * @property commonName
 * @property commonNames Overflow field if you need to have multiple common*name rules in a single policy.  Use in place of the singular common*name field.
 * @property devicePostures
 * @property emailDomains
 * @property emailLists
 * @property emails
 * @property everyone
 * @property externalEvaluation
 * @property geos
 * @property githubs
 * @property groups
 * @property gsuites
 * @property ipLists The ID of an existing IP list to reference.
 * @property ips An IPv4 or IPv6 CIDR block.
 * @property loginMethods
 * @property oktas
 * @property samls
 * @property serviceTokens
 */
public data class AccessPolicyRequire(
    public val anyValidServiceToken: Boolean? = null,
    public val authContexts: List? = null,
    public val authMethod: String? = null,
    public val azures: List? = null,
    public val certificate: Boolean? = null,
    public val commonName: String? = null,
    public val commonNames: List? = null,
    public val devicePostures: List? = null,
    public val emailDomains: List? = null,
    public val emailLists: List? = null,
    public val emails: List? = null,
    public val everyone: Boolean? = null,
    public val externalEvaluation: AccessPolicyRequireExternalEvaluation? = null,
    public val geos: List? = null,
    public val githubs: List? = null,
    public val groups: List? = null,
    public val gsuites: List? = null,
    public val ipLists: List? = null,
    public val ips: List? = null,
    public val loginMethods: List? = null,
    public val oktas: List? = null,
    public val samls: List? = null,
    public val serviceTokens: List? = null,
) {
    public companion object {
        public fun toKotlin(javaType: com.pulumi.cloudflare.outputs.AccessPolicyRequire): AccessPolicyRequire = AccessPolicyRequire(
            anyValidServiceToken = javaType.anyValidServiceToken().map({ args0 -> args0 }).orElse(null),
            authContexts = javaType.authContexts().map({ args0 ->
                args0.let({ args0 ->
                    com.pulumi.cloudflare.kotlin.outputs.AccessPolicyRequireAuthContext.Companion.toKotlin(args0)
                })
            }),
            authMethod = javaType.authMethod().map({ args0 -> args0 }).orElse(null),
            azures = javaType.azures().map({ args0 ->
                args0.let({ args0 ->
                    com.pulumi.cloudflare.kotlin.outputs.AccessPolicyRequireAzure.Companion.toKotlin(args0)
                })
            }),
            certificate = javaType.certificate().map({ args0 -> args0 }).orElse(null),
            commonName = javaType.commonName().map({ args0 -> args0 }).orElse(null),
            commonNames = javaType.commonNames().map({ args0 -> args0 }),
            devicePostures = javaType.devicePostures().map({ args0 -> args0 }),
            emailDomains = javaType.emailDomains().map({ args0 -> args0 }),
            emailLists = javaType.emailLists().map({ args0 -> args0 }),
            emails = javaType.emails().map({ args0 -> args0 }),
            everyone = javaType.everyone().map({ args0 -> args0 }).orElse(null),
            externalEvaluation = javaType.externalEvaluation().map({ args0 ->
                args0.let({ args0 ->
                    com.pulumi.cloudflare.kotlin.outputs.AccessPolicyRequireExternalEvaluation.Companion.toKotlin(args0)
                })
            }).orElse(null),
            geos = javaType.geos().map({ args0 -> args0 }),
            githubs = javaType.githubs().map({ args0 ->
                args0.let({ args0 ->
                    com.pulumi.cloudflare.kotlin.outputs.AccessPolicyRequireGithub.Companion.toKotlin(args0)
                })
            }),
            groups = javaType.groups().map({ args0 -> args0 }),
            gsuites = javaType.gsuites().map({ args0 ->
                args0.let({ args0 ->
                    com.pulumi.cloudflare.kotlin.outputs.AccessPolicyRequireGsuite.Companion.toKotlin(args0)
                })
            }),
            ipLists = javaType.ipLists().map({ args0 -> args0 }),
            ips = javaType.ips().map({ args0 -> args0 }),
            loginMethods = javaType.loginMethods().map({ args0 -> args0 }),
            oktas = javaType.oktas().map({ args0 ->
                args0.let({ args0 ->
                    com.pulumi.cloudflare.kotlin.outputs.AccessPolicyRequireOkta.Companion.toKotlin(args0)
                })
            }),
            samls = javaType.samls().map({ args0 ->
                args0.let({ args0 ->
                    com.pulumi.cloudflare.kotlin.outputs.AccessPolicyRequireSaml.Companion.toKotlin(args0)
                })
            }),
            serviceTokens = javaType.serviceTokens().map({ args0 -> args0 }),
        )
    }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy