Concedere l'accesso a SharePoint alle app esterne tramite Add-in Permissions
Spesso è necessario accedere a SharePoint Online da applicazioni esterne, ad esempio una Azure App Function scritta in C# o una console application. E' possibile concedere l'accesso tramite gli Add-in Permissions di SharePoint (chiamati anche apps for SharePoint). Si tratta di un un metodo sicuro per garantire l'accesso a delle risorse SharePoint limitando l'ambito (scope).
Non esiste un link, nell'interfaccia SharePoint, per raggiungere la pagina di registrazione, va composto aggiungendo /_layouts/15/appregnew.aspx al sito corrente', ad esempio https://sgart.sharepoint.local/event...regnew.aspx.Creazione App-onlyDevi premere i pulsanti Generate per creare il Client Id e il Client Secret. I parametri App Domain e Redirect URI sono ininfluenti impostarli, rispettivamente, a localhost e https://localhost.
Attenzione, prima di salvare, copia i valori di Client Id e Client Secret che serviranno successivamente
Conferma creazione
Garantire l'accesso
Il passo successivo è garantire un accesso alla risorsa che ci interessa che può essere a livello di sitecollection, web, list e tenant. Oltre al tipo di permesso da concedere: Read, Write, Manage e FullControl.
Questo si fa dalla pagina /_layouts/15/AppInv.aspx nello stesso sito del passo precedente.
Per procedere copia il Client Id nel campo App Id e premi Lookup, questo valorizzerà i campi Title, App Domains e Redirect URL:Garantire l'accessoIn questo caso sto garantendo un accesso a livello di lista (scope). Quello che determina lo scope, è la stringa contenuta nel campo Permission Request XML:
va sempre aggiunto l'attributo AllowAppOnlyPolicy="true", il permesso dovrà essere approvato da un site collection administrator
Per procedere al passo successivo, premi Create.
Trust
Dato che la richiesta di accesso è a livello di lista, la schermata successiva chiede di scegliere a quale lista dare accesso:Garantire l'accesso alla listache va confermata con il pulsante Trust it.
Per dare le grant bisogna essere site collection administrator.
Verifica
Posso verificare le app create andando in Site settings / Site collection app permissions (scope site collection) oppure Site settings / Site app permissions (scope web), dipende dalla versione,, che corrisponde alla url /_layouts/15/appprincipals.aspx (in questo caso la url è riferita alla site collection)Site settings / Site collection app permissionsche mostra questo elencoElenco app permissions
Nell'elenco compaiono solo le app a cui sono state concesse delle autorizzazioni, ovvero il completamento dell pagina /_layouts/15/AppInv.aspx
Valori arributi
I valori possibili per l'attributo Scope specificate nell'XML precedente:
mentre i valori possibili per l'attributo Right sono:
Read: solo lettura
Write: lettura e scrittura
Manage
FullControl
Attenzione è molto importante che sia presente l'attributo AllowAppOnlyPolicy="true". Il permesso dovrà essere approvato da un site collection administrator.