Class: Google::Apis::CloudresourcemanagerV1::BooleanPolicy

Inherits:
Object
  • Object
show all
Includes:
Google::Apis::Core::Hashable, Google::Apis::Core::JsonObjectSupport
Defined in:
generated/google/apis/cloudresourcemanager_v1/classes.rb,
generated/google/apis/cloudresourcemanager_v1/representations.rb,
generated/google/apis/cloudresourcemanager_v1/representations.rb

Overview

Used in policy_type to specify how boolean_policy will behave at this resource.

Instance Attribute Summary collapse

Instance Method Summary collapse

Methods included from Google::Apis::Core::JsonObjectSupport

#to_json

Methods included from Google::Apis::Core::Hashable

process_value, #to_h

Constructor Details

#initialize(**args) ⇒ BooleanPolicy

Returns a new instance of BooleanPolicy.



311
312
313
# File 'generated/google/apis/cloudresourcemanager_v1/classes.rb', line 311

def initialize(**args)
   update!(**args)
end

Instance Attribute Details

#enforcedBoolean Also known as: enforced?

If true, then the Policy is enforced. If false, then any configuration is acceptable. Suppose you have a Constraint constraints/compute.disableSerialPortAccess with constraint_default set to ALLOW. A Policy for that Constraint exhibits the following behavior:

  • If the Policy at this resource has enforced set to false, serial port connection attempts will be allowed.
  • If the Policy at this resource has enforced set to true, serial port connection attempts will be refused.
  • If the Policy at this resource is RestoreDefault, serial port connection attempts will be allowed.
  • If no Policy is set at this resource or anywhere higher in the resource hierarchy, serial port connection attempts will be allowed.
  • If no Policy is set at this resource, but one exists higher in the resource hierarchy, the behavior is as if thePolicy were set at this resource. The following examples demonstrate the different possible layerings: Example 1 (nearest Constraint wins): organizations/foo has a Policy with: enforced: false projects/bar has no Policy set. The constraint at projects/bar and organizations/foo will not be enforced. Example 2 (enforcement gets replaced): organizations/foo has a Policy with: enforced: false projects/bar has a Policy with: enforced: true The constraint at organizations/foo is not enforced. The constraint at projects/bar is enforced. Example 3 (RestoreDefault): organizations/foo has a Policy with: enforced: true projects/bar has a Policy with: RestoreDefault:` The constraint atorganizations/foois enforced. The constraint atprojects/baris not enforced, because constraint_defaultfor theConstraintisALLOW. Corresponds to the JSON propertyenforced`

Returns:

  • (Boolean)


308
309
310
# File 'generated/google/apis/cloudresourcemanager_v1/classes.rb', line 308

def enforced
  @enforced
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



316
317
318
# File 'generated/google/apis/cloudresourcemanager_v1/classes.rb', line 316

def update!(**args)
  @enforced = args[:enforced] if args.key?(:enforced)
end