Toepassingen beveiligen met continue toegangsevaluatie

Dit artikel helpt u, als ontwikkelaar, om de beveiliging van toepassingen te verbeteren met continue toegangsevaluatie. U leert hoe u ervoor kunt zorgen dat Zero Trust-ondersteuning in uw apps die autorisatie ontvangen voor toegang tot resources wanneer ze toegangstokens verkrijgen van Microsoft Entra-id.

Wanneer Microsoft Entra ID deze toegangstokens uitgeeft, worden de voorwaarden voor die autorisatie volledig geëvalueerd. Microsoft Entra ID voert standaardautorisatieacties uit, zoals ervoor zorgen dat toestemming voor de toepassing is verleend, telkens wanneer tokens worden verleend voor initiële tokenaanvragen en wanneer tokens worden vernieuwd.

Microsoft Entra ID maakt voornamelijk gebruik van JSON-webtokens (JWT) voor toegangstokens. Een resource-API kan de JWT decoderen, valideren en interpreteren zonder dat u bij elke aanroep naar de resource-API opnieuw naar Microsoft Entra-id hoeft te worden teruggeroepen. De JWT-standaard definieert een exp-claim die de on-or-after verlooptijd identificeert die u het JWT-token niet mag accepteren voor verwerking. Standaard verlopen Microsoft Entra-tokens 60 tot 90 minuten na het probleem. Uw toepassingen moeten voor deze periode toegangstokens in de cache opslaan en gebruiken, waarbij microsoft Entra-id de autorisatievoorwaarden niet evalueert.

Voorwaarden evalueren buiten het uitgeven van het token

Microsoft-klanten hebben zich zorgen gemaakt over vertragingen tussen wijzigingen in gebruikersvoorwaarden en het afdwingen van beleidswijzigingen wanneer Microsoft Entra ID tokens uitgeeft. Deze benadering voor de levensduur van tokens kan gebruikerservaringen en betrouwbaarheid verminderen zonder risico's te elimineren.

Eén oplossing is het evalueren van voorwaarden voor elke aanroep naar een beveiligde resource. De meest voorkomende manier om deze afdwinging te implementeren, is introspectie van tokens. Tokenintrospection gebruikt geen JWT-indeling voor het token. In plaats daarvan gebruikt tokenintrospectie een ondoorzichtige tekenreeks die de resource-API niet kan interpreteren. De resource-API verzendt het token naar de id-provider voor elke aanroep. De id-provider controleert vervolgens op eventuele voorwaarden en retourneert gegevens die de resource-API kan gebruiken om de bewerking te voltooien. Dit proces kan duur zijn omdat er een andere retourwebaanvraag wordt toegevoegd aan elke API-aanroep.

Om deze kosten te verhelpen met CAE (Continuous Access Evaluation ), kan een resource-API luisteren naar gebeurtenissen die door Microsoft Entra ID worden gepusht over de tokens die problemen met Microsoft Entra ID voor de resource-API ondervinden. Wanneer uw toepassing bijvoorbeeld de Microsoft Graph API aanroept, kan Microsoft Graph controleren of deze gebeurtenissen van Microsoft Entra ID over het token heeft ontvangen. Als de voorwaarden van de oorspronkelijke verificatie zijn gewijzigd en de gebruiker opnieuw moet verifiëren, retourneert Microsoft Graph een fout bij de aanroepende app.

Microsoft Entra-id verzendt een gebeurtenis naar Microsoft-resources met CAE-functionaliteit wanneer een van deze gebeurtenissen plaatsvindt:

  • Verwijderd of uitgeschakeld gebruikersaccount
  • Gebruikerswachtwoord gewijzigd of opnieuw instellen
  • Meervoudige verificatie van gebruikers ingeschakeld
  • Beheer istrator alle vernieuwingstokens voor een gebruiker expliciet intrekt
  • Microsoft Entra ID Protection detecteert verhoogde gebruikersrisico's

Daarnaast kunnen Microsoft-resources met CAE-functionaliteit beleidsregels voor voorwaardelijke toegang op basis van locatie afdwingen.

Toepassingsbeveiliging en -tolerantie verbeteren met CAE

De video Over veiligere en tolerantere apps die zijn gebouwd op Microsoft Entra Continuous Access Evaluation laat zien hoe u een client-app bouwt met CAE-ondersteuning.

Bekijk de bovenstaande presentatie om te leren hoe toepassingen werken bij het gebruik van moderne verificatie met deze stappen:

  • Hoe toepassingen werken bij het gebruik van moderne verificatie
  • App vraagt Microsoft-identiteit voor tokens
  • App ontvangt een toegangstoken
  • App roept API/autorisatie aan met JWT
  • Introspection
  • Gedeelde signalen en gebeurtenissen
  • Evaluatie van kritieke gebeurtenissen
  • Evaluatie van beleid voor voorwaardelijke toegang
  • Continue toegangsevaluatie van API aangeroepen
  • Claimuitdaging

Met continue toegangsevaluatie kan de autorisatie van een toepassing toegang krijgen tot een resource die buiten de levensduur van het toegangstoken is ingetrokken. Een toepassing heeft bijvoorbeeld een token dat langer dan 75 minuten geldig is. Een gebruiker heeft een status met een hoog risico vanwege geschonden referenties. CAE blokkeert de toegang van de app tot de resource, waardoor de gebruiker opnieuw moet verifiëren voordat deze doorgaat. CAE bereikt dus het primaire doel om app-beveiliging te verbeteren.

Omdat toegang tot een resource buiten de levensduur van een token kan worden ingetrokken, kan de Microsoft Entra-id tokens uitgeven voor een langere levensduur. Voor apps die CAE ondersteunen, kan Microsoft Entra ID tokens uitgeven die maximaal 28 uur geldig zijn. Hoewel deze langere levensduur van het token de tolerantie van de app niet verbetert, worden de toepassingskosten verlaagd, omdat de app veel minder vaak tokens moet aanvragen.

CAE verbetert de tolerantie van een app voor problemen die de app kan tegenkomen bij het verkrijgen van een toegangstoken van Microsoft Entra ID. Indien mogelijk geeft Microsoft Entra ID een vernieuwingstijd uit als onderdeel van een tokenantwoord dat een toegangstoken bevat. Microsoft Authentication Libraries (MSAL) gebruiken deze vernieuwingstijd om het token proactief te vernieuwen. De vernieuwingstijd is een fractie (meestal de helft) van de verlooptijd van het token. Zolang MSAL het toegangstoken vóór de verlooptijd van het token kan vernieuwen, is de app bestand tegen problemen met het vernieuwen van tokens.

Wanneer een app bijvoorbeeld CAE ondersteunt, geeft Microsoft Entra ID een token uit waarmee de app Microsoft Graph kan aanroepen die 24 uur geldig is. Microsoft Entra ID vertelt MSAL vervolgens om het token na 12 uur proactief te vernieuwen. Als MSAL probeert het toegangstoken te vernieuwen, mislukt omdat het oorspronkelijke toegangstoken nog 12 uur geldig is, is de app toleranter voor problemen wanneer er tokens worden verkregen van Microsoft Entra-id.

Continue toegangsevaluatie implementeren in uw app

Zoals beschreven in Het gebruik van API's voor continue toegangsevaluatie in uw toepassingen, moeten zowel uw app als de resource-API die toegang heeft tot CAE zijn ingeschakeld. Het voorbereiden van uw code voor het gebruik van een resource waarvoor CAE is ingeschakeld, voorkomt echter niet dat u API's gebruikt die niet zijn ingeschakeld voor CAE. Toepassingen die geen MSAL gebruiken, kunnen ondersteuning toevoegen voor claimsuitdagingen, claimsaanvragen en clientmogelijkheden voor het gebruik van CAE.

Volgende stappen