Cet article explique comment se connecter à PowerShell à l'aide d'un ordinateur et d'un utilisateur administrateur général M365. Un autre article concernant l'utilisation de PowerShell est disponible pour « usage interne seulement » et concerne l'accès délégué par un partenaire M365.



TABLE DES MATIÈRES


Configuration requise 

Doit utiliser Windows 7 64 bits ou un système opérateur plus récent. Il vous faut être administrateur général du locataire M365 ou avoir un rôle d'administrateur pour le service spécifique auquel vous souhaitez vous connecter. Les modules PowerShell doivent être installés avant de pouvoir utiliser les cmdlets correspondants (instructions ci-dessous).

 


Installer les Modules PowerShell


1. Exécuter PowerShell en tant qu'administrateur.

*Si vous n'êtes pas administrateur sur votre machine, vous pouvez ajouter « -Scope CurrentUser » à votre commande lors de l'installation des modules.


2. Tapez : Set-executionPolicy remotesigned


*Uniquement nécessaire si l'exécution de scripts est requise.



3. Tapez : Install-module -name module name


Exemple : Install-module -name msonline  (une liste des modules M365 est disponible plus bas dans cet article)


*Si vous obtenez un message concernant la version 2.** ou plus récente de NuGet, vous pouvez accepter sans risque.


*Si vous ajoutez "-force" à votre commande. PowerShell ignorera les éventuels conflits de version et installera la dernière version disponible.

 


Modules M365 disponibles et comment s'y connecter

Avec certains modules, vous pouvez vous connecter avec : Connecter-"nom du module". Le nom à utiliser ou la commande peut varier par rapport au nom utilisé pour les installer. Tous les modules répertoriés utilisent l'authentification moderne. Vous obtiendrez donc une invitation à vous connecter, Microsoft prenant en charge l'authentification multifactorielle.

 


MSOnline

(Pour gérer les utilisateurs, les licences, les domaines, les paramètres des locataires, etc.) Lien article :  MSOnline


Pour installer le module :

Install-module -name MSOnline


Pour vous connecter :


Connect-MsolService


 


Exchange

(Pour gérer les boîtes aux lettres, paramètres du flux de courrier, politiques en matière de spam, etc.) Lien vers l'article :  EOM


Pour installer ce module :


Install-module -name ExchangeOnlineManagement


Pour vous connecter :


Connect-ExchangeOnline


 


Sécurité et conformité

(Pour gérer certaines fonctionnalités et politiques EOP et DLP) Lien article : IPP


Les cmdlets sont installés avec le module ExchangeOnlineManagement.


Pour vous connecter :


Connect-IPPSSession


 


AzureAD

(Pour gérer les utilisateurs, groupes, contacts, appareils, l'annuaire actif, etc.) Lien article : AzureAD


*sera éventuellement déprécié et remplacé par Microsoft.Graph.


Pour installer ce module :


Install-module -name AzureAD


Pour vous connecter :


Connect-AzureAD


 


Teams

(Pour gérer Teams, les canaux, les systèmes téléphoniques, etc.) Lien article : MicrosoftTeams


*Certains cmdlets de Skype For Business sont encore utilisées pour certaines fonctionnalités de Teams mais elles sont incluses dans ce module.


Pour installer ce module :


Install-module -name MicrosoftTeams


Pour vous connecter :


Connect-MicrosoftTeams


 


Microsoft Graph

(Interagit avec tous les services M365 et remplacera à terme de nombreux modules) Lien article : Microsoft.Graph


Pour installer ce module :


Install-Module -Name Microsoft.Graph


Pour vous connecter :


Connect-MgGraph


 


Azure Information Protection

(Pour gérer la protection des informations d'Azure, la gestion des droits...) Lien article : AIPService


Ce module remplace AADRM. Vous devez désinstaller AADRM avant de l'installer, s'il est déjà installé sur votre machine.


Pour installer ce module :


Install-module -name AIPService


Pour vous connecter :


Connect-AIPService


 


SharePoint

(Pour gérer les sites et fonctionnalités SharePoint, gérer OneDrive) Lien article : MOSP


Pour installer ce module :

Install-module -name Microsoft.Online.SharePoint.PowerShell


Pour vous connecter :


Connect-SPOService -Url https://”tenant name”-admin.sharepoint.com


Le "tenant name" correspond ici à la première partie du domaine onmicrosoft.com. Exemple pour contoso.onmicrosoft.com :


Connect-SPOService -Url https://contoso-admin.sharepoint.com


 


PnP.PowerShell

(open-source cmdlets that interact with all M365 services) Article link: PnP


Pour installer ce module :


Install-module -name PnP.PowerShell


La méthode de connexion varie en fonction du service auquel vous vous connectez. Lien vers l'article : Guide


 


Fonctions générales de gestion PowerShell 

 

Vérifier quels modules sont installés sur l'ordinateur :

Get-InstalledModule



Désinstaller un module :

Uninstall-Module -Name “nom du module



See which cmdlets are available with a specific module :

Get-Command -module “nom du module



Mettre à jour un module :

Update-Module -Name “nom du module



Tous les modules en même temps :

Update-Module



Installer une version spécifique d’un module :

Install-Module -Name “nom du module” -RequiredVersion 2.0.0



Installer un module uniquement pour l'utilisateur actuel ou un utilisateur sans droits d'administrateur :

Install-Module -Name “nom du module” -Scope CurrentUser



Enregistrez la session PowerShell (transcription) :

Spécifiez le chemin et le nom du fichier TXT dans la cmd suivante où un fichier TXT sera exporté contenant un enregistrement de la session PowerShell. Exemple :

Start-Transcript -Path "C:\transcripts\name.txt" -NoClobber

Faites les actions et lancer les commandes que vous voulez enregistrer, puis arrêtez la transcription :

Stop-Transcript

Un fichier TXT sera créé au chemin spécifié.



Afficher les résultats tronqués :

Exécutez cette commande avant d'effectuer votre action qui a créé des résultats tronqués :

$FormatEnumerationLimit =-1



Exporter le résultat d'une commande au format .csv

Vous pouvez ajouter « | export-csv "path" » à votre cmd et remplacer « path » par le chemin sur votre ordinateur où le fichier sera créé. Exemple :


get-Mailbox | Select-Object DisplayName,PrimarySmtpAddress | export-csv C:\export\mailbox_list.csv