PHPackages                             torqnorth/pimcore-role-creator-bundle - 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. [Admin Panels](/categories/admin)
4. /
5. torqnorth/pimcore-role-creator-bundle

ActivePimcore-bundle[Admin Panels](/categories/admin)

torqnorth/pimcore-role-creator-bundle
=====================================

v5.2.0(3mo ago)0525proprietaryPHP

Since Oct 28Pushed 3mo agoCompare

[ Source](https://github.com/Torq-North/pimcore-role-creator-bundle)[ Packagist](https://packagist.org/packages/torqnorth/pimcore-role-creator-bundle)[ RSS](/packages/torqnorth-pimcore-role-creator-bundle/feed)WikiDiscussions main Synced 3w ago

READMEChangelog (1)Dependencies (1)Versions (20)Used By (0)

Pimcore Role Creator bundle
===========================

[](#pimcore-role-creator-bundle)

Getting started
---------------

[](#getting-started)

1. This bundle is easily installed via composer: `composer require torqnorth/pimcore-role-creator-bundle`
2. In your config folder, add a `roles.yaml` file. Instructions on how to set up your roles is given below in the Roles Setup section.
3. Make sure you register the `RoleCreatorBundle` in your `AppKernel.php` located at `\src\pimcore-root\app\AppKernel.php`. Registering the bundle is as easy as adding a line in the registerBundlesToCollection function, like so: `$collection->addBundle(new \TorqNorth\RoleCreatorBundle\RoleCreatorBundle);`
4. Run the bundle, with the command: `./bin/console torqnorth:generate-roles`

Role Setup
----------

[](#role-setup)

For this example, let's say we want to add `Manager` and `Employee` roles to our app. In your config folder, add a `roles.yaml` file with the following layout:

```
system_roles:
  Manager:
  Employee:
```

This will create `Manager` and `Employee` roles, both with no permissions, workspaces or allowed classes.

### Basic Permissions

[](#basic-permissions)

Using the permissions specified in the `user_permission_definitions` table, you can specify basic permissions per role using one of three variables:

- `included_permissions: []` An array of allowed permissions
- `excluded_permissions: []` Include all permissions on a role *except* for the ones specified
- `all_permissions:` Include all permissions

So for example, if we wanted our manager to have full access to the app, but only allow users to see documents and assets, we would configure it like so:

```
system_roles:
  Manager:
    all_permissions: true
  Employee:
    included_permissions: ["documents", "assets"]
```

### Workspaces

[](#workspaces)

You can specify data object, asset and document workspaces using the following structure per role.

```
workspaces:
  data_objects:
    /folderName:
      permissions: []
      special_configs:
        localized_edit: "fr_CA"
        localized_view: "en,fr_CA"
        custom_layouts: "object_ProductLayout,object_SupplierLayout"
  assets:
    /folderName: []
  documents:
    /folderName: []
```

Where `folderName` is the full path to the folder for that workspace. Each workspace array can be populated with the following currently supported permissions:

- `list`
- `view`
- `save` (Documents/Data Objects Only)
- `publish`
- `unpublish` (Documents/Data Objects Only)
- `delete`
- `rename`
- `create`
- `settings`
- `versions`
- `properties`

> *Note:* in order to make the entire structure available, you can supply `/` as the folder, which will make a workspace at the root.

Going back to our example, if we wanted to make it so that the `Employee` role can only operate in the `articles` folders for documents and assets, we might set up our config this way:

```
system_roles:
  Manager:
    # Manager Permissions
  Employee:
    workspaces:
      data_objects:
        /articles:
          permissions: ["list", "view", "create", "save", "publish"]
      assets:
        /articles: ["list", "view"]
```

Alternatively, you can pass `true` to a workspace, which will enable all of the permissions

```
 ...
    workspaces:
      data_objects:
        /articles:
          permissions: true
```

You can specify special configurations per data object workspace:

- Custom layouts
- Localization

```
 ...
    workspaces:
      data_objects:
        /articles:
          special_configs:
            localized_edit: "fr_CA"
            localized_view: "en,fr_CA"
            custom_layouts: "object_ProductLayout,object_SupplierLayout"
```

### Allowed Document Types &amp; Classes

[](#allowed-document-types--classes)

You can specify the allowed document types and classes per role using the following structure:

```
allowed_types:
  classes: ["MyClassName"]
  document_types: ["Document Name"]
```

Where the both values accept the class/document type **name** (and not the class/doc type *ID*). For example, if we wanted to make it so that the `Employee` role could only create `Article`'s, we would simply specify the following:

```
system_roles:
  Manager:
    # Manager Permissions
  Employee:
    allowed_types:
      document_types: ["Article"]
```

> **Note:** The default behavior for pimcore is that if no allowed class/doc types are specified, then *all* classes and doc types are allowed. If you need to restrict all creation, you may need to configure it at the workspace level.

### Allowed Perspectives

[](#allowed-perspectives)

You can specify the allowed perspectives on a role by adding perspectives to an array of strings:

```
perspectives: ["Default"]
```

If you don't specify a list of perspectives, than it will clear all previously selected perspectives.

License
=======

[](#license)

This bundle is licensed under the Pimcore Open Core License (POCL) and is intended for use with Pimcore Platform 2025.1 and newer.

See LICENSE.md for full license text.

###  Health Score

46

—

FairBetter than 92% of packages

Maintenance79

Regular maintenance activity

Popularity18

Limited adoption so far

Community12

Small or concentrated contributor base

Maturity63

Established project with proven stability

 Bus Factor1

Top contributor holds 52.6% 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 ~115 days

Recently: every ~64 days

Total

18

Last Release

109d ago

Major Versions

v1.0.5 → v2.0.02021-05-19

v2.2.0 → v3.0.02023-10-10

v3.1.0 → v4.0.02024-06-06

v4.1.0 → v5.0.02025-05-07

### Community

Maintainers

![](https://www.gravatar.com/avatar/85e9ffa5092017101650f30f5fedeb12da6d48344373f33d56e02fa9f1c2d92b?d=identicon)[torqnorth](/maintainers/torqnorth)

---

Top Contributors

[![lukemacausland](https://avatars.githubusercontent.com/u/58705994?v=4)](https://github.com/lukemacausland "lukemacausland (40 commits)")[![nick-compassaq](https://avatars.githubusercontent.com/u/68865874?v=4)](https://github.com/nick-compassaq "nick-compassaq (24 commits)")[![evanjamesjackson](https://avatars.githubusercontent.com/u/5866481?v=4)](https://github.com/evanjamesjackson "evanjamesjackson (5 commits)")[![Jonathon-Meney-Torq](https://avatars.githubusercontent.com/u/253076990?v=4)](https://github.com/Jonathon-Meney-Torq "Jonathon-Meney-Torq (5 commits)")[![cameronfromtorq](https://avatars.githubusercontent.com/u/105230931?v=4)](https://github.com/cameronfromtorq "cameronfromtorq (1 commits)")[![rjjackson22](https://avatars.githubusercontent.com/u/38430762?v=4)](https://github.com/rjjackson22 "rjjackson22 (1 commits)")

### Embed Badge

![Health badge](/badges/torqnorth-pimcore-role-creator-bundle/health.svg)

```
[![Health](https://phpackages.com/badges/torqnorth-pimcore-role-creator-bundle/health.svg)](https://phpackages.com/packages/torqnorth-pimcore-role-creator-bundle)
```

###  Alternatives

[pimcore/studio-ui-bundle

Pimcore Studio Ui Bundle

2994.0k12](/packages/pimcore-studio-ui-bundle)[pimcore/studio-backend-bundle

Pimcore Studio Backend Bundle

20171.5k14](/packages/pimcore-studio-backend-bundle)[pimcore/admin-ui-classic-bundle

171.2M50](/packages/pimcore-admin-ui-classic-bundle)[pimcore/skeleton

124198.5k](/packages/pimcore-skeleton)[pimcore/data-importer

Adds a comprehensive import functionality to Pimcore Datahub

46823.2k3](/packages/pimcore-data-importer)

PHPackages © 2026

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