Wprowadzenie
Usher to dostawca tożsamości: loguje ludzi do Twoich aplikacji, chroni ich konta i mówi Twojej aplikacji, kim są. Robi to wszystko za pomocą OpenID Connect i OAuth 2.1, więc działa z bibliotekami, których już używasz.
Co robi Usher
Bileter (po angielsku: usher) ma przy drzwiach dwa zadania. Sprawdza Twój bilet i prowadzi Cię na Twoje miejsce. Usher wykonuje te same dwa zadania dla Twojej aplikacji:
- Uwierzytelnianie. Ludzie potwierdzają, kim są, w Lobby, czyli hostowanej przez Usher stronie logowania, za pomocą klucza dostępu, kodu wysłanego e-mailem, magicznego linku, konta społecznościowego lub hasła.
- Autoryzacja. Twoja aplikacja otrzymuje tokeny, które mówią, kim jest dana osoba i na udostępnienie czego się zgodziła, a Twoje API może je sprawdzić.
Elementy
| Element | Czym jest |
|---|---|
| Lobby | Hostowana strona logowania. Zawsze podaje nazwę aplikacji, do której ktoś przechodzi. |
| Konto Usher | To, co ma dana osoba: jej adres e-mail, klucze dostępu, drugie składniki i zalogowane urządzenia. |
| Usher Console | Tu tworzysz projekty i środowiska, rejestrujesz aplikacje i zarządzasz użytkownikami. |
| SDK i komponenty | @usher/nextjs, z <SignIn /> i <UserButton />. Pojawi się wraz z SDK. |
Jak Usher pasuje do Twojej aplikacji
Każde utworzone przez Ciebie środowisko jest osobnym wystawcą OpenID Connect, pod własnym adresem:
Wystawca
https://<handle>.usherid.comTwoja aplikacja kieruje ludzi do tego wystawcy, aby się zalogowali, a gdy wracają, otrzymuje kod, który wymienia na tokeny. To standardowy przepływ kodu autoryzacji z PKCE, a każdy jego krok opisuje dokument wykrywania wystawcy:
Dokument wykrywania
https://<handle>.usherid.com/.well-known/openid-configurationOd czego zacząć
Szybki start: Next.jsDodaj logowanie do aplikacji Next.js korzystającej z App Router.
Szybki start: dowolna biblioteka OIDCUstawienia, których potrzebuje każdy klient OpenID Connect.
PojęciaObszary robocze, projekty, środowiska, wystawcy i tokeny.
BezpieczeństwoJak środowiska są od siebie oddzielone i jak pieczętowane są sekrety.