Skip to content

feat(roles): create proper groupManager and global admin roles, ready for multitenancy

Ben Whitmore requested to merge group-managers-team-20230322 into main

Addresses most of #1208 (closed), excluding the system-admin changes to the Users page.

The admin property of users is deprecated, kept only for migrating to populate new groupManager and admin team-member entries.

  • 'admin' is a global role, intended to have privileges for user management and various config tasks such as updating config manager, forms, task builder etc. Not intended as a role for editing manuscripts, assigning editors etc.
  • 'groupManager' is currently a global role but designed to be easily switched to a group-based role when we have multitenancy. You'll see TODOs in the code where groupId needs to be supplied to make this switch. This role is basically the same as our previous admin role.

A user can have multiple roles.

The Users page is updated to display groupManager roles and allow assigning/unassigning as groupManager. I haven't yet added in the ability to assign/unassign admin role, nor does the Users page show an expanded set of users when viewed by admin.

I am still working on updating cypress code, but thought I should get this out as a draft MR in the meantime.

Edited by Ben Whitmore

Merge request reports