Reference documentation and code samples for the Cloud Asset V1 API class Google::Cloud::OrgPolicy::V1::Policy::ListPolicy.
Used in policy_type to specify how list_policy behaves at this
resource.
ListPolicy can define specific values and subtrees of Cloud Resource
Manager resource hierarchy (Organizations, Folders, Projects) that
are allowed or denied by setting the allowed_values and denied_values
fields. 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/
- "folders/
- "organizations/
Inherits
- Object
Extended By
- Google::Protobuf::MessageExts::ClassMethods
Includes
- Google::Protobuf::MessageExts
Methods
#all_values
def all_values() -> ::Google::Cloud::OrgPolicy::V1::Policy::ListPolicy::AllValues- (::Google::Cloud::OrgPolicy::V1::Policy::ListPolicy::AllValues) — The policy all_values state.
#all_values=
def all_values=(value) -> ::Google::Cloud::OrgPolicy::V1::Policy::ListPolicy::AllValues- value (::Google::Cloud::OrgPolicy::V1::Policy::ListPolicy::AllValues) — The policy all_values state.
- (::Google::Cloud::OrgPolicy::V1::Policy::ListPolicy::AllValues) — The policy all_values state.
#allowed_values
def allowed_values() -> ::Array<::String>-
(::Array<::String>) — List of values allowed at this resource. Can only be set if
all_valuesis set toALL_VALUES_UNSPECIFIED.
#allowed_values=
def allowed_values=(value) -> ::Array<::String>-
value (::Array<::String>) — List of values allowed at this resource. Can only be set if
all_valuesis set toALL_VALUES_UNSPECIFIED.
-
(::Array<::String>) — List of values allowed at this resource. Can only be set if
all_valuesis set toALL_VALUES_UNSPECIFIED.
#denied_values
def denied_values() -> ::Array<::String>-
(::Array<::String>) — List of values denied at this resource. Can only be set if
all_valuesis set toALL_VALUES_UNSPECIFIED.
#denied_values=
def denied_values=(value) -> ::Array<::String>-
value (::Array<::String>) — List of values denied at this resource. Can only be set if
all_valuesis set toALL_VALUES_UNSPECIFIED.
-
(::Array<::String>) — List of values denied at this resource. Can only be set if
all_valuesis set toALL_VALUES_UNSPECIFIED.
#inherit_from_parent
def inherit_from_parent() -> ::Boolean-
(::Boolean) — Determines the inheritance behavior for this
Policy.By default, a
ListPolicyset at a resource supercedes anyPolicyset anywhere up the resource hierarchy. However, ifinherit_from_parentis set totrue, then the values from the effectivePolicyof the parent resource are inherited, meaning the values set in thisPolicyare added to the values inherited up the hierarchy.Setting
Policyhierarchies that inherit both allowed values and denied values isn't recommended in most circumstances to keep the configuration simple and understandable. However, it is possible to set aPolicywithallowed_valuesset that inherits aPolicywithdenied_valuesset. In this case, the values that are allowed must be inallowed_valuesand not present indenied_values.For example, suppose you have a
Constraintconstraints/serviceuser.services, which has aconstraint_typeoflist_constraint, and withconstraint_defaultset toALLOW. Suppose that at the Organization level, aPolicyis applied that restricts the allowed API activations to {E1,E2}. Then, if aPolicyis applied to a project below the Organization that hasinherit_from_parentset tofalseand field all_values set to DENY, then an attempt to activate any API will be denied.The following examples demonstrate different possible layerings for
projects/barparented byorganizations/foo:Example 1 (no inherited values):
organizations/foohas aPolicywith values: {allowed_values: "E1" allowed_values:"E2"}projects/barhasinherit_from_parentfalseand values: {allowed_values: "E3" allowed_values: "E4"} The accepted values atorganizations/fooareE1,E2. The accepted values atprojects/barareE3, andE4.Example 2 (inherited values):
organizations/foohas aPolicywith values: {allowed_values: "E1" allowed_values:"E2"}projects/barhas aPolicywith values: {value: "E3" value: "E4" inherit_from_parent: true} The accepted values atorganizations/fooareE1,E2. The accepted values atprojects/barareE1,E2,E3, andE4.Example 3 (inheriting both allowed and denied values):
organizations/foohas aPolicywith values: {allowed_values: "E1" allowed_values: "E2"}projects/barhas aPolicywith: {denied_values: "E1"} The accepted values atorganizations/fooareE1,E2. The value accepted atprojects/barisE2.Example 4 (RestoreDefault):
organizations/foohas aPolicywith values: {allowed_values: "E1" allowed_values:"E2"}projects/barhas aPolicywith values: {RestoreDefault: \{}} The accepted values atorganizations/fooareE1,E2. The accepted values atprojects/barare either all or none depending on the value ofconstraint_default(ifALLOW, all; ifDENY, none).Example 5 (no policy inherits parent policy):
organizations/foohas noPolicyset.projects/barhas noPolicyset. The accepted values at both levels are either all or none depending on the value ofconstraint_default(ifALLOW, all; ifDENY, none).Example 6 (ListConstraint allowing all):
organizations/foohas aPolicywith values: {allowed_values: "E1" allowed_values: "E2"}projects/barhas aPolicywith: {all: ALLOW} The accepted values atorganizations/fooareE1, E2. Any value is accepted atprojects/bar`.Example 7 (ListConstraint allowing none):
organizations/foohas aPolicywith values: {allowed_values: "E1" allowed_values: "E2"}projects/barhas aPolicywith: {all: DENY} The accepted values atorganizations/fooareE1, E2. No value is accepted atprojects/bar`.Example 10 (allowed and denied subtrees of Resource Manager hierarchy): Given the following resource hierarchy O1->{F1, F2}; F1->{P1}; F2->{P2, P3},
organizations/foohas aPolicywith values: {allowed_values: "under:organizations/O1"}projects/barhas aPolicywith: {allowed_values: "under:projects/P3"} {denied_values: "under:folders/F2"} The accepted values atorganizations/fooareorganizations/O1,folders/F1,folders/F2,projects/P1,projects/P2,projects/P3. The accepted values atprojects/barareorganizations/O1,folders/F1,projects/P1.
#inherit_from_parent=
def inherit_from_parent=(value) -> ::Boolean-
value (::Boolean) — Determines the inheritance behavior for this
Policy.By default, a
ListPolicyset at a resource supercedes anyPolicyset anywhere up the resource hierarchy. However, ifinherit_from_parentis set totrue, then the values from the effectivePolicyof the parent resource are inherited, meaning the values set in thisPolicyare added to the values inherited up the hierarchy.Setting
Policyhierarchies that inherit both allowed values and denied values isn't recommended in most circumstances to keep the configuration simple and understandable. However, it is possible to set aPolicywithallowed_valuesset that inherits aPolicywithdenied_valuesset. In this case, the values that are allowed must be inallowed_valuesand not present indenied_values.For example, suppose you have a
Constraintconstraints/serviceuser.services, which has aconstraint_typeoflist_constraint, and withconstraint_defaultset toALLOW. Suppose that at the Organization level, aPolicyis applied that restricts the allowed API activations to {E1,E2}. Then, if aPolicyis applied to a project below the Organization that hasinherit_from_parentset tofalseand field all_values set to DENY, then an attempt to activate any API will be denied.The following examples demonstrate different possible layerings for
projects/barparented byorganizations/foo:Example 1 (no inherited values):
organizations/foohas aPolicywith values: {allowed_values: "E1" allowed_values:"E2"}projects/barhasinherit_from_parentfalseand values: {allowed_values: "E3" allowed_values: "E4"} The accepted values atorganizations/fooareE1,E2. The accepted values atprojects/barareE3, andE4.Example 2 (inherited values):
organizations/foohas aPolicywith values: {allowed_values: "E1" allowed_values:"E2"}projects/barhas aPolicywith values: {value: "E3" value: "E4" inherit_from_parent: true} The accepted values atorganizations/fooareE1,E2. The accepted values atprojects/barareE1,E2,E3, andE4.Example 3 (inheriting both allowed and denied values):
organizations/foohas aPolicywith values: {allowed_values: "E1" allowed_values: "E2"}projects/barhas aPolicywith: {denied_values: "E1"} The accepted values atorganizations/fooareE1,E2. The value accepted atprojects/barisE2.Example 4 (RestoreDefault):
organizations/foohas aPolicywith values: {allowed_values: "E1" allowed_values:"E2"}projects/barhas aPolicywith values: {RestoreDefault: \{}} The accepted values atorganizations/fooareE1,E2. The accepted values atprojects/barare either all or none depending on the value ofconstraint_default(ifALLOW, all; ifDENY, none).Example 5 (no policy inherits parent policy):
organizations/foohas noPolicyset.projects/barhas noPolicyset. The accepted values at both levels are either all or none depending on the value ofconstraint_default(ifALLOW, all; ifDENY, none).Example 6 (ListConstraint allowing all):
organizations/foohas aPolicywith values: {allowed_values: "E1" allowed_values: "E2"}projects/barhas aPolicywith: {all: ALLOW} The accepted values atorganizations/fooareE1, E2. Any value is accepted atprojects/bar`.Example 7 (ListConstraint allowing none):
organizations/foohas aPolicywith values: {allowed_values: "E1" allowed_values: "E2"}projects/barhas aPolicywith: {all: DENY} The accepted values atorganizations/fooareE1, E2. No value is accepted atprojects/bar`.Example 10 (allowed and denied subtrees of Resource Manager hierarchy): Given the following resource hierarchy O1->{F1, F2}; F1->{P1}; F2->{P2, P3},
organizations/foohas aPolicywith values: {allowed_values: "under:organizations/O1"}projects/barhas aPolicywith: {allowed_values: "under:projects/P3"} {denied_values: "under:folders/F2"} The accepted values atorganizations/fooareorganizations/O1,folders/F1,folders/F2,projects/P1,projects/P2,projects/P3. The accepted values atprojects/barareorganizations/O1,folders/F1,projects/P1.
-
(::Boolean) — Determines the inheritance behavior for this
Policy.By default, a
ListPolicyset at a resource supercedes anyPolicyset anywhere up the resource hierarchy. However, ifinherit_from_parentis set totrue, then the values from the effectivePolicyof the parent resource are inherited, meaning the values set in thisPolicyare added to the values inherited up the hierarchy.Setting
Policyhierarchies that inherit both allowed values and denied values isn't recommended in most circumstances to keep the configuration simple and understandable. However, it is possible to set aPolicywithallowed_valuesset that inherits aPolicywithdenied_valuesset. In this case, the values that are allowed must be inallowed_valuesand not present indenied_values.For example, suppose you have a
Constraintconstraints/serviceuser.services, which has aconstraint_typeoflist_constraint, and withconstraint_defaultset toALLOW. Suppose that at the Organization level, aPolicyis applied that restricts the allowed API activations to {E1,E2}. Then, if aPolicyis applied to a project below the Organization that hasinherit_from_parentset tofalseand field all_values set to DENY, then an attempt to activate any API will be denied.The following examples demonstrate different possible layerings for
projects/barparented byorganizations/foo:Example 1 (no inherited values):
organizations/foohas aPolicywith values: {allowed_values: "E1" allowed_values:"E2"}projects/barhasinherit_from_parentfalseand values: {allowed_values: "E3" allowed_values: "E4"} The accepted values atorganizations/fooareE1,E2. The accepted values atprojects/barareE3, andE4.Example 2 (inherited values):
organizations/foohas aPolicywith values: {allowed_values: "E1" allowed_values:"E2"}projects/barhas aPolicywith values: {value: "E3" value: "E4" inherit_from_parent: true} The accepted values atorganizations/fooareE1,E2. The accepted values atprojects/barareE1,E2,E3, andE4.Example 3 (inheriting both allowed and denied values):
organizations/foohas aPolicywith values: {allowed_values: "E1" allowed_values: "E2"}projects/barhas aPolicywith: {denied_values: "E1"} The accepted values atorganizations/fooareE1,E2. The value accepted atprojects/barisE2.Example 4 (RestoreDefault):
organizations/foohas aPolicywith values: {allowed_values: "E1" allowed_values:"E2"}projects/barhas aPolicywith values: {RestoreDefault: \{}} The accepted values atorganizations/fooareE1,E2. The accepted values atprojects/barare either all or none depending on the value ofconstraint_default(ifALLOW, all; ifDENY, none).Example 5 (no policy inherits parent policy):
organizations/foohas noPolicyset.projects/barhas noPolicyset. The accepted values at both levels are either all or none depending on the value ofconstraint_default(ifALLOW, all; ifDENY, none).Example 6 (ListConstraint allowing all):
organizations/foohas aPolicywith values: {allowed_values: "E1" allowed_values: "E2"}projects/barhas aPolicywith: {all: ALLOW} The accepted values atorganizations/fooareE1, E2. Any value is accepted atprojects/bar`.Example 7 (ListConstraint allowing none):
organizations/foohas aPolicywith values: {allowed_values: "E1" allowed_values: "E2"}projects/barhas aPolicywith: {all: DENY} The accepted values atorganizations/fooareE1, E2. No value is accepted atprojects/bar`.Example 10 (allowed and denied subtrees of Resource Manager hierarchy): Given the following resource hierarchy O1->{F1, F2}; F1->{P1}; F2->{P2, P3},
organizations/foohas aPolicywith values: {allowed_values: "under:organizations/O1"}projects/barhas aPolicywith: {allowed_values: "under:projects/P3"} {denied_values: "under:folders/F2"} The accepted values atorganizations/fooareorganizations/O1,folders/F1,folders/F2,projects/P1,projects/P2,projects/P3. The accepted values atprojects/barareorganizations/O1,folders/F1,projects/P1.
#suggested_value
def suggested_value() -> ::String-
(::String) — Optional. The Google Cloud Console will try to default to a configuration
that matches the value specified in this
Policy. Ifsuggested_valueis not set, it will inherit the value specified higher in the hierarchy, unlessinherit_from_parentisfalse.
#suggested_value=
def suggested_value=(value) -> ::String-
value (::String) — Optional. The Google Cloud Console will try to default to a configuration
that matches the value specified in this
Policy. Ifsuggested_valueis not set, it will inherit the value specified higher in the hierarchy, unlessinherit_from_parentisfalse.
-
(::String) — Optional. The Google Cloud Console will try to default to a configuration
that matches the value specified in this
Policy. Ifsuggested_valueis not set, it will inherit the value specified higher in the hierarchy, unlessinherit_from_parentisfalse.