Hitelesítés
A saját üzemeltetésű IntraCord beépített helyi hitelesítési szolgáltatóval érkezik (e-mail + jelszó, aláírt JWT-vel). Ez az alapértelmezett, és nem igényel külső szolgáltatást.
A közösségi bejelentkezés (Google, GitHub és mások) biztosításához delegálhatja a bejelentkezést a Stack Auth számára. Engedélyezése futásidejű konfigurációmódosítás – állítson be néhány környezeti változót, és indítsa újra. Az előre elkészített IntraCordai/IntraCord-api és IntraCordai/IntraCord-ui képek a jelenlegi állapotukban működnek; nem kell újraépíteni vagy forrásból építeni.
Hogyan működik
- A háttérprogram beolvassa a
AUTH_PROVIDER-t és a stackbeállításokat a környezetéből. - Amikor a
AUTH_PROVIDER=stack, a/api/v1/healtha nyilvános stackkliens konfigurációt adja vissza (projektazonosító + közzétehető ügyfélkulcs). - A felhasználói felület lekéri ezt futás közben, és inicializálja a Stack SDK-t a böngészőben.
- A titkos szerverkulcsot csak a szerveroldalon használja (a háttérrendszer és a felhasználói felület kiszolgálói futásideje), és soha nem küldi el a böngészőnek.
Előfeltételek
Egy Stack Auth projekt. Hozzon létre egyet a Stack Auth Dashboardon, és konfigurálja a felajánlani kívánt közösségi bejelentkezési szolgáltatókat.
1. lépés – Gyűjtse össze a stack Credentials adatait
A Stack Auth dashboard projektjéből gyűjtse össze:
| Érték | Érzékenység |
|---|---|
| Projektazonosító | Nyilvános |
| Közzétételre kerülő ügyfélkulcs | Nyilvános (biztonságos közzététel a böngészőben) |
| Titkos szerverkulcs | Titkos – csak szerveroldali tartás |
| API alap URL | Nyilvános. A Stack által tárolt szolgáltatás esetében ez a https://api.stack-auth.com |
2. lépés – A háttér konfigurálása (api)
Állítsa be ezeket a api szolgáltatásban. Adja hozzá őket a api szolgáltatás environment: blokkjához a docker-compose.yaml-ben:
services:
api:
environment:
AUTH_PROVIDER: "stack"
STACK_AUTH_PROJECT_ID: "<your-project-id>"
STACK_PUBLISHABLE_CLIENT_KEY: "<your-publishable-client-key>"
STACK_SECRET_SERVER_KEY: "<your-secret-server-key>"
STACK_AUTH_API_URL: "https://api.stack-auth.com"
3. lépés – A felhasználói felület konfigurálása (ui)
A felhasználói felület szerveroldali kódot futtat (SSR oldalak és /handler/* hitelesítési útvonalak), amely a titkos kiszolgálókulccsal hívja meg a Stacket, így a ui szolgáltatásnak is szüksége van erre az értékre:
services:
ui:
environment:
STACK_SECRET_SERVER_KEY: "<your-secret-server-key>"
4. lépés – Indítsa újra és ellenőrizze
Hozza létre újra a tárolókat, hogy felvegyék az új környezetet:
docker compose up -d
Erősítse meg, hogy a háttérrendszer jelenti az aktív szolgáltatót és a nyilvános ügyfélkonfigurációt:
curl -s http://localhost:8000/api/v1/health
# expect: "auth_provider":"stack", plus "stack_project_id" and "stack_publishable_client_key"
Ezután nyissa meg a felhasználói felületet. A bejelentkezési oldalon most a konfigurált Stack Auth közösségi bejelentkezési beállításokat kell megjelenítenie a helyi e-mail/jelszó űrlap helyett.
Környezeti változó referencia
| Változó | Szolgáltatás | Titok | Megjegyzések |
|---|---|---|---|
AUTH_PROVIDER | api | — | stack beállítás (alapértelmezett local) |
STACK_AUTH_PROJECT_ID | api | Nem | Stack projekt azonosító; futásidőben kiszolgálva a felhasználói felületnek |
STACK_PUBLISHABLE_CLIENT_KEY | api | Nem | Publikálható kulcs; futásidőben kiszolgálva a felhasználói felületnek |
STACK_SECRET_SERVER_KEY | api + ui | Igen | Csak szerveroldali – soha nem éri a böngésző |
STACK_AUTH_API_URL | api | Nem | Stack REST API alap URL |
Visszatérés a helyi hitelesítéshez
Távolítsa el a fenti változókat (vagy állítsa be a AUTH_PROVIDER=local-t), és indítsa újra. A felhasználói felület futás közben észleli a local local-t a háttérből, és visszatér a beépített e-mail-/jelszófolyamhoz – nincs szükség újraépítésre.