ACL with *

Likith
Tera Contributor

Can some please explain with these

incident with None

incident  with *

incident with Short description (Any Field)

1 ACCEPTED SOLUTION

Dr Atul G- LNG
Tera Patron
Tera Patron

Hi @Likith 

 

Table.*  is a field level ACL which gives Access to all field on that table.

Table.none  is a row level ACL which allows you to access records.

Both are table level ACL, But the thing is * is a wild card entry. Suppose None is restricting table level access and you provide access by using * , system can allow you to do the work.

 

Examples:

If you define a READ ACL with:

•Table.None for Admin & ITIL

Result: Both Admin and ITIL will be able to view all records because they have read access to all records with no field restrictions.

If you define a READ ACL with:

•Table.None for Admin & ITIL & Table.* for Admin

Result: Only Admin will have read access because the Table.* is an explicit rule at the field level that grants only Admin read access to all fields.

If you define a READ ACL with:

•Table.None for Admin & Table.* for ITIL

Result: ITIL will not be able to view any records because they only have read access at the field level and not at the Record/Row level.

*.* represents = all records in all tables.all fields in a record

 

https://www.servicenow.com/community/developer-forum/difference-between-and-none-in-acl/m-p/2223644

Credits: @Pooja Mallikarj 

*************************************************************************************************************
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]

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

View solution in original post

4 REPLIES 4

Dr Atul G- LNG
Tera Patron
Tera Patron

Hi @Likith 

 

Table.*  is a field level ACL which gives Access to all field on that table.

Table.none  is a row level ACL which allows you to access records.

Both are table level ACL, But the thing is * is a wild card entry. Suppose None is restricting table level access and you provide access by using * , system can allow you to do the work.

 

Examples:

If you define a READ ACL with:

•Table.None for Admin & ITIL

Result: Both Admin and ITIL will be able to view all records because they have read access to all records with no field restrictions.

If you define a READ ACL with:

•Table.None for Admin & ITIL & Table.* for Admin

Result: Only Admin will have read access because the Table.* is an explicit rule at the field level that grants only Admin read access to all fields.

If you define a READ ACL with:

•Table.None for Admin & Table.* for ITIL

Result: ITIL will not be able to view any records because they only have read access at the field level and not at the Record/Row level.

*.* represents = all records in all tables.all fields in a record

 

https://www.servicenow.com/community/developer-forum/difference-between-and-none-in-acl/m-p/2223644

Credits: @Pooja Mallikarj 

*************************************************************************************************************
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]

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

Danish Bhairag2
Tera Sage
Tera Sage

Hi @Likith ,

 

Here's an explanation of each:

 

1. **Incident with None:**

 

   - This likely refers to an ACL rule that restricts access to incidents entirely. Users with this ACL may not have any access to records in the Incident table.

 

   Example:

 

   // Condition for "Incident with None" ACL

 

   current.setAbortAction(true); // This prevents any action on the record

 

2. **Incident with * (Asterisk):**

 

   - This ACL could mean unrestricted access to all incidents. Users with this ACL might have full access to view, create, update, and delete incident records.

 

   Example:

 

   // Condition for "Incident with *" ACL

 

   // No specific conditions, allowing all operations on the record

 

3. **Incident with Short Description:**

 

   - This ACL might be more specific, restricting access based on the content of the "Short Description" field. Users with this ACL might have access to incidents only if the short description meets certain criteria.

 

   Example:

 

   // Condition for "Incident with Short Description" ACL

 

   current.short_description == 'Specific Criteria' // Access is granted only if the short description meets specific criteria

 

These are hypothetical examples, and actual ACL conditions can vary based on your organization's requirements and ServiceNow instance configuration. ACLs are crucial for ensuring data security and controlling user access to records. Always test ACLs in a non-production environment before applying them to production data to avoid unintended consequences.

 

Thanks,

Danish

 

Amit Gujarathi
Giga Sage
Giga Sage

HI @Likith ,
I trust you are doing great.

  1. incident with None:

    • This query seems to be about filtering or querying incidents in ServiceNow where a particular field has no value or is set to None.
    • In ServiceNow's scripting or query language, you would typically use a condition like fieldISNULL or fieldISEMPTY to find records where a field has no value.
    • Example: To find incidents where the 'short_description' field is empty, you might use a query like short_descriptionISNULL.
  2. incident with *:

    • The asterisk (*) is often used as a wildcard character in search queries. In ServiceNow, it can be used to find records where a field contains any value.
    • For instance, if you want to find all incidents regardless of a particular field’s content, you might use fieldLIKE*. This will return all incidents where the specified field has some content.
    • Example: short_descriptionLIKE* would return all incidents that have any content in the 'short_description' field.
  3. incident with Short description (Any Field):

    • This query suggests you are looking to filter incidents based on the 'short_description' field containing any specific value.
    • You would use a query like short_descriptionLIKEvalue, where value is the specific content you are searching for in the 'short_description'.
    • Example: If you are looking for incidents with a short description containing the word "error", you would use short_descriptionLIKEerro

Was this answer helpful?


Please consider marking it correct or helpful.


Your feedback helps us improve!


Thank you!


Regards,


Amit Gujrathi