This article explains how to grant table access to a service account in ServiceNow. The process involves creating a role, assigning it to a user, and configuring row-level and field-level access controls.
Prerequisites
- Admin access in ServiceNow.
- Elevate to the
security_adminrole to make changes to Access Control Lists (ACLs).
Create a user
To create a user:
- Go to User Administration > Users.
- Select New to create a new user.
- Fill in the user details, such as
microsoft.copilotfor the User ID andMicrosoftandCopilotfor the First Name and Last Name. The User ID is required for successful crawls. - Select Submit to save the user.
Create a role
To create a role:
- Go to User Administration > Roles.
- Select New.
- Enter a unique name for the role (for example,
Copilot connector account). - Select Submit to save the role.
Assign the role to a user
To assign the role to a user:
- Go to User Administration > Users.
- Open the user record for the intended user (for example,
Microsoft Copilot). - In the Roles related list, select Edit.
- Add the newly created role (
Microsoft 365 Copilot Connector Account). - Select Save to finalize the assignment.
- Select Update to update the user record.
Grant row-level access
To grant access to rows within a specific table, follow these steps:
- Elevate to the
security_adminrole. - Go to System Security > Access Control (ACL).
- Select New to create a new ACL record.
- Fill in the following fields:
- Type: Select record.
- Operation: Choose the
readoperation. - Name: Enter the table name (for example,
sys_dictionary).
- In the Roles section, add the previously created role (
Copilot Connector Account). - Select Submit to save the ACL.
Verification
- Impersonate the user (for example,
Microsoft Copilot). - Access the target table (for example,
sys_dictionary) and confirm that rows are visible.
If the user can view the rows, but the field values aren't visible, you need to grant field-level access.
Grant field-level access
If the user can view rows but not field values, configure field-level access:
- Go to System Security > Access Control (ACL).
- Select New to create a new ACL record.
- Fill in these fields:
- Type: Select record.
- Operation: Choose the
readoperation. - Name: Enter the table name (for example,
sys_dictionary) and use*in the field name to apply to all fields.
- In the Roles section, add the previously created role (
Copilot Connector Account). - Select Submit to save the ACL.
Final verification
To verify access to the table:
- Impersonate the user (for example,
Microsoft Copilot). - Confirm that both rows and field values within the target table are now visible.
You successfully granted table access to a service account in ServiceNow.