class Google::Apis::CloudresourcemanagerV1::Constraint
A `Constraint` describes a way in which a resource's configuration can be restricted. For example, it controls which cloud services can be activated across an organization, or whether a Compute Engine instance can have serial port connections established. `Constraints` can be configured by the organization's policy administrator to fit the needs of the organzation by setting Policies for `Constraints` at different locations in the organization' s resource hierarchy. Policies are inherited down the resource hierarchy from higher levels, but can also be overridden. For details about the inheritance rules please read about [Policies](/resource-manager/reference/rest/v1/Policy). `Constraints` have a default behavior determined by the `constraint_default` field, which is the enforcement behavior that is used in the absence of a ` Policy` being defined or inherited for the resource in question.
Attributes
A `Constraint` that is either enforced or not. For example a constraint ` constraints/compute.disableSerialPortAccess`. If it is enforced on a VM instance, serial port connections will not be opened to that instance. Corresponds to the JSON property `booleanConstraint` @return [Google::Apis::CloudresourcemanagerV1::BooleanConstraint]
The evaluation behavior of this constraint in the absence of 'Policy'. Corresponds to the JSON property `constraintDefault` @return [String]
Detailed description of what this `Constraint` controls as well as how and where it is enforced. Mutable. Corresponds to the JSON property `description` @return [String]
The human readable name. Mutable. Corresponds to the JSON property `displayName` @return [String]
A `Constraint` that allows or disallows a list of string values, which are configured by an Organization's policy administrator with a `Policy`. Corresponds to the JSON property `listConstraint` @return [Google::Apis::CloudresourcemanagerV1::ListConstraint]
Immutable value, required to globally be unique. For example, `constraints/ serviceuser.services` Corresponds to the JSON property `name` @return [String]
Version of the `Constraint`. Default version is 0; Corresponds to the JSON property `version` @return [Fixnum]
Public Class Methods
# File lib/google/apis/cloudresourcemanager_v1/classes.rb, line 407 def initialize(**args) update!(**args) end
Public Instance Methods
Update properties of this object
# File lib/google/apis/cloudresourcemanager_v1/classes.rb, line 412 def update!(**args) @boolean_constraint = args[:boolean_constraint] if args.key?(:boolean_constraint) @constraint_default = args[:constraint_default] if args.key?(:constraint_default) @description = args[:description] if args.key?(:description) @display_name = args[:display_name] if args.key?(:display_name) @list_constraint = args[:list_constraint] if args.key?(:list_constraint) @name = args[:name] if args.key?(:name) @version = args[:version] if args.key?(:version) end