1
0
mirror of https://github.com/Unleash/unleash.git synced 2025-05-03 01:18:43 +02:00

docs: organize/update custom project permissions to reflect Unleash Admin UI (#9246)

<!-- Thanks for creating a PR! To make it easier for reviewers and
everyone else to understand what your changes relate to, please add some
relevant content to the headings below. Feel free to ignore or delete
sections that you don't think are relevant. Thank you! ❤️ -->

## About the changes
<!-- Describe the changes introduced. What are they and why are they
being introduced? Feel free to also add screenshots or steps to view the
changes if they're visual. -->

Updating custom project permissions to reflect permissions in the
Unleash Admin UI.
Slack context:
https://unleash-internal.slack.com/archives/C05LUNBS0SZ/p1738260018703969

<img width="847" alt="Screenshot 2025-02-06 at 10 33 04 AM"
src="https://github.com/user-attachments/assets/98c70467-0471-4e08-b079-d13a358a99b9"
/>
<img width="873" alt="Screenshot 2025-02-06 at 10 33 13 AM"
src="https://github.com/user-attachments/assets/5d02b977-f518-4ac0-ace8-b83083415bfb"
/>


<!-- Does it close an issue? Multiple? -->
Closes #

https://linear.app/unleash/issue/MAR-994/document-api-token-and-change-request-permissions

<!-- (For internal contributors): Does it relate to an issue on public
roadmap? -->
<!--
Relates to [roadmap](https://github.com/orgs/Unleash/projects/10) item:
#
-->

### Important files
<!-- PRs can contain a lot of changes, but not all changes are equally
important. Where should a reviewer start looking to get an overview of
the changes? Are any files particularly important? -->


## Discussion points
<!-- Anything about the PR you'd like to discuss before it gets merged?
Got any questions or doubts? -->

---------

Co-authored-by: Melinda Fekete <melinda.fekete@getunleash.io>
This commit is contained in:
Nnenna Ndukwe 2025-02-06 12:50:09 -05:00 committed by GitHub
parent 21fb9a3118
commit ae366916f3
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -161,38 +161,56 @@ Each custom project role consists of:
You can assign the following project permissions. The permissions will be valid across all of the project's
environments.
| Permission | Description |
#### Features and strategies
| Permission Name | Description |
| --- | --- |
| Create feature flags within the project | Lets the user create feature flags within the project and create variants for said flag. Note that they **cannot assign strategies** to flags without having the _create activation strategy_ permission for the corresponding environment. |
| Update feature flags within the project | Lets the user update feature flag descriptions; mark flags as stale / not stale; add, update, and remove flag tags; and update flag variants within the project. |
| Update feature flag dependency | Lets the user update feature flag dependencies within the project. |
| Delete feature flags within the project | Lets the user archive feature flags within the project. |
| Change feature flag project | Lets the user move flags to other projects they have access to. |
| Create/edit variants | Lets the user create and edit variants within the project. (Deprecated with v4.21 in favor of environment-specific permissions for working with variants[^1].) |
| Create/edit project segment | Lets the user create and edit segments within the project. |
#### Project settings
| Permission Name | Description |
|-----------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| **update the project** | Lets the user update project settings, such as enabling/disabling environments, add users, etc. |
| **user access read** | Read access to Project User Access (included in "update the project" permission) |
| **user access write** | Write access to Project User Access (included in "update the project" permission)
| **default strategy read** | Read access to default strategy configuration (included in "update the project" permission) |
| **default strategy write** | Write access to default strategy configuration (included in "update the project" permission) |
| **change request read** | Read access to change request configuration (included in "update the project" permission) |
| **change request write** | Write access to change request configuration (included in "update the project" permission) |
| **settings read** | Read access to other project settings (included in "update the project" permission) | |
| **settings write** | Write access to other project settings (included in "update the project" permission)
| **delete the project** | Lets the user delete the project. |
| **create feature flags within the project** | Lets the user create feature flags within the project and create variants for said flag. Note that they **cannot assign strategies** to flags without having the _create activation strategy_ permission for the corresponding environment. |
| **update feature flags within the project** | Lets the user update feature flag descriptions; mark flags as stale / not stale; add, update, and remove flag tags; and update flag variants within the project. |
| **delete feature flags within the project** | Lets the user archive feature flags within the project. |
| **change feature flag project** | Lets the user move flags to other projects they have access to. |
| **create/edit variants** | Lets the user create and edit variants within the project. (Deprecated with v4.21 in favor of environment-specific permissions for working with variants[^1].) |
| Update the project | Lets the user update project settings, such as enabling/disabling environments, add users, etc. |
| User access read | Read access to Project User Access (included in "update the project" permission) |
| User access write | Write access to Project User Access (included in "update the project" permission)
| Default strategy read | Read access to default strategy configuration (included in "update the project" permission) |
| Default strategy write | Write access to default strategy configuration (included in "update the project" permission) |
| Read settings | Read access to other project settings (included in "update the project" permission) | |
| Write settings | Write access to other project settings (included in "update the project" permission)
| Delete the project | Lets the user delete the project. |
#### API tokens
| Permission Name | Description |
| --- | --- |
| Read API token | Read API tokens for a specific project |
| Create API token | Create API tokens for a specific project |
| Delete API token | Delete API tokens for a specific project |
#### Change requests
| Permission Name | Description |
| --- | --- |
| Read change request | Read access to change request configuration |
| Write change request | Write access to change request configuration |
### Environment permissions
You can assign the following permissions on a per-environment level within the project:
| Permission | Description |
| Permission Name | Description |
|----------------------------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| **create activation strategies** | Lets the user assign feature flag activation strategies within the environment. |
| **update activation strategies** | Lets the user update feature flag activation strategies within the environment. |
| **delete activation strategies** | Lets the user delete feature flag activation strategies within the environment. |
| **enable/disable flags** | Lets the user enable and disable flags within the environment. |
| **update variants** | Lets the user create, edit and remove variants within the environment. |
| **approve a change request** | Lets the user approve [change requests](./change-requests) in the environment. |
| **apply a change request** | Lets the user apply change requests in the environment. |
| **skip change requests** | Lets the user skip the change request process for a project and environment where change requests are enabled. |
| Create activation strategies | Lets the user assign feature flag activation strategies within the environment. |
| Update activation strategies | Lets the user update feature flag activation strategies within the environment. |
| Delete activation strategies | Lets the user delete feature flag activation strategies within the environment. |
| Enable/disable flags | Lets the user enable and disable flags within the environment. |
| Update variants | Lets the user create, edit and remove variants within the environment. |
| Approve a change request | Lets the user approve [change requests](./change-requests) in the environment. |
| Apply a change request | Lets the user apply change requests in the environment. |
| Skip change requests | Lets the user skip the change request process for a project and environment where change requests are enabled. |
## Multiple Project Roles