Use case UvA/HvA: Veilig persoonlijke data ophalen in een app met API Security van SURFconext

Studenten van de UvA en de HvA gebruiken een studentenapp om onder andere hun cijfers te zien. De app haalt deze gegevens op uit bijvoorbeeld het studenteninformatiesysteem door middel van API’s. Met SURFconext API Security kan dat veilig en vertrouwd. Met als bijkomend voordeel: 'Onze infrastructuur is nu simpeler en meer bij de tijd.'

Een vrouw die een telefoon in haar handen heeft.

Betrouwbare check

Studenten van de Universiteit van Amsterdam (UvA) en de Hogeschool van Amsterdam (HvA) gebruiken een studentenapp om hun rooster, cijfers en studievoortgang in te zien. Deze gegevens zijn afkomstig uit andere systemen dan de app zelf, bijvoorbeeld het studenteninformatiesysteem. Door middel van API’s worden de gegevens opgehaald. Maar voordat ze in de app worden getoond, moet de API de identiteit van de student betrouwbaar kunnen vaststellen. Het gaat om persoonlijke data, die niet in handen van iemand anders mogen komen. Het moet bijvoorbeeld niet gebeuren dat een student het cijfer van een studiegenoot in de app te zien krijgt. Om API's met gevoelige persoonsinformatie af te schermen, gebruiken de UvA en de HvA nu API Security van SURFconext. Dit zorgt ervoor dat API’s zeker 'weten' of de juiste persoon om gevoelige data vraagt.

'API Security van SURFconext biedt meer mogelijkheden, het maakt onze eigen infrastructuur simpeler en meer bij de tijd. Het scheelt ons een beheerslaag en de bijkomende verantwoordelijkheid.'
Tom Kuipers, ontwikkelaar bij ICT Services - UvA en HvA.

Hoe het werkt

Sinds een aantal jaar ondersteunt SURFconext OpenID Connect, een authenticatie- en autorisatieprotocol dat geschikt is voor mobiele apps. De studentenapp van de UvA/HvA is als dienst via het OpenID Connect protocol aangesloten op SURFconext. De informatie die een student in deze app kan zien (cijfers, roosters), worden door de app uit verschillende bronsystemen van UvA/HvA via API's opgehaald. Deze bronsystemen zijn ook aangemeld in SURFconext, als ‘resource server’. Na een succesvolle inlog in de app krijgt de app een ‘token’ van SURFconext. De app kan met dit token als een soort van toegangsbewijs een verzoek aan de API's van de bronsystemen doen om bijvoorbeeld cijfers voor de ingelogde gebruiker op te vragen. De API moet controleren of het toegangsbewijs geldig is en wil ook betrouwbaar kunnen vaststellen wie de gebruiker is die bij het toegangsbewijs hoort. Dat doet de API via API Security van SURFconext - daar is het token uitgegeven en kan dus worden gecontroleerd of er niet mee gesjoemeld is.

Een beheerslaag minder

Foto Tom Kuipers van de Uva/Hva

'Voorheen beschikten we voor dit doel over een eigen autorisatie-infrastructuur, die was gekoppeld aan SURFconext,' vertelt Tom Kuipers, ontwikkelaar bij de dienst ICT Services van de UvA en HvA. 'We hadden een extra stap nodig om de identiteit te controleren en we moesten de server zelf in de lucht houden. API Security van SURFconext biedt meer mogelijkheden, het maakt onze eigen infrastructuur simpeler en meer bij de tijd. Het scheelt ons een beheerslaag en de bijkomende verantwoordelijkheid.'

Bewustwording

Voor gebruikers is de toepassing van SURFconext API Security laagdrempelig én veilig. Een student hoeft maar één keer in te loggen om altijd van alle functionaliteiten in de app gebruik te kunnen maken. Voor deze authenticatie verwijst de studentenapp naar de centrale inlogpagina van de instelling, waarmee SURFconext standaard is verbonden. Dit browserschermpje zorgt volgens Kuipers voor 'een stukje bewustwording'. 'We stimuleren onze studenten om niet zomaar hun studentgegevens achter te laten in een app. Dankzij de link met het slotje ernaast kunnen ze controleren of het van een vertrouwde partij is.' Geen overbodige luxe in een tijd waarin hoger onderwijsinstellingen regelmatig het doelwit zijn van hackers.

'Ga niet zelf je security uitvinden, maar maak gebruik van de standaarden die er zijn. Alle functionaliteiten die in de industrie als standaard gelden, zitten in het SURFconext-platform.'
Tom Kuipers, ontwikkelaar bij ICT Services - UvA en HvA.

Eigentijds

De eigen autorisatie-infrastructuur van de UvA had als voordeel dat zaken rondom Trust & Identity binnen de instelling werden geregeld en niet werden gedeeld met derde partijen. 'Maar anno 2021 is OpenID Connect van SURFconext de manier om dit te doen,' vindt Kuipers. 'Ga niet zelf je security uitvinden, maar maak gebruik van de standaarden die er zijn. Alle functionaliteiten die in de industrie als standaard gelden, zitten in het SURFconext-platform. Wij kunnen daar middels de app op meeliften.'

Snel schakelen

Kuipers is ook te spreken over het dashboard, waarmee een instelling zelfstandig de dienst kan inrichten. Voor de UvA heeft hij dat proces al doorlopen, met de HvA zit hij er nog middenin. 'In het stadium waarin je een app moet ombouwen, is het prettig dat je er zelf snel in kunt schakelen,' zegt hij. Wel ziet hij nog de mogelijkheid tot een extra functionaliteit in het dashboard: een knop waarmee hij een token ongeldig kan verklaren. Dat is handig in het geval dat een student een telefoon kwijtraakt. Het ongeldig verklaren van een token moet momenteel nog handmatig worden geregeld via SURF.