Knowledgebase

Sharepoint site toegang beheren en limiteren

De U-Turn SharePoint-app beperken tot één site

Stap-voor-stap handleiding voor SharePoint- / Microsoft 365-beheerders

Standaard kan de U-Turn SharePoint-koppeling elke site in de tenant zien, waardoor de bestandenbrowser ze allemaal toont. Deze handleiding beperkt de koppeling tot één site. In de voorbeelden gebruiken we Domain_PD_Test.

Menu’s in het Entra-portaal staan in het Nederlands, met de Engelse naam tussen haakjes. Namen van Graph-machtigingen (Sites.Selected, Sites.Read.All, enzovoort) blijven in het Engels; dat zijn de officiële namen.


Voordat u begint

Wat u nodig hebt

Voorbeeld / toelichting

Beheerdersrol

Globale beheerder, of (Toepassingsbeheerder + SharePoint-beheerder)

App-registratie

b.v. 'Mijn U-Turn Sharepoint integration'

Toepassings-(client)id (Guid)

6d31cf7f-bce5-47fa-b079-9a6c12ab3db1

Tenant-id (Guid)

Entra-beheercentrum → Identiteit → Overzicht

URL van de doelsite

<https://domain.sharepoint.com/sites/Domain_PD_Test>

PowerShell 7

Alleen nodig voor stap 1 en 4

PowerShell script

Download hier: SharepointScript_nl.zip

Doe dit in de juiste volgorde. Geef de app eerst toegang tot de ene site (stap 1) en verwijder daarna pas de brede machtigingen (stap 3). Anders heeft U-Turn tijdelijk helemaal geen toegang en vallen flows om.

Plan een korte onderbreking. Tussen stap 3 en het moment waarop U-Turn een nieuw token ophaalt, kunnen SharePoint-flows tot ongeveer een uur falen. Doe dit bij voorkeur buiten kantooruren, of pauzeer de betreffende flows.


Stap 1 — Geef de app toegang tot de ene site

Hiermee wordt één machtigingsregel op de site zelf gezet. Verder verandert er niets in de tenant.

  1. Open PowerShell 7 in de map waar Grant-SelectedSharePointAccess.ps1 staat.

  2. Voer uit: pwsh -File .\\Grant-SelectedSharePointAccess.ps1

  3. Beantwoord de vragen:

    • Tenant-id

    • App-client-id

    • Weergavenaam van de app — druk op Enter voor de standaardwaarde

    • Soort doel — kies SharePoint-site

    • Rol — kies write (U-Turn-flows die bestanden uploaden hebben dit nodig)

    • Identificatie — kies Op site-URL en plak de volledige site-URL

  4. Lees de samenvatting en typ YES om door te gaan.

  5. Meld u aan met uw beheerdersaccount wanneer het browservenster verschijnt.

Controlepunt. De uitvoer eindigt met “Resource access was stamped successfully” en toont een JSON-blok met de app-naam en "roles": ["write"]. Een waarschuwing over het legen van de tokencache helemaal aan het einde is onschuldig.

Geen PowerShell? Gebruik Graph Explorer — zie de bijlage onderaan.


Stap 2 — Voeg de beperkte machtiging toe in Entra

  1. Ga naar entra.microsoft.com en meld u aan als beheerder.

  2. Open Identiteit → Toepassingen → App-registraties (Identity → Applications → App registrations).

  3. Selecteer U-Turn Sharepoint integration.

  4. Open API-machtigingen (API permissions).

  5. Klik op Een machtiging toevoegen (Add a permission) → Microsoft GraphToepassingsmachtigingen (Application permissions).

  6. Zoek op Sites.Selected, vink die aan en klik op Machtigingen toevoegen.

  7. Klik op Beheerderstoestemming verlenen voor … (Grant admin consent for \<tenant\>) en bevestig.

Controlepunt. Onder Geconfigureerde machtigingen (Configured permissions) staat Sites.Selected met status Verleend (Granted) en een groen vinkje.


Stap 3 — Verwijder de brede machtigingen

Dit is de stap die de overige sites daadwerkelijk verbergt. Blijf op de pagina API-machtigingen.

3a. Verwijder ze uit de geconfigureerde lijst

In de lijst Geconfigureerde machtigingen (Configured permissions) verwijdert u elke machtiging hieronder, als die aanwezig is. Gebruik het menu aan het einde van de rij → Machtiging verwijderen (Remove permission).

  • Sites.Read.All

  • Sites.ReadWrite.All

  • Sites.Manage.All

  • Sites.FullControl.All

  • Files.Read.All

  • Files.ReadWrite.All

Houd Sites.Selected aan, en houd de gedelegeerde machtiging User.Read aan.

3b. Trek toestemming in voor machtigingen die nog steeds zijn verleend

Dit is de stap die het vaakst wordt overgeslagen. Een machtiging uit de geconfigureerde lijst halen trekt niet de toestemming in die al is gegeven. De machtiging zakt naar een tweede lijst en blijft actief. Slaat u 3b over, dan blijft de bestandenbrowser alle sites tonen.

  1. Scroll naar Overige machtigingen die zijn toegekend aan … (Other permissions granted for \<tenant\>).

  2. Voor elke rij van het type Toepassing (Application) die niet Sites.Selected is, opent u het menu en kiest u Beheerderstoestemming intrekken (Revoke admin consent).

  3. Bevestig elke verwijdering en klik daarna op Vernieuwen (Refresh).

Laat de gedelegeerde machtiging User.Read staan: die laat alleen een aangemelde gebruiker het eigen profiel lezen en geeft geen toegang tot SharePoint-inhoud.

Controlepunt. Na vernieuwen is de enige toepassingsmachtiging op de hele pagina Sites.Selected.


Stap 4 (optioneel) — Controleer wat de app écht mag

Voer dit uit in PowerShell 7. Dit toont wat de app daadwerkelijk heeft, onafhankelijk van wat de pagina toont:

PowerShell
Connect-MgGraph -Scopes 'Application.Read.All','AppRoleAssignment.ReadWrite.All' -NoWelcome

$appId = '6d31cf7f-bce5-47fa-b079-9a6c12ab3db1'
$sp    = Get-MgServicePrincipal -Filter "appId eq '$appId'"
$graph = Get-MgServicePrincipal -Filter "appId eq '00000003-0000-0000-c000-000000000000'"

Get-MgServicePrincipalAppRoleAssignment -ServicePrincipalId $sp.Id | ForEach-Object {
    $role = $graph.AppRoles | Where-Object Id -eq $_.AppRoleId
    [pscustomobject]@{ Permission = $role.Value; Resource = $_.ResourceDisplayName }
}

Controlepunt. De uitvoer toont precies één regel: Sites.Selected op resource Microsoft Graph. Staat er iets anders, trek dat dan in via stap 3b.

Verschijnt een machtiging met een andere resource dan Microsoft Graph — bijvoorbeeld Office 365 SharePoint Online — dan is dat een oudere grant. Verwijder die op dezelfde manier in Bedrijfsapps (Enterprise applications) → de app → Machtigingen (Permissions).


Stap 5 — Wijs U-Turn naar de site

Zodra de app alleen Sites.Selected heeft, kan ze Microsoft niet meer om een lijst van sites vragen. De U-Turn-bestandenbrowser heeft dan op het hoogste niveau niets om te tonen. U moet U-Turn vertellen bij welke site te beginnen.

  1. Open de SharePoint-applicatie (koppeling) in U-Turn.

  2. Vul het veld Sites met de volledige site-URL: <https://mooqe.sharepoint.com/sites/Mooqe_PD_Test>

  3. Sla de applicatie op en voer Verbinding testen uit.

Mag deze koppeling bij meer dan één site? Zet elke URL op een eigen regel, of scheid ze met een puntkomma. Elke site in dit veld moet in stap 1 zijn verleend.

Controlepunt. De bestandenbrowser opent alleen Mooqe_PD_Test, en de documentbibliotheken en mappen daarin zijn zoals voorheen te openen. Andere sitenamen verschijnen niet.


Problemen oplossen

Symptoom

Oorzaak en oplossing

Alle sites worden nog steeds getoond

Er is nog een brede machtiging verleend. Herhaal stap 3b en controleer met stap 4. Wacht ook tot een uur, of herstart de U-Turn-service: een al uitgegeven token behoudt de oude rechten tot het verloopt.

Bestandenbrowser is leeg terwijl het veld Sites is ingevuld

De site-URL is verkeerd gespeld, of stap 1 is niet uitgevoerd voor de site. Voer stap 1 opnieuw uit met de URL uit de adresbalk van de browser.

“Access denied” wanneer een flow een bestand uploadt

De site is verleend met rol read. Voer stap 1 opnieuw uit en kies write.

Alles faalt direct na stap 3

Stap 1 is overgeslagen of mislukt. Voer stap 1 uit en let op de resultaten van het script; de toegang keert terug zonder verdere wijzigingen.

Foutmelding bij opslag van de site- Url’s, of niet alle ingevoerde sites worden getoond in U-Turn

De sites zijn niet correct ingevoerd. Controleer of de sites zijn gescheiden met komma's


Bijlage — Stap 1 zonder PowerShell

  1. Open developer.microsoft.com/graph/graph-explorer en meld u aan als beheerder.

  2. Voer dit GET-verzoek uit en kopieer de waarde id uit het antwoord:

GET https://graph.microsoft.com/v1.0/sites/mooqe.sharepoint.com:/sites/Domain_PD_Test
  1. Zet de methode op POST, gebruik de URL hieronder met die id, en plak de body:

POST https://graph.microsoft.com/v1.0/sites/{site-id}/permissions

{
  "roles": ["write"],
  "grantedToIdentities": [
    {
      "application": {
        "id": "6d31cf7f-bce5-47fa-b079-9a6c12ab3db1",
        "displayName": "U-Turn Sharepoint integration"
      }
    }
  ]
}
  1. Voer het verzoek uit. Een antwoord met "roles": ["write"] betekent dat het is gelukt.