There is an audit requirement to provide information regarding the user permissions - privileges and authorizations.
Automation Engine Version 24
Automation Engine Version 21
The REST API in Automic has an endpoint called /objects/{object name} which can be used for each user or usergroup object to show what privileges and authorizations are assigned to it.
As an example, the AE server is accessible at automic-rest-api.example.com:8088 and the query is being run for client 100 and user group called USRG.ADMIN. Run a REST API call to the following:
https://automic-rest-api.example.com:8088/ae/api/v1/0100/objects/USRG.ADMIN
Here is the response:
{
"total": 1,
"data": {
"usrg": {
"metadata": {
"version": "21.0.8"
},
"general_attributes": {
"type": "USRG",
"name": "USRG.ADMIN",
"minimum_ae_version": "11.2"
},
"user_group_attributes": {
"privileges": 9968168272131
},
"members": [
{
"username": "GENERAL/ADMIN"
}
],
"authorizations": [
{
"filter_object_type": "JOBS",
"filter_object_name": "JOBS.HR.*",
"filter_agent_name1": "*",
"filter_agent_name2": "*",
"filter_user_id1": "*",
"filter_user_id2": "*",
"filter_file_names1": "*",
"filter_file_names2": "*",
"bitcode": 3,
"auth_group": 1
},
{
"filter_object_type": "JOBP",
"filter_object_name": "JOBP.FINANCE.*",
"filter_agent_name1": "*",
"filter_agent_name2": "*",
"filter_user_id1": "*",
"filter_user_id2": "*",
"filter_file_names1": "*",
"filter_file_names2": "*",
"bitcode": 255,
"auth_group": 1
},
{
"filter_object_type": "*",
"filter_object_name": "*",
"filter_agent_name1": "*",
"filter_agent_name2": "*",
"filter_user_id1": "*",
"filter_user_id2": "*",
"filter_file_names1": "*",
"filter_file_names2": "*",
"bitcode": 4,
"auth_group": 1
}
]
}
},
"path": "",
"client": 100,
"hasmore": false
}
The important parts above are:
the members, which are all users that are a part of the usergroup
the authorizations, a line-by-line equivilant to what you see in the authorizations tab of a user or usergroup; there is bit code in each line which needs to be extrapolated. It's in a binary code with the following be the value for each authorization type:
R: 1
W: 2
X: 4
D: 8
C: 16
S: 32
P: 64
M: 128
So for something that shows 136, it's 8+128 or D, M
There are a number of ways to run rest calls against our rest api:
You can simply put the full rest endpoint into a browser that can reach the AE server. You'll be prompted and need to put in a user's credentials in the browser when doing so.
You can run the REST call via an external tool like postman (this requires some REST WebService knowledge, but there are many tutorials online)
You can run the calls against the REST API using our WebService REST Agent. This also requires some REST WebService knowledge. More information on the agent and jobs can be found here:
https://docs.automic.com/documentation/webhelp/english/ALL/components/RA_WEB_SERVICE_REST/latest/Agent%20Guide/Content/RA/WS/AWI/Defining_Requests_for_REST_Jobs.htm