Beer Can Labs
Contracts / AuthProvider / Principal
Contract

AuthProvider / Principal

Who is calling and with what roles. Authentication only.

Signature

type Principal = { actor: string; roles: Role[] }
type AuthProvider  // bearerAuth, oidcAuth, anyAuth
class RunTokens

packages/auth/src/index.ts ↗

Rules

  • Roles: viewer, operator, approver, ingest, gatekeeper-egress, gatekeeper-ingress, admin.
  • It authenticates and never authorizes.

Where it appears