Class: Google::Apis::PolicysimulatorV1::GoogleCloudOrgpolicyV2PolicySpecPolicyRule
- Inherits:
-
Object
- Object
- Google::Apis::PolicysimulatorV1::GoogleCloudOrgpolicyV2PolicySpecPolicyRule
- Includes:
- Core::Hashable, Core::JsonObjectSupport
- Defined in:
- lib/google/apis/policysimulator_v1/classes.rb,
lib/google/apis/policysimulator_v1/representations.rb,
lib/google/apis/policysimulator_v1/representations.rb
Overview
A rule used to express this policy.
Instance Attribute Summary collapse
-
#allow_all ⇒ Boolean
(also: #allow_all?)
Setting this to true means that all values are allowed.
-
#condition ⇒ Google::Apis::PolicysimulatorV1::GoogleTypeExpr
Represents a textual expression in the Common Expression Language (CEL) syntax.
-
#deny_all ⇒ Boolean
(also: #deny_all?)
Setting this to true means that all values are denied.
-
#enforce ⇒ Boolean
(also: #enforce?)
If
true
, then the policy is enforced. -
#values ⇒ Google::Apis::PolicysimulatorV1::GoogleCloudOrgpolicyV2PolicySpecPolicyRuleStringValues
A message that holds specific allowed and denied values.
Instance Method Summary collapse
-
#initialize(**args) ⇒ GoogleCloudOrgpolicyV2PolicySpecPolicyRule
constructor
A new instance of GoogleCloudOrgpolicyV2PolicySpecPolicyRule.
-
#update!(**args) ⇒ Object
Update properties of this object.
Constructor Details
#initialize(**args) ⇒ GoogleCloudOrgpolicyV2PolicySpecPolicyRule
Returns a new instance of GoogleCloudOrgpolicyV2PolicySpecPolicyRule.
309 310 311 |
# File 'lib/google/apis/policysimulator_v1/classes.rb', line 309 def initialize(**args) update!(**args) end |
Instance Attribute Details
#allow_all ⇒ Boolean Also known as: allow_all?
Setting this to true means that all values are allowed. This field can be set
only in policies for list constraints.
Corresponds to the JSON property allowAll
257 258 259 |
# File 'lib/google/apis/policysimulator_v1/classes.rb', line 257 def allow_all @allow_all end |
#condition ⇒ Google::Apis::PolicysimulatorV1::GoogleTypeExpr
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.
Corresponds to the JSON property condition
277 278 279 |
# File 'lib/google/apis/policysimulator_v1/classes.rb', line 277 def condition @condition end |
#deny_all ⇒ Boolean Also known as: deny_all?
Setting this to true means that all values are denied. This field can be set
only in policies for list constraints.
Corresponds to the JSON property denyAll
283 284 285 |
# File 'lib/google/apis/policysimulator_v1/classes.rb', line 283 def deny_all @deny_all end |
#enforce ⇒ Boolean Also known as: enforce?
If true
, then the policy is enforced. If false
, then any configuration is
acceptable. This field can be set only in policies for boolean constraints.
Corresponds to the JSON property enforce
290 291 292 |
# File 'lib/google/apis/policysimulator_v1/classes.rb', line 290 def enforce @enforce end |
#values ⇒ Google::Apis::PolicysimulatorV1::GoogleCloudOrgpolicyV2PolicySpecPolicyRuleStringValues
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/
(for
example, projects/tokyo-rain-123
) - folders/
(for example, folders/1234
)
organizations/
(for example,organizations/1234
) Thesupports_under
field of the associatedConstraint
defines whether ancestry prefixes can be used. Corresponds to the JSON propertyvalues
307 308 309 |
# File 'lib/google/apis/policysimulator_v1/classes.rb', line 307 def values @values end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
314 315 316 317 318 319 320 |
# File 'lib/google/apis/policysimulator_v1/classes.rb', line 314 def update!(**args) @allow_all = args[:allow_all] if args.key?(:allow_all) @condition = args[:condition] if args.key?(:condition) @deny_all = args[:deny_all] if args.key?(:deny_all) @enforce = args[:enforce] if args.key?(:enforce) @values = args[:values] if args.key?(:values) end |