Row-level security and access · AutessaDB
Security roles
AutessaDB security roles are reusable bundles of access rules. Each role holds table policies, a row rule, an edit check and column rules for each table it covers, and is assigned to people, teams, company roles, everyone at the company, custom apps or API keys.
-- the problem
Per-table permissions do not scale past a few tables
Setting rules on each table for each person turns into a maze. Roles let you write "Regional sales" once, cover every table it touches, and assign it to the team, the field app and the reporting key in one place.
What you get
- A role's table policies each carry a row rule, an edit check and column exceptions.
- Assign to USER, TEAM, COMPANY_ROLE, COMPANY, CUSTOM_APP or API_KEY principals.
- CUSTOM_APP roles govern visitors of public and sign-in apps; apps in the default hosting mode act as the person using them instead.
- API_KEY roles can be assigned only to keys you own, or administer and can fully reach.
- You can create or change a role only if you are an admin of every table it touches.
- Set a role as a table's default so everyone you share the table with gets it.
-- how it works
How does security roles work in AutessaDB?
Name the role
Create a role and describe what it restricts and for whom.
Add table policies
Add a policy per table: row filter, edit check and column rules.
Assign
Add people, teams, company roles, everyone, apps or API keys under Assignments.
-- every option
Assignment types
| option | what it does |
|---|---|
| USER | One person. |
| TEAM | Everyone on a team. |
| COMPANY_ROLE | Everyone holding a company role, such as Manager. |
| COMPANY | Everyone at the company. |
| CUSTOM_APP | Visitors of a public or sign-in app. |
| API_KEY | An API key that uses its own role. |
-- example
Full reference in the AutessaDB CLI docs and the API reference.
-- permissions
Who can do what?
| access | can |
|---|---|
| Admin of every covered table | Create, change and delete the role. |
| Role member | The union of rows and columns all their roles allow. |
-- faq
Questions about security roles
Who can a security role apply to?
People, teams, company roles, everyone at the company, custom apps (for their visitors) and API keys that use their own role.
Who can edit a role?
Only someone who is an admin of every table the role touches.
Which roles apply in internal apps?
The roles of the person using the app. Apps in the default hosting mode act as the person using them, so that person's roles apply.
100% customizable, code and all
Make AutessaDB fully your own.
Use it out of the box, then change anything. Ask Autobot, Autessa’s AI builder, for a new field, screen, report, workflow or agent and it builds it into your copy of the app. Or open the code and edit it yourself. Nothing is locked: the app, its data and its code are yours.
Start free and make it yours