We are building an app (Preside v10.24.16+0012463 with preside-ext-alt-admin-theme) where different roles should have access to data manager only and, more specific, to some objects in data manager only.
What I did so far:
In Config.cfc
I created a role and admin permissions for one object:
settings.adminPermissions.presideobject[ 'myObject' ] = [ "read", "add", "edit", "delete", "viewversions" ];
settings.adminRoles.supplier = [ "cms.access", "datamanager.*", "!presideobject.myObject.*" ];`
Then I created a new user group with permissions “contenteditor” (is needed for this to work) and “supplier”, created a new admin user and assigned him to the new group.
That worked so far, the new user could access the DM and all objects, only “myObject” was forbidden as expected (Preside error 401).
Problem 1)
Later I removed the limitations on the object (removed the setting for adminPermissions.presideobject[ 'myObject' ]
entirely) and changed the supplier role to
settings.adminRoles.supplier = [ "cms.access", "datamanager.*" ];
However, members of that group still couldn’t access “myObject”.
For testing purposes I then created a new role and granted it access to the object:
settings.adminPermissions.presideobject[ 'myObject' ] = [ "read", "add", "edit", "delete", "viewversions" ];
settings.adminRoles.demo = [ "cms.access", "datamanager.*", "presideobject.myObject.*" ];`
But, members of the “demo” group still couldn’t access “myObject”. In fact, only members of the system administrator role can do that.
As far as I can tell, customizationService.objectHasCustomization( "myObject", "checkPermission" )
still returns “true” and the subsequent premission check fails
Problem 2)
Because of the role “contenteditor”, members of the new user group have access to launcher, site tree, and access manager as well. Even putting !sitetree.*
in the role settings didn’t change that.
So how can I achieve
a) that some roles have access to data manager only (without launcher, site tree, and access manager) ?
b) that these roles have access to some objects only (preferrably without having to specify all permissions on all objects for all groups) ?
Thank you!