Exchange Online PowerShell est un outil en ligne de commande qui vous permet de gérer vos boîtes aux lettres et utilisateurs Exchange Online. Il peut être utilisé pour accomplir diverses tâches, telles que la création et la gestion des boîtes aux lettres, la configuration des règles de flux de messagerie et la gestion des autorisations des utilisateurs. Dans ce guide, nous vous montrerons comment installer et vous connecter à Exchange Online PowerShell. Si vous êtes un professionnel de l’informatique avec des tâches administratives de Microsoft 365 dans le service Exchange Online, ce guide est pour vous !
Comment installer et vous connecter à Exchange Online PowerShell
En tant que professionnel de l’informatique, vos tâches d’administration Microsoft 365 couvrent probablement Exchange Online. Bien qu’une grande majorité de ces tâches puissent être accomplies en utilisant le site web Centre d’administration Exchange, il existe de grandes efficacités disponibles via la ligne de commande, en particulier pour les scripts !
Prérequis
Vous pouvez vous connecter à Exchange Online comme à tout autre service Office 365 en utilisant le cmdlet standard Connect-*. Cependant, il y a quelques prérequis à garder à l’esprit lors de l’installation et de l’utilisation de PowerShell Exchange Online.
Il y a eu plusieurs versions de ces modules au fil des ans. La version 2.0.5 et antérieure est appelée module PowerShell Exchange Online V2 (EXO V2). La version 3.0.0 et ultérieure est connue sous le nom de module PowerShell Exchange Online V3 (EXO V3).
Nous nous concentrerons sur ce nouveau module car il prend en charge l’authentification multi-facteurs (MFA), il comprend des améliorations de performance par rapport à ses prédécesseurs, et il est également plus sécurisé ! De plus, il est pris en charge sur les dernières versions de PowerShell 7.x. De plus, une multitude de nouveaux cmdlets (EXO-*) permettent aux professionnels de l’informatique d’être plus rapides et plus productifs dans l’accomplissement de leurs tâches.
Installer le module PowerShell Exchange Online avec ‘Install-Module’
Comme je l’ai indiqué, je me concentrerai sur le dernier module « V3 » pour le reste de cet article. En fonction des étapes que vous avez précédemment réalisées sur un ordinateur spécifique, il est possible d’effectuer entre 2 et 3 étapes principales. Je vais passer en revue les étapes individuellement afin que vous puissiez vous y plonger en fonction de votre environnement.
I am working on a Windows 11 22H2 virtual machine (VM) in my Hyper-V lab. This machine is Azure-AD joined to my Microsoft 365 Developer tenant. This will allow me to show you the procedure and also include some basic commands at the end of this article to demonstrate how it operates.
I am using the latest version of PowerShell, version 7.3.4, at the time of writing. This will enable me to install the Exchange Online PowerShell module. All I need is a PowerShell window!
- La première étape que nous devrions suivre est de définir notre politique d’exécution. Nous devons modifier le paramètre de politique avec la cmdlet Set-ExecutionPolicy:
Set-ExecutionPolicy RemoteSigned
- Ensuite, exécutez la commande Get-Module pour vérifier quels modules sont installés.
Get-Module

- I have only the base set of modules installed on my computer. So, I need to install the ‘ExchangeOnlineManagement‘ module. Let’s do this with the Install-Module command:
Install-Module -Name ExchangeOnlineManagement

Note: Comme j’utilise un « dépôt non approuvé », je dois spécifier que je veux télécharger ceci depuis le dépôt « PSGallery ». J’ai saisi « A » pour choisir « Oui à tout« .
Chargement du module avec ‘Import-Module’
Passons maintenant à l’étape suivante, qui est le chargement du module.
- Nous pouvons importer le module en utilisant la commande Import-Module.
- Ensuite, nous pouvons exécuter une autre commande Get-Module pour obtenir une confirmation.
Import-Module ExchangeOnlineManagement

Voilà, nous avons maintenant confirmé que le module est prêt à être utilisé!
Connexion à votre locataire Exchange Online avec ‘Connect-ExchangeOnline’
La dernière étape à accomplir pour accéder aux informations Exchange Online de votre locataire consiste à établir la connexion en utilisant des identifiants qui permettent ledit accès. Il existe plusieurs niveaux de rôle dans Azure qui le permettront. À cet effet, j’utiliserai mon rôle d’administrateur global en tant que partie de mon locataire de développeur. Ce rôle de compte me donne d’ailleurs un accès complet à Azure AD et à tous les services Microsoft 365 via PowerShell.
- Utilisons la commande Connect-ExchangeOnline ci-dessous :
Connect-ExchangeOnline -userprincipalname

- Une fenêtre d’authentification du navigateur s’est ouverte, demandant mon nom d’utilisateur et mon mot de passe. C’est là que je peux me connecter avec mon compte d’administrateur global.

Excellent ! Vous verrez du texte jaune décrivant le module « EXO V3 » et un lien vers la documentation pour obtenir plus d’informations.
Nous avons maintenant la possibilité d’exécuter des cmdlets PowerShell contre notre locataire Exchange Online. Je vais passer en revue quelques commandes de base/essentielles avec lesquelles vous pouvez commencer ensuite.
Remarque : Si nous gardons toujours la sécurité à l’esprit, il est préférable de mettre fin à votre session une fois que vous avez terminé. La déconnexion de votre session est possible en exécutant la commande suivante avant de fermer votre shell.
Disconnect-ExchangeOnline
Facile comme tout !
Commandes de base PowerShell pour Exchange Online
Une fois connecté au module PowerShell Exchange Online Version 3 (EXO V3), vous pouvez commencer à exécuter des commandes Exchange Online. Commençons par lister toutes les boîtes aux lettres de notre locataire.
Comme il s’agit d’un locataire de développement, la liste est plutôt petite. Sachez que dans des environnements normaux et plus importants, la sortie ne sera pas aussi utile. J’y reviendrai dans un instant. De plus, nous avons différents articles PowerShell sur Petri qui peuvent vous aider.
Au lieu d’utiliser le cmdlet « legacy » Get-Mailbox (prévu pour être obsolète), permettez-moi de vous montrer les nouvelles commandes dans EXO V3. Ici, j’utiliserai la commande Get-EXOMailbox puis la « pipe » (|) vers l’option ‘ft’ (identique à ‘Format-Table’). En utilisant l’option ‘Autosize’, les largeurs des colonnes sont automatiquement formatées pour correspondre à la fenêtre de votre console.
Get-EXOMailbox | ft -Autosize

Par défaut, nous obtenons l’« ExternalDirectoryObjectId », le « UserPrincipalName » (généralement l’adresse e-mail) et l’alias de messagerie. Demandons-lui de nous donner plus d’informations.
Get-EXOMailbox | Select DisplayName,PrimarySMTPAddress,Alias

Cela nous donne des informations légèrement plus utiles, n’est-ce pas ? Maintenant, obtenons des statistiques sur la taille de la boîte aux lettres avec la commande Get-EXOMailboxStatistics. Ici, j’exécute d’abord cette première commande pour rassembler toutes les boîtes aux lettres, puis je la fais passer dans ‘Get-EXOMailboxStatistics’ avec ses attributs par défaut, puis j’utilise à nouveau ‘ft’ pour le rendre joli.
Get-EXOMailbox | Get-EXOMailboxStatistics | ft

Cela nous donne une quantité décente d’informations sur le nombre d’articles et la taille de la boîte aux lettres de notre organisation. Il existe de nombreux autres paramètres que vous pouvez utiliser pour obtenir des attributs spécifiques de vos comptes et boîtes aux lettres.
Comment se connecter à Exchange Online via PowerShell avec MFA?
Heureusement, il n’y a rien de spécial à faire pour se connecter lorsque votre compte est protégé par une authentification à plusieurs facteurs (il vaut mieux!). Lorsque vous saisissez la commande et que vous utilisez PowerShell 7 ou une version supérieure, vous verrez apparaître à l’écran l’authentification basée sur le navigateur, comme le montre ma capture d’écran ci-dessus.
Si vous utilisez PowerShell 5.1 ou une version inférieure, vous verrez s’ouvrir la fenêtre d’authentification moderne standard où vous devrez saisir votre mot de passe et répondre à votre demande MFA.
Pouvez-vous vous connecter à Exchange Online PowerShell sur un Mac?
Il existe plusieurs façons d’installer PowerShell sur un Mac, mais la plus simple est d’utiliser les liens de téléchargement direct sur le site de Microsoft. À partir de la version 7.2, PowerShell prend en charge les Mac équipés de la puce Apple Silicon.
Une fois que vous avez installé PowerShell sur votre Mac exécutant macOS 11 Big Sur ou une version plus récente, vous pouvez utiliser les mêmes instructions fournies ci-dessus pour vous connecter à Exchange Online sur macOS.
Avantages supplémentaires de l’utilisation de PowerShell Exchange Online
Exchange Online PowerShell est un outil précieux pour tout professionnel de l’informatique/administrateur qui souhaite avoir plus de contrôle sur son environnement Exchange Online.
Voici quelques avantages supplémentaires de l’utilisation de PowerShell Exchange Online :
- Il peut être utilisé pour automatiser des processus avec des scripts PowerShell, ce qui peut vous faire gagner du temps et des efforts avec des scripts.
- Il peut être utilisé pour résoudre des problèmes, ce qui peut vous aider à résoudre les problèmes plus rapidement.
- Il peut être utilisé pour personnaliser votre environnement Exchange Online, ce qui peut le rendre plus efficace et convivial pour l’utilisateur.
Si vous avez des questions ou des commentaires, n’hésitez pas à laisser un commentaire ci-dessous. Merci de votre lecture !
Source:
https://petri.com/connect-to-exchange-online-powershell/