Two kinds of edges
Every link in the graph is one of two kinds, and they propagate access differently.
The data-link cap is the important rule: seeing something that reads a dataset never lets you edit that dataset. A dashboard reads
factures; sharing the dashboard lets a viewer see those rows (filtered by row-level security) but never edit the underlying data.
The full cascade map
When you share a resource, here is exactly what comes with it. This is the copy you’ll see in the Access panel under each resource:
The headline example: granting access to an app gives access to the entities it reads. A viewer who can open an app can read every entity in the app’s bindings—at Viewer level, because the app→entity link is a data link. They can still write through the app’s actions if a binding allows it, but they can’t edit those entities directly.
How effective access is computed
Your level on any resource is the highest level across every path that reaches it:- A direct grant to you.
- A grant to any group you belong to.
- An inherited grant from a container or a resource upstream, with the data-link cap applied to any path that crosses a data link.
Seeing where access comes from
Open the Access panel on any resource (the shield icon). It has two sections:- Members — direct grants on this resource. These are the ones you add and edit here.
- Also has access (N) — everyone who reaches the resource indirectly. Each person shows a chip for where their access comes from:
via Finance (folder), plus the group name if it arrived through a group. A path that crossed a data link is marked capped at viewer.
Owner bypass
Company Owners see and edit everything regardless of grants or inheritance. Admins and viewers are subject to the rules above.Next
- Groups — one grant, many members.
- Row-level security — narrow which rows inside a shared dataset a member sees.