Adam the Automator

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:

  1. 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.

 Module PowerShell MSOnline disponible
Module PowerShell MSOnline disponible

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.

 Connexion à Azure Active Directory avec PowerShell
Connexion à Azure Active Directory avec PowerShell

Au lieu d’exécuter Connect-MsolService tout seul, comme indiqué ci-dessus, vous pouvez également utiliser le paramètre Credential. 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
 Établissement d'une nouvelle session PSSession pour Échanger en ligne
Établissement d’une nouvelle session PSSession pour Échanger en ligne

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.

 Utilisation de l'applet de commande Get-AcceptedDomain
Utilisation de l’applet de commande Get-AcceptedDomain

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 !

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée.