RBAC responde “que papel essa pessoa tem?”. Funciona muito bem para permissões amplas: admin, analista, auditor. Quando a regra passa a depender do recurso, como “quem pode ver esta solicitação?”, o número de papéis explode.
O ReBAC, popularizado pelo Zanzibar, do Google, modela permissões como relações entre objetos: a pessoa é membro da equipe, a equipe é dona da pasta, a pasta contém o documento. Uma checagem vira uma travessia nesse grafo, e é aí que cardinalidade e fanout viram custo.
Na prática, um modelo híbrido costuma funcionar: papéis para o que é amplo e estável, relações para o que é por recurso. OpenFGA e SpiceDB implementam essa ideia, mas o trabalho de verdade é desenhar o modelo e medir o custo das consultas antes de ir para produção.