Number of rows removed due to security constraint
User gets this message in a list of records whenever there is a record user doesn't have rights to view. I.e. there is an ACL restricting access to a record or there in NO ACL granting the access. Let's ignore security mode setting here.
It's a default system beharior.
Would you like to get rid of it? System to count with records user has access to?
Replicate row level read access ACLs to query business rules. Naturally, every query will get controlled. Well-known and suggested solution.
Still rely on ACLs. Use system property to apply them globally or table attribute to specify it locally:
- glide.security.ui.filter - system property (true|false).
- glide.security.ui.filter - dictionary attribute (table), no value is required.
Server-side queries may not respect ACLs. GlideRecord doesn't do it. Although, developers may enforce it by dedicated methods to access to record and fields. GlideRecordSecure is a secured version of the class.
Note, it is respected by native UI lists and Service Portal (Data Table widgets), and it is NOT respected by simple-list widget. Keep an eye on it.
UPS! do you know what's the problem with it? It's not documented.
Follow the step to set up security UI filter for a table:
- From table list or form navigate to Configure > Dictionary
- Open table record (Collection type)
- Switch to advanced view to get Attributes field available
- Fill in
Helsinki Patch 5 Changes. List widget did not honor glide.security.ui.filter system property or Dictionary attribute for table to force use of FilteredGlideRecord in lists
Widget from Service Portal - Core package: widget-data-table.
Could you please describe the process to add the
glide.security.ui.filterto a table as a Dictionary Attribute on the
pm_projecttable for example? Thanks.