KNF:Single Sign On query
Nederlands | English |
Inleiding
De SSOquery heeft als voornaamste functie het verklikken van de inlogstatus. Een veelgebruikte naam is dan ook wel de inlogstatusverklikker.
Deze functie biedt de mogelijkheid om te controleren of een gebruiker direct ingelogd kan worden zonder het inlogscherm te tonen. Ook toegang geven tot, of het zichtbaar maken van bepaalde content behoort tot een van de gebruikte usecases.
Met deze functie kan de gebruikerservaring verbeterd worden door bijvoorbeeld:
- Een 'Inlogknop' niet te tonen en direct de authenticatie te starten met een ingelogde gebruiker als gevolg
- Zichtbaar maken dat de gebruiker nog niet ingelogd is, maar dit wel moet doen om bepaalde content te zien
- etc..
Alvorens een dienst gebruik kan maken van deze functie dient deze opgenomen te worden in de whitelist. Dit om overvloedig gebruik te voorkomen. Geef dit aan door onze servicedesk op de hoogte te stellen dat u gebruik wilt maken van deze functie.
Werking
Zodra de vraag aan de Kennisnet Federatie gesteld wordt, kunnen er drie antwoorden worden geven op de SSOQuery:
- false
- De gebruiker heeft geen SSO sessie en is voor zover bekend bij de KNF nergens ingelogd
- true
- De gebruiker heeft een SSO sessie en kan hoogstwaarschijnlijk inloggen zonder gebruikersinteractie
- remote
- De gebruiker heeft geen SSO sessie, maar er is wel een SSO notificatie cookie gevonden. De gebruiker is al ingelogd in zijn eigen systeem(ELO) en kan hoogstwaarschijnlijk inloggen zonder gebruikersinteractie
Implementatie
De query bestaat uit een simpele HTTP GET met slechts een parameter: response_url (deze parameter moet in de URL worden URL encoded/UTF-8).
De volgende urls kunnen worden gebruikt:
Staging environment: |
https://aselect-s.entree.kennisnet.nl/openaselect/sso/ssoquery?response_url=<URL> |
Live environment: |
https://aselect.entree.kennisnet.nl/openaselect/sso/ssoquery?response_url=<URL> |
Voorbeeld
- De dienst stelt de vraag
- https://aselect.entree.kennisnet.nl/openaselect/sso/ssoquery?response_url=https%3A%2F%2Ftestapplicatie.kennisnet.nl
- Kennisnet Federatie redirect naar
- https://testapplicatie.kennisnet.nl?result=true
Voorbeeld implementatie op basis van PHP: Bestand:SSOquery.zip