IAM Database Schema Design For Authentication

This issues aims to create a Auth DB schema design based on the considerations set out in https://gitlab.com/gitlab-org/gitlab/-/issues/555284+

  • Document the schema for both Spanner (global/regional) and PostgreSQL (cell-local)
  • Consider the original schema proposed in https://gitlab.com/gitlab-org/gitlab/-/issues/555284#note_2654690196 as a base point
  • Address authentication vs authorization data separation.
  • Define data flow between Rails monolith and IAM databases
  • Document migration strategy and tooling approach

Acceptance Criteria:

  • Complete DDL schema for both Spanner and PostgreSQL
  • Data model supporting principals, identities, resources, capabilities, and grants
  • Clear separation between authentication and authorization concerns
  • Integration points with Topology Service defined
  • Migration strategy documented with tooling selection
Edited by Adil Farrukh