Skip to the content

Comment connecter PowerShell à SharePoint Online


PowerShell est un outil puissant d'automatisation de masse conçu pour aider le service informatique d'une entreprise à gérer et coordonner les opérations sous-jacentes d'un système d'exploitation, d'une application ou d'une page Web. Comment?

Grâce aux fameuses cmdlets et à leurs modules préconfigurés. Parmi eux, celui dédié à SharePoint Online figure en bonne place.

Découvrons ensemble tous les détails.

PowerShell: ce que c’est et à quoi ça sert

Automatisation et écriture de scripts: c'est ainsi que l'on pourrait résumer, en quelques mots, ce qu'est PowerShell.

Cette plateforme a été créée par Microsoft pour aider les équipes informatiques à automatiser les processus inhérents aux ressources informatiques d'une entreprise à l'aide de scripts et de commandes personnalisés.

Il s'agit donc d'un outil destiné aux programmeurs expérimentés qui ne veulent pas perdre de temps à créer des automatismes manuellement, un par un, en repartant toujours de zéro.

Au lieu de cela, ils veulent rendre automatiques des tâches telles que l'installation d'applications, la configuration de serveurs ou la gestion de collections de sites SharePoint en vrac.

Si vous partagez cet objectif, ou si vous êtes simplement curieux de savoir ce que PowerShell peut faire pour votre entreprise, vous êtes au bon endroit.

Qu'est-ce qu’intranet.ai ?

intranet.ai est l'intranet d'entreprise prêt à l'emploi, conçu pour réduire les coûts et les délais de mise en œuvre, créant un environnement de travail numérique collaboratif et moderne :

  • Prix de départ de 3 650 €/an pour une intranet complète
  • 50+ applications, dont la recherche avancée, le système de gestion de documents, les notifications push via Teams, le profil personnel et les pages FAQ
  • Intégration à 100 % avec SharePoint Online et Microsoft 365

 


Avant d'examiner les principales caractéristiques du produit, nous souhaitons apporter une petite précision, qui semblera peut-être évidente à certains d'entre vous.

Nous voulons indiquer que PowerShell n'a rien à voir avec Power Automate, ne serait-ce que pour créer de l'automatisation.

PowerShell se caractérise par une double nature, à la fois langage de script et moteur d'automatisation orienté objet.

Il s'agit donc d'un outil généralement utilisé par les administrateurs système pour gérer les serveurs, le réseau, les applications, les sites et les services Web d'entreprise, en rendant automatiques les processus sur lesquels reposent ces ressources.

Pour sa part, Power Automate vous permet de créer des flux de travail dans le cloud sans avoir recours à l'écriture de code et vise à intégrer les fonctionnalités des outils Microsoft, ainsi que des outils tiers.

Ainsi, vous pouvez créer des flux de travail capables de collecter les pièces jointes de vos emails et de les stocker dans une bibliothèque SharePoint donnée sans jamais avoir à accéder à Outlook.

Un autre exemple serait d'envoyer automatiquement des notifications à vos groupes et canaux Teams chaque fois qu'un message est publié sur un site SharePoint ou une page sociale.

Ou encore, vous pourriez créer un flux pour gérer l'approbation des nouveaux documents téléchargés dans l'archive.

Comme vous pouvez le constater, Power Automate offre les meilleures surprises en matière d'automatisation de sites et, plus important encore, de listes et de bibliothèques SharePoint.

Mais nous n'irons pas plus loin dans les détails ici.

 

Pour approfondir ce sujet, nous vous recommandons de lire notre article concernant les flux de travail pour SharePoint Online.

 

Après cette brève mais nécessaire introduction, nous pouvons plonger dans les subtilités de PowerShell pour découvrir les autres caractéristiques qui le différencient des outils d'automatisation courants et qui en font un atout intéressant pour équiper votre équipe informatique.

Quelles sont les principales caractéristiques
de PowerShell

Comme évoqué dans le dernier chapitre, PowerShell constitue à la fois un langage de script et une plateforme destinée à l'automatisation des systèmes d'exploitation avant tout, mais aussi des applications et des pages Web.

En ce qui concerne les systèmes d'exploitation, il convient de noter que l'un des principaux avantages de PowerShell est qu'il peut s'adapter sans problème aux principales plateformes (Windows, Linux et macOS).

Pour atteindre son objectif, il s'appuie sur le cadre .NET, ce qui lui permet de fournir aux utilisateurs plusieurs moyens de créer leurs automatisations. Ces méthodes sont les suivantes:

  • Cmdlet.
  • Scripts.
  • Executable files (fichiers executables).
  • Standard .NET classes.

Une brève parenthèse doit être ouverte pour les premiers.

En effet, les cmdlets (prononcés "command-lets") représentent les éléments caractéristiques de PowerShell, et les plus couramment utilisés par les utilisateurs.

Plus précisément, il s'agit de commandes légères et spécialisées, puisque chacune d'entre elles respecte une syntaxe simple (Verbe-Substantif) et standardisée qui se réfère à une seule opération. Voici quelques exemples: "Obtenir un emplacement", "Déplacer un élément" et "Retirer un élément".

Cependant, les cmdlets peuvent être combinées pour créer des scripts personnalisés selon la logique du "pipelining", la fonction qui permet de transformer la sortie d'une commande en entrée d'une autre et qui, dans PowerShell, permet aux objets de circuler d'une cmdlet à l'autre.

Le résultat du pipelining (indiqué par le symbole "|") est une réaction en chaîne qui permet aux utilisateurs d'obtenir des solutions plus sophistiquées et de traiter des données plus complexes.

Si l'on considère que PowerShell compte plus de 200 cmdlets, il est évident que ces chaînes peuvent se développer en taille et en personnalisation, en s'appuyant également sur l'utilisation d'expressions conditionnelles, de switchs (utilisés pour remplacer une longue succession de conditions if/then/else), de boucles et de variables.

En outre, bien que les cmdlets soient plutôt explicites, comme nous l'avons vu, elles sont accompagnées de leur documentation, à laquelle vous pouvez accéder directement au sein de la plateforme.

Vous pouvez également utiliser la commande "Get-Help", suivie de "online", pour récupérer les articles Web qui traitent de la commande ou de la fonction que vous recherchez.

De cette manière, il sera plus facile pour les utilisateurs moins expérimentés d'apprendre les différents composants du système et la manière de les utiliser pour leurs automatisations.

Mais ce n'est pas tout.

Il y a deux autres aspects majeurs que nous devons encore explorer pour compléter notre vue d'ensemble.

Le premier concerne la possibilité d'utiliser PowerShell à distance.

En effet, les utilisateurs peuvent lancer des commandes et des scripts à partir d'ordinateurs distants en s'appuyant sur le protocole WS-Management ou Windows Management Instrumentation.

Sans entrer dans les détails, sachez que WS-Management est le protocole développé par DMTF (Distributed Management Task Force), dont Microsoft fait partie, pour pouvoir gérer et surveiller les ressources d'un réseau quel que soit le système d'exploitation utilisé.

Windows Management Instrumentation, quant à lui, fournit à l'utilisateur une représentation unifiée des ressources d'un système, lui permettant ainsi de les manipuler à distance.

Le deuxième aspect à souligner concerne la modularité, c'est-à-dire la possibilité d'organiser en modules des cmdlets ayant des fonctionnalités connexes.

En plus, bien sûr, de ceux créés par l'utilisateur, PowerShell fournit 4 types déjà configurés. Parlons des modules:

  1. Script.

Les modules sont principalement utilisés pour importer, exporter et gérer les fonctions.

 

  1. Binaires.

Les modules sont manipulés pour créer des cmdlets dotée’s de fonctionnalités plus puissantes que celles qui peuvent être obtenues à partir des scripts normaux proposés par la plateforme.

  1. Manifesto.

Les modules particuliers, qui se caractérisent par le fait qu'ils soient constitués de fichiers texte, servent à décrire les composants d'un module.

Plus précisément, ils définissent ses cmdlets, ses fonctions, ses exigences et ses dépendances, aidant ainsi les utilisateurs à développer et à déployer différents modules plus facilement et plus rapidement.

 

  1. Dynamiques.

Modules mis en place à la demande d'un script.

Comme ils répondent à un besoin momentané, ils ne sont généralement pas stockés de manière permanente au sein de la plateforme.

En outre, vous pouvez télécharger et installer d'autres modules, qui sont également préconfigurés mais ne sont pas présents dans PowerShell.

Il s'agit notamment des modules relatifs aux collections de sites SharePoint, à leurs groupes d'utilisateurs et aux paramètres de sécurité.

Puisque le sujet de notre prochain chapitre concerne la relation entre PowerShell et un tenant SharePoint Online, le module qui nous intéresse est précisément celui dédié à la version cloud de SharePoint. Son nom est "Microsoft.SharePoint.Online.Management".

Abonnez-vous à notre newsletter


Vous trouverez :

  • nos guides pour la numérisation des entreprises
  • des articles approfondis sur la façon d’améliorer votre intranet d’entreprise en tirant le meilleur parti de votre abonnement à Microsoft 365


Vous pouvez toujours vous désabonner à tout moment.

Comment connecter un tenant SharePoint Online
à PowerShell

Avant d'examiner ensemble les étapes à suivre pour connecter PowerShell à l'un de vos tenants SharePoint Online, nous devons faire une petite introduction.

PowerShell s'applique à toutes les versions de SharePoint, permettant aux utilisateurs de gérer les paramètres de la plateforme au niveau de l'organisation et de la collection de sites.

Cependant, comme prévu, vous devez télécharger et installer le module spécifique pour le type de tenant que vous souhaitez connecter, selon qu'il s'agisse d'un tenant sur site ou d'un tenant en cloud.

Dans le premier cas, le module dont vous avez besoin est appelé "Microsoft.SharePoint.Management"; dans le second cas, qui est donc celui que nous allons explorer dans ce chapitre, le module dont vous devez vous équiper est appelé "Microsoft.SharePoint.Online.Management".

Bien que les cmdlets et les fonctionnalités que contiennent les deux modules les distinguent l'un de l'autre, il est possible de trouver des points communs.

Par exemple, il existe toujours des commandes spécialisées dans la création d'une nouvelle collection de sites, la définition de leur titre, de leur URL, de leur propriétaire, de leur quota de stockage et des groupes d'utilisateurs avec les autorisations correspondantes.

De plus, vous pouvez trouver des cmdlets qui vous permettent d'obtenir des rapports détaillés et des statistiques sur l'utilisation et les performances des différents sites qui composent une collection.

Cela étant dit, passons maintenant au cœur de notre discussion et prenons le cas où vous souhaitez utiliser PowerShell pour gérer par lots les opérations derrière l'un de vos tenants SharePoint Online.

Si vous n'avez pas encore installé le module correspondant, la manière la plus rapide de le faire est de vous connecter en tant qu'administrateur à la galerie PowerShell et d'exécuter la cmdlet "Install-Module-Microsoft.SharePoint.Online.Management".

Une fois que cela est fait, vous passez à la connexion avec le tenant.

Le chemin prend ici deux directions parallèles, selon que votre compte d'administrateur dispose ou non d'une authentification multifactorielle (MFA).

Examinons les deux cas.

1) Etapes pour le compte administrateur
avec authentification multi-facteurs

En résumé, voici comment vous devez procéder:

  1. Accédez à la galerie PowerShell.
  2. Exécutez la commande "Connect-SPOService-URL(...)", en spécifiant l'adresse de votre tenant.
  3. Saisissez vos identifiants Microsoft dans la fenêtre qui s'ouvre.
  4. Approuver la demande de connexion, en satisfaisant aux exigences d'authentification.

Et c'est tout.

Maintenant que le tenant est connecté à PowerShell, vous pouvez commencer à gérer et à manipuler en série les activités qui constituent sa base.

Vous verrez bientôt que votre équipe informatique n'a plus besoin de perdre des heures ou des jours entiers à configurer les sites de votre entreprise.

2) Etapes pour le compte administrateur
sans authentification multi-facteurs

Dans ce cas, le processus devient nettement moins exigeant.

Voici ce que vous devez faire:

  1. Accédez à la galerie PowerShell.
  2. Exécutez la commande "Connect-SPOService-URL(...)-Credential(...)", en spécifiant l'adresse de votre tenant et en saisissant votre UPN, qui est l'adresse électronique qui indique à la fois votre nom d'utilisateur et votre domaine.
  3. Saisissez le mot de passe de votre compte.

Une fois de plus, vous avez terminé.

Besoin d'aide pour gérer vos sites SharePoint?


Laissez-nous vous donner un coup de main!

Nous en avons plus de 80 à vous donner pour:

  • Attribuer les bonnes autorisations aux utilisateurs.
  • Créer les meilleurs processus pour gérer la vie de vos documents numériques.
  • Optimiser l'espace et les modalités de stockage des données.
  • Assurer la sécurité des informations partagées.
  • Développer des parties web et des graphiques personnalisés pour votre entreprise.

 

Giuseppe Marchi

 

Microsoft MVP pour SharePoint et Microsoft 365 depuis 2010.

Giuseppe est le fondateur d'intranet.ai et l'un des plus grands experts en Italie en ce qui concerne Microsoft 365. Depuis des années, il aide les entreprises à créer leur propre environnement de travail numérique dans le cloud de Microsoft, en veillant à l'expérience des utilisateurs.

Lire la suite

SharePoint Sync: comment synchroniser les bibliothèques SharePoint

Etapes à suivre, produits à utiliser, avantages et enjeux: retrouvez ici tous les détails de la synchronisation SharePoint.

Application SharePoint: comment utiliser l'intranet depuis un mobile

Ouvrir, lire, poster, découvrir: voici votre intranet SharePoint de poche!

Microsoft Loop: pourquoi cela va changer le travail numérique

Loop est la nouvelle application Microsoft 365, encore en phase expérimentale: où cela va-t-il mener?