# OAuth-fouten oplossen in Google Workspace

OAuth-fouten zijn een dagelijks terugkerend probleem in Google Workspace-omgevingen. Een medewerker probeert Slack, Salesforce of een AI-tool te koppelen en krijgt een foutmelding. Achter die foutmeldingen zit altijd een concrete reden, meestal in de admin console. Dit artikel beschrijft de vijf meest voorkomende OAuth-fouten in 2026 en hoe je ze stap voor stap oplost.

## OAuth in Google Workspace: de basis

Bij OAuth krijgt een externe app toegang tot Workspace-data (mails, bestanden, agenda) zonder dat je je wachtwoord deelt. De app krijgt een token met specifieke scopes: alleen lezen, lezen en schrijven, of beperkt tot een deelgebied. Als beheerder bepaal jij welke apps en welke scopes toegestaan zijn via API-besturing.

```
Admin Console > Beveiliging > API-besturing > App-toegang beheren
```

## Fout 1: Error 400 admin_policy_enforced

Dit is verreweg de meest voorkomende OAuth-fout in 2026 en betekent dat de beheerder de specifieke app heeft geblokkeerd of dat de instellingen nieuwe OAuth-grants beperken.

**Oorzaak:**
- De app staat op **Beperkt** of **Geblokkeerd** in API-besturing
- De app vraagt scopes aan die niet in de whitelist staan
- De standaardinstelling is **Alleen vertrouwde apps toestaan** en de app is niet vertrouwd

**Oplossing:**
```
Admin Console > Beveiliging > API-besturing > App-toegang beheren
Zoek de betreffende app op naam of OAuth-client-ID
Klik op de app > Wijzig toegang > Vertrouwen selecteren
```

Als je de app wilt toevoegen als vertrouwd:

```
App-toegang beheren > Google Services beheren / Andere services
Vertrouwd: Ja
Scopes: selecteer alleen de scopes die nodig zijn
```

> Tip: Behandel dit niet automatisch als een te fixen fout. Vaak is de melding het systeem dat werkt zoals bedoeld: een medewerker probeert een niet-goedgekeurde app te koppelen en jouw beleid voorkomt dat. Check eerst waarom de app nodig is voordat je hem goedkeurt.

## Fout 2: Error 400 invalid_request

**Oorzaak:** de app stuurt een technisch ongeldig OAuth-verzoek. De oorzaak ligt bij de developer van de app, niet bij Workspace.

**Oplossing:**
- Controleer of de app een up-to-date versie is
- Controleer in de app-instellingen of de OAuth-redirect URL correct is
- Controleer of de client-ID en client-secret van de app recent zijn gedraaid
- Neem contact op met de support van de externe app

Als beheerder kun je op Workspace-kant niks doen; dit moet door de app-developer worden opgelost.

## Fout 3: Error 403 access_denied

**Oorzaak:** de gebruiker of beheerder heeft toegang geweigerd tijdens de OAuth-flow, OF de gebruiker heeft onvoldoende rechten voor de gevraagde scopes.

**Oplossing:**
Loop met de gebruiker de OAuth-flow opnieuw door en let op welk scherm de "Weigeren" knop kreeg. Als het de eerste consent-pop-up was: de gebruiker moet opnieuw proberen en "Toestaan" kiezen.

Als de melding komt van een admin-blokkering:
```
Admin Console > Beveiliging > API-besturing > App-toegang beheren
Controleer of de app op Beperkt staat voor deze OU
```

## Fout 4: Error 401 invalid_grant of Token has been expired/revoked

**Oorzaak:** het OAuth-token is niet meer geldig. Dit gebeurt in vier scenarios:
- Gebruiker heeft het token handmatig ingetrokken
- Wachtwoord van de gebruiker is gewijzigd
- Beheerder heeft de app geblokkeerd
- De app heeft 6 maanden geen refresh uitgevoerd (automatische expiratie)

**Oplossing:**
De gebruiker moet opnieuw inloggen en toestemming geven. Verwijder eerst het oude token:
```
Gebruiker > Google Account > Beveiliging > Apps van derden met accounttoegang
Zoek de app > Verwijderen
Koppel de app opnieuw via de app zelf
```

## Fout 5: Error 400 disallowed_useragent

**Oorzaak:** de app gebruikt een embedded web-view in plaats van de systeem-browser. Google blokkeert dit sinds 2020 voor veiligheid (phishing-risico).

**Oplossing:**
Dit is een probleem van de app-developer. Bij interne apps: update naar de nieuwste OAuth-library en gebruik de AppAuth-bibliotheek van Google. Bij externe apps: update de app of neem contact op met support.

## Proactief: OAuth-hygiene in 2026

Sinds de Vercel-breach van 2026 raden wij alle Nederlandse organisaties aan om OAuth-hygiene maandelijks te reviewen:

**Maandelijkse OAuth-audit:**
```
Admin Console > Beveiliging > API-besturing > App-toegang beheren > Gekoppelde apps
Sorteer op: Laatst gebruikt
Acties: apps die 90+ dagen niet gebruikt zijn > Blokkeren of Verwijderen
```

**Alert Center-regel instellen:**
```
Admin Console > Beveiliging > Alert Center > Regels
Trigger: Een app krijgt toegang tot gevoelige scopes (Gmail.readonly, Drive.readonly)
Actie: E-mailnotificatie naar IT-security
```

## Logboeken voor OAuth-diagnose

Bij iedere OAuth-fout wil je zien wat er precies gebeurd is:
```
Admin Console > Rapporten > Audit > Token
Filter: OAuth authorize / revoke
```

Dit geeft per gebruiker, per app en per tijdstip terug welke OAuth-events plaatsvonden. Cruciaal bij forensisch onderzoek na een verdacht login-incident.

## Veelgestelde vragen

**Wat betekent "admin_policy_enforced" precies?**
De beheerder van de Workspace-tenant heeft beleid ingesteld dat deze OAuth-verbinding blokkeert. Oorzaak: app niet in de whitelist, te brede scopes, of de app staat op Geblokkeerd.

**Kan ik OAuth-fouten per gebruiker in plaats van per app blokkeren?**
Niet direct. API-besturing werkt per app, niet per gebruiker. Wel kun je via OUs verschillende whitelist-regels toepassen: IT-gebruikers mogen meer dan marketing-gebruikers.

**Hoe lang is een OAuth-token geldig in Google Workspace?**
Access-tokens zijn 1 uur geldig. Refresh-tokens blijven geldig tot ze worden ingetrokken of 6 maanden niet gebruikt zijn.

**Wat gebeurt er met OAuth-tokens als een gebruiker uit dienst gaat?**
Tokens blijven bestaan totdat het Workspace-account wordt gesuspend of verwijderd. Suspend de account direct bij vertrek; dit maakt alle gekoppelde OAuth-tokens onbruikbaar.

**Kan ik zien welke scopes een app heeft gekregen?**
Ja, in **Admin Console > Beveiliging > API-besturing > Apps**. Selecteer de app en je ziet alle OAuth-scopes die eerder toegestaan zijn.

**Moet ik nieuwe AI-tools standaard blokkeren?**
Ja, aanbeveling voor 2026 is de default "Beperkt". Medewerkers vragen expliciet een nieuwe AI-tool aan, IT beoordeelt op data-privacy en scope-minimum, en whitelist pas na goedkeuring.

**Wat doe ik als een app plotseling niet meer werkt na een admin-wijziging?**
Controleer **Admin Console > Beveiliging > API-besturing** of de app is geblokkeerd. Bekijk ook **Audit > Token** om te zien wanneer een token recent is ingetrokken.

**Hoe test ik een nieuwe OAuth-app veilig?**
Maak een test-OU "OAuth Pilot" met een beperkt aantal testgebruikers. Whitelist de app alleen voor die OU. Monitor 2 weken lang de API-activiteit en beoordeel scope-gebruik voordat je organisatiebreed uitrolt.

## Conclusie

OAuth-fouten zijn vaak geen bug maar beleid dat werkt zoals bedoeld. De oplossing ligt bijna altijd in **Admin Console > Beveiliging > API-besturing**. Voor grotere organisaties is OAuth-hygiene in 2026 een maandelijkse activiteit, geen ad-hoc interventie. Total Workspace helpt Nederlandse organisaties bij het inrichten van OAuth-governance en het oplossen van complexe authenticatieproblemen.