verify_acl
Check whether role profiles can run an operation on a table or field according to ServiceNow ACLs, returning each profile's decision, reasons, and involved controls.
Instructions
Check whether users holding the given sets of roles can run an operation on a table, or on one of its fields, according to the ACLs of the instance. Each profile gets a decision (allowed, conditional, denied or missing), a summary, the reasons and the controls involved. Scripts and conditions are not run: conditional means the scripts and conditions listed in the controls decide. The controls also show which roles each ACL requires. Parent table inheritance is not evaluated: missing means no ACL matched.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| field | No | Optional field name, to verify field level controls. Only for the read and update operations. | |
| table | Yes | ServiceNow table name, for example incident or sys_user. | |
| refresh | No | Skip the local cache and ask the instance again. Leave false to reuse a recent response. | |
| instance | Yes | Name of a configured instance, as returned by list_instances. | |
| profiles | Yes | One list of role names per user to check, for example [["itil", "snc_internal"], ["admin"]]. List every role the user holds, including snc_internal and the roles contained in other roles: none is added automatically. A user passes a control when any of its roles is required by the control. Empty lists are ignored. Roles are compared locally and never sent to the instance. | |
| operation | Yes | The operation to verify. |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| field | Yes | ||
| table | Yes | ||
| source | Yes | ||
| target | Yes | ||
| profiles | Yes | ||
| acl_names | Yes | ||
| operation | Yes | ||
| cache_name | Yes |