For a project requirement the customer wants to be able to dynamically control the user control. For example you could have a local user and a remote user with basically the same permissions (i.e. both are allowed to perform sets on devices). But at any point in time only one of them is allowed to do so. So if the local user has the control, the remote user cannot perform sets. And if the remote user has control, the local user cannot perform sets.
I think this could be achieved by assigning both users to different user groups (one with visible write parameters and the other with hidden write parameters) and then dynamically modify those group permissions accordingly. But is that possible? Is this information readily available and can it for example be retrieved and displayed and can it be manipulated as well using code?
Thank you Ive,
No I did not. Probably because my simplified example only mentioned 2 different user groups, but there could actually be more and moreover with several control combinations. So it is really about having to manage the control possibilities for several groups of users at the same time.
Lesson learnt: never provide an oversimplified example.
Hi Conan,
I believe you'll need a 'device access' user group and then a script to assign/remove local or remote users to that group.
I'm not sure what calls are needed in the script though.
I would advise to do a follow in slnetclienttesttool to see what calls are there.
Indeed, I checked this also with Stacey who had a similar use case (https://community.dataminer.services/question/automate-user-group-permissions/). At the time he had investigated this and could indeed get this working based on some related/dedicated slnet calls (found by performing a follow). This solution was then proposed to the customer, but in the end it was not implemented. But it could be done.
Another implementation was done by Bernard in a connector (Rights Management) which allows to easily configure for user groups the elements and services they have access to and are allowed to read/write/configure. This is not exactly the same as what we are looking for, but the basic/similar functionality at least seems to be implemented.
Hi Conan,
It's not a real answer to your question, but did you consider the locking feature?
https://docs.dataminer.services/user-guide/Basic_Functionality/Elements/Working_with_elements/Locking_and_unlocking_elements.html