liveBook · Manning

Relationship tuple

As explained in Authorization in Action

A relationship tuple is a structured record identifying a relationship between a subject and a typed object in a relationship-based authorization system.

A relationship tuple is a structured record stating that a subject holds a named relationship to a typed object. In OpenFGA, tuples store facts such as who owns, views, or manages an entity, forming a graph that permission checks traverse. section 8.3.1 section 8.3.2

Read a tuple such as document:doc1#owner@user:alice as:

Delegated document access

Two tuples can establish delegated access: document:doc1#owner@user:alice and user:alice#manager@user:carol. If can_access includes owner->manager, OpenFGA follows those relationships and permits Carol to access the document without changing the policy. section 8.3.2

document:123#viewer@user:alice

Inspect a compact tuple example showing the object, relationship, and subject in OpenFGA notation. section 8.3.1

How Authorization in Action covers it

How deep it goes
Defines tuple structure and graph traversal, but stops short of evaluating request attributes or conditional logic.
Examples
Uses document ownership, user management, viewer relationships, and the tuple document:doc1#owner@user:alice.
What it assumes
Assumes typed entities and a declarative schema while teaching tuple notation and relationship-driven permission evaluation.
What you can do after
Apply it via OpenFGA to represent ownership, sharing, delegation, and group relationships for access checks.
How it connects
Connects OpenFGA, authorization schemas, relationship graphs, permissions, delegation, and relationship-based authorization.

Related concepts

This explainer was generated by Manning's knowledge graph from the text of Authorization in Action. The section links point to the parts of the book it draws on.