PHPackages                             thejoshsmith/craft-fab-permissions - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Authentication &amp; Authorization](/categories/authentication)
4. /
5. thejoshsmith/craft-fab-permissions

ActiveCraft-plugin[Authentication &amp; Authorization](/categories/authentication)

thejoshsmith/craft-fab-permissions
==================================

Give yourself better control over your sections with Craft Field and Tab (FAB) Permissions. Restrict which tabs and fields are visible to different user groups.

2.0.2(4y ago)1611.5k9[9 issues](https://github.com/thejoshsmith/craft-fab-permissions/issues)[2 PRs](https://github.com/thejoshsmith/craft-fab-permissions/pulls)proprietaryPHPCI failing

Since Jun 16Pushed 4y ago1 watchersCompare

[ Source](https://github.com/thejoshsmith/craft-fab-permissions)[ Packagist](https://packagist.org/packages/thejoshsmith/craft-fab-permissions)[ RSS](/packages/thejoshsmith-craft-fab-permissions/feed)WikiDiscussions master Synced today

READMEChangelogDependencies (1)Versions (25)Used By (0)

Field and Tab Permissions plugin for Craft CMS 3.5
==================================================

[](#field-and-tab-permissions-plugin-for-craft-cms-35)

A plugin that allows you to set field and tab visibility for particular user groups in the CMS.

[![Screenshot](resources/img/plugin-logo.png)](resources/img/plugin-logo.png)

Requirements
------------

[](#requirements)

This plugin requires Craft CMS 3.5 or later.

Installation
------------

[](#installation)

To install the plugin, follow these instructions.

1. Open your terminal and go to your Craft project:

    ```
     cd /path/to/project

    ```
2. Then tell Composer to load the plugin:

    ```
     composer require thejoshsmith/craft-fab-permissions

    ```
3. In the Control Panel, go to Settings → Plugins and click the “Install” button for FAB Permissions.
4. **Important** - Override the Craft Fields Service with the FAB Permissions Fields Service in `config/app.web.php`:

    ```
     return [
     	'components' => [
     		'fields' => [
     			'class' => 'thejoshsmith\fabpermissions\services\Fields'
     		]
     	]
     ]

    ```

FAB Permissions Overview
------------------------

[](#fab-permissions-overview)

This plugin allows you to restrict access to certain user groups on a per tab or field basis.

**NEW** - Read only access can now be set on fields.

A use case for this would be if you had an SEO tab that only digital marketers and developers should be able to access. You can turn off access to client users whilst keeping access for the marketers and developers—The SEO tab will remain hidden to clients but visible for marketers and developers.

You can alter permissions for any element that uses the core field layout designer. This includes, but isn't limited to:

- Entry Types
- Globals
- Users
- Assets
- Categories
- Tags

How does it work?
-----------------

[](#how-does-it-work)

The plugin extends the core field and layout designer javascript object, and injects hidden inputs with user group permissons. Once permissions are saved in the database, an extended fields service is able to filter out fields and tabs based on the logged in user and their access.

Great care has been taken to ensure the bare minimum of core functionality has been extended. You are required to override the base Craft Fields Service with the FAB Permissions Fields Service within your config/app.php file. Until recently this was automatically done, but since plugins are registered after the Project Config listeners, we need to ensure the FAB Permissions Fields Service is loaded at an earlier point, and the only way to do this is to manually override Craft's Fields Service in your app config.

Using FAB Permissions
---------------------

[](#using-fab-permissions)

1. After installing the plugin, a new menu item will be available from the settings menu on any field layout:

[![Field and Layout Designer](resources/img/step-1-field-and-layout-designer.png)](resources/img/step-1-field-and-layout-designer.png)

2. Clicking the menu item will bring up the permissions modal. Check the user groups you'd like to give access to, and click save. In this screenshot, Clients won't be able to access the SEO tab.

[![Permissions Modal](resources/img/step-2-set-permissions-in-modal.png)](resources/img/step-2-set-permissions-in-modal.png)

3. A red dot is now shown in the tab, indicating permissions have been set.

[![Red Dot Indication](resources/img/step-3-dot-indicator.png)](resources/img/step-3-dot-indicator.png)

4. Clients no longer have access to the SEO tab.

[![SEO Tab Restricted](resources/img/step-4-tabs-are-restricted.png)](resources/img/step-4-tabs-are-restricted.png)

5. Fields can be restricted in the same way:

[![Set Field Permissions Menu](resources/img/step-5-set-permissions-menu.png)](resources/img/step-5-set-permissions-menu.png)

[![Set Field Permissions Modal](resources/img/step-5-set-permissions.png)](resources/img/step-5-set-permissions.png)

[![Field Permissions Dot Indicator](resources/img/step-5-dot-indicator.png)](resources/img/step-5-dot-indicator.png)

[![Field Restricted For Users](resources/img/step-5-no-access-to-field.png)](resources/img/step-5-no-access-to-field.png)

*In this screenshot, the author user picker and matrix are set to read-only.*

6. Permissions can be cleared using the "Clear" button on the permissions modal:

[![Field Restricted For Users](resources/img/step-6-clear-permissions.png)](resources/img/step-6-clear-permissions.png)

FAB Permissions Roadmap
-----------------------

[](#fab-permissions-roadmap)

Some things to do, and ideas for potential features:

- Page that shows permissions set across all tabs/fields in the CMS
- Ability to set permissions on an individual user basis.

Brought to you by [Josh Smith](https://joshsmith.dev)

###  Health Score

35

—

LowBetter than 79% of packages

Maintenance9

Infrequent updates — may be unmaintained

Popularity30

Limited adoption so far

Community17

Small or concentrated contributor base

Maturity69

Established project with proven stability

 Bus Factor1

Top contributor holds 58.8% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~40 days

Recently: every ~120 days

Total

21

Last Release

1720d ago

Major Versions

1.5.0-beta.1 → 2.0.02020-10-10

### Community

Maintainers

![](https://www.gravatar.com/avatar/843060e17dd1d74064b894e0fc858dfa106921c07a0266c1100eb2d478175093?d=identicon)[thejoshsmith](/maintainers/thejoshsmith)

---

Top Contributors

[![purplelemons-dev](https://avatars.githubusercontent.com/u/63922192?v=4)](https://github.com/purplelemons-dev "purplelemons-dev (20 commits)")[![moacode](https://avatars.githubusercontent.com/u/5515179?v=4)](https://github.com/moacode "moacode (7 commits)")[![joshatcd](https://avatars.githubusercontent.com/u/141605602?v=4)](https://github.com/joshatcd "joshatcd (2 commits)")[![JoshCoady](https://avatars.githubusercontent.com/u/168141?v=4)](https://github.com/JoshCoady "JoshCoady (2 commits)")[![brandonkelly](https://avatars.githubusercontent.com/u/47792?v=4)](https://github.com/brandonkelly "brandonkelly (1 commits)")[![EpocSquadron](https://avatars.githubusercontent.com/u/414963?v=4)](https://github.com/EpocSquadron "EpocSquadron (1 commits)")[![arthur-akufen](https://avatars.githubusercontent.com/u/93678858?v=4)](https://github.com/arthur-akufen "arthur-akufen (1 commits)")

---

Tags

cmsCraftcraftcmscraft-pluginfield permissionstab permissions

### Embed Badge

![Health badge](/badges/thejoshsmith-craft-fab-permissions/health.svg)

```
[![Health](https://phpackages.com/badges/thejoshsmith-craft-fab-permissions/health.svg)](https://phpackages.com/packages/thejoshsmith-craft-fab-permissions)
```

###  Alternatives

[verbb/knock-knock

Password protect your public facing Craft website with a single password.

17122.8k7](/packages/verbb-knock-knock)[matt-west/craft-recaptcha

Integrate Google’s reCAPTCHA into your forms.

1959.9k1](/packages/matt-west-craft-recaptcha)[jamesedmonston/graphql-authentication

GraphQL authentication for your headless Craft CMS applications.

2917.0k](/packages/jamesedmonston-graphql-authentication)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
