SharePoint
Datafisheri LMS on platvorm koolituste pakkumiseks ja haldamiseks.
Mõnel juhul võib olla vaja dokumente SharePointist tuua ja/või seal uuendada.
Eeltingimused (annab Datafisher):
- SharePointi URL, millele ligipääs anda
Tulemused (edastatakse Datafisherile):
- (puuduvad)
Selles jaotises
- Algne seadistus – eeltingimused
- Õiguste andmine – anna õigused asjakohasele SharePointi saidile
Algne seadistus
Kõigepealt tuleb seadistada enterprise application, mis on tõenäoliselt juba tehtud SSO seadistamiseks.
Seejärel tuleb õigused määrata nii, nagu on selgitatud kasutajaandmete impordi seadistamise juhendis, välja arvatud et User.Read.All asemel tuleb määrata üks järgmistest:
- õigus
Sites.Selected, mis annab ligipääsu ainult kindlale saitide kogumile; - õigus
Sites.ReadWrite.All, mis annab ligipääsu kogu SharePointile (ei ole soovitatav).
Teise valiku puhul ei ole midagi muud vaja teha.
Õiguste andmine
Kui määrati õigus Sites.Selected, tuleb nüüd anda tegelikud õigused SharePointi saidile.
Kahjuks ei ole selle jaoks graafilist kasutajaliidest.
Lihtsaim on kasutada Microsoft 365 CLI-d või PowerShelli.
Microsoft 365 CLI kasutamine
Kõigepealt tuleb paigaldada CLI, kui seda veel ei ole. See põhineb JavaScriptil, seega peab paigaldatud olema Node.js ja paketihaldur, näiteks pnpm, npm (paigaldatakse koos Node.js-iga) või yarn.
Windowsis võib lisaks olla mugav kasutada WSL-i.
CLI paigaldamiseks käivita oma paketihaldurile vastav käsk:
pnpm i -g @pnp/cli-microsoft365
npm i -g @pnp/cli-microsoft365
yarn global add @pnp/cli-microsoft365
Näiteks:
$ 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
Seejärel tuleb autentida, et anda CLI-le vajalikud õigused:
m365 login
See annab koodi:
$ m365 login

"To sign in, use a web browser to open the page https://microsoft.com/devicelogin and enter the code CA5FMKCXR to authenticate."
Mine aadressile https://microsoft.com/devicelogin, sisesta kuvatud kood, vali asjakohane kasutaja ja anna õigused.
CLI kuvab seejärel õnnestunud tulemuse:
{
connectedAs: 'user@example.com',
authType: 'DeviceCode',
appId: '31359c7f-bd7e-475c-86db-fdb8c937548e',
appTenant: 'common',
cloudType: 'Public'
}
Lõpuks saab õigused anda järgmise käsuga:
m365 spo site apppermission add --appId xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx --permission fullcontrol --siteUrl "https://company.sharepoint.com/sites/site"
kus xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx on rakenduse ID, mille leiab rakenduse registreeringu ülevaate lehelt, ja https://company.sharepoint.com/sites/site on SharePointi saidi URL.
See väljastab:
$ 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"
}
}
]
}
PowerShelli kasutamine
Teise võimalusena saab kasutada PowerShelli.
Kõigepealt paigalda PnP PowerShelli moodul, käivitades:
Install-Module PnP.PowerShell -Scope CurrentUser
Seejärel anna tegelikud õigused:
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
kus xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx on rakenduse ID, mille leiab rakenduse registreeringu ülevaate lehelt, ja https://company.sharepoint.com/sites/site on SharePointi saidi URL.