L'RBAC risponde a “che ruolo ha questa persona?”. Funziona molto bene per i permessi ampi: admin, analista, auditor. Quando la regola comincia a dipendere dalla risorsa, come in “chi può vedere questa richiesta?”, il numero di ruoli esplode.
Il ReBAC, reso popolare da Zanzibar di Google, modella i permessi come relazioni tra oggetti: la persona è membro del team, il team è proprietario della cartella, la cartella contiene il documento. Un controllo diventa un attraversamento di questo grafo, ed è lì che cardinalità e fanout si trasformano in costo.
In pratica, un modello ibrido di solito funziona: ruoli per ciò che è ampio e stabile, relazioni per ciò che riguarda la singola risorsa. OpenFGA e SpiceDB implementano questa idea, ma il vero lavoro è progettare il modello e misurare il costo delle query prima di andare in produzione.