IT and operations on ServiceNow

Access request and periodic review on ServiceNow

Handles access requests with the manager's and the system owner's approval, provisions the group in ServiceNow, and runs the quarterly review of every access granted.

SCREENSDATA HANDLERSSERVICENOW · READ IN PLACES01 Request accessS02 ApprovalS03 ProvisioningS04 Quarterly reviewS05 Access boarddh_service_requestService requestsc_request · sc_req_item · sc_taskdh_employeeEmployeesys_user · sys_user_grmember ·sys_user_groupdh_configuration_itemConfiguration itemcmdb_ci · cmdb_ci_server · cmdb_rel_ciWRITE BACK TO SERVICENOWService request → POST table/sc_request · PATCH sc_req_itemEmployee → PATCH table/sys_user · POST sys_user_grmemberrows stay in ServiceNow · access rules applied at read time · each write acknowledged and logged
The screens of the app, the data handler behind each, and the ServiceNow object it reads in place. Writes below the line go through released interfaces with an acknowledgement.
3
objects read in place from ServiceNow
catalogue
5
screens on those rows
catalogue
4 days
to production-grade
estimate
2
objects written back
catalogue
0
rows copied to build it
product
What the app reads

The ServiceNow objects behind each handler

Tables are read in place through the Table API with the integration user's access control lists, so the app sees exactly the records that user may see. The rows stay in ServiceNow.

ObjectRead fromFields the app usesFreshness
Service requestsc_request · sc_req_item · sc_tasksc_req_item.cat_item (item) · sc_req_item.approval (approval) · sc_req_item.number (number) · sc_request.requested_for (requested for)live through the API
Employeesys_user · sys_user_grmember · sys_user_groupsys_user.employee_number (id) · sys_user.name (name) · sys_user.department (org unit) · sys_user.title (position)live through the API
Configuration itemcmdb_ci · cmdb_ci_server · cmdb_rel_cicmdb_ci.sys_id (id) · cmdb_ci.name (name) · cmdb_ci.sys_class_name (class) · cmdb_ci.owned_by (owner)live through the API
The trigger

The start criterion in ServiceNow's own fields

In plain words: An access request submitted on S01 or as a catalog request in ServiceNow; the review cycle starts on the first working day of each quarter.

The criterion runs in ServiceNow through the data handler, so only the matching rows return. The editor shows the rows it selects, and their count, as it is written.

# start criterion in ServiceNow fields
sc_req_item.cat_item = 'application access' and sc_req_item.approval = 'requested'

# the same criterion in canonical fields
{request.item} = 'application access' and {request.approval} = 'requested'
What the app writes back

Through released interfaces

Writes go through the Table API (POST and PATCH). Each call returns the sys_id and number of the record, and the app records both beside the decision. Approvals raised from the app appear in the ServiceNow approval list, so people can act in either place.

ObjectWhat changesInterface
Service requestapproval recorded on the approver record; request item closed with the provisioning resultPOST table/sc_request · PATCH sc_req_item
Employeegroup membership added on approval or removed at reviewPATCH table/sys_user · POST sys_user_grmember
Acknowledged and logged

Each write stores the identifier ServiceNow returns beside the decision, the person and the time, so the log answers who changed what, and the reconciliation shows it arrived.

Access and prerequisites

What is in place before the first build

Groups and roles are mapped to Lima access policies once. A change manager sees the same change requests in the app that they see in ServiceNow.

  • An integration user with the table roles for the tables the app reads and writes
  • Access control lists reviewed for the fields the app writes
  • Allowed IP or private connectivity to the instance
  • Assignment groups agreed with the process owner
Register the handlers3 objects from the catalog; each shows its rows at once.
Nearby

This app on other systems, and other apps on ServiceNow

Access request and periodic review on

Other apps on ServiceNow

Terms on this page

Configuration itemThe record in ServiceNow that describes an application or server, including who owns it.
Group membershipThe link between a user and a ServiceNow group that grants a role or access.
Read in placeThe rows stay in ServiceNow; the handler sends the filter and the columns and ServiceNow returns the matching rows.
Questions

Does this app copy data out of ServiceNow?

The screens read through handlers that leave the rows in ServiceNow. History the app needs at scale is landed in the lake by the Backbone, which is the exception by design.

What does ServiceNow need to allow?

The prerequisites above: an integration identity with read rights on the objects listed and write rights on the interfaces named, connectivity, and the scopes agreed with the process owner.

Can I run it on another system as well?

Yes. The screens, criteria and roles stay; the handlers are re-bound to the other system's objects, and the app's other system pages show them.

See this app on your data

Bring the process and the systems it touches. In the first session we register the data handlers, draw the levels or the lanes and run the first screen on your live rows.