Hoe werkt de autorisatie richting One Drive/ Sharepoint en welke methode gebruiken jullie?

Wij maken op de achtergrond gebruik van Graph.

Bij het aanmaken van een Bestandsbibliotheek waarbij de gebruiker kiest voor het type OneDrive (Microsoft Teams/SharePoint/OneDrive) moet men toestemming geven (als het admin-consent aanstaat), en logt in via een Office-account.

We ontvangen daarmee ‘On Behalf’ rechten van de betreffende gebruiker. De scopes zijn als volgt bepaald:

  • Microsoft Teams: “User.Read”, “Team.ReadBasic.All”, "Channel.ReadBasic.All.
  • SharePoint: “User.Read”, “Sites.Read.All”
  • OneDrive: “User.Read”

Daarnaast worden afhankelijk van de gekozen optie (in de Bestandsbibliotheek) de volgende nog toegevoegd:

  • Lezen: “Files.Read.All”
  • Lezen en schrijven: “Files.ReadWrite.All”

We hebben deze rechten nodig om de juiste mappen te kunnen selecteren waar de bestanden eventueel opgehaald, of weggeschreven moeten worden. Er wordt een token bijgehouden op basis van de rechten hierboven voor die betreffende gebruiker op die betreffende Bestandsbibliotheek. Bij het verwijderen van de Bestandsbibliotheek wordt deze ook opgeruimd.

Het is dus aan te raden om een gebruiker te gebruiken die alleen toegang heeft tot de map waar je specifiek mee aan de slag wilt (een soort van service-account gebruiker).