yuuvis® RAD Q&A

+1 vote
by (160 points)

How can I save the users who have access to an object?

The use case: User A wants to share a single file with user B in a folder to which user B has no access and shouldn't gain access to, except for the mentioned file.

Thank you!

1 Answer

0 votes
by (1.4k points)
selected by
Best answer

User B should be granted the right "Available" for the required folder type (and the abstract ancestors) . In that case he can see the type in the search side, but don't have access to any real folder. But that is required for seeing shared documents in a folder of the "available" type.
Prerequisite: the object type has to be configured for sharing.

by (160 points)
Thank you for your answer, but I meant in the code. Where is it saved which objects have been shared with which user? I'm looking for an array of some sort, so my webclient can have access to those informations.

Can it be, that this is saved automatically? If yes, what method do I use to get and set these informations in a new webclient?
by (3.3k points)
It is possible to set and get the sharing information for a single object. Use 'DmsService.getItem' with the additionalvisibility flag set to true, to get a list of users and groups this object is shared with. To change the sharing information it is possible to do it with 'DmsService.putAdditionalVisibilityList'.
Currently it is not possible using the api to get a List of all shared objects or a list of objects shared with a dedicated user. This would require a change request.
by (19.6k points)
The rights are saved as ACLs. Each user has certain ACL IDs and each Object has a list of ACL IDs that are allowed to see and manipulate it.

You can use the REST endpoint DmsService.getItem with the Parameter rights=CURRENT to see what rights the currently logged in user has for this object.

Setting rights can only be done by manipulating the entire roleset and acitvating it on the dms-service- except for the sharing function.


Related questions