--- layout: docs page_title: Role resource description: >- Learn about using the role resource to group permissions which are then granted to any principal assigned to the role. Understand role attributes. --- ⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️ > [!IMPORTANT] > **Documentation Update:** Product documentation previously located in `/website` has moved to the [`hashicorp/web-unified-docs`](https://github.com/hashicorp/web-unified-docs) repository, where all product documentation is now centralized. Please make contributions directly to `web-unified-docs`, since changes to `/website` in this repository will not appear on developer.hashicorp.com. ⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️ # Roles A role is a resource that contains a collection of [permissions][] which are granted to any principal assigned to the role. [Users][], [groups][], and [managed groups][] are principals which allows either to be assigned to a role. A role can be defined within any [scope][]. A role can be assigned to principals from any scope. ## Attributes A role has the following configurable attributes: - `name` - (optional) If set, the `name` must be unique within the role's [project][]. - `description` - (optional) ## Referenced by - [Group][] - [Managed group][] - [Project][] - [User][] [group]: /boundary/docs/domain-model/groups [groups]: /boundary/docs/domain-model/groups [managed group]: /boundary/docs/domain-model/managed-groups [managed groups]: /boundary/docs/domain-model/managed-groups [permissions]: /boundary/docs/rbac [project]: /boundary/docs/domain-model/scopes#projects [scope]: /boundary/docs/domain-model/scopes [user]: /boundary/docs/domain-model/users [users]: /boundary/docs/domain-model/users ## Service API docs The following services are relevant to this resource: - [Role service](/boundary/api-docs/role-service) ## Tutorial Refer to the [Managed Roles and Permissions with HCP Boundary](/boundary/tutorials/hcp-administration/hcp-manage-roles) tutorial to learn how to create a role in Boundary.