Identificatie

Identificeer een gebruiker met Cleverbase, en lees de attributen waarvoor die toestemming geeft. Dit is de API voor de dienst Identificeren. De API is OpenID Connect, dus als jouw stack al OIDC spreekt, is het meeste configureren in plaats van programmeren.

Cleverbase is de OpenID Provider; jouw applicatie is de Relying Party. De gebruiker bewijst wie hij is in de Cleverbase-app op zijn telefoon, en jij krijgt een id_token met de claims waarmee hij akkoord ging.

Hosts

OmgevingHost
Pre-productiehttps://connect.acc.cleverbase.com
Productiehttps://connect.cleverbase.com

Hoe de flow verloopt

OpenID Provider (OP)Relying Party (RP)WebapplicatieToken-endpointAutorisatie-endpointRedirection-URI-endpointWebapplicatieUser agentWebapplicatieToken-endpointAutorisatie-endpointRedirection-URI-endpointWebapplicatieUser agentVraag identiteitsfederatie aanRedirect met authenticatieverzoekVraag authenticatie aanLaad de OP-webapplicatieAuthenticeer de eindgebruikerVraag toestemming van de eindgebruikerRedirect met authorization codeWissel de authorization code om voor access token en ID tokenLever access token en ID tokenBewaar het access token veilig als je het nog gebruikt,verwerk de identiteitsclaims, archiveer het bewijs veiligRedirect naar de RP-webapplicatieGebruik de RP-webapplicatie met geverifieerde claims
  1. Jouw applicatie stuurt de gebruiker naar GET /oauth2/authorize, met de scopes voor de claims die je nodig hebt.
  2. De gebruiker identificeert zich bij Cleverbase en geeft toestemming voor de claims. Wat hij ziet en hoe ver hij komt is aan ons; tussendoor krijg je geen callbacks.
  3. Cleverbase stuurt hem terug naar jouw redirect-URI, met een authorization code.
  4. Jouw server wisselt die code bij POST /oauth2/token om voor een id_token en een access_token.
  5. Eventueel haal je met dat access token dezelfde claims op bij GET /userinfo.

De standaard, en welke delen ervan gelden

De interface volgt OpenID Connect Core 1.0 incorporating errata set 1, dat aansluit op RFC 6749 (OAuth 2.0). De relevante OIDC-secties zijn 1, 2, 3.1, 5, 8-10 en 13-17.

Twee dingen zijn goed om te weten voordat je je schermen ontwerpt: een gebruiker mag toestemming geven voor een deel van wat je vraagt, tenzij je een claim essential hebt gemaakt, en een claim die niet gedeeld kan worden ontbreekt gewoon in het antwoord in plaats van leeg te zijn. Beide staan in Scopes and claims.