liveBook · Manning

Chapter 6: Dynamic authorization models

What you will learn in chapter 6 of Authorization in Action

ACME’s experience shows why static roles remain useful but need to be complemented by relationship- and attribute-based decisions, brought together through policies.

After this chapter you will be able to

What it builds on

Section by section

Introduction

ACME’s experience shows why static roles remain useful but need to be complemented by relationship- and attribute-based decisions, brought together through policies.

Key terms: Role-Based Access Control (RBAC), static authorization, dynamic authorization models, Relationship-Based Access Control (ReBAC), Attribute-Based Access Control (ABAC), viewer, editor, owner, policy-based access control (PBAC), policies

6.1 Relationship-based access control

This section introduces ReBAC as relationship-based authorization and shows how a graph of people, resources, and their connections can support access decisions in collaborative systems.

Key terms: ReBAC, principal, resource, relationship, graph, nodes, edges, path, policy condition, collaborative

6.1.1 How ReBAC works

This section explains how ReBAC evaluates access using stable rules and a changing graph of relationships between people, teams, and resources.

Key terms: ReBAC, principal, resource, static rules, authorization service, relationship graph, transitive rule, manager → owner → resource, policy data, guardrails

6.1.2 Mapping ReBAC onto the authorization reference architecture

This section maps ReBAC to the authorization reference architecture by showing how user interfaces can administer relationship data and how PIPs supply that data for access decisions.

Key terms: ReBAC, PAP, relationship graph, policy administration, PIP, decision engine, identity provider

6.1.3 Strengths and limitations of ReBAC

This section explains why ReBAC suits changing, collaborative relationships, how it supports delegated permission management, and where its limitations call for other authorization models.

Key terms: ReBAC, relationship graph, authorized path, principal, resource, data as policy, delegation, policy authoring, permissions, relationship paths

6.1.4 Where ReBAC makes sense

This section explains why ReBAC suits collaborative systems and how relationship-based permissions can adapt as those systems change.

Key terms: ReBAC, shared graph, account ownership, management chains, permissions, graph, governance teams

6.1.5 When ReBAC falls short

This section explains when relationship-based access control (ReBAC) is a poor fit and why its relationship graph needs operational safeguards.

Key terms: ReBAC, relationship graph, runtime context, attributes, ABAC, life cycle management, relationship pathways, governance, auditing, guardrails

6.2 Attribute-based access control

This section introduces attribute-based access control as a way to make access decisions from attributes and current conditions rather than roles or relationships alone.

Key terms: ABAC, attributes, principal, resource, environment, request, clearance, department, company-managed device, on call

6.2.1 How ABAC works

This section explains how ABAC evaluates current attributes against stable, sometimes layered policies to make context-sensitive access decisions.

Key terms: ABAC, principal, resource, environment, policy engine, attributes, policies, policy language, policy stores, layered policies

6.2.2 Mapping ABAC onto the authorization reference architecture

This section maps ABAC onto the authorization reference architecture and explains why fast policy evaluation and trustworthy attributes matter in production.

Key terms: ABAC, PEP, PDP, attributes, allow or deny, policy metadata, indexing, caching, distributed PDPs, PAP

6.2.3 Strengths and limitations of ABAC

This section explains why ABAC supports precise, context-aware access decisions and what operational work is needed to make those decisions reliable and understandable.

Key terms: ABAC, attributes, principal, resource, action, environment, attribute quality, freshness, governance, logging

6.2.4 Where ABAC makes sense

This section explains when ABAC is a good fit and shows how runtime attributes and layered policies support context-aware access across an enterprise.

Key terms: ABAC, dynamic factors, fine-grained conditions, runtime signals, company-wide policy, baseline requirement, shared organizational constraints, composable, policy, attributes

6.2.5 When ABAC falls short

This section explains where ABAC’s flexibility falls short: policy and attribute sprawl, difficulty expressing changing relationships, and centrally managed policy bottlenecks, while noting that governance can reduce some problems.

Key terms: ABAC, role explosion, policies, attributes, taxonomy, ReBAC, dynamic, graph-based relationships, Customer Collaboration platform, centrally managed policies, delegation

6.3 A hybrid approach: Policy-based access control

This section explains why varied authorization needs call for PBAC and how PBAC makes externalized policies the decision-making unit across roles, attributes, and relationships.

Key terms: roles, relationships, attributes, PBAC, externalizes access logic, policies, runtime

6.3.1 Policy as Data

The section explains how Policy as Data lets stable relationship-based rules produce changing access decisions as the relationship graph changes.

Key terms: Policy as Data, PBAC, relationship graph, structured input data

6.3.2 Policy as Code

The section explains Policy as Code through ABAC’s executable rules, contrasts it with relationship-based access, and places both within PBAC.

Key terms: ABAC, ReBAC, Policies as Code, policy engine, contextual attributes, relationship data, policy stores, version control, Cedar, Rego

6.3.3 Beyond one-size-fits-all

This section explains how policy-based authorization combines different access-control models rather than replacing them with one model for every situation.

Key terms: PBAC, externalize decision logic, runtime, roles, attributes, relationships, ACLs, RBAC, ReBAC, ABAC

6.4 Summary

Where this is used later

Concepts explained in this chapter

← Chapter 5: Static authorization models Chapter 7: The building blocks of policy →

These guides are generated from the text of Manning books by Manning's knowledge graph and link to the sections they draw on. The full books are available on liveBook and at manning.com.