I have enabled ACL (Role Access List) in UCM and I am able to use it.
Let say I have two roles ROLE_CONTRIBUTOR and ROLE_APPROVER. ROLE_CONTRIBUTOR has RW access on document and ROLE_APPROVER has RWDA access on document.
My requirement is that when a user belongs to ROLE_CONTRIBUTOR group and creates a document it should automatically get submitted to workflow.
Any user of ROLE_APPROVER group should be be able to approve document.
Problem is list of contributor and approver is hidden in document metadata itself.
How would I set such workflow? How would I set list of approvers coming from a group, which is mentioned in Role Access List metadata of document?
Hi Sanjeev ,
My requirement is that when a user belongs to ROLE_CONTRIBUTOR group
Create a WF where the criteria would be set as dSecurityGroup = Role_Contributor
How would I set list of approvers coming from a group, which is mentioned in Role Access List metadata of document?
These values are stored in xClbraRoleList and it would be part of DOC_INFO result set for the content item . So, from there you can retrieve these values and use it .
Unfortunately Workflows allow either User or Alias to be set as approver for a step. Use of Tokens will allow you this capability if the user list is coming from a metadata field. Here is what you can do to achieve this use case:
1. Have an additional metadata created to hold the list of approvers
2. Override the checkin service to query and identify all users who belong to the role(s) coming from your Role Access List
3. Assign this user list to the custom metadata
4. In your workflow create a token to map this custom metadata to the users (not alias)
5. Use the token in your workflow step as your approver
Hope this helps
Hi Anand, Can you explain following points
1. How to override checkin service?
2. While overriding checkin service, how would I get users part of a role and how would I set metadata?
3. What if a new member is added in ROLE_APPROVER? He would not be able to approve document immediately. He can only approve next documents.
1. I understand that you are new to customization, I suggest you implement a filter to set the custom metadata value. You can use the 'validatestandard' to do this. I suggest you refer to the 'How To Component' to understand the filter implementation. Once you get a hold on this you can do a query to the user table
2. You will need to write a JNDI call to your LDAP to find the list of users who belong to the roles(s) that is assigned using the ACL Once yu get this list you can set it as shown in the filter example.
3. The reason to override this service is to identify the list of users who belong to the role during each checkin. In case there are new users added to the role they will be picked up by your JNDI call
Cons - You might have performance issues, check the upload speed prior and post implementing this filter.