> Markdown version of https://www.getunleash.io//blog/fine-grained-rbac-with-custom-project-roles
> For clean Markdown of any blog post, append .md to its URL.
> For a site index, see https://www.getunleash.io//llms.txt.

# Fine-grained RBAC with custom project roles

_Published 2022-01-10 by Thomas Heartman in Product._

[Role-based access control (RBAC)](https://en.wikipedia.org/wiki/Role-based_access_control) is vital security measure in many organizations. Restricting access and permissions based on a user’s role is both intuitive and powerful. When Unleash introduced RBAC in version 4, we gave you the power to control users’ access to global and to project-specific resources. Now, with **Unleash 4.6**, we’re giving Enterprise customers more power and more control with the new **_custom project roles_** feature.

## Access a new level of access control

![Two groups of checkboxes, one labeled 'project permissions', the other 'environment permissions'](https://cdn.getunleash.io/uploads/2022/01/Screenshot-2022-01-14-at-11-12-42-Unleash-Enterprise-ready-feature-toggles-1024x628.png)

With the previous system, Unleash only had two project roles: _owner_ and _member_. A **project owner** has full control over the project. The owner can manage users and feature flags, and can archive or delete the project. A **project member** can create, update, and archive feature flags, but can not manage users or archive and delete the project.

However, we know that this is too coarse for certain use cases. In particular, native environment support (released in version 4.3) brings with it some new challenges. Custom project roles help you solve these!

Custom project roles have two levels of permissions: _project_ and _environments_.

On the **project-level**, you’ll be able to say whether a user with the role can create, update, or archive feature flags and variants, and whether they can move the flag to a different project. You can also decide whether they can update or delete the project itself. Each of these actions (create flags, update flags, delete the project, etc.) is a separate permission.

On the **environment-level**, you can specify whether a user with the role can assign, update, and delete feature flag strategies, and whether they can enable and disable feature flags in that specific environment. Again, these are all separate permissions, so you can tune this as finely as you want.

## In summary

This is a major step forward in terms of giving you the tools _you_ need to manage access within your organization. The ability to [finely tune roles and project permissions](https://docs.getunleash.io/concepts/rbac) will give you more control and more flexibility. We hope that it will serve you well.

## Want to get started?

<table style="width: 100%;"><tbody><tr><td style="width: 10%;"></td><td style="font-size: 16px; width: 35%; background-color: #817afe; text-align: center; padding-top: 20px; padding-bottom: 20px;"><a style="color: #ffffff;" href="https://www.getunleash.io//pricing">GET STARTED</a></td><td style="width: 10%;"></td><td style="font-size: 16px; width: 35%; background-color: #1a4049; text-align: center; padding-top: 20px; padding-bottom: 20px;"><a style="color: #ffffff;" href="https://app.unleash-hosted.com/demo/login">TRY OUR DEMO</a></td><td style="width: 10%;"></td></tr></tbody></table>
