Wolfram Function Repository
Instant-use add-on functions for the Wolfram Language
Function Repository Resource:
Create a web-based interface for editing PermissionsGroup members
ResourceFunction["DeployPermissionsGroupManager"][] deploys a CloudObject containing an interface for editing PermissionsGroup values. | |
ResourceFunction["DeployPermissionsGroupManager"][object] deploys the interface to the CloudObject given by object. |
"AllowAddGroup" | True | whether the form will allow the user to add new groups |
"AllowDeleteGroup" | True | whether the form will allow the user to delete groups |
"EditableGroups" | Automatic | a list of groups that the form can manage |
"ChangeAction" | None | a function to apply when any changes are made to permissions groups |
Deploy the interface to the default location:
In[1]:= |
Out[1]= |
The interface allows you to create new PermissionsGroup objects:
Available groups are listed in the interface:
The members of the group can be viewed:
You can add and remove members:
The interface modifies standard PermissionsGroup objects, which are also accessible programmatically:
In[2]:= |
Out[2]= |
In[3]:= |
Out[3]= |
Create the interface on a different CloudObject address:
In[4]:= |
Out[3]= |
Create a form that can only modify users of a specified group but cannot create new groups or edit other groups:
In[5]:= |
Out[5]= |
"EditableGroups" controls which groups the users of the form can edit:
In[6]:= |
Out[6]= |
"AllowAddGroup" controls whether users of the form can create new permissions groups through the form:
In[7]:= |
Out[7]= |
"AllowDeleteGroup" controls whether users of the form can delete entire permissions groups through the form:
In[8]:= |
Out[8]= |
Users of the form can still use Edit members to remove any or all of the members of the group:
"ChangeAction" allows you to provide a side-effect function to be applied whenever someone uses the interface to make a change. The function should accept an Association with the keys "PermissionsGroup", "User" and "Action", where "Action" will be one of "AddUser" "RemoveUser", "AddGroup" or "RemoveGroup". Send an email every time someone makes a change:
In[9]:= |
Out[9]= |
This work is licensed under a Creative Commons Attribution 4.0 International License