Class: Google::Apis::IamV1::Role

Inherits:
Object
  • Object
show all
Includes:
Core::Hashable, Core::JsonObjectSupport
Defined in:
generated/google/apis/iam_v1/classes.rb,
generated/google/apis/iam_v1/representations.rb,
generated/google/apis/iam_v1/representations.rb

Overview

A role in the Identity and Access Management API.

Instance Attribute Summary collapse

Instance Method Summary collapse

Methods included from Core::JsonObjectSupport

#to_json

Methods included from Core::Hashable

process_value, #to_h

Constructor Details

#initialize(**args) ⇒ Role

Returns a new instance of Role.



1241
1242
1243
# File 'generated/google/apis/iam_v1/classes.rb', line 1241

def initialize(**args)
   update!(**args)
end

Instance Attribute Details

#deletedBoolean Also known as: deleted?

The current deleted state of the role. This field is read only. It will be ignored in calls to CreateRole and UpdateRole. Corresponds to the JSON property deleted

Returns:

  • (Boolean)


1200
1201
1202
# File 'generated/google/apis/iam_v1/classes.rb', line 1200

def deleted
  @deleted
end

#descriptionString

Optional. A human-readable description for the role. Corresponds to the JSON property description

Returns:

  • (String)


1206
1207
1208
# File 'generated/google/apis/iam_v1/classes.rb', line 1206

def description
  @description
end

#etagString

Used to perform a consistent read-modify-write. Corresponds to the JSON property etag NOTE: Values are automatically base64 encoded/decoded in the client library.

Returns:

  • (String)


1212
1213
1214
# File 'generated/google/apis/iam_v1/classes.rb', line 1212

def etag
  @etag
end

#included_permissionsArray<String>

The names of the permissions this role grants when bound in an IAM policy. Corresponds to the JSON property includedPermissions

Returns:

  • (Array<String>)


1217
1218
1219
# File 'generated/google/apis/iam_v1/classes.rb', line 1217

def included_permissions
  @included_permissions
end

#nameString

The name of the role. When Role is used in CreateRole, the role name must not be set. When Role is used in output and other input such as UpdateRole, the role name is the complete path, e.g., roles/logging.viewer for predefined roles and organizations/ORGANIZATION_ID/roles/logging.viewer for custom roles. Corresponds to the JSON property name

Returns:

  • (String)


1226
1227
1228
# File 'generated/google/apis/iam_v1/classes.rb', line 1226

def name
  @name
end

#stageString

The current launch stage of the role. If the ALPHA launch stage has been selected for a role, the stage field will not be included in the returned definition for the role. Corresponds to the JSON property stage

Returns:

  • (String)


1233
1234
1235
# File 'generated/google/apis/iam_v1/classes.rb', line 1233

def stage
  @stage
end

#titleString

Optional. A human-readable title for the role. Typically this is limited to 100 UTF-8 bytes. Corresponds to the JSON property title

Returns:

  • (String)


1239
1240
1241
# File 'generated/google/apis/iam_v1/classes.rb', line 1239

def title
  @title
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



1246
1247
1248
1249
1250
1251
1252
1253
1254
# File 'generated/google/apis/iam_v1/classes.rb', line 1246

def update!(**args)
  @deleted = args[:deleted] if args.key?(:deleted)
  @description = args[:description] if args.key?(:description)
  @etag = args[:etag] if args.key?(:etag)
  @included_permissions = args[:included_permissions] if args.key?(:included_permissions)
  @name = args[:name] if args.key?(:name)
  @stage = args[:stage] if args.key?(:stage)
  @title = args[:title] if args.key?(:title)
end