Skip to content
All building blocks

Platform

Enforce access with roles and fine-grained permissions

Combine role-based access with relationship-based checks over one policy engine.

The problem it removes

Roles alone cannot answer per-resource questions like whether Alice may edit this one document.

Building a relationship-based permission system from scratch is a project in its own right.

How Thoryn solves it

RBAC answers tenant-wide questions: does this user hold this permission? You define permissions, group them into roles, and assign roles to users.

FGA answers per-resource questions: can this subject do this relation on this object? It is a pragmatic subset of Google Zanzibar.

Write relation tuples, author a model, and enforce at request time with a Check call. RBAC permissions can ride in the ID token.

What you get

  • Role-based access control with tenant-defined roles

  • Fine-grained, relationship-based authorization (Zanzibar subset)

  • Relation tuples and a tenant-authored model

  • Request-time Check calls for per-resource decisions

  • RBAC permissions optionally carried in the ID token

Ready to build on the platform?

Create an account and wire your first login, or talk to us about a pilot.