Class: Google::Apis::PubsubV1beta2::Policy
- Inherits:
-
Object
- Object
- Google::Apis::PubsubV1beta2::Policy
- Includes:
- Core::Hashable
- Defined in:
- generated/google/apis/pubsub_v1beta2/classes.rb,
generated/google/apis/pubsub_v1beta2/representations.rb,
generated/google/apis/pubsub_v1beta2/representations.rb
Overview
Defines an Identity and Access Management (IAM) policy. It is used to specify
access control policies for Cloud Platform resources. A Policy
consists of a
list of bindings
. A Binding
binds a list of members
to a role
, where
the members can be user accounts, Google groups, Google domains, and service
accounts. A role
is a named list of permissions defined by IAM. Example
"bindings": [
"role": "roles/owner", "members": [ "user:mike@example.com", "
group:admins@example.com", "domain:google.com", "serviceAccount:my-other-app@
appspot.gserviceaccount.com"] ,
"role": "roles/viewer", "members": ["user:
sean@example.com"] ]
For a description of IAM and its features, see the
IAM developer's guide.
Instance Attribute Summary collapse
-
#bindings ⇒ Array<Google::Apis::PubsubV1beta2::Binding>
Associates a list of
members
to arole
. -
#etag ⇒ String
Can be used to perform a read-modify-write.
-
#version ⇒ Fixnum
Version of the
Policy
.
Instance Method Summary collapse
-
#initialize(**args) ⇒ Policy
constructor
A new instance of Policy.
-
#update!(**args) ⇒ Object
Update properties of this object.
Methods included from Core::Hashable
Constructor Details
#initialize(**args) ⇒ Policy
Returns a new instance of Policy
83 84 85 |
# File 'generated/google/apis/pubsub_v1beta2/classes.rb', line 83 def initialize(**args) update!(**args) end |
Instance Attribute Details
#bindings ⇒ Array<Google::Apis::PubsubV1beta2::Binding>
Associates a list of members
to a role
. Multiple bindings
must not be
specified for the same role
. bindings
with no members will result in an
error.
Corresponds to the JSON property bindings
76 77 78 |
# File 'generated/google/apis/pubsub_v1beta2/classes.rb', line 76 def bindings @bindings end |
#etag ⇒ String
Can be used to perform a read-modify-write.
Corresponds to the JSON property etag
81 82 83 |
# File 'generated/google/apis/pubsub_v1beta2/classes.rb', line 81 def etag @etag end |
#version ⇒ Fixnum
Version of the Policy
. The default version is 0.
Corresponds to the JSON property version
69 70 71 |
# File 'generated/google/apis/pubsub_v1beta2/classes.rb', line 69 def version @version end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
88 89 90 91 92 |
# File 'generated/google/apis/pubsub_v1beta2/classes.rb', line 88 def update!(**args) @version = args[:version] unless args[:version].nil? @bindings = args[:bindings] unless args[:bindings].nil? @etag = args[:etag] unless args[:etag].nil? end |