Fact-checked by Grok 2 weeks ago

Relationship-based access control

Relationship-based access control (ReBAC) is an paradigm in that grants permissions to subjects based on the specific relationships they hold with resources, typically represented in a graph structure where nodes denote entities and edges denote relational ties such as , membership, or . This model enables dynamic and context-aware access decisions, allowing policies to express complex conditions like "a user's member can view their medical records" or "collaborators in a project can edit shared documents." The concept of ReBAC emerged in the late 2000s amid the rise of social networking and collaborative platforms, where traditional models struggled with fine-grained, relationship-driven sharing. It was independently coined by Carrie Gates in 2007 to address needs for applications emphasizing interpersonal relationships for and . Around the same time, Barbara Carminati and Elena Ferrari proposed similar ideas for decentralized enforcement in online social networks, incorporating weighted and multi-relational graphs to model social ties and propagate access rights. Subsequent formalizations, such as those by Philip Fong and colleagues in 2011, introduced protection models using for policy specification, enabling composition, trust delegation, and relational predicates like "friend-of-a-friend." Jason Crampton and others further refined ReBAC with administrative models and policy languages to support parameterized roles and graph-based enforcement. Unlike role-based access control (RBAC), which assigns static roles to users for broad permissions, or attribute-based access control (ABAC), which evaluates dynamic attributes like location or time, ReBAC prioritizes structural relationships in an authorization graph, making it ideal for domains like healthcare, collaborative tools, and social platforms where access evolves with interactions. Key features include edge-labeled directed graphs for the protection state, hybrid logic formulas for predicates, and semantics like liberal-grant (permissive) or strict-grant (conservative) to balance usability and security. Implementations often use graph databases for efficient querying, with strategies like eager-match (precomputing paths) or lazy-match (on-demand evaluation) to handle scale. A landmark real-world application is Google's system, deployed in , which powers consistent, global authorization for services like and using ReBAC principles. As of 2019, models permissions via relation tuples (e.g., <document#viewer@group>) and supports billions of users across 30+ data centers, achieving sub-10ms latency for 10 million queries per second while maintaining . This has influenced open-source tools like Authzed's SpiceDB and commercial solutions, highlighting ReBAC's suitability for modern, distributed applications requiring fine-grained, scalable .

Overview

Definition

Relationship-based access control (ReBAC) is an model that grants or denies access to resources based on the direct or indirect relationships between subjects, such as users, and objects, such as files or data, within a . Unlike traditional models focused on static attributes or roles, ReBAC emphasizes dynamic, context-specific connections that reflect real-world interactions, such as ownership or collaboration, enabling fine-grained policies in collaborative environments like social networks or . The term was first coined in a 2007 workshop paper discussing access needs for applications. Core components of ReBAC include subjects (entities seeking access, e.g., users), objects (protected resources, e.g., documents), and relations (defined connections like "owner," "editor," or "viewer" that imply permissions). These relations are typically represented as tuples in the form (subject, relation, object), which capture specific authorizations, such as (alice, owner, document1). This structure allows policies to account for multiple or hierarchical relations, supporting and of access rights. In practice, ReBAC is often modeled as a , where nodes represent entities (subjects and objects) and edges denote relations between them, facilitating traversal to determine indirect access paths. For example, in a document sharing system, a user might edit a file if they hold a "parent" relation to the containing folder, even without a direct relation to the file itself, allowing access propagation through the graph structure.

Key Principles

Relationship-based access control (ReBAC) fundamentally relies on the principle of relationship tuples to represent permissions. These tuples are structured as (subject, relation, object), where the subject is an entity such as a seeking access, the relation defines the type of access (e.g., "viewer," "editor," or "owner"), and the object is the resource being accessed, such as a or . This structure captures direct relationships between entities, enabling fine-grained control based on how subjects connect to objects in a system. Relations within these tuples can be computed using set operations like unions (combining multiple relation types), intersections (requiring multiple relations to hold), or exclusions (revoking access despite other relations). For instance, a policy might grant "editor" access if a user has either "owner" or "collaborator" relation to a document. Relation inheritance and exclusion rules extend the tuple model by propagating access through hierarchical or networked structures. Inheritance allows relations to flow from parent entities to children; for example, a with a "viewer" to a group automatically inherits "viewer" to all resources owned by that group, modeling scenarios like team-based permissions. This propagation follows defined rules in the system's policy, often represented as a where edges denote membership or . Exclusion rules counteract inheritance by explicitly denying , such as revoking a 's inherited "editor" on a specific resource despite broader group membership. These mechanisms ensure that reflects evolving organizational or social structures without manual reconfiguration. The computation of effective relations involves traversing the relationship graph to determine a subject's overall to an object at query time. This process starts from known tuples and follows paths defined by inheritance rules, aggregating relations through composition (e.g., "" via ). Wildcard objects, such as "folder/*" for all items within a , optimize traversal by applying relations broadly to sub-resources without enumerating each one. The result is a computed set of effective relations for the subject-object pair, evaluated dynamically against the . This graph-based approach scales to complex systems by leveraging efficient indexing and caching to avoid exhaustive searches. Unlike static assignment models, ReBAC derives access dynamically from the current state of relationships, making it inherently context-dependent and adaptive to changes like new collaborations or role shifts. Permissions are not fixed to predefined attributes or roles but emerge from the interplay of tuples and rules, allowing real-time updates without altering core policies. This contrasts with rigid systems where access requires explicit reconfiguration, enabling ReBAC to handle fluid environments like collaborative platforms more effectively.

History

Origins

The concept of relationship-based access control (ReBAC) emerged in the late as a response to the growing complexity of in collaborative and social environments. The term "ReBAC" was coined by Carrie E. Gates in her 2007 , where she highlighted the need for access control mechanisms that explicitly account for interpersonal relationships in applications. This foundational work emphasized tracking relationships, such as friendships or collaborations, to determine permissions dynamically, addressing the static limitations of traditional models like (RBAC) in handling user-driven interactions. Early motivations for ReBAC stemmed from the rise of platforms, including online communities and early social networks, where permissions were inherently tied to relationships like friends or followers rather than predefined roles or attributes. Gates argued that existing paradigms struggled with the dynamic, nature of these systems, such as sharing content in blogs or forums, necessitating a model that incorporated relationship graphs to enforce privacy and security. This approach was particularly relevant for applications, where users frequently interacted in fluid, decentralized ways that outpaced the capabilities of centralized schemes. Around the same time, Barbara Carminati and Elena Ferrari proposed a rule-based model for web-based social networks, expressing policies as constraints on the type, depth, and level of relationships in social graphs to enforce access and privacy. ' work laid the groundwork by proposing relationship tracking as a core element of protection models, envisioning access decisions based on paths or connections between users and resources. Building on this, Fong et al. in their 2011 ACM paper further developed the academic foundations, introducing policy languages for ReBAC using extensions to to express authorizations in terms of relational predicates. Their contribution analyzed representational completeness for relational policies, enabling precise definitions without relying on global user identities.

Evolution and Adoption

The evolution of relationship-based access control (ReBAC) transitioned from theoretical foundations in academic on social networks to practical, large-scale implementations in after , driven by the need for fine-grained in distributed systems. Early motivations stemmed from modeling access in collaborative environments like social platforms, but significant advancements occurred with the demand for scalable solutions in cloud services. A pivotal milestone came in with Google's publication of the paper, which detailed a globally consistent system employing ReBAC principles to manage access for over two billion users across services like and , demonstrating its viability for production-scale deployment. This practical demonstration spurred the growth of open-source tools inspired by , accelerating ReBAC adoption beyond proprietary systems. In 2021, Authzed released SpiceDB, an open-source database for storing and querying fine-grained authorization data using ReBAC, which has since become a mature implementation supporting real-time permissions in distributed applications. Authzed, founded in , further popularized ReBAC through its platform, enabling developers to integrate relationship-based policies without building from scratch. Standardization efforts emerged concurrently, with ReBAC policies gaining support in established frameworks. Around 2022–2023, the Open Policy Agent (OPA) integrated ReBAC capabilities via its Rego language, allowing declarative encoding of relationship graphs for decisions in cloud-native environments. By 2025, ReBAC has seen increasing uptake in and architectures, where complex inter-object relationships necessitate dynamic, graph-based controls over traditional models.

Formal Models

Core ReBAC Model

The core model of relationship-based access control (ReBAC) is formalized as a protection system N = \langle I, U, R, C, c_0, \mathit{policy}, \mathit{owner} \rangle, where I is a set of relation identifiers (e.g., "," "friend"), U is a of users, R is a of , C is a countably infinite set of access , c_0 is the context, \mathit{policy}: R \to PP(U, I) maps each resource to a (a predicate over users, users, and graphs), and \mathit{owner}: R \to U assigns an owner to each resource. Relationships are represented as a social network G = \langle V, \{R_i\}_{i \in I} \rangle, a directed graph where vertices V include users from U and resources from R, and each R_i \subseteq V \times V is a binary relation of type i. This graph structure captures interpersonal and user-resource ties, such as ownership or membership. Access contexts c \in C scope relationships, with the effective social network \mathit{esn}_\gamma(c) combining relations from context c and its ancestors in a context hierarchy starting from c_0. Access decisions evaluate whether a s can access resource o in context c by the policy \mathit{policy}(o) against \mathit{esn}_\gamma(c). The policy is a formula in hybrid logic, allowing expression of relational paths (e.g., \langle \mathit{[parent](/page/Parent)} \rangle \top for "has a "). This traversal verifies through specified relations, supporting and without explicit hierarchies. Practical implementations, such as Google's , adapt this graph model using tuples (u, r, o) for efficient storage and querying in distributed systems, incorporating usersets and set operations for derivation. The basic authorization query is \mathit{Check}(s, a, o, c), which returns true if the policy holds for subject s, action a (mapped to a relation), and object o in context c, enabling decidable enforcement. This formalization ensures ReBAC's expressiveness for dynamic, relationship-driven policies while addressing challenges like cycle detection in traversals.

Policy Languages

The foundational language for ReBAC uses a fragment of hybrid logic to express access conditions based on paths and relations. Formulas like \phi ::= \top \mid \bot \mid \neg \phi \mid \phi \land \phi \mid \langle i \rangle \phi allow predicates such as "friend-of-a-friend" via nested modalities (e.g., \langle \mathit{friend} \rangle \langle \mathit{friend} \rangle \top), supporting , , and context-aware decisions. This logic-based approach provides a decidable semantics for evaluation through . Modern implementations employ declarative schema languages inspired by these principles. For example, Google's uses a structured format (e.g., in ) to define namespaces, relations, and permissions with computation rules like unions and exclusions. A representative schema for a document namespace is:
definition document {
  relation viewer: user
  relation editor: user
  relation owner: user
  permission view = viewer + editor + owner
  permission edit = editor + owner
}
This computes permissions as unions of relations, extending the core model for scalable enforcement. ReBAC policies also integrate with general-purpose languages like Rego in Open Policy Agent (OPA), using graph traversal functions to check reachability:
allow if {
  graph.reachable(input.graph, {input.subject, input.resource})
}
This verifies connections through defined relations. AWS Verified Permissions employs the language for ReBAC, referencing entity relations in policies:
permit (
  principal,
  action in [PetVideosApp::Action::"View"],
  resource in PetVideosApp::Video::"example"
) when {
  resource.entitledTo[principal, "owner"]
};
supports hybrid ReBAC with attributes via graph stores like . Advanced ReBAC policy languages incorporate temporal relations using extensions like higher-order (HO(T)-ReBAC) for time-bound access, such as periodic or duration-limited grants. Multi-tenancy is managed via schema-defined relations (e.g., member_of: [tenant](/page/Tenant)) to isolate paths, with policies verifying membership before traversal. These enhance expressiveness while constraining compositions to prevent conflicts.

Comparison to Other Models

With Role-Based Access Control (RBAC)

regulates access to resources by assigning users to predefined roles, with permissions granted to those roles rather than directly to users, enabling centralized management in static organizational structures. This model relies on unary predicates to define roles, limiting its expressiveness to flat or hierarchical role assignments without considering dynamic inter-entity connections. In contrast, Relationship-based Access Control (ReBAC) employs binary relations between entities, such as users and resources, to determine authorization, allowing for more nuanced policies based on contextual connections like "member of" or "collaborator on." Key structural differences include ReBAC's use of graph-based path conditions to traverse hierarchical and multi-entity relationships—e.g., granting access to a team's documents via "reports_to*" chains—while RBAC's role hierarchies remain limited to predefined without such relational depth. ReBAC thus excels in environments requiring fine-grained, dynamic access, such as collaborative projects where team-based relations evolve, whereas RBAC suits simpler organizational charts with stable s and avoids the computational overhead of relation traversal in large graphs. RBAC suffices for straightforward enterprise hierarchies, like assigning "manager" permissions across departments without needing to model interpersonal or resource-specific ties, but falters in scenarios demanding relational context, such as or project-based sharing. Hybrid approaches integrate RBAC by treating roles as special relations within ReBAC models, enabling legacy RBAC systems to interoperate through mechanisms like authorization-time constraints that bridge role assignments with relational policies. This combination leverages RBAC's simplicity for coarse-grained control while extending it with ReBAC's flexibility for complex interactions.

With Attribute-Based Access Control (ABAC)

Attribute-Based Access Control (ABAC) is a policy-based model that determines access decisions by evaluating attributes associated with subjects (e.g., users or entities requesting access), objects (e.g., resources being accessed), and the environment (e.g., time, location, or threat level), against predefined rules or policies. In ABAC, policies are typically expressed using a rule engine that combines attribute values to grant or deny permissions, allowing for dynamic and context-aware authorization without relying on predefined roles or direct relationships. This approach generalizes earlier models like discretionary, mandatory, and role-based access control by incorporating flexible attributes such as user clearance, object classification, or environmental conditions. In contrast to ReBAC, which models access through explicit relationships represented as tuples in a (e.g., user#relation@object), ABAC emphasizes attribute for evaluation, enabling fine-grained in systems where connections between entities are not the primary concern. ReBAC provides auditable, relationship-driven access suitable for connected domains like social networks or collaborative platforms, where queries traverse to check paths such as "." ABAC, however, offers greater flexibility for incorporating ad-hoc attributes, such as risk scores or device types, but can become complex to scale when modeling intricate relational structures, as it requires encoding relationships as derived attributes. Key trade-offs between the models lie in their evaluation mechanisms and applicability: ReBAC relies on graph-based queries for efficient traversal of ownership hierarchies and transitive relations, which can be computationally intensive at runtime but benefits from caching to mitigate redundancy. ABAC uses rule engines that evaluate attribute predicates, providing constant-time decisions for simple policies but potentially polynomial complexity for composed attributes in dynamic contexts like varying environmental factors. ReBAC excels in scenarios requiring explicit lineage of access through relations, while ABAC is better suited for environments demanding real-time adaptation to non-relational attributes, such as location-based restrictions. Despite these differences, overlaps exist in their expressiveness, as both models support fine-grained authorization; for instance, ReBAC features can be realized in ABAC using structured or composite attributes to simulate relationships, and certain ABAC policies with named entity sets align equivalently with ReBAC's basic named entity sets. In relational domains, ReBAC often reduces policy complexity by natively handling connections, whereas ABAC may require more elaborate attribute definitions to achieve similar outcomes.

Implementations

Google's Zanzibar

Google's is a pioneering implementation of relationship-based access control (ReBAC), serving as a global, consistent system that underpins access decisions for numerous Google services, including , , , , Maps, and . It manages trillions of access control lists (ACLs) and processes millions of authorization requests per second across billions of users, enabling fine-grained permissions based on user-object relationships such as , , and membership. At its core, Zanzibar's architecture relies on storing authorization data as tuples in Google's Spanner , which provides and for handling massive datasets. These tuples represent ReBAC relations, such as "doc:report#viewer@user:alice," forming a where nodes are users or objects and edges denote relationships. To compute effective permissions, Zanzibar employs algorithms with extensive caching mechanisms, including both user-specific and global caches, to minimize recomputation and ensure low-latency responses. Real-time consistency is achieved through global snapshots that respect causal ordering, allowing the system to deliver immediately consistent results even in a distributed environment spanning multiple data centers. Key innovations in include scalable computation via precomputed views, which materialize common permission paths to avoid full traversals during queries, and optimized query planning that selects efficient computation strategies based on complexity. These techniques enable checks with latencies under 10 milliseconds at the 95th , supporting high-throughput applications without sacrificing accuracy. Over three years of deployment, has maintained greater than 99.999% , demonstrating its robustness at global scale. The design principles of were detailed in a 2019 paper presented at the Annual Technical Conference, effectively open-sourcing the and inspiring subsequent ReBAC systems in industry and open-source communities.

Open-Source Systems

SpiceDB is a prominent open-source implementation of relationship-based access control (ReBAC), inspired by Google's system for scalable authorization. It functions as a database that stores authorization relationships as tuples—structured data points representing subjects, relations, and objects—and provides a query to evaluate permissions, such as determining if a user can access a resource. SpiceDB supports and HTTP APIs for integration, along with multiple SQL-compatible backends including , , , and Google Cloud Spanner, enabling horizontal scalability for high-throughput environments. Authzed, developed by the creators of SpiceDB, offers both hosted and self-hosted deployment options for ReBAC, emphasizing enterprise-grade reliability. It utilizes the Zed schema language, a declarative configuration tool for defining object types, relations, and permissions without embedding logic in application code. This approach facilitates seamless API-based integration with services, supporting consistent authorization across distributed systems while handling billions of relationships. Other notable open-source tools include Oso, a policy engine that incorporates ReBAC alongside RBAC and ABAC through its Polar declarative language, allowing developers to model complex relationships like hierarchies and ownership in a unified . Permify provides a Kubernetes-native authorization service via charts and manifests for easy cluster deployment, focusing on ReBAC with a domain-specific modeling language for defining granular relations between users and resources. OpenFGA, developed by , is another key open-source ReBAC implementation based on the Zanzibar paper, offering a flexible for relationships, high-performance with response times, and support for scalable deployments in various environments. In terms of relation modeling, both Oso and Permify employ graph-based structures similar to SpiceDB's tuples, enabling flexible representations of indirect access (e.g., via groups or parent-child links), though Oso's Polar offers more hybrid expressiveness for non-relational conditions. Performance-wise, SpiceDB excels in hyperscale scenarios with global consistency, while Oso achieves sub-10ms latency for over a million requests per second, and Permify prioritizes efficient storage and querying for multi-tenant setups. Community adoption of these open-source ReBAC systems has grown significantly by 2025, with integrations in diverse projects for needs; for instance, SpiceDB has been used for streaming relationship updates via systems like to synchronize permissions in real-time applications as of 2024.

Applications and Use Cases

In Social Networks

-based access control (ReBAC) has been widely applied in online social networks (OSNs) to manage access to through explicit interpersonal and user-to-resource s. In platforms such as , visibility of posts is typically governed by relations like "friend," where access is granted to direct friends or within a specified hop count, or the union of friends and public audiences. For example, a user's might allow viewing by friends up to one degree of separation ([friend, 1]), enabling fine-grained control over information dissemination while accommodating the fluid nature of social connections. This model extends to user-to-resource (U2R) and resource-to-resource (R2R) relationships, enhancing access decisions in resource-rich environments. In OSNs, U2R relations handle scenarios like tagging, where a tagged user's friends gain visibility to the resource based on the tagger's policy; for instance, if a user tags a photo, the tagged individual's friends may access it subject to hop-count limits. R2R relations support grouped resources, such as photos in a shared album, allowing access to an entire collection if a user is related to one item via tagging or ownership. In collaborative platforms integrated with social features, ReBAC can model dynamic access propagation aligned with core inheritance principles. For example, ReBAC can be applied to platforms like , where channel membership can inherit from workspace-level relations, such as workspace#member propagating to channel#can_write. Similarly, ReBAC principles can model access in systems like for repositories, where contributor rights derive from collaboration links or organization membership, enabling inherited access to issues, pull requests, and code based on team or repo-owner relations. These mechanisms support evolving collaborations without rigid hierarchies. ReBAC's strength in social and collaborative contexts lies in its adaptability to dynamic environments, where relations propagate to handle transient interactions like group invites, shared albums, or event RSVPs. For instance, an invite to a group event can establish a temporary U2U relation, automatically granting access to related resources (e.g., RSVP lists or event posts) until the relation expires, with policies enforcing limits like maximum hop counts to prevent overexposure. This propagation ensures seamless sharing in peer-to-peer settings, such as adding members to a shared via ties, while maintaining owner control over revocation.

In Enterprise Systems

In enterprise cloud environments, relationship-based access control (ReBAC) facilitates secure resource sharing across teams by modeling permissions through organizational relationships, such as ownership or membership hierarchies. For instance, (AWS) implements ReBAC using Amazon Verified Permissions, a policy engine, integrated with , a , to enforce fine-grained access to resources based on relational tuples (e.g., a user belonging to a team that owns a resource). This approach supports multi-tenant architectures by dynamically updating relationships without role proliferation, enabling scalable authorization for large-scale in business workflows. In software-as-a-service () applications, ReBAC principles underpin tenant hierarchies and role delegation to manage in hierarchical structures. Salesforce employs sharing rules and hierarchies that extend based on relational criteria, such as account ownership or parent-child relationships between records, allowing delegated within organizational units while maintaining data isolation across s. Similarly, Workday leverages SpiceDB, a ReBAC engine, to model complex hierarchies and delegate s in collaborative workflows, such as , where permissions propagate through relationships like document ownership, ensuring consistent enforcement across millions of relations. ReBAC integrates with compliance requirements by enabling auditing of relation changes, which supports regulatory standards like GDPR and through traceable permission histories. In enterprise systems, graph-based ReBAC stores provide visibility into access decisions, allowing organizations to log and review relationship updates for and . This reduces standing privileges and aids audits by supporting automated revocation mechanisms. In firms, ReBAC enforces customer data silos by tying access to account ownership relations, preventing unauthorized cross-silo exposure while enabling targeted sharing (e.g., via verified relational paths). This model ensures privacy-preserving data isolation in multi-tenant setups, where permissions are derived from queries on user-account links, supporting secure handling of sensitive financial information without broad role assignments. As of 2025, ReBAC is increasingly applied in systems, such as securing retrieval-augmented generation (RAG) pipelines by filtering access to enterprise based on user relationships, ensuring privacy in deployments.

Advantages and Limitations

Benefits

Relationship-based access control (ReBAC) provides fine-grained control by defining access through chains of relationships between users, resources, and other entities, enabling precise permissions such as allowing team leads to approve changes without granting full edit rights. This relational approach reduces over-privileging compared to role-based models, as permissions are derived directly from explicit connections rather than broad role assignments. For instance, in collaborative environments, a might specify that only users in a "treatingTeam" to a record can access sensitive , avoiding unnecessary exposure. ReBAC excels in for handling millions of dynamic relationships through efficient graph-based queries, such as checks in relationship tuples, which support high-throughput decisions across large-scale systems. Unlike rigid access models that struggle with evolving connections, ReBAC's structure allows for processing trillions of access control lists and millions of queries per second without performance degradation. This makes it particularly suitable for environments with frequent relationship updates, where traditional attribute-based systems might require costly recomputations. The explicit nature of relations in ReBAC enhances auditability by providing a clear for access decisions, facilitating through policy analysis tools like Datalog-based frameworks. It enforces the principle of least privilege by automatically revoking when underlying relations change, such as removing a user from a group, ensuring that permissions remain current without manual intervention. This dynamic revocation prevents lingering privileges, offering stronger security assurances than static models. ReBAC's flexibility allows it to adapt to changing organizational structures without extensive policy rewrites, as new relations can be added or modified to reflect updated hierarchies or collaborations. Extensible languages supporting operators like set unions and temporal constraints further enable customization for diverse scenarios, outperforming the limitations of role- or attribute-based controls in expressive .

Challenges

Implementing relationship-based access control (ReBAC) presents significant challenges in due to the intricate of relation schemas, which demand specialized expertise to define entity types, relationship labels, and permissible graphs without introducing errors. Administrators must possess deep knowledge of models like the Relationship-Policy Protected Model (RPPM) and path expressions to craft policies that accurately reflect intentions, such as complex conditions like treating(?); healthRec; contains+. Without this proficiency, schemas risk incorporating cycles that complicate path evaluations and potentially cause infinite loops during checks, or unintended propagations where permissive rules allow unauthorized through erroneous edge additions. for policy compliance further exacerbates this complexity, with scaling linearly with context hierarchy height (O(h)) but becoming intractable in scenarios involving or exponential social network queries. Performance overhead constitutes another major hurdle, as ReBAC relies on graph traversals to evaluate access requests by exploring paths between subjects and objects, which can be computationally expensive at scale. The for generating authorizations through traversals is O(L^N * V^(N+1)), where L represents edge labels, V denotes nodes, and N is the maximum path length (often set to 5), leading to significant delays in large graphs with numerous edges. This overhead intensifies with policy mining and violation checks, such as O(E^N) for maximality assessments, where E is the edge count, necessitating optimizations like caching to mitigate redundant traversals and prevent issues in dynamic environments. Additionally, distributed context storage, as in geographic domains, complicates efficient algorithm execution, tying performance directly to modal operator nesting and depth. Interoperability remains a persistent challenge, particularly when integrating ReBAC with legacy systems like (RBAC), due to varying model constructs and the absence of universal standards as of 2025. Different ReBAC instances, such as those based on RPPM, require frameworks like bridged system groups to connect graphs without compromising autonomy, as traditional approaches using a single super-graph increase evaluation complexity proportional to node count and undermine independent policy enforcement. This lack of standardization hinders seamless cross-system requests, often necessitating two-stage evaluations with path conditions to propagate authorizations, and poses risks of inconsistent decisions in interconnected environments. Security risks arise from over-reliance on relational graphs, potentially exposing systems to cascading vulnerabilities if relationships are compromised or modified improperly. Revocation of a single dependency , such as a tenant-trust in multi-tenant ReBAC (MT-ReBAC), can trigger recursive propagations that disrupt correlated assignments, like user-role bindings, with required for resolution at O(V + E) . Such over-dependence heightens integrity violation risks, where unchecked additions or removals lead to unintended cascades, emphasizing the need for strict policies and tracking to avert conflicts. Misconfigurations in context selection or relationship taxonomies further amplify these vulnerabilities, as dynamic policies may fail to adapt without robust safeguards.

References

  1. [1]
    [PDF] Relationship-Based Access Control: Protection Model and Policy ...
    The term Relationship-Based Access Control and the acro- nym ReBAC were previously coined by Gates [18] as she articulated the protection requirements of ...
  2. [2]
    [PDF] Relationship-Based Access Control for an Open-Source Medical ...
    Inspired by the access control models of social network sys- tems, Relationship-Based Access Control (ReBAC) was re- cently proposed as a general-purpose access ...
  3. [3]
    Relationship-based access control policies and their policy languages
    The Relationship-Based Access Control (ReBAC) model was recently proposed as a general-purpose access control model. It supports the natural expression of ...
  4. [4]
    [PDF] Zanzibar: Google's Consistent, Global Authorization System | USENIX
    This paper presents Zanzibar, a system for storing per- missions and performing authorization checks based on the stored permissions. It is ...
  5. [5]
    An Introduction to Google Zanzibar and Relationship-Based ...
    Learn how Google's authorization system works and how relationship-based access control can solve complex permission challenges.
  6. [6]
    (PDF) Access Control Requirements for Web 2.0 Security and Privacy
    In Relationship-based access control [9, 18] , users can establish interpersonal relationships and use them as a basis for determining to whom their data ...
  7. [7]
    Zanzibar: Google's Consistent, Global Authorization System
    This paper presents the design, implementation, and deployment of Zanzibar, a global system for storing and evaluating access control lists.
  8. [8]
    authzed/spicedb: Open Source, Google Zanzibar-inspired ... - GitHub
    Open Source, Google Zanzibar-inspired database for scalably storing and querying fine-grained authorization data - authzed/spicedb.Missing: 2020 | Show results with:2020
  9. [9]
    SpiceDB Documentation – AuthZed Docs
    Sep 30, 2025 · SpiceDB is an open-source, Google Zanzibar (opens in a new tab)-inspired database system for real-time, security-critical application permissions.Missing: ReBAC | Show results with:ReBAC<|separator|>
  10. [10]
    AuthZed Raises Series A Funding from General Catalyst
    Jun 27, 2024 · AuthZed has secured $12 million of Series A fundraising! This is our first additional capital since our original Seed funding back in early 2021.
  11. [11]
    How to Implement Relationship-Based Access Control (ReBAC ...
    Sep 5, 2023 · The full rego code is available in the OPA Playground. The code builds a full graph based on the teams, files, and teams. Iterates over the ...Missing: date | Show results with:date
  12. [12]
    Relationship Based Access Control (ReBAC): Using Graphs to ...
    Mar 3, 2021 · This means that access to certain resources can be granted or revoked based on the specific relationships a user has with those resources.Missing: seminal 2006
  13. [13]
    Google Zanzibar – AuthZed Docs
    Oct 8, 2025 · The Zanzibar paper provides examples of Namespace Configs using the Protocol Buffers text-format. Internally, Google has a plethora of Protocol ...
  14. [14]
    Configuration Language | OpenFGA
    The Configuration Language can be presented in DSL or JSON syntax. The JSON syntax is accepted by the API and closely tracks the language in the Zanzibar paper.
  15. [15]
    How to implement relationship-based access control with Amazon ...
    Sep 30, 2024 · ReBAC uses relationships between users and resources for access control. It's implemented by storing relationship data in Neptune and using ...
  16. [16]
    Higher-Order (Temporal) Relationship-Based Access Control - PRISM
    This thesis formalized the HO(T)-ReBAC model and defined a formal policy language for access control policies in HO(T)-ReBAC. We then discussed case studies ...Missing: bound | Show results with:bound
  17. [17]
    Authorization 101: Multi-tenant RBAC - Aserto
    Sep 9, 2024 · A better approach to multi-tenant RBAC is to start with an authorization platform like Topaz, and evolve your authorization model as your requirements grow.
  18. [18]
    [PDF] An Administrative Model for Relationship-Based Access Control?
    Gates introduced the term relationship-based access control (ReBAC) to de- scribe access control policies expressed in terms of interpersonal relationships in.
  19. [19]
    Interoperability of Relationship- and Role-Based Access Control
    Relationship-Based Access Control (ReBAC) was recently proposed as a general-purpose, application-layer access control paradigm, such that authorization ...Missing: seminal | Show results with:seminal
  20. [20]
    [PDF] Guide to Attribute Based Access Control (ABAC) Definition and ...
    grained AC allows access to be more detailed or flexibly partitioned when compared with coarse-grained AC, for example: coarse: employees can read file X, fine ...Missing: ReBAC post- 2023
  21. [21]
    [PDF] Classifying and Comparing Attribute-Based and Relationship-Based ...
    Relationship-based access control: its expression and enforcement through hybrid logic. In ACM CODASPY, pages 117–124, 2012. [13] B. Carminati, E. Ferrari ...
  22. [22]
    AuthZed: Stop building authorization, start building value
    AuthZed's authorization infrastructure eliminates complex permission management while delivering enterprise-scale performance and consistent access control.About AuthZed · Authzed · AuthZed Dedicated · AuthZed SupportMissing: ReBAC 2020
  23. [23]
    Oso: Authorization as a Service
    Unified RBAC, ReBAC, and ABAC into a single, maintainable framework using Oso's declarative policy language—enabling reusable, consistent access logic ...An Introduction to Oso Cloud · 5 Open Policy Agent... · What's New in Oso Cloud
  24. [24]
    Deploy on Kubernetes Cluster - Permify Docs
    Relationship Based Access Control (ReBAC) · Attribute Based Access Control ... In this section we're going to deploy Permify in AWS EKS which is Amazon Elastic ...Create an AWS IAM... · Configure AWS CLI with your...
  25. [25]
    Permify/permify: An open-source authorization as a service ... - GitHub
    Permify is an open-source authorization service for easily building and managing fine-grained, scalable, and extensible access controls for your applications ...Permify Release · Package permify-beta · Issues 49 · Pull requests 8
  26. [26]
    Authorization: 2024 Year in Review - AuthZed
    2024 saw breaches due to broken access control, the rise of policy engines and Zanzibar, and AuthZed's $12M Series A funding.Missing: Apache Kafka
  27. [27]
    Data sync to SpiceDB SpiceDB #spicedb - Authzed Linen
    Data sync to SpiceDB. # spicedb. f. Farhad Nowzari. 07/01/2024, 7:14 PM. so we have already tried kafka. Kafka can get complicated if the kafka-connectors ...Missing: integration Apache
  28. [28]
    [PDF] Relationship-based Access Control for Online Social Networks
    Building on this prior work, in this paper we introduce a relationship-based access control model that utilizes not only U2U relationships but also U2R and. R2R ...
  29. [29]
    Relationship-based access control: protection model and policy ...
    Feb 21, 2011 · Gates coined the term Relationship-Based Access Control (ReBAC) to refer to this paradigm. ReBAC is characterized by the explicit tracking ...
  30. [30]
    Authorization in Slack: An example of RBAC with fine-grained controls
    Mar 6, 2024 · Relationship-based access control (ReBAC). ReBAC focuses on dynamic relationships between users and resources rather than static roles, allowing ...
  31. [31]
    Graph-powered authorization: Relationship based access control for ...
    May 2, 2025 · Instead of relying on roles or attributes, ReBAC determines access based on the relationships between subjects (users) and objects (resources).
  32. [32]
  33. [33]
    Workday secures end-to-end collaborative workflows with ... - AuthZed
    SpiceDB's graph-based ReBAC authorization engine efficiently computes complex queries, while maintaining consistency guarantees by utilizing a cadre of ...
  34. [34]
    RBAC vs. ReBAC: Which Model is Right For You? - Zluri
    RBAC uses role-based permissions, while ReBAC uses complex relationships between users and resources for access control. RBAC is simpler, ReBAC is more ...Missing: comparison | Show results with:comparison
  35. [35]
    Relationship-Based Access Control (ReBAC) Explained - StrongDM
    Mar 18, 2024 · The relationships are typically defined in terms of a graph where nodes represent entities and edges represent relationships. The key advantage ...
  36. [36]
    Authorization Academy - Relationship-Based Access Control (ReBAC)
    ReBAC organizes permissions based on relationships between resources, like data ownership, parent-child, groups, and hierarchies.
  37. [37]
  38. [38]
    Efficient and Extensible Policy Mining for Rela - ACM Digital Library
    Relationship-based access control (ReBAC) is a flexible and ex- pressive framework that allows policies to be expressed in terms of chains of relationship ...
  39. [39]
    [PDF] An Administrative Model for Relationship-Based Access Control?
    Gates introduced the term relationship-based access control (ReBAC) to de- scribe access control policies expressed in terms of interpersonal relationships in.
  40. [40]
    [PDF] Effective Evaluation of Relationship-Based Access Control Policy ...
    In the context of ReBAC, the focus of this paper, a policy miner is given a set of authorizations (which entity can/cannot access another en- tity) and a system ...
  41. [41]
    None
    ### Summary of Interoperability Challenges in ReBAC
  42. [42]
    Inter-operation of Relationship-Based Access Control Model Instances
    Aug 7, 2025 · Recently Crampton et al. [26] proposed a framework for inter-operating multiple ReBAC model instances by initiating request in one system to ...
  43. [43]
    [PDF] Extended ReBAC Administrative Models with Cascading Revocation ...
    Relationship-based access control: its expression and enforcement through hybrid logic. ... [17] C. Gates. Access control requirements for Web 2.0 security and ...