CMDB Table's fields should be editable only for MI team

divyal2000
Tera Contributor

CMDB Table's fields should be editable only for MI team and every other user should have only access only to view it
not to edit. How can we do this as there are different child tables linked with base table. Do we need to configure it using ACL's or client script.

4 REPLIES 4

Dr Atul G- LNG
Tera Patron
Tera Patron

Hi @divyal2000 

 

ACL is best way , but you need to make sure, the role assigned to MI team not to others else other user can change the CI too.

 

Create a custom role, assign to MI team and use that role in ACL. 

*************************************************************************************************************
If my response proves useful, please indicate its helpfulness by selecting " Accept as Solution" and " Helpful." This action benefits both the community and me.

Regards
Dr. Atul G. - Learn N Grow Together
ServiceNow Techno - Functional Trainer
LinkedIn: https://www.linkedin.com/in/dratulgrover
YouTube: https://www.youtube.com/@LearnNGrowTogetherwithAtulG
Topmate: https://topmate.io/atul_grover_lng [ Connect for 1-1 Session]

****************************************************************************************************************

I tried implementing this but due to the ACL which are already existing it isn't working.

Could you please share the snippet?

*************************************************************************************************************
If my response proves useful, please indicate its helpfulness by selecting " Accept as Solution" and " Helpful." This action benefits both the community and me.

Regards
Dr. Atul G. - Learn N Grow Together
ServiceNow Techno - Functional Trainer
LinkedIn: https://www.linkedin.com/in/dratulgrover
YouTube: https://www.youtube.com/@LearnNGrowTogetherwithAtulG
Topmate: https://topmate.io/atul_grover_lng [ Connect for 1-1 Session]

****************************************************************************************************************

Rajdeep Ganguly
Mega Guru


Yes, you can achieve this by using Access Control Lists (ACLs) in ServiceNow. ACLs provide control at the row-level and column-level security. Here are the steps to do it:

1. Navigate to "System Security > Access Control (ACL)".
2. Click on "New" to create a new ACL.
3. In the "Name" field, enter a name for the ACL.
4. In the "Type" field, select "Record".
5. In the "Operation" field, select "Write".
6. In the "Table" field, select the CMDB table for which you want to restrict the access.
7. In the "Requires Role" field, enter the role that the MI team has. This will allow only users with this role to edit the fields.
8. In the "Advanced" tab, you can write a script to further customize the access control.
9. Click on "Submit" to save the ACL.

Remember, ACLs are evaluated from most specific (like field-level ACLs) to least specific (like table-level ACLs). If there are multiple ACLs that can apply to a field, the system uses the ACL that grants the most access.

For child tables, you need to create separate ACLs if they have different access requirements. If they have the same access requirements as the base table, you don't need to create separate ACLs because child tables inherit the ACLs of their parent table.

Client scripts are not recommended for controlling access because they only control the client-side behavior and can be bypassed. They are better used for controlling the UI behavior like making a field read-only based on certain conditions.


nowKB.com

For asking ServiceNow-related questions try this :
For a better and more optimistic result, please visit this website. It uses a Chat Generative Pre-Trained Transformer ( GPT ) technology for solving ServiceNow-related issues.
Link - https://nowgpt.ai/

For the ServiceNow Certified System Administrator exams try this :
https://www.udemy.com/course/servicenow-csa-admin-certification-exam-2023/?couponCode=NOW-DEVELOPER