Best practices: Authenticatie functioneel (hervatten formulier en meerdere soorten authenticatie op een formulier)

Gemaakt door Mark Duijkers, Gewijzigd op Vr, 10 Feb, 2023 om 1:12 PM op Mark Duijkers

In dit artikel zijn een paar voorbeelden uitgeschreven om de authenticatie te controleren op het middel en identiteit van de inlogde gebruiker in TriplEforms 4.3 en 5.0



Best Practice identificatie controle bij hervatten


Of je nu een authenticatie identificatie middel als DigiD, eHerkenning of eIDAS gebruikt, je wil dat dezelfde gebruiker het formulier hervat.
We zullen in dit voorbeeld DigD icm. BSN nemen. Voor eHerkenning zou dit het KVK nummer zijn.


Voorbeeld scenario

Stap 1

Maak na het authenticatie blok in een formulier het SetVars,


Sla het unieke identificatienummer op wat je terug krijgt vanuit de authenticatie (login).


Sla dit op in #globals.bsnLogged


Stap 2

Controle na Authenticatie bij hervatten formulieren


Wanneer de gebruiker zijn formulier opslaat is nu #globals.bsnLogged bekend bij het ophalen van zijn gegevens 


Vergelijk de BSN van de ingelogde gebruiker met die uit de opgeslagen antwoorden #globals.bsnLogged. Nadat je bent ingelogd. 

Wijkt dit af, dan verbreek je het scenario naar een foutstatus of formulier.




Best practice identificatie controle (type authenticatie) 


In TriplEforms wordt een generieke module gebruikt voor DigiD, eHerkenning of eIDAS. Deze authenticatie middelen worden via de SAML module opgebouwd. Deze module heeft maar een sessie in de website ongeacht of je DigiD of eHerkenning "bent"; en kan hij dus maar een inlog middel aan. 


Daarom is handig om te controleren of je niet met eHerkenning bent ingelogd terwijl je scenario DigiD wilt gebruiken. 


VoorbeeldScenario


Stap 1

Controle 


Maak na het authenticatie blok in een formulier de SetVars,


Sla je keuze authenticatie op in een variabele #globals.AuthChoise en sla de authenticatie Connector op in een websessie [*SetSessionValue(Connector;DigiD)]


#globals.AuthChoise wordt opgeslagen in de TFA of formsresume en zorgt ervoor dat niet een andere keuze van inloggen mag maken wanneer een formulier hervat wordt.

 [*SetSessionValue(Connector;DigiD)] gaat ervoor zorgen dat je niet DigiD en eHerkenning door elkaar mag halen wanneer je al bent ingelogd.




Stap 2

Controle authenticatie bij hervatten formulier


Zorg ervoor dat je de authenticatie keuze niet mag wijzigen wanneer een formulier wordt hervat. Dit kun je doen door nu te controleren of [#globals.AuthChoise] leeg is.

Bijvoorbeeld wanneer je een scenario had gestart met een DigiD login wil je bij het hervatten nog steeds de login gebruiken.




Stap 3

controleer dat je de juiste authenticatie module weer start bij het hervatten


Omdat de #globals.AuthChoise al in het formulier bij stap 2 wordt geblokkeerd om te hem te kunnen aanpassen hoeven we daar niet extra op te controleren. Wat wij wel willen controleren is op de websessie connector uit stap 1.

Zijn we nog steeds DigiD of nu iets anders? Is de websessie connector leeg dan is er niks aan de hand. Is hij gevuld dan moet het dezelfde keuze zijn als uit het formulier.


Was dit artikel nuttig?

Dat is fantastisch!

Hartelijk dank voor uw beoordeling

Sorry dat we u niet konden helpen

Hartelijk dank voor uw beoordeling

Laat ons weten hoe we dit artikel kunnen verbeteren!

Selecteer tenminste een van de redenen
CAPTCHA-verificatie is vereist.

Feedback verzonden

We stellen uw moeite op prijs en zullen proberen het artikel te verbeteren