Keycloak felhasználói önregisztráció

1. Áttekintés

Használhatjuk a Keycloak szolgáltatást harmadik féltől származó engedélyezési kiszolgálóként webes vagy mobilalkalmazásaink felhasználóinak kezelésére.

Bár egy rendszergazda hozzáadhat felhasználókat, a Keycloak lehetővé teszi a felhasználók számára, hogy regisztrálják magukat. Ezenkívül az alapértelmezett attribútumokkal, például keresztnévvel, vezetéknévvel és e-mail címmel, további felhasználói attribútumokat is hozzáadhatunk alkalmazásunk igényeihez.

Ebben az oktatóanyagban meglátjuk hogyan engedélyezhetjük az önregisztrációt a Keycloak-on, és hozzáadhatunk egyéni mezőket a felhasználói regisztrációs oldalon.

A bejelentkezési oldal testreszabására építünk, így a kezdeti beállításhoz hasznos lesz először átnézni.

2. Önálló szerver

Először látni fogjuk a felhasználók önregisztrációját egy önálló Keycloak szerverre.

2.1. Felhasználói regisztráció engedélyezése

Kezdetben engedélyeznünk kell a Keycloak-ot a felhasználói regisztráció engedélyezéséhez. Ehhez először el kell indítanunk a kiszolgálót, futtatva ezt a parancsot a Keycloak disztribúciónkból kuka mappa:

./standalone.sh -Djboss.socket.binding.port-offset = 100

Ezután fel kell mennünk az adminisztrációs konzolra, és be kell írnunk a kezdő1/zaq1! QAZ hitelesítő adatok.

Ezután a Belépés fül a Birodalom beállításai oldalon, átkapcsoljuk a Felhasználó regisztráció gomb:

Ez minden! Csak kattintanunk kell Mentés és engedélyezi az önregisztrációt.

Tehát most kapunk egy nevű linket Regisztráció a bejelentkezési oldalon:

Ismét emlékezzünk arra, hogy az oldal másképp néz ki, mint a Keycloak alapértelmezett bejelentkezési oldala, mert kibővítjük a korábban elvégzett testreszabásokat.

A regisztrációs link a Regisztráció oldal:

Ahogy látjuk, az alapértelmezett oldal a Keycloak felhasználó alapvető attribútumait tartalmazza.

A következő részben megnézzük, hogyan adhatunk hozzá további attribútumokat a választásunkhoz.

2.2. Egyéni felhasználói attribútumok hozzáadása

Az egyéni témával folytatva másoljuk át a meglévő sablont base / login / register.ftl a miénknek custom / login mappába.

Most megpróbálunk hozzáadni egy új mezőt dob mert Születési dátum. Ehhez módosítanunk kell a fentieket register.ftl és add hozzá:

 Születési dátum 

Most amikor új felhasználót regisztrálunk ezen az oldalon, beírhatjuk azt Születési dátum is:

Az ellenőrzéshez nyissuk meg a Felhasználók oldal az adminisztrációs konzolon és a keresés Jane:

Ezután menjünk a következőre: Jane’S Attribútumok és nézd meg a SZÜL:

Mint nyilvánvaló, itt ugyanaz a születési dátum jelenik meg, mint amit az önregisztrációs űrlapon megadtunk.

3. Beágyazott szerver

Most nézzük meg, hogyan adhatunk hozzá egyéni attribútumokat a Spring Boot alkalmazásba ágyazott Keycloak szerver önregisztrációjához.

Ugyanaz, mint az önálló szerver első lépése, az elején engedélyeznünk kell a felhasználói regisztrációt.

Ezt megtehetjük beállítással regisztráció engedélyezett nak nek igaz birodalmi definíciós fájlunkban, baeldung-realm.json:

"registrationAllowed": igaz,

Ezt követően meg kell hozzá Születési dátum nak nek register.ftl, pontosan ugyanúgy, mint korábban.

Ezután másoljuk át ezt a fájlt a miénkbe src / main / resources / themes / custom / login Könyvtár.

A szerver indításakor bejelentkezési oldalunkon található a regisztráció link. Itt van az önregisztráció oldala az egyéni mezőnkkel Születési dátum:

Fontos szem előtt tartani, hogy a a beágyazott szerver önregisztrációs oldalán keresztül hozzáadott felhasználó átmeneti.

Mivel nem adtuk hozzá ezt a felhasználót az előkonfigurációs fájlhoz, a kiszolgáló újraindításakor nem lesz elérhető. Ez azonban jól jön a fejlesztési szakaszban, amikor csak a dizájnt és a funkcionalitást ellenőrizzük.

A teszteléshez a kiszolgáló újraindítása előtt ellenőrizhetjük, hogy a felhasználó hozzá van-e adva SZÜL egyéni attribútumként az admin konzolról. Megpróbálhatunk bejelentkezni az új felhasználó hitelesítő adataival is.

4. Következtetés

Ebben az oktatóanyagban megtanultuk, hogyan lehet engedélyezni a felhasználók önregisztrációját a Keycloakban. Azt is láttuk, hogyan adhatunk hozzá egyéni attribútumokat új felhasználó regisztrációja közben.

Megnéztük a példákat, hogyan lehet ezt megtenni mind önálló, mind beágyazott példány esetén.

Mint mindig, a forráskód is elérhető a GitHubon. Az önálló kiszolgálón a GitHub oktatóanyagoknál, a beágyazott példánynál pedig az OAuth GitHubon található.