OpenID Connect voor inloggen met DigiD Machtigen en eHerkenning bewindvoering

Open Formulieren ondersteunt DigiD Machtigen en eHerkenning bewindvoering login voor burgers via het OpenID Connect protocol (OIDC). Burgers kunnen inloggen op Open Formulieren met hun DigiD/eHerkenning account en een formulier invullen namens iemand anders. In deze flow:

  • Een gebruiker klikt op de knop Inloggen met DigiD Machtigen of Inloggen met eHerkenning bewindvoering die op de startpagina van een formulier staat.

  • De gebruiker wordt via de omgeving van de OpenID Connect provider (bijv. Keycloak) naar DigiD/eHerkenning geleid, waar de gebruiker kan inloggen met hun eigen DigiD/eHerkenning inloggegevens.

  • De gebruiker kan dan kiezen namens wie ze het formulier willen invullen.

  • De gebruiker wordt daarna terug naar de OIDC omgeving gestuurd, die op zijn beurt de gebruiker weer terugstuurt naar Open Formulieren

  • De gebruiker kan verder met het invullen van het formulier

DigiD Machtigen

Claim-eisen

BSN vertegenwoordiger

Het BSN van de vertegenwoordiger die “aan de knoppen zit”. Altijd verplicht.

BSN vertegenwoordigde

Het BSN van de vertegenwoordigde gebruiker. Altijd verplicht.

betrouwbaarheidsniveau

Het betrouwbaarheidsniveau gebruikt tijdens het inloggen. Dit wordt vastgelegd en meegestuurd tijdens het registeren van formulierinzendingen. Als de provider dit niet kan aanleveren, dan kan je een standaardwaarde instellen in Open Formulieren.

Beheerders kunnen waardenvertalingen inrichten indien de provider de waarden niet aanlevert zoals gedocumenteerd in de koppelvlakstandaard van Logius.

Service ID

Het ID van de dienst waarvoor de vertegenwoordiger gemachtigd is. Dit komt voor de provider/broker beschikbaar via Logius’ DigiD Machtigen.

Verplicht indien DIGID_EHERKENNING_OIDC_STRICT (Environment configuration reference) op True staat.

Configureren van OIDC-provider

Contacteer de IAM beheerders in je organisatie om een Client aan te maken in de omgeving van de OpenID Connect provider.

Redirect URI (vanaf Open Formulieren 2.7.0)

Changed in version 3.0: Open Forms no longer uses the legacy endpoints by default.

Voor de Redirect URI vul je https://open-formulieren.gemeente.nl/auth/oidc/callback/ in, waarbij je open-formulieren.gemeente.nl vervangt door het relevante domein.

Redirect URI (legacy)

Voor de Redirect URI vul je https://open-formulieren.gemeente.nl/digid-machtigen-oidc/callback/ in, waarbij je open-formulieren.gemeente.nl vervangt door het relevante domein.

Gegevens

Aan het eind van dit proces moet je de volgende gegevens hebben:

  • Server adres, bijvoorbeeld login.gemeente.nl

  • Client ID, bijvoorbeeld a7d14516-8b20-418f-b34e-25f53c930948

  • Client secret, bijvoorbeeld 97d663a9-3624-4930-90c7-2b90635bd990

Configureren van OIDC in Open Formulieren

Om OIDC in Open-Formulieren te kunnen configureren zijn de volgende gegevens nodig:

  • Server adres

  • Client ID

  • Client secret

Navigeer vervolgens in de admin naar Configuratie > OIDC provider > oidc-digid-machtigen-provider.

Hier kan je de endpoints van de OIDC provider inrichten. Deze kunnen automatisch bepaald worden aan de hand van het discovery endpoint (https://login.gemeente.nl/auth/realms/{realm}/.well-known/openid-configuration).

  1. Vul bij Discovery endpoint het pad naar het juiste authenticatie realm endpoint van de OpenID Connect provider in (met een / op het einde), bijvoorbeeld https://login.gemeente.nl/auth/realms/{realm}/.

  2. Laat de overige endpoints leeg - deze worden automatisch aangevuld.

Navigeer vervolgens in de admin naar Configuratie > OIDC clients > oidc-digid-machtigen.

Stel de algemene instellingen in:

  1. Vink Ingeschakeld aan om OIDC in te schakelen.

  2. Selecteer de provider die je net heb geconfigureerd in de OIDC Provider dropdown.

  3. Vul bij OpenID Connect client ID het Client ID in, bijvoorbeeld a7d14516-8b20-418f-b34e-25f53c930948.

  4. Vul bij OpenID Connect secret het Client secret in, bijvoobeeld 97d663a9-3624-4930-90c7-2b90635bd990.

  5. Laat bij OpenID Connect scopes de standaardwaarden staan, of stel deze in volgens de instructies van je OpenID Connect provider.

  6. Vul bij OpenID sign algorithm RS256 in.

  7. Laat Sign key leeg.

Stel dan de DigiD Machtigen specifieke instellingen in de opties veld:

Note

Indien er sprake is van nesting in de claims, voeg dan een regel toe met het plusje voor elk niveau.

  1. Vul bij Identity settings > Representee BSN claim path het pad van de claim in die het BSN bevat van de machtiger, bijvoorbeeld aanvrager.bsn.

  2. Vul bij Identity settings > Authorizee BSN claim path het pad van de claim in die het BSN bevat van de gemachtigde, bijvoorbeeld gemachtigde.bsn.

  3. Voer bij LoA settings > claim path het pad van de claim in (bijvoorbeeld authsp_level) als die bekend is. Indien niet, kies dan bij LoA settings > Default de waarde die meest van toepassing is. Dit wordt enkel gebruikt om vast te leggen met welk betrouwbaarheidsniveau iemand ingelogd is.

  4. Indien gewenst, dan kan je waardenvertalingen voor de betrouwbaarheidsniveaus toevoegen, bijvoorbeeld:

    • Klik op “Add item”

    • Kies “Tekstuele waarde” in de From dropdown en voer de waarde 10 op in het tekstveld

    • Selecteer “DigiD Basis” in de To dropdown

    • Herhaal voor andere waarden en niveaus

  5. Vul bij de Identity settings > Mandate service ID claim path het pad van de claim in die aangeeft voor welke dienst de machtiging afgegeven is, bijvoobeeld urn:nl-eid-gdi:1.0:ServiceUUID.

Je kan nu een formulier aanmaken met de DigiD Machtigen via OpenID Connect authenticatie-plugin, zie Formulieren beheren.

eHerkenning bewindvoering

Claim-eisen

Alle eisen voor standaard-eHerkenning gelden, plus:

BSN vertegenwoordigde

Het BSN van de vertegenwoordigde gebruiker. Altijd verplicht.

Service ID

Het ID van de dienst waarvoor de vertegenwoordiger gemachtigd is. Deze waarde staat in de dienstencatalogus.

Verplicht indien DIGID_EHERKENNING_OIDC_STRICT (Environment configuration reference) op True staat.

Service UUID

Het UUID van de dienst waarvoor de vertegenwoordiger gemachtigd is. Deze waarde staat in de dienstencatalogus.

Verplicht indien DIGID_EHERKENNING_OIDC_STRICT (Environment configuration reference) op True staat.

Configureren van OIDC-provider

De stappen hier zijn dezelfde als voor Configureren van OIDC-provider.

Warning

Indien je de legacy Redirect URI gebruikt, dan is de waarde https://open-formulieren.gemeente.nl/eherkenning-bewindvoering-oidc/callback/.

Aan het eind van dit proces moet u de volgende gegevens hebben:

  • OpenID connect client discovery endpoint, bijvoorbeeld https://keycloak-test.nl/auth/realms/zgw-publiek/

  • Client ID, bijvoorbeeld a7d14516-8b20-418f-b34e-25f53c930948

  • Client secret, bijvoorbeeld 97d663a9-3624-4930-90c7-2b90635bd990

  • Identity provider hint (optioneel)

Configureren van OIDC in Open Formulieren

Om OIDC in Open-Formulieren te kunnen configureren zijn de volgende gegevens nodig:

  • OpenID connect client discovery endpoint

  • Client ID

  • Client secret

  • Identity provider hint (optioneel)

Navigeer vervolgens in de admin naar Configuratie > OIDC provider > oidc-eherkenning-bewindvoering-provider.

Hier kan je de endpoints van de OIDC provider inrichten. Deze kunnen automatisch bepaald worden aan de hand van het discovery endpoint (https://login.gemeente.nl/auth/realms/{realm}/.well-known/openid-configuration).

  1. Vul bij Discovery endpoint het pad naar het juiste authenticatie realm endpoint van de OpenID Connect provider in (met een / op het einde), bijvoorbeeld https://login.gemeente.nl/auth/realms/{realm}/.

  2. Laat de overige endpoints leeg - deze worden automatisch aangevuld.

Navigeer vervolgens in de admin naar Configuratie > OIDC clients > oidc-eherkenning-bewindvoering.

Stel de algemene instellingen in:

  1. Vink Ingeschakeld aan om OIDC in te schakelen.

  2. Selecteer de provider die je net heb geconfigureerd in de OIDC Provider dropdown.

  3. Vul bij OpenID Connect client ID het Client ID in, bijvoorbeeld a7d14516-8b20-418f-b34e-25f53c930948.

  4. Vul bij OpenID Connect secret het Client secret in, bijvoobeeld 97d663a9-3624-4930-90c7-2b90635bd990.

  5. Laat bij OpenID Connect scopes de standaardwaarden staan, of stel deze in volgens de instructies van je OpenID Connect provider.

  6. Vul bij OpenID sign algorithm RS256 in.

  7. Laat Sign key leeg.

Stel dan de eHerkenning Bewindvoering specifieke instellingen in de opties veld:

  1. Vul bij Identity settings > Acting subject claim path het pad van de claim in die het BSN bevat van de machtiger, bijvoorbeeld bsn.

  2. Vul bij Identity settings > Identifier-type claim path de claim in die aangeeft of het een KVK-nummer of RSIN betreft (merk op: op dit moment ondersteunen we enkel KVK). Indien onbekend, dan kan je de standaardwaarde laten staan.

  3. Vul bij Identity settings > Legal subject claim path de claim in die het KVK-nummer (of RSIN, toekomst) bevat, bijvoorbeeld kvk.

  4. Vul de claim in die het (eventuele) vestigingsnummer bevat bij Identity settings > Branch number claim path. Indien onbekend, laat dan de standaardwaarde staan.

  5. Vul bij Identity settings > Representee claim path de claim die de identificatie bevat van de medewerker die namens het bedrijf inlogt.

  6. Voer bij LoA settings > claim path het pad van de claim in (bijvoorbeeld authsp_level) als die bekend is. Indien niet, kies dan bij LoA settings > Default de waarde die meest van toepassing is. Dit wordt enkel gebruikt om vast te leggen met welk betrouwbaarheidsniveau iemand ingelogd is.

  7. Indien gewenst, dan kan je waardenvertalingen voor de betrouwbaarheidsniveaus toevoegen, bijvoorbeeld:

    • klik op “Add item”

    • Kies “Tekstuele waarde” in de From dropdown en voer de waarde 00 op in het tekstveld

    • Selecteer “Non existent” in de To dropdown

    • Herhaal voor andere waarden en niveaus

Je kan nu een formulier aanmaken met de eHerkenning bewindvoering via OpenID Connect authenticatie-plugin, zie Formulieren beheren.