Keycloak: poskytovateľ identity OpenID Connect a mappery

Potrebujete tri hodnoty z vývojárskej konzoly: ID klienta, tajný kľúč klienta (len pri webových serverových aplikáciách) a URI presmerovania, ktoré ste zaregistrovali. Všetko ostatné je v dokumente discovery na adrese https://identity.dazr.eu/.well-known/openid-configuration.

Keycloak (identity brokering)

Ak sa vaše aplikácie už prihlasujú cez Keycloak, pridajte Dazr Identity ako poskytovateľa identity. Keycloak potom na svojej prihlasovacej stránke ukáže „Sign in with Dazr Identity“ a vaše aplikácie ďalej komunikujú s Keycloakom. V administračnej konzole Keycloak pre váš realm otvorte Identity providers, pridajte OpenID Connect v1.0 a vyplňte:

NastavenieHodnota
Aliasdazr (URI presmerovania na registráciu v Dazr je https://keycloak.example.eu/realms/<realm>/broker/dazr/endpoint)
Display nameDazr Identity
Discovery endpointhttps://identity.dazr.eu/.well-known/openid-configuration
Client authenticationClient secret sent as basic auth
Client ID and Client secretz vývojárskej konzoly Dazr (serverová webová aplikácia)
Use PKCEzapnuté, metóda S256
Validate signatureszapnuté, s Use JWKS URL zapnutým a JWKS URL https://identity.dazr.eu/oauth/jwks
Scopesopenid profile email a navyše organisations, ak mapujete organizácie podľa návodu nižšie
Backchannel logoutvypnuté: Dazr Identity nemá back-channel logout. Odhlásenie prebieha cez prehliadač na https://identity.dazr.eu/oauth/logout.
Disable user infovypnuté: mappery nižšie čítajú odpoveď user info
Trust emailzapnuté: Dazr vydáva len overené e-mailové adresy
Sync modeForce, aby sa mená a roly aktualizovali pri každom prihlásení

Keycloak prepojí sprostredkovaný účet s Dazr sub. First login flow nastavte na prepojenie existujúcich používateľov Keycloak podľa e-mailu, len ak váš realm e-mailové adresy sám overuje.

Mapovanie organizácií a rolí

Keď Keycloak sprostredkúva Dazr Identity (pozrite návod pre Keycloak), pridajte mappery na karte Mappers poskytovateľa identity, so sync mode Force. Keycloak tieto cesty číta z odpovede user info a cesta môže označiť jednu pozíciu v zozname: organisations[0] je prvá organizácia, ktorú osoba zaškrtla. Pre portál s jedným zákazníckym účtom na osobu to stačí; ak ľudia pracujú pre viac organizácií, nechajte ich zaškrtnúť jednu, alebo čítajte celý zoznam vo svojej aplikácii.

Typ mapperaClaimVýsledok
Attribute Importerorganisations[0].idPoužívateľský atribút dazr_org_id: kľúč tenanta
Attribute Importerorganisations[0].namePoužívateľský atribút dazr_org_name
Claim to Roleorganisations[0].role, hodnota claimu ownerRola realmu alebo klienta tenant_admin
Claim to Roleorganisations[0].role, hodnota claimu adminRola realmu alebo klienta tenant_admin
Claim to Roleorganisations[0].role, hodnota claimu memberRola realmu alebo klienta tenant_user
Claim to Roleorganisations[0].verification.status, hodnota claimu verifiedRola verified_business

Potom pridajte mapper User Attribute pre dazr_org_id do client scope svojej aplikácie v Keycloaku, aby vaša aplikácia dostávala kľúč tenanta vo vlastných tokenoch Keycloaku, vedľa rolí.

Ďalšie informácie pre vývojárov