Class: Google::Apis::CloudassetV1p4beta1::GoogleIdentityAccesscontextmanagerV1AccessPolicy
- Inherits:
-
Object
- Object
- Google::Apis::CloudassetV1p4beta1::GoogleIdentityAccesscontextmanagerV1AccessPolicy
- Includes:
- Google::Apis::Core::Hashable, Google::Apis::Core::JsonObjectSupport
- Defined in:
- lib/google/apis/cloudasset_v1p4beta1/classes.rb,
lib/google/apis/cloudasset_v1p4beta1/representations.rb,
lib/google/apis/cloudasset_v1p4beta1/representations.rb
Overview
AccessPolicy
is a container for AccessLevels
(which define the necessary
attributes to use Google Cloud services) and ServicePerimeters
(which define
regions of services able to freely pass data within a perimeter). An access
policy is globally visible within an organization, and the restrictions it
specifies apply to all projects within an organization.
Instance Attribute Summary collapse
-
#etag ⇒ String
Output only.
-
#name ⇒ String
Output only.
-
#parent ⇒ String
Required.
-
#scopes ⇒ Array<String>
The scopes of a policy define which resources an ACM policy can restrict, and where ACM resources can be referenced.
-
#title ⇒ String
Required.
Instance Method Summary collapse
-
#initialize(**args) ⇒ GoogleIdentityAccesscontextmanagerV1AccessPolicy
constructor
A new instance of GoogleIdentityAccesscontextmanagerV1AccessPolicy.
-
#update!(**args) ⇒ Object
Update properties of this object.
Constructor Details
#initialize(**args) ⇒ GoogleIdentityAccesscontextmanagerV1AccessPolicy
Returns a new instance of GoogleIdentityAccesscontextmanagerV1AccessPolicy.
1295 1296 1297 |
# File 'lib/google/apis/cloudasset_v1p4beta1/classes.rb', line 1295 def initialize(**args) update!(**args) end |
Instance Attribute Details
#etag ⇒ String
Output only. An opaque identifier for the current version of the AccessPolicy
. This will always be a strongly validated etag, meaning that two Access
Polices will be identical if and only if their etags are identical. Clients
should not expect this to be in any specific format.
Corresponds to the JSON property etag
1261 1262 1263 |
# File 'lib/google/apis/cloudasset_v1p4beta1/classes.rb', line 1261 def etag @etag end |
#name ⇒ String
Output only. Resource name of the AccessPolicy
. Format: accessPolicies/
access_policy`
Corresponds to the JSON property
name`
1267 1268 1269 |
# File 'lib/google/apis/cloudasset_v1p4beta1/classes.rb', line 1267 def name @name end |
#parent ⇒ String
Required. The parent of this AccessPolicy
in the Cloud Resource Hierarchy.
Currently immutable once created. Format: organizations/
organization_id`
Corresponds to the JSON property
parent`
1273 1274 1275 |
# File 'lib/google/apis/cloudasset_v1p4beta1/classes.rb', line 1273 def parent @parent end |
#scopes ⇒ Array<String>
The scopes of a policy define which resources an ACM policy can restrict, and
where ACM resources can be referenced. For example, a policy with scopes=["
folders/123"] has the following behavior: - vpcsc perimeters can only restrict
projects within folders/123 - access levels can only be referenced by
resources within folders/123. If empty, there are no limitations on which
resources can be restricted by an ACM policy, and there are no limitations on
where ACM resources can be referenced. Only one policy can include a given
scope (attempting to create a second policy which includes "folders/123" will
result in an error). Currently, scopes cannot be modified after a policy is
created. Currently, policies can only have a single scope. Format: list of
folders/
folder_numberor `projects/`project_number
Corresponds to the JSON property scopes
1288 1289 1290 |
# File 'lib/google/apis/cloudasset_v1p4beta1/classes.rb', line 1288 def scopes @scopes end |
#title ⇒ String
Required. Human readable title. Does not affect behavior.
Corresponds to the JSON property title
1293 1294 1295 |
# File 'lib/google/apis/cloudasset_v1p4beta1/classes.rb', line 1293 def title @title end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
1300 1301 1302 1303 1304 1305 1306 |
# File 'lib/google/apis/cloudasset_v1p4beta1/classes.rb', line 1300 def update!(**args) @etag = args[:etag] if args.key?(:etag) @name = args[:name] if args.key?(:name) @parent = args[:parent] if args.key?(:parent) @scopes = args[:scopes] if args.key?(:scopes) @title = args[:title] if args.key?(:title) end |