ACL: Performance impact if number of ACL increases

balu3
Kilo Guru

Hi All,

 

I'm curious about something, so I'm posting this question.

Is there any performance impact when the number of ACLs increases?

Like say of I have 100 fields in a table 'xyz'. I want 20 fields to be accessible (read) by admin, and rest 80 to be accessible (read) by admin and itil users.

This can be written in 2 ways

  1. Have ACL xyz.* to role admin, and have another 80 ACLs for fields xyz.<field> to the role itil
  2. Have ACL xyz.* to role itil, and have another 20 ACLs for fields xyz.<field> to the role admin

Other than best practice and maintenance, does the above 2 methods have any difference? Especially in terms of performance.

 

Reason:
As I remember, the ACLs will roll up if not found, as mentioned in the link Record ACL order
So even if an ACL is present or not, the search is definitely performed.

 

Thanks in Advance

Balu

3 REPLIES 3

Kush Bajpai2
Tera Contributor

 I read this line somewhere which i noted.

"For best performance, avoid ACL Scripts that use Glide Record queries as they adversely impact performance."

 

 

Hi,

 

Thanks for replying.

 

My question is a bit different. I think I didn't describe the question properly.

ServiceNow allows access through the ACL if one of the active ACLs for the current condition/scenario qualifies.

The number of active ACLs is my foxues. Will it make any difference if the count changes, as the example I have given in the question.

 

Thanks

Balu

corbettbrasing1
Mega Guru

Yes it does and the impact is enormous especially when you are on a table that has at least two levels of inheritance from task.