Keycloak: OpenID Connect-identitetsleverantör och mappers
Inloggning med Dazr Identity: kostnadsfri OpenID Connect, i EU, med nycklar (passkeys), e-postkoder och Google- eller Microsoft-konton bakom en enda knapp.
Du behöver tre värden från utvecklarkonsolen: klient-id:t, klienthemligheten (bara webbserverappar) och den omdirigerings-URI du registrerade. Resten finns i discovery-dokumentet på https://identity.dazr.eu/.well-known/openid-configuration.
Keycloak (identity brokering)
Om dina appar redan loggar in via Keycloak lägger du till Dazr Identity som identitetsleverantör. Keycloak visar då ”Sign in with Dazr Identity” på sin egen inloggningssida, och dina appar fortsätter att prata med Keycloak. Öppna Identity providers i Keycloaks administrationskonsol för ditt realm, lägg till OpenID Connect v1.0 och fyll i:
| Inställning | Värde |
|---|---|
| Alias | dazr (omdirigerings-URI:n som ska registreras hos Dazr är https://keycloak.example.eu/realms/<realm>/broker/dazr/endpoint) |
| Display name | Dazr Identity |
| Discovery endpoint | https://identity.dazr.eu/.well-known/openid-configuration |
| Client authentication | Client secret sent as basic auth |
| Client ID and Client secret | från Dazrs utvecklarkonsol (webbserverapp) |
| Use PKCE | på, metod S256 |
| Validate signatures | på, med Use JWKS URL påslaget och JWKS URL https://identity.dazr.eu/oauth/jwks |
| Scopes | openid profile email plus organisations om du kopplar organisationer enligt nedan |
| Backchannel logout | av: Dazr Identity har ingen back-channel logout. Utloggning sker via webbläsaren till https://identity.dazr.eu/oauth/logout. |
| Disable user info | på: mapparna nedan läser user info-svaret |
| Trust email | på: Dazr utfärdar bara verifierade e-postadresser |
| Sync mode | Force, så att namn och roller uppdateras vid varje inloggning |
Keycloak knyter det brokerade kontot till Dazr-sub. Ställ bara in first login flow så att befintliga Keycloak-användare kopplas via e-post om ditt realm själv verifierar e-postadresser.
Koppla organisationer och roller
När Keycloak brokerar Dazr Identity (se Keycloak-guiden) lägger du till mappers under identitetsleverantörens flik Mappers med sync mode Force. Keycloak läser dessa sökvägar från user info-svaret, och en sökväg kan peka på en plats i en lista: organisations[0] är den första organisationen som personen bockade för. För en portal med ett kundkonto per person räcker det; arbetar människor för flera organisationer, låt dem välja en eller läs hela listan i din app.
| Mappertyp | Claim | Resultat |
|---|---|---|
| Attribute Importer | organisations[0].id | Användarattribut dazr_org_id: tenant-nyckeln |
| Attribute Importer | organisations[0].name | Användarattribut dazr_org_name |
| Claim to Role | organisations[0].role, claim-värde owner | Realm- eller klientroll tenant_admin |
| Claim to Role | organisations[0].role, claim-värde admin | Realm- eller klientroll tenant_admin |
| Claim to Role | organisations[0].role, claim-värde member | Realm- eller klientroll tenant_user |
| Claim to Role | organisations[0].verification.status, claim-värde verified | Roll verified_business |
Lägg sedan till en mapper av typen User Attribute för dazr_org_id i din apps client scope i Keycloak, så att din app får tenant-nyckeln i Keycloaks egna token bredvid rollerna.
sub är parvist: detsamma för alla appar i din organisation, olika för alla andra organisationer. Det ändras aldrig för en person, medan en e-postadress kan ändras. Spara sub som kontonyckel och behandla email som kontaktuppgift.
Mer för utvecklare
UtvecklardokumentationAlla integrationsguiderValfritt OpenID Connect-bibliotekPriser