Many resources are needed to download a project. Please understand that we have to compensate our server costs. Thank you in advance. Project price only 1 $
You can buy this project and download/modify it how often you want.
@file:Suppress("NAME_SHADOWING", "DEPRECATION")
package com.pulumi.gcp.networksecurity.kotlin.inputs
import com.pulumi.core.Output
import com.pulumi.core.Output.of
import com.pulumi.gcp.networksecurity.inputs.AuthzPolicyHttpRuleFromSourceArgs.builder
import com.pulumi.kotlin.ConvertibleToJava
import com.pulumi.kotlin.PulumiTagMarker
import com.pulumi.kotlin.applySuspend
import kotlin.Suppress
import kotlin.Unit
import kotlin.collections.List
import kotlin.jvm.JvmName
/**
*
* @property principals A list of identities derived from the client's certificate. This field will not match on a request unless mutual TLS is enabled for the Forwarding rule or Gateway. Each identity is a string whose value is matched against the URI SAN, or DNS SAN or the subject field in the client's certificate. The match can be exact, prefix, suffix or a substring match. One of exact, prefix, suffix or contains must be specified.
* Limited to 5 principals.
* Structure is documented below.
* @property resources A list of resources to match against the resource of the source VM of a request.
* Limited to 5 resources.
* Structure is documented below.
*/
public data class AuthzPolicyHttpRuleFromSourceArgs(
public val principals: Output>? = null,
public val resources: Output>? = null,
) : ConvertibleToJava {
override fun toJava(): com.pulumi.gcp.networksecurity.inputs.AuthzPolicyHttpRuleFromSourceArgs =
com.pulumi.gcp.networksecurity.inputs.AuthzPolicyHttpRuleFromSourceArgs.builder()
.principals(
principals?.applyValue({ args0 ->
args0.map({ args0 ->
args0.let({ args0 ->
args0.toJava()
})
})
}),
)
.resources(
resources?.applyValue({ args0 ->
args0.map({ args0 ->
args0.let({ args0 ->
args0.toJava()
})
})
}),
).build()
}
/**
* Builder for [AuthzPolicyHttpRuleFromSourceArgs].
*/
@PulumiTagMarker
public class AuthzPolicyHttpRuleFromSourceArgsBuilder internal constructor() {
private var principals: Output>? = null
private var resources: Output>? = null
/**
* @param value A list of identities derived from the client's certificate. This field will not match on a request unless mutual TLS is enabled for the Forwarding rule or Gateway. Each identity is a string whose value is matched against the URI SAN, or DNS SAN or the subject field in the client's certificate. The match can be exact, prefix, suffix or a substring match. One of exact, prefix, suffix or contains must be specified.
* Limited to 5 principals.
* Structure is documented below.
*/
@JvmName("jgehslppcqyisjkd")
public suspend fun principals(`value`: Output>) {
this.principals = value
}
@JvmName("lakpdhkdfbqurfii")
public suspend fun principals(vararg values: Output) {
this.principals = Output.all(values.asList())
}
/**
* @param values A list of identities derived from the client's certificate. This field will not match on a request unless mutual TLS is enabled for the Forwarding rule or Gateway. Each identity is a string whose value is matched against the URI SAN, or DNS SAN or the subject field in the client's certificate. The match can be exact, prefix, suffix or a substring match. One of exact, prefix, suffix or contains must be specified.
* Limited to 5 principals.
* Structure is documented below.
*/
@JvmName("deyjmpacgslnumxo")
public suspend fun principals(values: List