Sommaire
ToggleDans cet article nous verrons comment télécharger des fichiers depuis SharePoint en utilisant uniquement PowerShell et Graph API et le tout sans modules.
Contexte
- Vous avez un site SharePoint
- Vous souhaitez télécharger des fichiers
- Vous ne voulez pas utiliser de module
Dans cet article je vous montrerai comment utiliser directement l’API Graph sans modules.
Fonctionnement
Nous procèderons comme ci-dessous :
- Création d’une app Azure
- Ajout de permissions
- Ajout secret ou certificat
- Utiliser PowerShell et Graph
*Dans mon cas, j’utiliserai un secret
Obtenir l’ID du site SharePoint
J’ai le site SharePoint suivant : https://systanddeploy.sharepoint.com/sites/Support
Dans le but de pouvoir télécharger des fichiers, il nous faut l’ID correspondant au site.
Pour cela, il vous suffit d’utiliser votre navigateur et de saisir l’adresse ci-dessous :
https://your sharepoint site/sites/Support/_api/site/id
Création de l’app Azure
1. Allez dans le portail Azure
2. Allez dans App registrations
3. Cliquez sur New registration
4. Saisissez un nom
5. Laissez par défaut et cliquez sur Register
Ajout des permissions
Pour tous les sites
1. Allez dans API permissions
2. Cliquer sur Add a permission
3. Sélectionnez Microsoft Graph
4. Sélectionnez Application permissions
5. Cochez Sites.ReadWrite
6. Cliquez sur Add permissions
7. Cliquez sur Grant admin consent
Pour un site spécifique
Ici nous souhaitons gérer uniquement un site particulier (plus secure quand même).
Nous procèderons comme ci-dessous :
1. Allez dans API permissions
2. Cliquez sur Add a permission
3. Sélectionnez SharePoint
4. Sélectionnez Application permissions
6. Cochez Sites.Selected
7. Cliquez sur Add permissions
8. Cliquez sur Grant admin consent
10. Ouvrez Graph Explorer ici
11. Choisissez la méthode POST
12. Dans url saisissez l’url suivante et remplacez yoursharepointsiteid avec l’ID de votre site :
13. Allez dans Request body
14. Saisissez le JSON suivant et remplacez avec vos infos :
{
"roles": ["write"],
"grantedToIdentities": [{
"application": {
"id": "azure app id",
"displayName": "azure app displayname"
}
}]
}
15. Cliquez sur <strong>Run query</strong>
16. Vous devriez maintenant avoir accès à votre site
Création du secret
1. Allez dans le portail Azure
2. Allez dans votre app Azure
3. Cliquez sur Certificates & secrets
4. Cliquez sur New client secret
Télécharger du contenu depuis SharePoint
Nous aurons besoin des infos suivantes :
- L’URL du site SharePoint
- L’ID de l’app Azure
- Le secret lié à votre application
Pour obtenir le script cliquez sur le bouton GitHub ci-dessous :