Siirry sisältöön
Dokumentaatio · Kirjautuminen omalla sivullasi

Kirjautuminen omalla sivullasi

Useimmat sovellukset lähettävät ihmiset ympäristönsä Lobbyyn kirjautumaan. Jos haluat mieluummin pitää heidät omalla sivullasi, @usher/react-paketin <SignIn /> kirjaa heidät sisään siinä samassa ja viimeistelee sitten OpenID Connectilla täsmälleen kuten ennenkin: palvelimesi saa yhä tunnuksensa Usherilta, eikä mikään salasana tai tunnus kulje sivusi kautta.

Salli sovelluksesi alkuperä

Avaa Usher Consolessa ympäristö ja sitten Kirjautuminen → Upotettu kirjautuminen, ja lisää sovelluksesi alkuperä (origin), kuten https://app.example.com. Vain luetellut alkuperät saavat käyttää ympäristön Frontend API:a, ja vain kirjautumiseen.

Lisää komponentti

TSX
import { SignIn } from '@usher/react'

export function SignInPage() {
  return <SignIn frontendApi="https://login.example.com" returnTo="/dashboard" />
}

Komponentti toimii sen UsherProvider-komponentin sisällä, jota @usher/nextjs jo käyttää. frontendApi on ympäristösi myöntäjä.

Mitä tapahtuu

  • Ensin sähköposti, sitten salasana tai sähköpostikoodi ja sen jälkeen toinen vaihe, jos ihmisellä on sellainen käytössä. Kirjautuminen sometilillä ja ”Jatka Usherilla” vievät palveluntarjoajalle ja palaavat sovellukseesi.
  • Sitten OpenID Connect. Kun ihminen on kirjautunut ympäristöösi, komponentti lähettää selaimen sovelluksesi reitille /auth/sign-in, joka kulkee suoraan Usherin kautta ja palaa koodin kanssa. Ensimmäisellä kerralla Usher pyytää ihmistä sallimaan sovelluksesi.
  • Bottisuojaus toimii kuten Lobbyssa: kun Usher pyytää työtodistetta (proof of work), komponentti tekee sen.
  • Kaikki muu (pääsyavaimet, yrityskirjautuminen, tilin luominen) on linkki Lobbyysi.

Käytä tuotannossa omaa verkkotunnustasi

Komponentti pitää Usherin istunnon ympäristösi evästeissä. Tuotannossa niiden on oltava ensimmäisen osapuolen evästeitä: anna ympäristölle oma verkkotunnuksesi samalta sivustolta kuin sovelluksesi (login.example.com sovellukselle app.example.com). Kehityksessä ympäristö, joka sallii upottamisen, lähettää evästeensä sivustojen välillä, minkä Chrome hyväksyy. Jos selain ei säilytä niitä, komponentti ohjaa kirjautumisen Lobbyysi.