Beveiliging verbeteren met het principe van minimale bevoegdheden

Het informatiebeveiligingsprincipe van minimale bevoegdheden stelt dat gebruikers en toepassingen alleen toegang moeten krijgen tot de gegevens en bewerkingen die ze nodig hebben om hun taken uit te voeren. Volg de richtlijnen hier om het oppervlak voor aanvallen van een toepassing en de impact van een beveiligingsschending (de straal) te reduceren moet één geval zich voordoen in een Microsoft Identity Platform geïntegreerde toepassing.

Aanbevelingen in één oogopslag

  • Voorkom toepassingen met teveel bevoegdheden door ongebruikte en reduceerbare machtigingen in te trekken.
  • Gebruik het toestemmingsframework van het identiteitsplatform om te vereisen dat een menselijke toestemming voor de aanvraag van de toepassing toegang heeft tot beveiligde gegevens.
  • Bouw toepassingen met minimale bevoegdheden in gedachten tijdens alle fasen van de ontwikkeling.
  • Controleer de geïmplementeerde toepassingen periodiek om de toepassingen met teveel bevoegdheden te identificeren.

Toepassingen met teveel bevoegdheden

Elke toepassing waaraan een ongebruikte of reduceerbare machtiging is verleend, wordt beschouwd als een toepassing met teveel bevoegdheden. Ongebruikte en reduceerbare machtigingen hebben de mogelijkheid om onbevoegde of onbedoelde toegang te bieden tot gegevens of bewerkingen die niet zijn vereist door de toepassing of de gebruikers om hun taken uit te voeren. Vermijd beveiligingsrisico's die worden veroorzaakt door ongebruikte en reduceerbare machtigingen door alleen de juiste machtigingen te verlenen. De juiste machtigingen zijn de machtigingen met de minst permissieve toegang die is vereist door een toepassing of gebruiker om de vereiste taken uit te voeren.

Ongebruikte machtigingen

Een ongebruikte machtiging is een machtiging die is verleend aan een toepassing, maar waarvan de API of bewerking die door die machtiging wordt weergegeven, niet wordt aangeroepen door de toepassing wanneer deze wordt gebruikt zoals bedoeld.

  • Voorbeeld: in een toepassing wordt een lijst weergegeven met bestanden die zijn opgeslagen in OneDrive van de aangemelde gebruiker door de Microsoft Graph-API aan te roepen met behulp van de machtiging Files.Read. De machtiging Calendars.Read is ook echter aan de toepassing toegekend, maar biedt geen agendafuncties en roept de agenda's-API niet aan.

  • Beveiligingsrisico: ongebruikte machtigingen vormen een beveiligingsrisico voor horizontale escalatie van bevoegdheden. Een entiteit die misbruik maakt van een beveiligingsprobleem in de toepassing, kan een ongebruikte machtiging gebruiken om toegang te krijgen tot een API of bewerking die normaal gesproken niet wordt ondersteund of toegestaan door de toepassing wanneer deze wordt gebruikt zoals bedoeld.

  • Beperking: verwijder alle machtigingen die niet worden gebruikt in API-aanroepen die door de toepassing worden gedaan.

Reduceerbare machtigingen

Een reduceerbare machtiging is een machtiging die een tegenhanger met lagere bevoegdheden heeft die de toepassing en de gebruikers nog steeds de toegang zou bieden die ze nodig hebben om hun vereiste taken uit te voeren.

  • Voorbeeld: een toepassing geeft de profielgegevens van de aangemelde gebruiker weer door de Microsoft Graph-API aan te roepen, maar biedt geen ondersteuning voor het bewerken van profielen. Aan de toepassing is echter de machtiging User.ReadWrite.All toegekend. De machtiging User.ReadWrite.All wordt hier beschouwd als verleidend omdat de machtiging User.Read.All onvoldoende alleen-lezentoegang verleent tot gebruikersprofielgegevens.

  • Beveiligingsrisico: reduceerbare machtigingen vormen een beveiligingsrisico voor verticale escalatie van bevoegdheden. Een entiteit die misbruik maakt van een beveiligingsprobleem in de toepassing, kan gebruikmaken van de reduceerbare machtiging voor onbevoegde toegang tot gegevens of om bewerkingen uit te voeren die normaal gesproken niet zijn toegestaan door die rol van de entiteit.

  • Beperking: vervang elke reduceerbare machtiging in de toepassing door de minst permissieve tegenhanger die nog steeds de beoogde functionaliteit van de toepassing inschakelt.

De meeste toepassingen vereisen toegang tot beveiligde gegevens en de eigenaar van die gegevens moet toestemming geven voor die toegang. Toestemming kan op verschillende manieren worden verleend, waaronder door een tenantbeheerder die toestemming kan geven voor alle gebruikers in een Microsoft Entra-tenant, of door de toepassingsgebruikers zelf die toegang kunnen verlenen.

Wanneer een toepassing die wordt uitgevoerd op een apparaat toegang vraagt tot beveiligde gegevens, moet de toepassing om toestemming van de gebruiker vragen voordat deze toegang verleent tot de beveiligde gegevens. De gebruiker moet toestemming geven (of weigeren) voor de aangevraagde machtiging voordat de toepassing kan worden voortgezet.

Minimale bevoegdheden tijdens het ontwikkelen van toepassingen

De beveiliging van een toepassing en de gebruikersgegevens waartoe deze toegang heeft, is de verantwoordelijkheid van de ontwikkelaar.

Houd u tijdens het ontwikkelen van een toepassing aan deze richtlijnen om te voorkomen dat de toepassing teveel bevoegdheden heeft:

  • Begrijp volledig de vereiste machtigingen voor de API-aanroepen die door de toepassing moeten worden uitgevoerd.
  • Begrijp de minst bevoegde machtiging voor elke API-aanroep die de toepassing moet maken met Graph Explorer.
  • Zoek de bijbehorende machtigingen van minimale naar maximale bevoegdheden.
  • Verwijder dubbele machtigingensets in cases waarin de toepassing API-aanroepen uitvoert die overlappende machtigingen hebben.
  • Pas alleen de machtigingenset met minimale bevoegdheden toe op de toepassing door de machtigingslijst met minimale bevoegdheden te kiezen.

Minimale bevoegdheden voor geïmplementeerde toepassingen

Organisaties aarzelen vaak om actieve toepassingen te wijzigen om te voorkomen dat ze hun normale bedrijfsactiviteiten beïnvloeden. Een organisatie moet echter overwegen om het risico van een beveiligingsincident dat mogelijk of ernstiger is gemaakt, te beperken door toepassingen die teveel machtigingen hebben op geplande tijden bij te werken.

Zorg ervoor dat deze standaardpraktijken in een organisatie ervoor zorgen dat geïmplementeerde toepassingen niet teveel bevoegdheden hebben en dit niet worden in de loop van de tijd:

  • Evalueer de API-aanroepen die worden uitgevoerd vanuit de toepassingen.
  • Gebruik Graph Explorer- en de Microsoft Graph-documentatie voor de machtigingen met vereiste en minimale bevoegdheden.
  • Controlebevoegdheden die worden toegekend aan gebruikers of toepassingen.
  • Werk de toepassingen bij met de machtigingenset met minimale bevoegdheden.
  • Controleer regelmatig de machtigingen om ervoor te zorgen dat alle geautoriseerde machtigingen nog steeds relevant zijn.

Volgende stappen