Resource: Policy
Defines an organization policy which is used to specify constraints for configurations of Google Cloud resources.
JSON representation |
---|
{ "name": string, "spec": { object ( |
Fields | |
---|---|
name |
Immutable. The resource name of the policy. Must be one of the following forms, where
For example, Note: |
spec |
Basic information about the Organization Policy. |
alternate |
Deprecated. |
dry |
Dry-run policy. Audit-only policy, can be used to monitor how the policy would have impacted the existing and future resources if it's enforced. |
etag |
Optional. An opaque tag indicating the current state of the policy, used for concurrency control. This 'etag' is computed by the server based on the value of other fields, and may be sent on update and delete requests to ensure the client has an up-to-date value before proceeding. |
PolicySpec
Defines a Google Cloud policy specification which is used to specify constraints for configurations of Google Cloud resources.
JSON representation |
---|
{
"etag": string,
"updateTime": string,
"rules": [
{
object ( |
Fields | |
---|---|
etag |
An opaque tag indicating the current version of the policySpec, used for concurrency control. This field is ignored if used in a When the policy is returned from either a When the policy is returned from a |
update |
Output only. The time stamp this was previously updated. This represents the last time a call to A timestamp in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits. Examples: |
rules[] |
In policies for boolean constraints, the following requirements apply:
|
inherit |
Determines the inheritance behavior for this policy. If |
reset |
Ignores policies set above this resource and restores the |
PolicyRule
A rule used to express this policy.
JSON representation |
---|
{ "condition": { object ( |
Fields | |
---|---|
condition |
A condition which determines whether this rule is used in the evaluation of the policy. When set, the |
Union field
|
|
values |
List of values to be used for this policy rule. This field can be set only in policies for list constraints. |
allow |
Setting this to true means that all values are allowed. This field can be set only in policies for list constraints. |
deny |
Setting this to true means that all values are denied. This field can be set only in policies for list constraints. |
enforce |
If |
StringValues
A message that holds specific allowed and denied values. This message can define specific values and subtrees of the Resource Manager resource hierarchy (Organizations
, Folders
, Projects
) that are allowed or denied. This is achieved by using the under:
and optional is:
prefixes. The under:
prefix is used to denote resource subtree values. The is:
prefix is used to denote specific values, and is required only if the value contains a ":". Values prefixed with "is:" are treated the same as values with no prefix. Ancestry subtrees must be in one of the following formats:
projects/<project-id>
(for example,projects/tokyo-rain-123
)folders/<folder-id>
(for example,folders/1234
)organizations/<organization-id>
(for example,organizations/1234
)
The supportsUnder
field of the associated Constraint
defines whether ancestry prefixes can be used.
JSON representation |
---|
{ "allowedValues": [ string ], "deniedValues": [ string ] } |
Fields | |
---|---|
allowed |
List of values allowed at this resource. |
denied |
List of values denied at this resource. |
Expr
Represents a textual expression in the Common Expression Language (CEL) syntax. CEL is a C-like expression language. The syntax and semantics of CEL are documented at https://github.com/google/cel-spec.
Example (Comparison):
title: "Summary size limit"
description: "Determines if a summary is less than 100 chars"
expression: "document.summary.size() < 100"
Example (Equality):
title: "Requestor is owner"
description: "Determines if requestor is the document owner"
expression: "document.owner == request.auth.claims.email"
Example (Logic):
title: "Public documents"
description: "Determine whether the document should be publicly visible"
expression: "document.type != 'private' && document.type != 'internal'"
Example (Data Manipulation):
title: "Notification string"
description: "Create a notification string with a timestamp."
expression: "'New message received at ' + string(document.create_time)"
The exact variables and functions that may be referenced within an expression are determined by the service that evaluates it. See the service documentation for additional information.
JSON representation |
---|
{ "expression": string, "title": string, "description": string, "location": string } |
Fields | |
---|---|
expression |
Textual representation of an expression in Common Expression Language syntax. |
title |
Optional. Title for the expression, i.e. a short string describing its purpose. This can be used e.g. in UIs which allow to enter the expression. |
description |
Optional. Description of the expression. This is a longer text which describes the expression, e.g. when hovered over it in a UI. |
location |
Optional. String indicating the location of the expression for error reporting, e.g. a file name and a position in the file. |
AlternatePolicySpec
Similar to PolicySpec but with an extra 'launch' field for launch reference. The PolicySpec here is specific for dry-run/darklaunch.
JSON representation |
---|
{
"launch": string,
"spec": {
object ( |
Fields | |
---|---|
launch |
Reference to the launch that will be used while audit logging and to control the launch. Should be set only in the alternate policy. |
spec |
Specify constraint for configurations of Google Cloud resources. |
Methods |
|
---|---|
|
Creates a policy. |
|
Deletes a policy. |
|
Gets a policy on a resource. |
|
Gets the effective policy on a resource. |
|
Retrieves all of the policies that exist on a particular resource. |
|
Updates a policy. |