Roles and Permissions

Space Role Subtypes

Release Feature (LPD-96750) Liferay DXP 2026.Q3+

Spaces, design libraries, Content Marketing Platform projects, and asset libraries all draw on a single role type, listed as Space Roles in the Roles application. A role’s subtype ties it to one of them, so that adding a member to a project offers the project’s roles instead of every space role in the instance.

Set a subtype on each custom space role you assign in a project or design library. A role created before this feature stores no subtype, and projects and design libraries leave it out.

Warning

Opening a role that stores no subtype and clicking Save stores the Space subtype explicitly. The role’s permissions and assignments are unchanged, but two behaviors change: the role stops appearing in a project’s or design library’s Permissions window, and its Define Permissions tab narrows to the object definitions scoped to Space. Open and save one of these roles only when you intend to give it the Space subtype. See Roles Created Before Subtypes.

Enabling Subtype Filtering

An instance administrator must enable the LPD-96750 release feature flag before role lists start filtering by subtype. See Feature Flags. The flag is titled Depot Role Scoping. Depot is the platform’s internal name for this role type.

The Subtype field, the subtype label in the Roles list, and the Filter by Subtype control are present regardless of the flag’s state. What the flag changes is which roles each list shows. A subtype changes neither what a role grants nor the roles already assigned to users.

Setting a Role’s Subtype

Setting the Subtype on a New Role

This procedure covers the Subtype field. See Creating and Managing Roles for the rest of the role form.

  1. Open the Global Menu (Global Menu) and navigate to Control Panel → Users → Roles.

  2. Click the Space Roles tab.

  3. Click New. The Type field is read-only and shows Space.

  4. Enter a title, and a description if you want one.

  5. Select a Subtype. Space is selected by default.

    The field offers only the values whose features are enabled. Space is always available, Project requires the Content Marketing Platform (CMP) release feature flag (LPD-58677), and Design Library requires the Design Libraries release feature flag (LPD-57283). On an instance where only LPD-96750 is enabled, Space is the sole choice.

    The New Role form places a Subtype field between Description and Key.

  6. Enter a key.

  7. Click Save.

    The role appears in the Space Roles list with a label showing its subtype.

Now you can define the role’s permissions and assign it to users.

Changing an Existing Role’s Subtype

Unlike a role’s type, its subtype can be changed after the role is created.

  1. Navigate to Control Panel → Users → Roles and click Space Roles.

  2. Click the role’s Actions (Actions) and select Edit.

  3. Select a different Subtype, then click Save.

    The role’s row shows a label with the new subtype.

Changing a subtype keeps existing assignments, and users keep the role’s granted permissions. Only the lists in Where Each Role Appears change. If a role moves to a different subtype, the Memberships screen where you assigned it no longer lists it, though those assignments keep their permissions.

Where Each Role Appears

A role with the Design Library subtype appears only in design libraries. It’s offered when you add a member to one, and on that library’s Memberships screens. The Space and Project subtypes work the same way in their own places, and in Content Marketing Platform the Project subtype also drives the assignee filter. Asset libraries are the exception: they offer every space role, whatever its subtype.

A role that stores no subtype counts as a Space role, so it appears in spaces and asset libraries but not in projects or design libraries.

All of this requires LPD-96750. Without the flag, every space role is offered everywhere.

Three lists don’t follow the pattern:

  • A resource’s Permissions window offers the roles matching the space, project, or design library you’re in and every role with no subtype. A role with no subtype appears there even in a project or design library, where nothing else offers it.

  • Filter by Subtype in the Roles list matches stored values exactly, so a role with no subtype matches nothing, not even Space. Filtering by Space leaves out the out-of-the-box space roles. This control works regardless of the flag’s state.

  • The Define Permissions tab lists only the object definitions scoped to the role’s subtype, plus definitions with no scope of their own. A role with no subtype gets every definition. This filtering also applies regardless of the flag’s state.

The asset library REST API applies the same filtering as the screens when it lists the roles for a space, a project, or a design library. See Reading and Setting a Role’s Subtype.

Note

An object definition’s scope is set when the object is built, not from the Roles application. If a definition you expect is missing from the Define Permissions tab, ask whoever built the object which subtype it is scoped to. Every role created through the Roles application carries a subtype, so only a role created before subtypes existed lists every object definition.

Roles Created Before Subtypes

Custom roles created before this feature are missing from the role lists in projects and design libraries. Setting their subtypes falls to an administrator, not to an upgrade process, because Liferay DXP can’t identify which of them were being used in projects.

Set the Subtype on every custom space role you assign in a project or design library. See Changing an Existing Role’s Subtype.

To tell whether a role stores a subtype, use the Roles list rather than the role form. A role with a subtype shows a label beside its status, and a role with no subtype shows none. The form shows Space in the Subtype field either way.

Open and save one of these roles only when you intend to give it the Space subtype.

Subtypes on Out-of-the-Box Roles

Design Library roles carry the Design Library subtype, and Project roles carry the Project subtype. Space Administrator, Space Connected Site Member, Space Content Reviewer, Space Member, and Space Owner carry no subtype.

For what each out-of-the-box role grants, see Default Roles Reference.

Finding a Role’s Subtype in the Roles List

The Roles list’s default card view shows a role’s subtype as a label beside its status. The table view shows it in its own column instead. A role with no subtype shows no label.

Design Library roles show a Design Library label beside Approved, and the space roles show none.

To limit the list to one subtype, click Filter and choose a subtype under Filter by Subtype. Choose All under the same heading to clear the filter.

The filter leaves out the out-of-the-box space roles and every custom role created before this feature, because none of them store a subtype.