How to Make Knowledge Base Articles Publicly Accessible Without Login?

Satyam123
Tera Contributor

Hi All,

I have a Knowledge Base set up in my ServiceNow instance with multiple articles. However, when I try to share a KB article with an external (non-logged-in) user, they are prompted to log in to view it.

I would like these articles to be publicly accessible so that anyone with the link can view them without needing to log in.

Can someone guide me on how to configure this? Are there specific settings or permissions I need to adjust in the Knowledge Base or the portal?

Thanks in advance!

1 ACCEPTED SOLUTION

Abbas_5
Tera Sage
Tera Sage

Hello @Satyam123,

 

To make ServiceNow Knowledge Base articles publicly accessible without requiring login, you need to modify the access settings for the specific knowledge base and ensure that relevant public pages are active. 
 
Here's a breakdown of the process:
1. Configure Knowledge Base Access:
  • Navigate to Knowledge > Administration > Knowledge Bases.
  • Select the knowledge baseyou want to make public.
  • Go to the "Can Read" section.
  • Remove any entries from the "Can Read" list. This ensures that the knowledge base is accessible to all users, not just those with specific roles. 
     
2. Activate Public Pages:
  • In the Application Navigator's Filter Navigator field, enter sys_public.list and press Enter.
  • Identify and activate the relevant public pages. You'll need to make the kb_find and kb_view pages active to allow public access to the search and viewing functionality, respectively. 
     
3. Test and Verify:
  • As a public user (not logged in), try accessing the knowledge base using the URL <instance-name>/kb_find.do.
  • Verify that you can search and view the knowledge articles without needing to log in. 
     
Additional Notes:
  • Customer Service Management (CSM) Integration:
    If you are using Knowledge Management within the CSM application, there's a fix script called "Make KM Service Portal Pages Public" that can automate this process. 
     
  • Alternative Approach (Public Role):
    While the above method directly controls public access, you could also create a "public" role and assign it to users who need access to the knowledge base without logging in. 
     
  • Security Considerations:
    Be mindful of the security implications when making knowledge articles publicly accessible. Ensure that you are not inadvertently exposing sensitive information. 
     
    If this is helpful, please hit the thumbs up button and accept the correct solution by referring to this solution in future it will be helpful to them.
     
    Thanks & Regards,
    Abbas Shaik

View solution in original post

4 REPLIES 4

Abbas_5
Tera Sage
Tera Sage

Hello @Satyam123,

 

To make ServiceNow Knowledge Base articles publicly accessible without requiring login, you need to modify the access settings for the specific knowledge base and ensure that relevant public pages are active. 
 
Here's a breakdown of the process:
1. Configure Knowledge Base Access:
  • Navigate to Knowledge > Administration > Knowledge Bases.
  • Select the knowledge baseyou want to make public.
  • Go to the "Can Read" section.
  • Remove any entries from the "Can Read" list. This ensures that the knowledge base is accessible to all users, not just those with specific roles. 
     
2. Activate Public Pages:
  • In the Application Navigator's Filter Navigator field, enter sys_public.list and press Enter.
  • Identify and activate the relevant public pages. You'll need to make the kb_find and kb_view pages active to allow public access to the search and viewing functionality, respectively. 
     
3. Test and Verify:
  • As a public user (not logged in), try accessing the knowledge base using the URL <instance-name>/kb_find.do.
  • Verify that you can search and view the knowledge articles without needing to log in. 
     
Additional Notes:
  • Customer Service Management (CSM) Integration:
    If you are using Knowledge Management within the CSM application, there's a fix script called "Make KM Service Portal Pages Public" that can automate this process. 
     
  • Alternative Approach (Public Role):
    While the above method directly controls public access, you could also create a "public" role and assign it to users who need access to the knowledge base without logging in. 
     
  • Security Considerations:
    Be mindful of the security implications when making knowledge articles publicly accessible. Ensure that you are not inadvertently exposing sensitive information. 
     
    If this is helpful, please hit the thumbs up button and accept the correct solution by referring to this solution in future it will be helpful to them.
     
    Thanks & Regards,
    Abbas Shaik

thanks we have to switch employee center core scope then all the modification will work.

tried the same but it is not working is asking for cred

Bhavesh Bijagar
Tera Guru

Hi @Satyam123 ,

 

Based on my previous KM implementations, here are some recommended steps to securely expose Knowledge Articles (KAs) to the public while maintaining internal content integrity:

  1. Set up a separate Knowledge Base (KB) specifically for articles intended for public access.
    1. Leave the "Can Read" field blank to allow unrestricted access.
    2. This separation helps maintain security for internal-only articles.
  2. Make the following UI pages public so external users can access and search articles by navigating to sys_public.LIST and set Active = true. If not present, create new entries.
    1. kb_view – for viewing individual articles.
    2. kb_find – for search functionality (optional; direct links are often preferred).
  3. Go to sp_page.list, locate the above relevant pages, and:
    1. Check the "Public" checkbox.
    2. Ensure no roles are assigned under the “Roles” field.
  4. Alternate approach is to use a custom public page. This will help to keep separate views for internal and External (Do it if you have limited number of KAs)
    1. Clone kb_view to kb_view_external (or similar).
    2.  Add it to sys_public.list and set Active = true.
    3.  Use article links would be like:
      1.    https://<yourInstance>.service-now.com/kb_view_external.do?sysparm_article=<ArticleNumber>
  5. Set the property glide.knowman.block_access_with_no_user_criteria = false to allow public access without user criteria.
    1. Ensure other (internal) KBs have proper "Can Read" / "Can Contribute" user criteria configured
  6. Ensure public KB articles have no user criteria assigned.
  7. Confirm widgets like KB Top RatedKB Most Viewed, etc., are public (default behavior).

 

Please mark helpful and accept answer if it's worthy for you.

Best Regards

Bhavesh Bijagare