what is *.* ACL in servicenow?

Ranj1
Kilo Contributor

what is *.* ACL in servicenow? and how it different from * ACL.

8 REPLIES 8

Megha Padale
Giga Guru

Hi,

*. ACL is Table ACL rule

It means match any table name (*). For example, *.

*. *is field ACL rule.

*.* is match any table (*) and any field (*).

Table ACL Rule

The user must first pass the table ACL rule. Since the base system includes STAR (*) table ACL rules that match every table, the user must always pass at least one table ACL rule. The base system provides additional table ACL rules to control access to specific tables.

Table ACL rules are processed in the following order:
  1. Match the table name. For example, incident.
  2. Match the parent table name. For example, task.
  3. Match any table name (*). For example, *.

If a user fails all table ACL rules, the user cannot access the fields in any table. If a user passes a table ACL rule, the system then evaluates the field ACL rules.

 

Field ACL Rule

After a user passes a table ACL rule, field ACL rules are processed in the following order:
  1. Match the table and field name. For example, incident.number.
  2. Match the parent table and field name. For example, task.number.
  3. Match any table (*) and field name. For example, *.number.
  4. Match the table and any field (*). For example, incident.*.
  5. Match the parent table and any field (*). For example, task.*.
  6. Match any table (*) and any field (*). For example, *.*.

A user must pass the table ACL rule to be granted access to the table's fields. For example, the user must first pass the table ACL rule for the incident table to access the Number field in the incident table.

The first successful field ACL evaluation stops ACL rule processing at the field level. When a user passes a field ACL rule, the system stops searching for other matching field ACL rules. For example, if a user passes the field ACL rule for incident.number, the system stops searching for other ACL rules that secure the Number field in the incident table.

https://community.servicenow.com/community?id=community_article&sys_id=81222dbadb762f802e8c2183ca961...

If my answer helped you in any way, mark answer as helpful and correct.

Thanks and regards,

Megha.

MrMuhammad
Giga Sage

Hi Ranj,

Let me break it down for you. 

Every ACL is consists of two parts, table and field and in presentation, they are denoted as table.fieldName. (*) represent all so in *.* it says all the table and all the fields. 

As Sebastian already explained *.* is a global ACL and executed if the field doesn't have there own field-level ACL.

Let say you have created a table with no security rules then *.* will work on this. 

Let say on the incident table you don't have an ACL for correlation ID field, well in that case * will get executed for correlation id.

I hope that helps. Have a great day 🙂

 

Thanks & Regards,

Sharjeel

Regards,
Muhammad

The SN Nerd
Giga Sage
Giga Sage

*.* applies to all fields for all tables that do not have any ACL's defined.


ServiceNow Nerd
ServiceNow Developer MVP 2020-2022
ServiceNow Community MVP 2019-2022

Swapnil Soni1
Giga Guru

Hi Ranj,

If am able to suggest you please mark answer as correct so thread will close and use for others.

Thanks