cancel
Showing results for 
Search instead for 
Did you mean: 

Document actions based on user rights/role

zputnoky
Star Contributor
Star Contributor

Is there a way to limit the available document actions (shown in document-browse or document-details view) based on user role or access rights?

Regards,

Zsolt Putnoky

23 REPLIES 23

This is exactly what the addon I gave you does: create a special subset of actions for the group "SIMPLE USER": https://github.com/keensoft/alfresco-simplify-share/blob/master/simplify-share/src/main/amp/config/a... 

Probably you can develop your own addon taking this one as starting point.

Hyland Developer Evangelist

Not sure that your solution does what I need to achieve. In our case we would like to keep the predefined site roles, but modify the available actions based on role.

Am I able to do the following with your code?

  • Have 3 users
  • The 3 users are assigned to the same site with different roles: User 1 is manager, User 2 is contributor and User 3 is consumer
  • I would like to have the following action groups:
    • User 1 (manager) : download file, view in browser, edit properties, move to, copy to, start workflow, execute some custom actions
    • User 2 (contributor): dowload file, view in browser, edit properties
    • User 3 (consumer): download file, view in browser

All other actions like: change type, manage aspects, take ownership, should be reserved for users with admin right.

The users might have different roles in different sites.

I am not a developer and just recently started modifying Alfresco, some of the ideas given are new to me, hence the frequent questions.

Regards,

Zsolt Putnoky

Yes, you can do it by evolving the addon I gave you.

Hyland Developer Evangelist

okay, time to have another look and figure out how to make that work.

thanks for your patience, much appreciated.

Zsolt Putnoky

Probably the hardest is to deal with all those "Site_SiteShortName_RoleName" dynamically generated groups...

Hyland Developer Evangelist

Do I need to list all the actions I would like to make available into the removed-actions.xml file?

<config evaluator="string-compare" condition="DocLibActions" replace="true">
            <actionGroups>
            
                     <actionGroup id="document-browse">
                        <action index="100" id="document-download"/>
                     </actionGroup>
            
                     <actionGroup id="document-details">
         </actionGroup>

Into these part?

You need one "removed-actions.xml" per group / role

Hyland Developer Evangelist

I assume if I need to create 3 diffrent 'removed-action.xml' I should name them differently. Where do I need to declare the files?

Another issue: user roles might change between sites. In our case, a site is a project. We have few projects in the same time, so user A who is a manager of a site/folder in project A might be a simple Consumer in project B. In such case, do I need to create a group for each project?

‌ I remember you told me about some kind of Site Evaluator to filter Surf components for site roles, right? I can't find it now...

Hyland Developer Evangelist