Introducción
Usher es un proveedor de identidad: permite que las personas inicien sesión en tus apps, mantiene sus cuentas seguras y le dice a tu app quiénes son. Hace todo esto con OpenID Connect y OAuth 2.1, así que funciona con las bibliotecas que ya usas.
Qué hace Usher
Un acomodador (en inglés, usher) hace dos trabajos en la puerta: revisa tu boleto y te lleva a tu asiento. Usher hace esos mismos dos trabajos para tu app:
- Autenticación. Las personas demuestran quiénes son en el Lobby, la página de inicio de sesión que aloja Usher, con una llave de acceso, un código por correo, un enlace mágico, una cuenta social o una contraseña.
- Autorización. Tu app recibe tokens que dicen quién es la persona y qué aceptó compartir, y tu API puede comprobarlos.
Las piezas
| Pieza | Qué es |
|---|---|
| El Lobby | La página de inicio de sesión alojada. Siempre muestra la app a la que va la persona. |
| Cuenta de Usher | Lo que tiene cada persona: su correo electrónico, sus llaves de acceso, sus segundos factores y sus dispositivos con sesión iniciada. |
| Usher Console | Donde creas proyectos y entornos, registras aplicaciones y administras usuarios. |
| SDK y componentes | @usher/nextjs, con <SignIn /> y <UserButton />. Llega con el SDK. |
Cómo encaja en tu app
Cada entorno que creas es su propio emisor de OpenID Connect, con una dirección propia:
Emisor
https://<handle>.usherid.comTu app envía a las personas a ese emisor para que inicien sesión y las recibe de vuelta con un código que cambia por tokens. Es el flujo estándar de código de autorización con PKCE, y el documento de descubrimiento del emisor describe cada uno de sus pasos:
Documento de descubrimiento
https://<handle>.usherid.com/.well-known/openid-configurationPor dónde empezar
Inicio rápido: Next.jsAgrega el inicio de sesión a una app de Next.js con el App Router.
Inicio rápido: cualquier biblioteca OIDCLa configuración que necesita cualquier cliente de OpenID Connect.
ConceptosEspacios de trabajo, proyectos, entornos, emisores y tokens.
SeguridadCómo se mantienen separados los entornos y cómo se sellan los secretos.