liveBook · Manning

Flat namespace

As explained in Authorization in Action

A flat namespace is a naming system without hierarchical structure in which identifiers are intended to avoid collisions across contexts.

A flat namespace assigns identifiers without hierarchy, so names can be used across contexts without collision risk. UUIDs achieve this algorithmically, while decentralized data stores can provide other implementations. section 2.4.3

ACME identifiers

ACME could use UUIDs for customer accounts, Internet of Things devices, or service principals across multiple systems. The identifiers remain globally unique, but reveal nothing about ownership, origin, or trust, making discovery, debugging, governance, and policy administration harder. section 2.4.3

A flat namespace trades structural meaning for portability:

  • Avoids collisions across organizational or system boundaries. section 2.4.3
  • Requires surrounding governance and metadata because identifiers do not reveal control, provenance, or intended use. section 2.4.3
  • Contrasts with hierarchical namespaces, whose paths support discovery but can encode stale organizational assumptions. section 2.4.3

How Authorization in Action covers it

How deep it goes
Defines collision avoidance and explains governance trade-offs, without detailing a specific implementation procedure.
Examples
Uses UUIDs for customer accounts, Internet of Things devices, and service principals as enterprise identity examples.
What you can do after
Evaluate naming architectures by weighing collision resistance against discoverability, governance, and policy-administration costs.
How it connects
Connects identity, UUIDs, hierarchical namespaces, federated namespaces, governance, and policy administration.

Also explained in

Compare how 2 books explain flat namespace →

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.