> For the complete documentation index, see [llms.txt](https://developer.harness.io/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://developer.harness.io/feature-management-experimentation/management-and-administration/permissions/granular-feature-flag-permissions.md).

# Granular feature flag permissions

Custom roles that include feature flag edit also receive the granular feature flag permissions. Existing edit access stays in place.

{% hint style="info" %}
This feature is in Beta[^1] and requires enablement. [View all early access features.](/release-notes/features.md)

{% @harness-feature-flag-access/request-feature-flag-access module="feature-management-experimentation" pagePath="feature-management-experimentation/management-and-administration/permissions/granular-feature-flag-permissions" featureFlags="%5B%7B%22name%22%3A%22Granular%20feature%20flag%20permissions%22%2C%22key%22%3A%22FME\_FF\_EDIT\_PERMISSION\_SPLIT\_MIGRATION%22%2C%22status%22%3A%22LIMITED\_GA%22%2C%22description%22%3A%22Adds%20the%20granular%20feature%20flag%20permissions%20to%20custom%20roles%20that%20already%20include%20the%20feature%20flag%20edit%20permission.%20Existing%20edit%20access%20stays%20in%20place.%22%7D%2C%7B%22name%22%3A%22Granular%20feature%20flag%20permissions%20in%20Role%20Builder%20and%20UI%22%2C%22key%22%3A%22FME\_FF\_EDIT\_PERMISSION\_SPLIT\_UI%22%2C%22status%22%3A%22BETA%22%2C%22description%22%3A%22Displays%20granular%20feature%20flag%20permissions%20in%20Access%20Control%20role%20builder%20and%20gates%20feature%20flag%20actions%20in%20the%20UI%20using%20granular%20permissions.%22%7D%2C%7B%22name%22%3A%22Granular%20feature%20flag%20permissions%20migration%20lock%22%2C%22key%22%3A%22FME\_FF\_EDIT\_PERMISSION\_SPLIT\_ENFORCE%22%2C%22status%22%3A%22BETA%22%2C%22description%22%3A%22Freezes%20background%20custom%20role%20migration%20rescans%20once%20granular%20feature%20flag%20permissions%20are%20active%20across%20an%20account.%22%7D%5D" %}
{% endhint %}

## What you will learn from this topic

How Harness updates custom roles so that feature flag edit access also includes the granular feature flag permissions, and how accounts can preview granular controls in the UI.

## Before you begin

* You need a Harness account with Feature Management & Experimentation (FME).
* You use custom roles that include the feature flag edit permission.
* Go to [Harness RBAC for FME](/feature-management-experimentation/management-and-administration/permissions/rbac.md) for roles and resource groups.

## What changes

When this capability is enabled for an account, Harness updates roles that include the feature flag edit permission. Those roles also receive these permissions:

* Create feature flags
* Edit feature flag
* Edit feature flag definition
* Use the feature flag kill switch
* Delete feature flags

The existing feature flag edit permission remains on the role.

### Role Builder and UI controls (Beta)

When granular UI controls (`FME_FF_EDIT_PERMISSION_SPLIT_UI`) are enabled for an account:

* Access Control (Role Builder) displays the five granular permission checkboxes instead of the single broad Edit control.
* Newly created custom roles are authored using granular permissions directly.
* Feature Flag screens gate actions and buttons using granular permission checks.

### Migration lock (Beta)

Once an account has transitioned to granular permissions, the migration lock flag (`FME_FF_EDIT_PERMISSION_SPLIT_ENFORCE`) freezes the background custom role migration worker so it stops periodic rescans for that account.

## What does not change

Users who can edit feature flags today can still edit them. This update adds permissions. It does not remove access.

{% @harness-feedback/feedback %}

[^1]: Beta features are feature-complete but still being validated. Available on request.
