- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎08-30-2018 01:15 PM
Is there any method to get read, create, write, delete permissions on knowledge base? I can find the info through the UI related list but wonder if I can get them through REST API or examine the exact location of the table.
Solved! Go to Solution.

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎08-30-2018 02:23 PM
Those two records are user criteria records. You can use the table API to query the kb_uc_can_read_mtom table to find which user criteria records have access to the knowledge base in question (note these can also be related at the knolwedge article level). When you find which user criteria are associated with which KB you can query the user_criteria table and get this record:
In this case all users whose company is ACME North America can access an article in the knowledge base that doesn't also have user criteria associated with the article. Notice there are 7 different ways to define access in the user criteria record before clicking advanced and writing a script. I would not try to export and reconstruct the KB security model outside of SN due to the contextual nature and complexity.

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎08-30-2018 02:48 PM
1. To get the table names I just clicked around and looked at the urls of the records.
2. You can add it via the user criteria fields on the knowledge article.
3. ServiceNow evaluates the security of each article on a per user basis when the article is rendered on the page. There are some internal server side scripts that are used to determine whether or not the user can access that specific article.
I don't think there's really any good way to return all of the users who can access a specific article, and that would probably change frequently as you have new users and roles/groups change. What is your overall requirement here that you're trying to achieve?
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎08-30-2018 03:16 PM
Thanks for the excellent answers! I also notice that there is a user criteria diagnosis portal that allows you to check if a user has permissions to get access to corresponding knowledge articles / bases. Any ideas if it can be used in the back end?
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎04-14-2019 11:02 PM
Hi Brad Tilton,
I understand that looking to extract who has access to which article is difficult, but i have a use case : when the user uses a chat engine where based on the words he keys in he should be shown the artiles which matches and we have to display the articles to which he has access.
Th API uses teh integration user, is there any API where we can send the user id and get the articles ?
Regards
Gautham.