Class: Google::Apis::CloudassetV1beta1::Asset
- Inherits:
-
Object
- Object
- Google::Apis::CloudassetV1beta1::Asset
- Includes:
- Google::Apis::Core::Hashable, Google::Apis::Core::JsonObjectSupport
- Defined in:
- lib/google/apis/cloudasset_v1beta1/classes.rb,
lib/google/apis/cloudasset_v1beta1/representations.rb,
lib/google/apis/cloudasset_v1beta1/representations.rb
Overview
An asset in Google Cloud. An asset can be any resource in the Google Cloud resource hierarchy, a resource outside the Google Cloud resource hierarchy (such as Google Kubernetes Engine clusters and objects), or a policy (e.g. Cloud IAM policy). See Supported asset types for more information.
Instance Attribute Summary collapse
-
#access_level ⇒ Google::Apis::CloudassetV1beta1::GoogleIdentityAccesscontextmanagerV1AccessLevel
An
AccessLevelis a label that can be applied to requests to Google Cloud services, along with a list of requirements necessary for the label to be applied. -
#access_policy ⇒ Google::Apis::CloudassetV1beta1::GoogleIdentityAccesscontextmanagerV1AccessPolicy
AccessPolicyis a container forAccessLevels(which define the necessary attributes to use Google Cloud services) andServicePerimeters(which define regions of services able to freely pass data within a perimeter). -
#asset_type ⇒ String
The type of the asset.
-
#iam_policy ⇒ Google::Apis::CloudassetV1beta1::Policy
An Identity and Access Management (IAM) policy, which specifies access controls for Google Cloud resources.
-
#name ⇒ String
The full name of the asset.
-
#org_policy ⇒ Array<Google::Apis::CloudassetV1beta1::GoogleCloudOrgpolicyV1Policy>
A representation of an organization policy.
-
#resource ⇒ Google::Apis::CloudassetV1beta1::Resource
A representation of a Google Cloud resource.
-
#service_perimeter ⇒ Google::Apis::CloudassetV1beta1::GoogleIdentityAccesscontextmanagerV1ServicePerimeter
ServicePerimeterdescribes a set of Google Cloud resources which can freely import and export data amongst themselves, but not export outside of theServicePerimeter.
Instance Method Summary collapse
-
#initialize(**args) ⇒ Asset
constructor
A new instance of Asset.
-
#update!(**args) ⇒ Object
Update properties of this object.
Constructor Details
#initialize(**args) ⇒ Asset
Returns a new instance of Asset.
135 136 137 |
# File 'lib/google/apis/cloudasset_v1beta1/classes.rb', line 135 def initialize(**args) update!(**args) end |
Instance Attribute Details
#access_level ⇒ Google::Apis::CloudassetV1beta1::GoogleIdentityAccesscontextmanagerV1AccessLevel
An AccessLevel is a label that can be applied to requests to Google Cloud
services, along with a list of requirements necessary for the label to be
applied.
Corresponds to the JSON property accessLevel
52 53 54 |
# File 'lib/google/apis/cloudasset_v1beta1/classes.rb', line 52 def access_level @access_level end |
#access_policy ⇒ Google::Apis::CloudassetV1beta1::GoogleIdentityAccesscontextmanagerV1AccessPolicy
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.
Corresponds to the JSON property accessPolicy
61 62 63 |
# File 'lib/google/apis/cloudasset_v1beta1/classes.rb', line 61 def access_policy @access_policy end |
#asset_type ⇒ String
The type of the asset. Example: compute.googleapis.com/Disk See Supported
asset types for more information.
Corresponds to the JSON property assetType
68 69 70 |
# File 'lib/google/apis/cloudasset_v1beta1/classes.rb', line 68 def asset_type @asset_type end |
#iam_policy ⇒ Google::Apis::CloudassetV1beta1::Policy
An Identity and Access Management (IAM) policy, which specifies access
controls for Google Cloud resources. A Policy is a collection of bindings.
A binding binds one or more members to a single role. Members can be
user accounts, service accounts, Google groups, and domains (such as G Suite).
A role is a named list of permissions; each role can be an IAM predefined
role or a user-created custom role. For some types of Google Cloud resources,
a binding can also specify a condition, which is a logical expression that
allows access to a resource only if the expression evaluates to true. A
condition can add constraints based on attributes of the request, the resource,
or both. To learn which resources support conditions in their IAM policies,
see the IAM documentation. JSON example: "bindings": [ "role": "roles/
resourcemanager.organizationAdmin", "members": [ "user:mike@example.com", "
group:admins@example.com", "domain:google.com", "serviceAccount:my-project-id@
appspot.gserviceaccount.com" ] , "role": "roles/resourcemanager.
organizationViewer", "members": [ "user:eve@example.com" ], "condition": "
title": "expirable access", "description": "Does not grant access after Sep
2020", "expression": "request.time < timestamp('2020-10-01T00:00:00.000Z')",
], "etag": "BwWWja0YfJA=", "version": 3 YAML example: bindings: -
members: - user:mike@example.com - group:admins@example.com - domain:google.
com - serviceAccount:my-project-id@appspot.gserviceaccount.com role: roles/
resourcemanager.organizationAdmin - members: - user:eve@example.com role:
roles/resourcemanager.organizationViewer condition: title: expirable access
description: Does not grant access after Sep 2020 expression: request.time <
timestamp('2020-10-01T00:00:00.000Z') - etag: BwWWja0YfJA= - version: 3 For a
description of IAM and its features, see the IAM documentation.
Corresponds to the JSON property iamPolicy
99 100 101 |
# File 'lib/google/apis/cloudasset_v1beta1/classes.rb', line 99 def iam_policy @iam_policy end |
#name ⇒ String
The full name of the asset. Example: //compute.googleapis.com/projects/
my_project_123/zones/zone1/instances/instance1 See Resource names for more
information.
Corresponds to the JSON property name
107 108 109 |
# File 'lib/google/apis/cloudasset_v1beta1/classes.rb', line 107 def name @name end |
#org_policy ⇒ Array<Google::Apis::CloudassetV1beta1::GoogleCloudOrgpolicyV1Policy>
A representation of an organization policy. There can be
more than one organization policy with different constraints set on a given
resource.
Corresponds to the JSON property orgPolicy
115 116 117 |
# File 'lib/google/apis/cloudasset_v1beta1/classes.rb', line 115 def org_policy @org_policy end |
#resource ⇒ Google::Apis::CloudassetV1beta1::Resource
A representation of a Google Cloud resource.
Corresponds to the JSON property resource
120 121 122 |
# File 'lib/google/apis/cloudasset_v1beta1/classes.rb', line 120 def resource @resource end |
#service_perimeter ⇒ Google::Apis::CloudassetV1beta1::GoogleIdentityAccesscontextmanagerV1ServicePerimeter
ServicePerimeter describes a set of Google Cloud resources which can freely
import and export data amongst themselves, but not export outside of the
ServicePerimeter. If a request with a source within this ServicePerimeter
has a target outside of the ServicePerimeter, the request will be blocked.
Otherwise the request is allowed. There are two types of Service Perimeter -
Regular and Bridge. Regular Service Perimeters cannot overlap, a single Google
Cloud project can only belong to a single regular Service Perimeter. Service
Perimeter Bridges can contain only Google Cloud projects as members, a single
Google Cloud project may belong to multiple Service Perimeter Bridges.
Corresponds to the JSON property servicePerimeter
133 134 135 |
# File 'lib/google/apis/cloudasset_v1beta1/classes.rb', line 133 def service_perimeter @service_perimeter end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
140 141 142 143 144 145 146 147 148 149 |
# File 'lib/google/apis/cloudasset_v1beta1/classes.rb', line 140 def update!(**args) @access_level = args[:access_level] if args.key?(:access_level) @access_policy = args[:access_policy] if args.key?(:access_policy) @asset_type = args[:asset_type] if args.key?(:asset_type) @iam_policy = args[:iam_policy] if args.key?(:iam_policy) @name = args[:name] if args.key?(:name) @org_policy = args[:org_policy] if args.key?(:org_policy) @resource = args[:resource] if args.key?(:resource) @service_perimeter = args[:service_perimeter] if args.key?(:service_perimeter) end |