GoogleApi.CloudAsset.V1.Model.GoogleCloudOrgpolicyV1ListPolicy (google_api_cloud_asset v0.22.1) View Source
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/", e.g. "projects/tokyo-rain-123" - "folders/", e.g. "folders/1234" - "organizations/", e.g. "organizations/1234" The supports_under field of the associated Constraint defines whether ancestry prefixes can be used. You can set allowed_values and denied_values in the same Policy if all_values is ALL_VALUES_UNSPECIFIED. ALLOW or DENY are used to allow or deny all values. If all_values is set to either ALLOW or DENY, allowed_values and denied_values must be unset.
Attributes
-
allValues(type:String.t, default:nil) - The policy all_values state. -
allowedValues(type:list(String.t), default:nil) - List of values allowed at this resource. Can only be set ifall_valuesis set toALL_VALUES_UNSPECIFIED. -
deniedValues(type:list(String.t), default:nil) - List of values denied at this resource. Can only be set ifall_valuesis set toALL_VALUES_UNSPECIFIED. -
inheritFromParent(type:boolean(), default:nil) - Determines the inheritance behavior for thisPolicy. By default, aListPolicyset at a resource supersedes 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. SettingPolicyhierarchies 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 aConstraintconstraints/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 forprojects/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. -
suggestedValue(type:String.t, default:nil) - Optional. The Google Cloud Console will try to default to a configuration that matches the value specified in thisPolicy. Ifsuggested_valueis not set, it will inherit the value specified higher in the hierarchy, unlessinherit_from_parentisfalse.
Link to this section Summary
Functions
Unwrap a decoded JSON object into its complex fields.
Link to this section Types
Specs
Link to this section Functions
Specs
Unwrap a decoded JSON object into its complex fields.