Class: Google::Apis::AdminDirectoryV1::RoleAssignment
- Inherits:
-
Object
- Object
- Google::Apis::AdminDirectoryV1::RoleAssignment
- Includes:
- Core::Hashable, Core::JsonObjectSupport
- Defined in:
- lib/google/apis/admin_directory_v1/classes.rb,
lib/google/apis/admin_directory_v1/representations.rb,
lib/google/apis/admin_directory_v1/representations.rb
Overview
Defines an assignment of a role.
Instance Attribute Summary collapse
-
#assigned_to ⇒ String
The unique ID of the entity this role is assigned to—either the
user_idof a user, thegroup_idof a group, or theuniqueIdof a service account as defined in Identity and Access Management (IAM). -
#assignee_type ⇒ String
Output only.
-
#condition ⇒ String
Optional.
-
#etag ⇒ String
ETag of the resource.
-
#kind ⇒ String
The type of the API resource.
-
#org_unit_id ⇒ String
If the role is restricted to an organization unit, this contains the ID for the organization unit the exercise of this role is restricted to.
-
#role_assignment_id ⇒ Fixnum
ID of this roleAssignment.
-
#role_id ⇒ Fixnum
The ID of the role that is assigned.
-
#scope_type ⇒ String
The scope in which this role is assigned.
Instance Method Summary collapse
-
#initialize(**args) ⇒ RoleAssignment
constructor
A new instance of RoleAssignment.
-
#update!(**args) ⇒ Object
Update properties of this object.
Constructor Details
#initialize(**args) ⇒ RoleAssignment
Returns a new instance of RoleAssignment.
4011 4012 4013 |
# File 'lib/google/apis/admin_directory_v1/classes.rb', line 4011 def initialize(**args) update!(**args) end |
Instance Attribute Details
#assigned_to ⇒ String
The unique ID of the entity this role is assigned to—either the user_id of a
user, the group_id of a group, or the uniqueId of a service account as
defined in Identity and Access Management (IAM).
Corresponds to the JSON property assignedTo
3950 3951 3952 |
# File 'lib/google/apis/admin_directory_v1/classes.rb', line 3950 def assigned_to @assigned_to end |
#assignee_type ⇒ String
Output only. The type of the assignee (USER or GROUP).
Corresponds to the JSON property assigneeType
3955 3956 3957 |
# File 'lib/google/apis/admin_directory_v1/classes.rb', line 3955 def assignee_type @assignee_type end |
#condition ⇒ String
Optional. Note: Feature is available to Enterprise Standard, Enterprise Plus,
Google Workspace for Education Plus and Cloud Identity Premium customers. No
additional setup is needed to use the feature. The condition associated with
this role assignment. A RoleAssignment with the condition field set will
only take effect when the resource being accessed meets the condition. If
condition is empty, the role (role_id) is applied to the actor (
assigned_to) at the scope (scope_type) unconditionally. Currently, only two
conditions are supported: - To make the RoleAssignment only applicable to
Security Groups:
api.getAttribute('cloudidentity.googleapis.com/groups.labels', []).hasAny(['
groups.security']) && resource.type == 'cloudidentity.googleapis.com/Group' -
To make the RoleAssignment not applicable to Security Groups: !api.getAttribute('
cloudidentity.googleapis.com/groups.labels', []).hasAny(['groups.security']) &&
resource.type == 'cloudidentity.googleapis.com/Group' Currently, the two
condition strings have to be verbatim and they only work with the following
pre-built administrator roles: -
Groups Editor - Groups Reader The condition follows Cloud IAM condition
syntax.
Corresponds to the JSON property condition
3978 3979 3980 |
# File 'lib/google/apis/admin_directory_v1/classes.rb', line 3978 def condition @condition end |
#etag ⇒ String
ETag of the resource.
Corresponds to the JSON property etag
3983 3984 3985 |
# File 'lib/google/apis/admin_directory_v1/classes.rb', line 3983 def etag @etag end |
#kind ⇒ String
The type of the API resource. This is always admin#directory#roleAssignment.
Corresponds to the JSON property kind
3988 3989 3990 |
# File 'lib/google/apis/admin_directory_v1/classes.rb', line 3988 def kind @kind end |
#org_unit_id ⇒ String
If the role is restricted to an organization unit, this contains the ID for
the organization unit the exercise of this role is restricted to.
Corresponds to the JSON property orgUnitId
3994 3995 3996 |
# File 'lib/google/apis/admin_directory_v1/classes.rb', line 3994 def org_unit_id @org_unit_id end |
#role_assignment_id ⇒ Fixnum
ID of this roleAssignment.
Corresponds to the JSON property roleAssignmentId
3999 4000 4001 |
# File 'lib/google/apis/admin_directory_v1/classes.rb', line 3999 def role_assignment_id @role_assignment_id end |
#role_id ⇒ Fixnum
The ID of the role that is assigned.
Corresponds to the JSON property roleId
4004 4005 4006 |
# File 'lib/google/apis/admin_directory_v1/classes.rb', line 4004 def role_id @role_id end |
#scope_type ⇒ String
The scope in which this role is assigned.
Corresponds to the JSON property scopeType
4009 4010 4011 |
# File 'lib/google/apis/admin_directory_v1/classes.rb', line 4009 def scope_type @scope_type end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
4016 4017 4018 4019 4020 4021 4022 4023 4024 4025 4026 |
# File 'lib/google/apis/admin_directory_v1/classes.rb', line 4016 def update!(**args) @assigned_to = args[:assigned_to] if args.key?(:assigned_to) @assignee_type = args[:assignee_type] if args.key?(:assignee_type) @condition = args[:condition] if args.key?(:condition) @etag = args[:etag] if args.key?(:etag) @kind = args[:kind] if args.key?(:kind) @org_unit_id = args[:org_unit_id] if args.key?(:org_unit_id) @role_assignment_id = args[:role_assignment_id] if args.key?(:role_assignment_id) @role_id = args[:role_id] if args.key?(:role_id) @scope_type = args[:scope_type] if args.key?(:scope_type) end |