Row-level security

Filtering rows by who is looking.

Row-level security decides which rows a person sees, rather than whether they can open the dashboard at all.

How it is set up

  1. Create a group inside the dashboard — "West team", "Acme Corp".
  2. Give the group rules: a field and a condition, such as region is West. Several rules on one group combine with AND.
  3. Add members — collaborators on the dashboard.

Anyone in a group sees only rows matching its rules. Belonging to two groups shows you the union of both.

Preview as a group

The owner can preview the dashboard as any group and see exactly what its members see, with a persistent banner so there is no doubt you are previewing.

This is not a convenience feature. A security rule nobody can verify is a security rule that will be misconfigured, and checking it any other way means asking a colleague to log in and describe their screen.

What is guaranteed

  • The owner is never filtered.
  • The filter cannot be escaped by a formula. A measure that deliberately widens its filter context still cannot see rows outside the viewer's groups — the row-security predicate is marked protected and survives.
  • A group with no rules sees nothing, not everything. Failing closed is the only safe default.
  • Public and link-restricted access is refused on a dashboard that has groups, because there is no identity to filter by.
Row-level security · وثائق ChartBase