Join the #BuildWithBuildAgent Challenge! Get recognized, earn exclusive swag, and inspire the ServiceNow Community with what you can build using Build Agent.  Join the Challenge.

Values of a reference field is missing for Non-Itil Users

Irene M
Tera Contributor

hi everyone,

 

We have this catalog form where one of the field is reference to Printer [cmdb_ci_printer]. However, only users with ITIL role can see values of this field.

 

PRINTER 1.jpg

For NON-ITIL users, it says "No matches found"

 

PRINTER 2.jpg

 

What's causing this issue and how to fix this?

1 REPLY 1

lpruit2
Kilo Sage

Greetings @Irene M. This is likely due to an Access Control (ACL) that is preventing "read" access to the Printer table. If you have the Admin role in your ServiceNow instance, you can take advantage of the Access Analyzer by navigating to All > Access Analyzer > Analyze Permissions

 

ServiceNow documentation link: Access Analyzer

 

lpruit2_0-1764968001694.png

 

From there, you are directed to a new screen where you are prompted for a specific User, Table, Record, and Field. In your case, you are primarily interested in the User and Table. Once you have provided the necessary inputs, you will click Evaluate Access

 

lpruit2_1-1764968151871.png

 

Once the evaluation has completed, it will return the Access results

 

lpruit2_2-1764968223415.png

 

Here, you will finally be able to determine why or what Role is preventing the impacted user from accessing or "reading" the Printer records. 

 

TLDR: If you have not made any significant customization to your ServiceNow environment's ACLs and Roles, it is likely the impacted user does NOT have the "cmdb_read" Role. This Role is inherited from the "itil" Role. To resolve your issue without granting full "itil" Role, you could create a new ServiceNow Group and assign the "cmdb_read" Role to the new Group. Once the impacted User(s) is added to this new Group, they should be able to see "read" the Printer records. I hope this information is helpful.