La connexion à Office 365 avec PowerShell peut parfois être pénible. Vous devez constamment vous souvenir des différentes commandes et modules. Changeons ça.
Dans cet article, vous apprendrez à vous connecter à Office 365 avec PowerShell. Pour ce faire, utilisez le module Azure AD PowerShell pour Graphe et le module Azure Active Directory pour Windows PowerShell.
Table des Matières
Prérequis
Pour parcourir l’un des exemples de ce tutoriel, assurez-vous d’avoir les éléments suivants à l’avance:
- Windows PowerShell 5.1 (Installé par défaut sur Windows 7 et versions ultérieures)
- Un locataire Office 365
- Assistant de connexion aux Services en ligne Microsoft pour les professionnels de l’informatique RTW
Pourquoi deux modules Azure AD ?
Lorsque vous travaillez avec Office 365 à l’aide de PowerShell, vous devrez probablement utiliser deux modules différents. Vous utiliserez Azure Active Directory PowerShell pour Graph avec le nom de module AzureAD et Azure Active Directory module pour Windows PowerShell avec le nom de module de MSOnline.
AzureAD et MSOnline vous permettent tous deux de travailler avec les services Office 365 à l’aide de PowerShell, alors pourquoi deux? AzureAD est le successeur de MSOnline et d’après ce que je peux rassembler, il remplacera MSOnline à un moment donné. Toutes les nouvelles fonctionnalités sont dans le module AzureAD mais il y a encore un chevauchement avec le module MSOnline.
Vous constaterez que des tâches telles que la gestion des utilisateurs, des groupes et l’administration des licences existent toujours dans le module MSOnline.
Connexion à Office 365 avec le module AzureAD
Pour vous connecter à Office 355 avec PowerShell à l’aide du module AzureAD, vous devez d’abord l’installer. Vous pouvez le faire en exécutant Install-Module AzureAD
à partir d’une session administrative PowerShell.
Tous les noms de toutes les commandes du module AzureAD sont préfixés par AzureAD.
Une fois le module installé, exécutez l’applet de commande Connect-AzureAD
. Une fois que vous l’avez fait, PowerShell vous demandera votre identifiant Microsoft et votre mot de passe (compte professionnel ou scolaire). Une fois authentifié, vous pourrez utiliser toutes les commandes du module.
La connexion à Office 365 avec le module MSOnline
La connexion à Office 365 avec PowerShell à l’aide du module MSOnline nécessite un peu plus d’efforts. En supposant que vous ayez installé le progiciel RTW Assistant de connexion aux services en ligne Microsoft pour les professionnels de l’informatique:
- Installez le module MSOnline à partir de la galerie PowerShell en s’exécutant à partir d’une console PowerShell d’administration.
Install-Module MSOnline
2. Une fois le module installé, exécutez Get-Module
pour vous assurer que PowerShell peut trouver le module.
3. Enfin, exécutez l’applet de commande Connect-MsolService
pour vous authentifier auprès d’Azure AD. Cela vous demandera vos informations d’identification Office 365.
Au lieu d’exécuter
Connect-MsolService
tout seul, comme indiqué ci-dessus, vous pouvez également utiliser le paramètreCredential
. Vous pouvez le faire car vous l’avez déjà capturé dans la variable$cred
. Cela empêchera la fenêtre contextuelle d’authentification de s’afficher.
Connexion à Office 365 (Exchange) avec PowerShell
Si vous devez vous connecter à Exchange Online, vous devez effectuer une série d’étapes. Vous devez maintenant établir une session de Remoting implicite PowerShell pour rendre toutes les commandes Exchange Online disponibles.
Ci-dessous, vous trouverez le code PowerShell pour créer un identifiant, créer la session et importer les commandes dans votre session en cours.
Connexes: PowerShell Remoting: The Ultimate Guide
L’extrait de code ci-dessous stocke votre nom d’utilisateur et votre mot de passe Office 365 dans un objet d’informations d’identification à l’aide de l’applet de commande Get-Credential
. Il utilise ensuite ces informations d’identification pour établir une session de transfert à distance PowerShell vers l’URI Exchange et importe la session distante dans votre session locale.
Le remoting implicite est le terme utilisé pour désigner l’importation de commandes distantes dans une session locale.
PS> $cred = Get-CredentialPS> $Session = New-PSSession -ConfigurationName Microsoft.Exchange -ConnectionUri https://ps.outlook.com/powershell/ -Credential $cred -Authentication Basic -AllowRedirectionPS> Import-PSSession $Session -DisableNameChecking
Si l’importation de session se passe bien sans messages d’erreur, exécutez maintenant Get-AcceptedDomain
pour vous assurer que vos domaines s’affichent.
Une fois que vous avez terminé, déconnectez et supprimez la session PSsession en exécutant Remove-PSSession $Session
.
Si vous devez vous connecter à Exchange Online via MFA, Microsoft fournit un excellent guide intitulé Connect to Exchange Online PowerShell Using Multi-Factor Authentication.
Résumé
Office 365 a de nombreux services mais heureusement, vous pouvez tous les gérer avec PowerShell. Une fois que vous avez installé les deux modules et connecté à l’aide des commandes Connect
, vous êtes sur la bonne voie pour gérer Office 365 avec PowerShell !