Introducción
Usher es un proveedor de identidad: se encarga de que las personas inicien sesión en tus apps, mantiene sus cuentas protegidas y le dice a tu app quiénes son. Todo ello con OpenID Connect y OAuth 2.1, así que funciona con las bibliotecas que ya usas.
Qué hace Usher
En inglés, un usher es un acomodador, y un acomodador hace dos trabajos en la puerta: comprueba tu entrada y te acompaña 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 alojada de Usher, con una llave de acceso, un código por correo electrónico, 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é ha aceptado compartir, y tu API puede comprobarlos.
Las piezas
| Pieza | Qué es |
|---|---|
| El Lobby | La página de inicio de sesión alojada. Siempre indica 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 la sesión iniciada. |
| Usher Console | Donde creas proyectos y entornos, registras aplicaciones y gestionas 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, en una dirección propia:
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 cada uno de sus pasos se describe en el documento de descubrimiento del emisor:
https://<handle>.usherid.com/.well-known/openid-configuration