> For the complete documentation index, see [llms.txt](https://docs.corraldata.com/kb/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.corraldata.com/kb/getting-started/row-level-security.md).

# Row-Level Security

{% hint style="warning" %}
Row-Level Security is available on **Enterprise plans**. Contact your CorralData team or <support@corraldata.com> to set it up for your account.
{% endhint %}

Row-Level Security (RLS) controls **which rows of data each user can see** — not just which Boards. A multi-location group can share one set of dashboards while each manager sees only their own location's numbers; a multi-brand organization can keep every brand's data walled off inside a single account.

### How it works

RLS is enforced in the data warehouse itself, at query time. That means it applies everywhere a query runs, automatically:

* **Boards and widgets** — the same widget shows each user only the rows they're permitted to see
* **Board filters** — filter options are scoped to the user's permitted values, too
* **AskCorral** — AI answers are computed only from the rows the asking user can access
* **MCP (Claude / ChatGPT)** — queries run through the CorralData MCP server respect the same rules

Because the filtering happens at the data layer, there's no separate setting to keep in sync per dashboard — one policy governs every path to the data.

### Access modes

Each protected table can be governed in one of three ways:

* **Value-based filtering** — every user's rows are filtered by their assigned values (for example, their location or brand). The most common setup.
* **Specific users** — only individually designated users see the table's rows; everyone else sees none.
* **Full access** — the table is explicitly open to all users on the account.

Per-user overrides can be layered on top — for example, a manager scoped to one brand everywhere, except one shared company-wide Board where they're granted full visibility.

### Setting it up

Your CorralData team configures RLS with you: together you define the mapping (which users see which locations, brands, or entities), and we apply and maintain the policies. Changes — new hires, new locations, role changes — are handled the same way.

{% hint style="info" %}
Want RLS on your account, or need a mapping updated? Reach out to your CSM or <support@corraldata.com>.
{% endhint %}


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.corraldata.com/kb/getting-started/row-level-security.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
