Nederlands
  • toestemming
  • sso
  • authenticatie
  • idp

Inleiding tot het toestemmingsscherm voor gebruikers

Wat is het toestemmingsscherm voor gebruikers en hoe werkt het? Dit artikel legt de basisideeën achter het toestemmingsscherm voor gebruikers uit en hoe het gebruikt zou moeten worden.

Simeng
Simeng
Developer

Wat is het toestemmingsscherm voor gebruikers

Stel je voor dat je je aanmeldt voor een nieuwe sociale app met je Google-account. Je klikt op de knop "Inloggen met Google" en je wordt doorgestuurd naar Google om het inlogproces te voltooien. Na succesvol authenticeren met Google, word je doorgestuurd naar een pagina die je vraagt deze app toegang te geven tot je Google-accountprofiel. Iets zoals dit:

Google-toestemmingsscherm

Deze pagina noemen we de toestemmingspagina of toestemmingsscherm. Het is een gebruikersinterface-element dat door applicaties of websites wordt weergegeven tijdens het onboardingproces. Het primaire doel is om gebruikers te informeren over de verzameling, verwerking en het gebruik van hun persoonlijke gegevens en hun expliciete toestemming voor deze activiteiten te vragen.

Op een toestemmingspagina worden gebruikers doorgaans geïnformeerd over de soorten gegevens die zullen worden verzameld, hoe ze zullen worden gebruikt en of ze met derden zullen worden gedeeld. Deze informatie is cruciaal voor transparantie, waardoor gebruikers weloverwogen beslissingen kunnen nemen over hun privacy en gegevensbeveiliging.

Toestemmingspagina's zijn vooral belangrijk in de context van privacyregelgeving zoals de Algemene Verordening Gegevensbescherming (AVG) in de Europese Unie of de California Consumer Privacy Act (CCPA) in de Verenigde Staten, die organisaties verplichten om duidelijke en expliciete toestemming van gebruikers te verkrijgen voordat ze hun persoonlijke gegevens verwerken.

Wanneer hebben we een toestemmingsscherm nodig?

Voordat we deze vraag kunnen beantwoorden, moeten we enkele basisbegrippen over gebruikersauthenticatie begrijpen.

Identity Provider (IdP) en Service Provider (SP)

Zoals hierboven vermeld, is het primaire doel van het toestemmingsscherm om gebruikers te informeren over de verzameling, verwerking en het gebruik van hun persoonlijke gegevens en hun expliciete toestemming voor deze activiteiten te vragen. Daarom hebben we een toestemmingsscherm nodig wanneer we persoonlijke gegevens verzamelen, verwerken of gebruiken die eigendom zijn van een andere partij, zoals Google.

In de context van gebruikersauthenticatie noemen we de partij die de gebruikersgegevens bezit de Identity Provider (IdP). Wat betreft de toepassing die toegang vraagt tot de gebruikersgegevens, noemen we dit de Service Provider (SP). In het bovenstaande voorbeeld is Google de IdP en de sociale app is de SP.

De IdP is verantwoordelijk voor het authenticeren van de gebruiker en het verstrekken van de gebruikersprofielinformatie aan de SP. De SP is de partij die de gebruikersprofielinformatie nodig heeft om zijn diensten te verlenen.

Single sign-on (SSO)

In het bovenstaande voorbeeld gebruikt de sociale app Google als zijn IdP. Dit is een veelvoorkomend scenario in de industrie. Veel applicaties gebruiken Google, Facebook of andere derde partij diensten als hun IdP. Dit wordt Single Sign-On (SSO) genoemd. SSO is een eigenschap van toegangscontrole van meerdere gerelateerde, maar onafhankelijke softwaresystemen. Met deze eigenschap logt een gebruiker in met een enkele ID en wachtwoord om toegang te krijgen tot een van meerdere gerelateerde toepassingen. Je kunt CIAM 101: Authenticatie, Identiteit, SSO raadplegen voor meer details.

Eerste-partij vs Derde-partij IdP

Eerste-partij IdP is een IdP die eigendom is van dezelfde organisatie als de SP. De SP kan zelfs dezelfde domeinnaam delen als de IdP. Dus de SP vraagt toegang tot de gebruikersgegevens die eigendom zijn van dezelfde organisatie. Bijvoorbeeld, als je Google Workspace gebruikt, dan is Google je eerste-partij IdP.

Derde-partij IdP, aan de andere kant, is een IdP die eigendom is van een andere organisatie dan de SP. De SP vraagt toegang tot de gebruikersgegevens die niet van zichzelf zijn. Bijvoorbeeld, als je Google als je IdP gebruikt, en inlogt op een sociale app zoals in het bovenstaande voorbeeld, dan is Google een derde-partij IdP voor de sociale app.

Gebruikerstoestemming

Wanneer een gebruiker zich aanmeldt bij een applicatie is het cruciaal dat de gebruiker zich bewust is van welke gegevens worden verzameld en hoe deze zullen worden gebruikt.

Voor eerste-partij IdP worden deze soorten informatie meestal gedekt in het privacybeleid en de servicevoorwaarden van de organisatie. De gebruiker is meestal verplicht om akkoord te gaan met het privacybeleid en de servicevoorwaarden voordat hij zich aanmeldt voor de dienst. Daarom is de gebruiker zich al bewust van welke gegevens worden verzameld en hoe deze zullen worden gebruikt. In dit geval is de toestemming van de gebruiker impliciet.

Het is echter belangrijk voor de IdP om strikte controle te houden over de gegevens die het bezit. De IdP mag geen derde-partij SP toestaan de gebruikersgegevens te benaderen zonder de expliciete toestemming van de gebruiker. Elke gegevensbenadering door een derde-partij SP wordt beschouwd als een activiteit van gegevensdeling. De gebruiker moet worden geïnformeerd over de gegevensdelingsactiviteit en moet hier expliciet mee instemmen.

Daarom is voor derde-partij IdP de toestemming van de gebruiker altijd vereist. Daarom vereisen alle grote IdP's, zoals Google, Facebook en Microsoft, dat de SP een toestemmingsscherm aan de gebruiker toont voordat de gebruiker kan inloggen bij de SP.

Bijvoorbeeld, in het geval van Google, wanneer je probeert een Google OAuth-client aan te maken, word je gevraagd om een gedetailleerde toestemmingsschermconfiguratie te verstrekken.

Google-toestemmingsschermconfiguratie

Dit zorgt ervoor dat de gebruiker zich bewust is van de gegevensdelingsactiviteit en hier expliciet mee heeft ingestemd.

Welke informatie moet in het toestemmingsscherm worden opgenomen?

Toestemmingsschermdemo

Het is belangrijk dat het toestemmingsscherm de gebruiker voldoende informatie biedt om een weloverwogen beslissing te nemen. Inclusief maar niet beperkt tot:

  • Welke partij (SP) vraagt toegang tot de gebruikersgegevens?
  • Wat is de identiteit van de huidige gebruiker?
  • Welke gebruikersgegevens worden verzameld?
  • Hoe zullen de gebruikersgegevens worden gebruikt?
  • Welke aanvullende IdP-geleverde diensten of API zullen worden gebruikt?
  • Welke aanvullende machtigingen worden aan de SP verleend?
  • Wat is het privacybeleid van de SP?

Alle bovenstaande informatie moet precies en duidelijk in het toestemmingsscherm worden opgenomen. De gebruiker moet de informatie zonder enige dubbelzinnigheid kunnen begrijpen. Dit is vooral belangrijk voor de gebruikersgegevens die worden verzameld en hoe ze zullen worden gebruikt.

Het is de verantwoordelijkheid van de IdP om ervoor te zorgen dat de gebruikersgegevens alleen worden gebruikt voor het doel waarvoor de gebruiker toestemming heeft gegeven. De IdP mag de SP de gebruikersgegevens niet laten gebruiken voor enig ander doel zonder de expliciete toestemming van de gebruiker.

Conclusie

Samenvattend, een toestemmingspagina dient als een mechanisme om expliciete toestemming van gebruikers te verkrijgen met betrekking tot het omgaan met hun gegevens, wat bijdraagt aan transparantie en naleving van privacywetten. Het wordt momenteel vereist door alle grote IdP's voor derde-partij SP's, en het speelt een belangrijke rol in het beschermen van de privacy en gegevensveiligheid van gebruikers. Vooral als je een derde-partij IdP-dienst aanbiedt.