Help us shape the future of Go! Take the 2026 Go Developer Survey

iam

module
v0.0.20 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Aug 26, 2026 License: MIT

README

iam

Servicio central de identidad, sesión SSO y RBAC para todos los proyectos de Velty. Reemplaza el patrón actual — cada app monta su propio tinywasm/auth + tinywasm/rbac contra su propia base — por un servicio único que las apps consumidoras llaman por HTTP.

Motor: usa tinywasm/user + tinywasm/auth + tinywasm/rbac sin modificarlas (son librerías genéricas ya publicadas, compartidas con cualquier otro consumidor del ecosistema). iam es la nueva raíz de composición que hoy vive duplicada — y desincronizada — en cada app: ver docs/ARCHITECTURE.md §1 para la evidencia concreta.

flowchart TD
    U[tinywasm/user] --> A[tinywasm/auth]
    U --> R[tinywasm/rbac]
    A --> I[veltylabs/iam]
    R --> I
    I -->|POST /api/token| M[misitio]
    I -->|POST /api/token| O[futuros proyectos Velty]

Documentación

  • Arquitectura — por qué existe, límites de responsabilidad frente a site_manager, decisiones tomadas y lo que queda deliberadamente abierto.

Estado

Motor de identidad+RBAC portado y con project_id nativo (Etapas 1-2). API Bearer con tokens de autorización por proyecto y cookie SSO entre *.velty.cl (Etapas 3-4) — todo ejecutado. Pendiente: que misitio (u otra app) consuma iam remotamente en vez de montar su propio authority.Module/rbac.Service, y un panel de administración propio — ver docs/ARCHITECTURE.md §8.

Directories

Path Synopsis
Package api holds the wire-facing constants shared by config/, routes/ and any future client, so none of them need to import each other just to agree on a path or binding name (breaks the config↔routes cycle).
Package api holds the wire-facing constants shared by config/, routes/ and any future client, so none of them need to import each other just to agree on a path or binding name (breaks the config↔routes cycle).
Package client is what a project consuming iam remotely imports — a thin server-to-server HTTP client for POST /api/token.
Package client is what a project consuming iam remotely imports — a thin server-to-server HTTP client for POST /api/token.
cmd
migrate command
Command migrate reconciles iam's database schema.
Command migrate reconciles iam's database schema.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL