# Class Role

A role object represents a role that a User has.

A role is a personality that a user assumes when performing a specific set of operations. A role includes a set of rights and privileges. A user assuming a role inherits the rights and privileges associated with the role. A token that is issued to a user includes the list of roles the user can assume. When a user calls a service, that service determines how to interpret a user's roles. A role that grants access to a list of operations or resources within one service may grant access to a completely different list when interpreted by a different service.

  OpenCloud\Common\Base
  OpenCloud\Common\Resource\BaseResource
  OpenCloud\Common\Resource\PersistentResource
  OpenCloud\Common\PersistentObject
  OpenCloud\Identity\Resource\Role

Namespace: OpenCloud\Identity\Resource
Package: OpenCloud\Identity\Resource
Located at OpenCloud/Identity/Resource/Role.php

Methods summary
`public` | # `setId( mixed $id )` #### Parameters $id `mixed` $id Sets the ID
`public string` | # `getId( )` #### Returns `string` Returns the ID
`public` | # `setName( mixed $name )` #### Parameters $name `mixed` $name Sets the name
`public string` | # `getName( )` #### Returns `string` Returns the name
`public` | # `setDescription( mixed $description )` #### Parameters $description `mixed` $description Sets the description
`public string` | # `getDescription( )` #### Returns `string` Returns the description

Methods inherited from OpenCloud\Common\Resource\PersistentResource
`checkExtension(), create(), createJson(), delete(), getAlias(), noCreate(), noDelete(), noUpdate(), refresh(), refreshFromLocationUrl(), update(), updateJson(), waitFor()`

Methods inherited from OpenCloud\Common\Resource\BaseResource
`__construct(), findLink(), getClient(), getMetadata(), getParent(), getService(), getUrl(), jsonCollectionElement(), jsonCollectionName(), jsonName(), parseResponse(), primaryKeyField(), resourceName(), setMetadata(), setParent(), setService()`

Methods inherited from OpenCloud\Common\Base
`__call(), checkJsonError(), generateUuid(), getInstance(), getJsonHeader(), getLogger(), getProperty(), makeResourceIteratorOptions(), populate(), propertyExists(), setLogger(), setProperty(), stripNamespace(), toCamel(), toUnderscores()`

Properties summary
`protected static string` | $url_resource | `'OS-KSADM/roles'` | #
`protected static string` | $json_name | `'role'` | #

Properties inherited from OpenCloud\Common\Resource\BaseResource
`$metadata, $parent, $service`

Properties inherited from OpenCloud\Common\Base
`$aliases`