com.pulumi.cloudflare.kotlin.outputs.ZeroTrustGatewayPolicyRuleSettings.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
import kotlin.collections.Map
/**
*
* @property addHeaders Add custom headers to allowed requests in the form of key-value pairs.
* @property allowChildBypass Allow parent MSP accounts to enable bypass their children's rules.
* @property auditSsh Settings for auditing SSH usage.
* @property bisoAdminControls Configure how browser isolation behaves.
* @property blockPageEnabled Indicator of block page enablement.
* @property blockPageReason The displayed reason for a user being blocked.
* @property bypassParentRule Allow child MSP accounts to bypass their parent's rule.
* @property checkSession Configure how session check behaves.
* @property dnsResolvers Add your own custom resolvers to route queries that match the resolver policy. Cannot be used when resolve*dns*through*cloudflare is set. DNS queries will route to the address closest to their origin.
* @property egress Configure how Proxy traffic egresses. Can be set for rules with Egress action and Egress filter. Can be omitted to indicate local egress via Warp IPs.
* @property ignoreCnameCategoryMatches Set to true, to ignore the category matches at CNAME domains in a response.
* @property insecureDisableDnssecValidation Disable DNSSEC validation (must be Allow rule).
* @property ipCategories Turns on IP category based filter on dns if the rule contains dns category checks.
* @property l4override Settings to forward layer 4 traffic.
* @property notificationSettings Notification settings on a block rule.
* @property overrideHost The host to override matching DNS queries with.
* @property overrideIps The IPs to override matching DNS queries with.
* @property payloadLog Configure DLP Payload Logging settings for this rule.
* @property resolveDnsThroughCloudflare Enable sending queries that match the resolver policy to Cloudflare's default 1.1.1.1 DNS resolver. Cannot be set when `dns_resolvers` are specified.
* @property untrustedCert Configure untrusted certificate settings for this rule.
*/
public data class ZeroTrustGatewayPolicyRuleSettings(
public val addHeaders: Map? = null,
public val allowChildBypass: Boolean? = null,
public val auditSsh: ZeroTrustGatewayPolicyRuleSettingsAuditSsh? = null,
public val bisoAdminControls: ZeroTrustGatewayPolicyRuleSettingsBisoAdminControls? = null,
public val blockPageEnabled: Boolean? = null,
public val blockPageReason: String? = null,
public val bypassParentRule: Boolean? = null,
public val checkSession: ZeroTrustGatewayPolicyRuleSettingsCheckSession? = null,
public val dnsResolvers: ZeroTrustGatewayPolicyRuleSettingsDnsResolvers? = null,
public val egress: ZeroTrustGatewayPolicyRuleSettingsEgress? = null,
public val ignoreCnameCategoryMatches: Boolean? = null,
public val insecureDisableDnssecValidation: Boolean? = null,
public val ipCategories: Boolean? = null,
public val l4override: ZeroTrustGatewayPolicyRuleSettingsL4override? = null,
public val notificationSettings: ZeroTrustGatewayPolicyRuleSettingsNotificationSettings? = null,
public val overrideHost: String? = null,
public val overrideIps: List? = null,
public val payloadLog: ZeroTrustGatewayPolicyRuleSettingsPayloadLog? = null,
public val resolveDnsThroughCloudflare: Boolean? = null,
public val untrustedCert: ZeroTrustGatewayPolicyRuleSettingsUntrustedCert? = null,
) {
public companion object {
public fun toKotlin(javaType: com.pulumi.cloudflare.outputs.ZeroTrustGatewayPolicyRuleSettings): ZeroTrustGatewayPolicyRuleSettings = ZeroTrustGatewayPolicyRuleSettings(
addHeaders = javaType.addHeaders().map({ args0 -> args0.key.to(args0.value) }).toMap(),
allowChildBypass = javaType.allowChildBypass().map({ args0 -> args0 }).orElse(null),
auditSsh = javaType.auditSsh().map({ args0 ->
args0.let({ args0 ->
com.pulumi.cloudflare.kotlin.outputs.ZeroTrustGatewayPolicyRuleSettingsAuditSsh.Companion.toKotlin(args0)
})
}).orElse(null),
bisoAdminControls = javaType.bisoAdminControls().map({ args0 ->
args0.let({ args0 ->
com.pulumi.cloudflare.kotlin.outputs.ZeroTrustGatewayPolicyRuleSettingsBisoAdminControls.Companion.toKotlin(args0)
})
}).orElse(null),
blockPageEnabled = javaType.blockPageEnabled().map({ args0 -> args0 }).orElse(null),
blockPageReason = javaType.blockPageReason().map({ args0 -> args0 }).orElse(null),
bypassParentRule = javaType.bypassParentRule().map({ args0 -> args0 }).orElse(null),
checkSession = javaType.checkSession().map({ args0 ->
args0.let({ args0 ->
com.pulumi.cloudflare.kotlin.outputs.ZeroTrustGatewayPolicyRuleSettingsCheckSession.Companion.toKotlin(args0)
})
}).orElse(null),
dnsResolvers = javaType.dnsResolvers().map({ args0 ->
args0.let({ args0 ->
com.pulumi.cloudflare.kotlin.outputs.ZeroTrustGatewayPolicyRuleSettingsDnsResolvers.Companion.toKotlin(args0)
})
}).orElse(null),
egress = javaType.egress().map({ args0 ->
args0.let({ args0 ->
com.pulumi.cloudflare.kotlin.outputs.ZeroTrustGatewayPolicyRuleSettingsEgress.Companion.toKotlin(args0)
})
}).orElse(null),
ignoreCnameCategoryMatches = javaType.ignoreCnameCategoryMatches().map({ args0 ->
args0
}).orElse(null),
insecureDisableDnssecValidation = javaType.insecureDisableDnssecValidation().map({ args0 ->
args0
}).orElse(null),
ipCategories = javaType.ipCategories().map({ args0 -> args0 }).orElse(null),
l4override = javaType.l4override().map({ args0 ->
args0.let({ args0 ->
com.pulumi.cloudflare.kotlin.outputs.ZeroTrustGatewayPolicyRuleSettingsL4override.Companion.toKotlin(args0)
})
}).orElse(null),
notificationSettings = javaType.notificationSettings().map({ args0 ->
args0.let({ args0 ->
com.pulumi.cloudflare.kotlin.outputs.ZeroTrustGatewayPolicyRuleSettingsNotificationSettings.Companion.toKotlin(args0)
})
}).orElse(null),
overrideHost = javaType.overrideHost().map({ args0 -> args0 }).orElse(null),
overrideIps = javaType.overrideIps().map({ args0 -> args0 }),
payloadLog = javaType.payloadLog().map({ args0 ->
args0.let({ args0 ->
com.pulumi.cloudflare.kotlin.outputs.ZeroTrustGatewayPolicyRuleSettingsPayloadLog.Companion.toKotlin(args0)
})
}).orElse(null),
resolveDnsThroughCloudflare = javaType.resolveDnsThroughCloudflare().map({ args0 ->
args0
}).orElse(null),
untrustedCert = javaType.untrustedCert().map({ args0 ->
args0.let({ args0 ->
com.pulumi.cloudflare.kotlin.outputs.ZeroTrustGatewayPolicyRuleSettingsUntrustedCert.Companion.toKotlin(args0)
})
}).orElse(null),
)
}
}