File: //snap/google-cloud-cli/current/lib/googlecloudsdk/schemas/networksecurity/v1/AuthzPolicy.yaml
$schema: "http://json-schema.org/draft-06/schema#"
title: networksecurity v1 AuthzPolicy export schema
description: A gcloud export/import command YAML validation schema.
type: object
required:
- action
- name
- target
additionalProperties: false
properties:
COMMENT:
type: object
description: User specified info ignored by gcloud import.
additionalProperties: false
properties:
template-id:
type: string
region:
type: string
description:
type: string
date:
type: string
version:
type: string
UNKNOWN:
type: array
description: Unknown API fields that cannot be imported.
items:
type: string
action:
description: |-
Can be one of `ALLOW`, `DENY`, `CUSTOM`. When the action is `CUSTOM`,
`customProvider` must be specified. When the action is `ALLOW`, only
requests matching the policy will be allowed. When the action is `DENY`,
only requests matching the policy will be denied. When a request arrives,
the policies are evaluated in the following order: 1. If there is a
`CUSTOM` policy that matches the request, the `CUSTOM` policy is evaluated
using the custom authorization providers and the request is denied if the
provider rejects the request. 2. If there are any `DENY` policies that
match the request, the request is denied. 3. If there are no `ALLOW`
policies for the resource or if any of the `ALLOW` policies match the
request, the request is allowed. 4. Else the request is denied by default
if none of the configured AuthzPolicies with `ALLOW` action match the
request.
type: string
enum:
- ALLOW
- AUTHZ_ACTION_UNSPECIFIED
- CUSTOM
- DENY
customProvider:
description: |-
Required if the action is `CUSTOM`. Allows delegating authorization
decisions to Cloud IAP or to Service Extensions. One of `cloudIap` or
`authzExtension` must be specified.
$ref: AuthzPolicyCustomProvider.yaml
description:
description: A human-readable description of the resource.
type: string
httpRules:
description: |-
A list of authorization HTTP rules to match against the incoming request.
A policy match occurs when at least one HTTP rule matches the request or
when no HTTP rules are specified in the policy. At least one HTTP Rule is
required for Allow or Deny Action. Limited to 5 rules.
type: array
items:
$ref: AuthzPolicyAuthzRule.yaml
labels:
description: |-
Set of labels associated with the `AuthzPolicy` resource. The format
must comply with [the following requirements](/compute/docs/labeling-
resources#requirements).
$ref: LabelsValue.yaml
name:
description: |-
Identifier. Name of the `AuthzPolicy` resource in the following
format: `projects/{project}/locations/{location}/authzPolicies/{authz_
policy}`.
type: string
target:
description: |-
Specifies the set of resources to which this policy should be applied
to.
$ref: AuthzPolicyTarget.yaml