SharePoint
Datafisher LMS är en plattform som används för att tillhandahålla och hantera utbildningar.
I vissa fall kan det behövas hämtning och/eller uppdatering av dokument från SharePoint.
Förutsättningar (tillhandahålls av Datafisher):
- SharePoint-URL:en att bevilja åtkomst till
Resultat (ska lämnas till Datafisher):
- (inga)
I detta avsnitt
- Initial konfiguration – förutsättningar
- Bevilja behörigheter – bevilja behörigheterna till relevant SharePoint-webbplats
Initial konfiguration
Först behöver du konfigurera en enterprise-applikation, vilket sannolikt redan har gjorts för att konfigurera SSO.
Därefter behöver behörigheterna tilldelas enligt instruktionerna för konfiguration av användardataimport, förutom att du i stället för User.Read.All behöver tilldela antingen
- behörigheten
Sites.Selected, som ger åtkomst till endast en specifik uppsättning webbplatser, - behörigheten
Sites.ReadWrite.All, som ger åtkomst till hela SharePoint (rekommenderas inte).
Vid det andra alternativet behöver inget mer göras.
Bevilja behörigheter
Om behörigheten Sites.Selected tilldelas behöver de faktiska behörigheterna till SharePoint-webbplatsen nu beviljas.
Tyvärr finns det inget grafiskt användargränssnitt för detta.
Det enklaste är att använda CLI for Microsoft 365 eller PowerShell.
Använda CLI for Microsoft 365
Först behöver du installera CLI om du inte redan har gjort det. Det bygger på JavaScript, så du behöver ha Node.js och en pakethanterare som pnpm, npm (installeras med Node.js) eller yarn installerad.
Under Windows kan det dessutom vara praktiskt att använda WSL.
För att installera CLI kör du relevant kommando för din pakethanterare:
pnpm i -g @pnp/cli-microsoft365
npm i -g @pnp/cli-microsoft365
yarn global add @pnp/cli-microsoft365
Till exempel:
$ pnpm i -g @pnp/cli-microsoft365

Downloading registry.npmjs.org/typescript/4.9.5: 11.6 MB/11.6 MB, done
Packages: +231
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Progress: resolved 279, reused 73, downloaded 206, added 231, done
.pnpm/swiper@8.4.7/node_modules/swiper: Running postinstall script, done in 56ms
/home/user/.local/share/pnpm/global/5:
+ @pnp/cli-microsoft365 6.10.0
Done in 9.4s
Därefter behöver du autentisera dig för att ge CLI relevanta behörigheter:
m365 login
vilket ger dig en kod:
$ m365 login

"To sign in, use a web browser to open the page https://microsoft.com/devicelogin and enter the code CA5FMKCXR to authenticate."
Gå till https://microsoft.com/devicelogin, ange koden som visades, välj relevant användare och bevilja behörigheterna.
CLI visar sedan ett lyckat resultat:
{
connectedAs: 'user@example.com',
authType: 'DeviceCode',
appId: '31359c7f-bd7e-475c-86db-fdb8c937548e',
appTenant: 'common',
cloudType: 'Public'
}
Slutligen kan du bevilja behörigheterna genom att köra:
m365 spo site apppermission add --appId xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx --permission fullcontrol --siteUrl "https://company.sharepoint.com/sites/site"
där xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx är applikations-ID:t som finns på översiktssidan för applikationsregistreringen och https://company.sharepoint.com/sites/site är SharePoint-webbplatsens URL.
Detta ger följande utdata:
$ m365 spo site apppermission add --appId xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx --permission fullcontrol --siteUrl "https://company.sharepoint.com/sites/site"
{
"id": "aTowaS90fG3zLnNwLmV4dHxlN3NmZTBhNC3lZDM3LTQ9ODktOTA9Ni0yYmQzNGFkMGMzYjZAOGY9NWZhY3ItOWMzMi00ZGViLWE4MGMtZGM9MzIzNzg3OTMx",
"roles": [
"fullcontrol"
],
"grantedToIdentitiesV2": [
{
"application": {
"id": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
}
}
],
"grantedToIdentities": [
{
"application": {
"id": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
}
}
]
}
Använda PowerShell
Alternativt kan PowerShell användas.
Först behöver du installera PnP PowerShell-modulen genom att köra:
Install-Module PnP.PowerShell -Scope CurrentUser
Bevilja sedan de faktiska behörigheterna:
Connect-PnPOnline -Url "https://company.sharepoint.com/sites/site" -Interactive
$permission = Grant-PnPAzureADAppSitePermission -AppId "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" -DisplayName "Datafisher LMS" -Permissions Write
Set-PnPAzureADAppSitePermission -PermissionId $permission.Id -Permissions FullControl
där xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx är applikations-ID:t som finns på översiktssidan för applikationsregistreringen och https://company.sharepoint.com/sites/site är SharePoint-webbplatsens URL.