Relationship-Based Access Control
Relationship-Based Access Control (ReBAC) is a way of deciding what someone is allowed to do based on how they are connected to a specific resource, rather than only on a role assigned to them. For example, access might depend on being the owner of a document or a member of the group that holds it. This makes it a model built around the relationships between users and the things they want to access.
ReBAC is an authorization model in which a subject's permission to access a resource is determined by the presence of relationships between subjects and resources (and, in many implementations, between resources themselves), rather than by directly assigned roles as in RBAC. Access decisions are evaluated against how identities and objects are connected, typically expressed as a graph of relationships that policies traverse to resolve whether a given subject may perform an action on a given resource. As an authorization paradigm, ReBAC governs what a principal may do (authorization) and is distinct from authentication; it is one of several access control models and, depending on deployment, may be combined with or contrasted against RBAC, ABAC, or PBAC rather than treated as universally superior.
Why it matters
As applications grow more collaborative and data becomes more interconnected, authorization requirements increasingly depend on how a specific user relates to a specific resource rather than on a coarse organizational role. ReBAC addresses scenarios where permissions naturally flow from connections, a user can edit a document because they own it, view a folder because they belong to a group that was granted access, or manage a project because they were added as its administrator. In these cases, RBAC alone can become unwieldy, since expressing per-resource, per-relationship access through static roles often leads to role explosion or brittle, hard-coded checks scattered across application code.
Because ReBAC models access as a graph of relationships between subjects and resources (and, in many implementations, between resources themselves), it can express nested and inherited permissions more naturally than models that rely on directly assigned roles. This tends to matter most in systems with fine-grained sharing semantics, hierarchical resources, or user-driven collaboration, where the question "who can access this specific object?" is answered by traversing connections rather than by consulting a flat role assignment.
ReBAC is not universally superior to other models, and choosing it involves trade-offs. Depending on deployment, teams may combine ReBAC with RBAC, ABAC, or PBAC, for example, using roles for broad organizational entitlements while relying on relationships for resource-level sharing. It is important to note that ReBAC is an authorization model concerned with what a principal may do; it does not perform authentication and does not verify who the principal is.
Who it's relevant to
Inside ReBAC
Common questions
Answers to the questions practitioners most commonly ask about ReBAC.
