com.pulumi.cloudflare.kotlin.outputs.AccessPolicyInclude.kt Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of pulumi-cloudflare-kotlin Show documentation
Show all versions of pulumi-cloudflare-kotlin Show documentation
Build cloud applications and infrastructure by combining the safety and reliability of infrastructure as code with the power of the Kotlin programming language.
The 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 Matches any valid Access service token.
* @property authContexts
* @property authMethod The type of authentication method. Refer to https://datatracker.ietf.org/doc/html/rfc8176#section-2 for possible types.
* @property azures Matches an Azure group. Requires an Azure identity provider.
* @property certificate Matches any valid client certificate.
* @property commonName Matches a valid client certificate common name.
* @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 The ID of a device posture integration.
* @property emailDomains The email domain to match.
* @property emailLists The ID of a previously created email list.
* @property emails The email of the user.
* @property everyone Matches everyone.
* @property externalEvaluation Create Allow or Block policies which evaluate the user based on custom criteria. https://developers.cloudflare.com/cloudflare-one/policies/access/external-evaluation/.
* @property geos Matches a specific country.
* @property githubs Matches a Github organization. Requires a Github identity provider.
* @property groups The ID of a previously created Access group.
* @property gsuites Matches a group in Google Workspace. Requires a Google Workspace identity provider.
* @property ipLists The ID of a previously created IP list.
* @property ips An IPv4 or IPv6 CIDR block.
* @property loginMethods The ID of a configured identity provider.
* @property oktas Matches an Okta group. Requires an Okta identity provider.
* @property samls Matches a SAML group. Requires a SAML identity provider.
* @property serviceTokens The ID of an Access service token.
*/
public data class AccessPolicyInclude(
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: AccessPolicyIncludeExternalEvaluation? = 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.AccessPolicyInclude): AccessPolicyInclude = AccessPolicyInclude(
anyValidServiceToken = javaType.anyValidServiceToken().map({ args0 -> args0 }).orElse(null),
authContexts = javaType.authContexts().map({ args0 ->
args0.let({ args0 ->
com.pulumi.cloudflare.kotlin.outputs.AccessPolicyIncludeAuthContext.Companion.toKotlin(args0)
})
}),
authMethod = javaType.authMethod().map({ args0 -> args0 }).orElse(null),
azures = javaType.azures().map({ args0 ->
args0.let({ args0 ->
com.pulumi.cloudflare.kotlin.outputs.AccessPolicyIncludeAzure.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.AccessPolicyIncludeExternalEvaluation.Companion.toKotlin(args0)
})
}).orElse(null),
geos = javaType.geos().map({ args0 -> args0 }),
githubs = javaType.githubs().map({ args0 ->
args0.let({ args0 ->
com.pulumi.cloudflare.kotlin.outputs.AccessPolicyIncludeGithub.Companion.toKotlin(args0)
})
}),
groups = javaType.groups().map({ args0 -> args0 }),
gsuites = javaType.gsuites().map({ args0 ->
args0.let({ args0 ->
com.pulumi.cloudflare.kotlin.outputs.AccessPolicyIncludeGsuite.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.AccessPolicyIncludeOkta.Companion.toKotlin(args0)
})
}),
samls = javaType.samls().map({ args0 ->
args0.let({ args0 ->
com.pulumi.cloudflare.kotlin.outputs.AccessPolicyIncludeSaml.Companion.toKotlin(args0)
})
}),
serviceTokens = javaType.serviceTokens().map({ args0 -> args0 }),
)
}
}