Tekunda Team

Tekunda Team

Salesforce-authenticatie: je complete migratiegids

Salesforce-authenticatie: je complete migratiegids

Salesforce-authenticatie verandert: je complete migratiegids

In september 2025 voert Salesforce grote wijzigingen door in Connected App security die invloed hebben op hoe je applicaties authenticeren. Er gebeuren twee grote verschuivingen:

De OAuth 2.0 Device Flow wordt geblokkeerd.

Niet-geïnstalleerde Connected Apps zijn niet langer toegankelijk voor de meeste gebruikers.

Deze blog legt uit hoe je migreert van de Device Login flow naar Connected App OAuth2 Flow met PKCE, waarom deze wijziging belangrijk is en hoe je je goed voorbereidt.

Waarom Salesforce Device Flow blokkeert

De Device Flow (RFC8628) heeft een bekende kwetsbaarheid: hij kan worden gestart met alleen een client_id. Een kwaadwillende kan dit misbruiken in social engineering en gebruikers misleiden om onbetrouwbare apps goed te keuren.

Impact in de praktijk: Recente opvallende datalekken bij bedrijven zoals KLM Airfrance, Adidas, Google, Qantas en Allianz Life werden uitgevoerd door dreigingsgroepen zoals UNC6040/ShinyHunters met precies deze aanvalsvector. Aanvallers gebruikten social engineering, zoals telefoontjes namens IT, om medewerkers via Device Flow schadelijke Connected Apps te laten autoriseren.

Salesforce heeft bevestigd dat deze kwetsbaarheid in productieomgevingen is misbruikt, waardoor de deprecatie een security-noodzaak is en niet alleen een technische upgrade.

Overstappen naar Connected App OAuth2 Flow met PKCE

De veilige vervanging is PKCE (Proof Key for Code Exchange), een uitbreiding op de Authorization Code Flow die onderschepping van de authorization code voorkomt.

Stap 1: Genereer PKCE-parameters

Maak een code_verifier aan, een willekeurige cryptografisch veilige string van 43-128 tekens.

Hash deze met SHA256 en base64url-encodeer hem → code_challenge.

Belangrijk: Gebruik base64url encoding, niet standaard base64. Dit vervangt + door -, / door _ en verwijdert paddingtekens = voor URL-veiligheid.

Stap 2: Bouw de authorization URL

Zorg dat je de kritieke parameter opneemt die essentieel is voor PKCE:

code_challenge_method=S256

Voorbeeld:

https://login.salesforce.com/services/oauth2/authorize?
client_id=YOUR_CLIENT_ID&
response_type=code&
redirect_uri=YOUR_CALLBACK_URL&
scope=full refresh_token&
code_challenge_method=S256&
code_challenge=YOUR_CODE_CHALLENGE&
state=YOUR_RANDOM_STATE

Stap 3: Wissel authorization code om voor tokens

Stuur de code en code_verifier terug naar Salesforce:

POST /services/oauth2/token
grant_type=authorization_code
client_id=YOUR_CLIENT_ID
code=AUTH_CODE
code_verifier=ORIGINAL_CODE_VERIFIER
redirect_uri=CALLBACK_URL

Stap 4: Werk permissies bij

Salesforce voegt nieuwe permissies toe met regels op basis van je org-configuratie:

Als API Access Control UIT staat, bij de meeste orgs:

Gebruikers kunnen niet-geïnstalleerde apps openen met een van deze permissies:

  • Approve Uninstalled Connected Apps (nieuw in Summer '25), aanbevolen voor de meeste gevallen
  • Use Any API Client, bredere permissie, spaarzaam gebruiken

Als API Access Control AAN staat:

Alleen de permissie Use Any API Client werkt voor toegang tot niet-geïnstalleerde apps.

Specifieke wijzigingen voor Data Loader

Kritieke deadline: 2 september 2025, OAuth Device Flow support eindigt in Data Loader.

Vereiste acties:

  • Wissel authenticatiemethode vóór 2 september:
    • Password authentication (username + password + security token)
    • OAuth Web Server Flow (aanbevolen)
  • Update Data Loader, Salesforce brengt vóór 2 september een nieuwe versie uit waarin Device Flow volledig is verwijderd
  • Let op: command line gebruik met versleutelde wachtwoorden blijft onaangetast

Veelvoorkomende migratie-uitdagingen

PKCE-fouten ("invalid code verifier"): meestal veroorzaakt door ontbrekende code_challenge_method=S256 of onjuiste base64url encoding.

Geblokkeerde gebruikerstoegang na september: los dit op door de juiste permissie toe te wijzen op basis van je API Access Control-status.

Data Loader login failures: migreer de authenticatiemethode vóór 2 september 2025.

Onjuiste Connected App-configuratie: stel bij installatie "Permitted Users" in op "Admin approved users are pre-authorized" voor betere security control.

Tijdlijn en actieplan

Directe acties (vóór 2 september 2025)

Audit Connected Apps:

  • Ga naar Setup → Connected Apps OAuth Usage
  • Zoek naar "Install"-knoppen in de Actions-kolom, dit wijst op niet-geïnstalleerde apps

Identificeer Device Flow-gebruik:

  • Focus op Data Loader-gebruikers
  • Controleer custom applications die Device Flow gebruiken

Plan PKCE-implementatie:

  • Review huidige OAuth flows
  • Bereid developmentresources voor op PKCE-migratie

Migratiefase (aug–sep 2025)

Implementeer PKCE-enabled OAuth flow:

  • Zorg voor correcte base64url encoding
  • Neem de parameter code_challenge_method=S256 op
  • Test authorization en token exchange flows

Test in Salesforce sandbox:

  • Valideer PKCE-implementatie
  • Test user permission assignments
  • Verifieer Data Loader-alternatieven

Configureer Connected Apps correct:

  • Installeer vertrouwde niet-geïnstalleerde apps met de knop "Install"
  • Zet "Permitted Users" op "Admin approved users are pre-authorized"
  • Ken toegang toe via Permission Sets volgens least privilege

Bereid Data Loader-migratie voor:

  • Train gebruikers op nieuwe authenticatiemethoden
  • Werk documentatie en procedures bij
  • Test password authentication of Web Server Flow

Na migratie (na september 2025)

Monitor authenticatielogs:

  • Let op mislukte authenticatiepogingen
  • Volg Connected App-gebruikspatronen
  • Monitor security incidents

Bied gebruikersondersteuning:

  • Pak toegangsproblemen snel op
  • Help gebruikers met nieuwe authenticatiemethoden
  • Documenteer veelvoorkomende troubleshootingstappen

Review security policies per kwartaal:

  • Audit Connected App-permissies regelmatig
  • Review gebruikerstoegang tot gevoelige integraties
  • Overweeg API Access Control voor extra security

Aanbevelingen voor betere security

Optioneel maar aanbevolen: schakel API Access Control in

Neem contact op met Salesforce Support om deze feature in te schakelen. Dit biedt:

  • Connected App-toegang op basis van allowlist
  • Granulaire controle over welke apps gebruikers mogen openen
  • Proactieve blokkering van ongeautoriseerde applicaties

Gebruikerstraining is cruciaal

  • Train gebruikers om social engineering te herkennen
  • Leg duidelijke procedures vast voor Connected App access requests
  • Communiceer security best practices regelmatig
  • Herinner gebruikers eraan nooit onbekende applicaties goed te keuren

Governance framework

  • Definieer duidelijk eigenaarschap voor elke Connected App
  • Richt approval processes in voor nieuwe integraties
  • Voer regelmatige access reviews uit
  • Betrek securityteams bij Connected App policies

Belangrijke uitzondering

Bestaande autorisaties: gebruikers die Connected Apps eerder hebben geautoriseerd, kunnen deze na september 2025 blijven gebruiken, BEHALVE wanneer die apps via Device Flow zijn geautoriseerd. Alle Device Flow-autorisaties worden direct geblokkeerd, ongeacht eerder gebruik.

Conclusie

Salesforce's deprecatie van Device Flow is niet alleen een technische upgrade, maar een kritieke securityreactie op echte aanvallen die grote organisaties hebben geraakt. De recente incidenten bij bekende bedrijven tonen de urgentie van deze verbeteringen.

Door te migreren naar Connected App OAuth2 Flow met PKCE en permissies correct te configureren, kunnen organisaties:

  • Zich beschermen tegen onderschepping van authorization codes
  • Voldoen aan Salesforce's evoluerende security-eisen
  • Het aanvalsoppervlak voor social engineering verkleinen
  • Business continuity behouden voor kritieke integraties

Belangrijkste succesfactoren:

  • Start de migratie direct, wacht niet tot september
  • Test grondig in sandboxomgevingen
  • Focus op gebruikerstraining en governance
  • Overweeg extra securitylagen zoals API Access Control

Vroeg voorbereiden, grondig testen en goede governance invoeren minimaliseert verstoring en versterkt tegelijk de securityhouding van je organisatie.

FAQ

Waarom blokkeert Salesforce de OAuth 2.0 Device Flow?

Omdat een Device Flow-verzoek met alleen een client_id gestart kan worden. Aanvallers belden medewerkers, deden zich voor als IT en lieten ze een kwaadaardige Connected App goedkeuren, dus is de flow ingetrokken in plaats van gerepareerd.

Wat vervangt Device Flow voor Salesforce-authenticatie?

De Authorization Code Flow met PKCE. Je genereert een code_verifier, stuurt de SHA256-hash daarvan in base64url mee als code_challenge, en geeft de originele verifier terug bij het inwisselen van de authorization code.

Waardoor krijg je een "invalid code verifier" bij PKCE?

Meestal door een ontbrekende code_challenge_method=S256 of door gewone base64 waar base64url hoort. Base64url vervangt + en / door - en _ en laat de padding weg.

Blijven bestaande Connected App-autorisaties werken?

Autorisaties via andere flows blijven gewoon werken. Alles wat een gebruiker via Device Flow heeft goedgekeurd wordt geblokkeerd, hoe lang het ook in gebruik is, dus die integraties moeten opnieuw geautoriseerd worden.

Hoe vind je niet-geïnstalleerde Connected Apps in je org?

Ga in Setup naar Connected Apps OAuth Usage. Een "Install"-knop in de kolom Actions markeert een app die wel geautoriseerd maar niet geïnstalleerd is, en dat is precies de lijst die je wilt nalopen.

Referenties

Gerelateerde artikelen

Benieuwd naar sneller releasen voordat je instapt? Laten we praten

Vrijblijvend.