Se connecter à Exchange Online PowerShell

Le module Exchange Online PowerShell v2 (abrégé en module EXO v2) utilise l’authentification moderne et fonctionne avec l’authentification multifacteur (MFA) pour la connexion à tous les environnements PowerShell liés à Exchange dans Microsoft 365 : Exchange Online PowerShell, sécurité et conformité PowerShell et Exchange Online Protection (EOP) PowerShell autonome. Pour plus d’informations sur le module EXO V2, consultez le module À propos du module Exchange Online PowerShell v2.

Cet article contient les instructions pour se connecter à Exchange Online PowerShell en utilisant le module EXO V2 avec ou sans MFA.

Pour utiliser les anciennes instructions de connexion PowerShell à distance, moins sécurisées, qui seront éventuellement obsolètes, consultez Authentification de base : connexion à Exchange Online PowerShell.

Pour utiliser l’ancien module Exchange Online Remote PowerShell pour vous connecter à Exchange Online PowerShell à l’aide de l’authentification multifacteur, consultez Module v1 : connectez-vous à Exchange Online PowerShell à l’aide de l’authentification multifacteur. Notez que cette version antérieure du module aura finalement été supprimée.

Ce qu'il faut savoir avant de commencer

  • Les conditions requises pour l’installation et l’utilisation du module EXO V2 sont décrites dans Installer et gérer le module EXO V2.

    Notes

    Le reste des instructions dans l'article suppose que vous avez déjà installé le module.

  • Après votre connexion, les cmdlets et les paramètres auxquels vous avez ou n'avez pas accès sont contrôlés par un contrôle d'accès basé sur les rôles (RBAC). Pour plus d'informations, voir Permissions en échange en ligne.

  • Si votre organisation est un Exchange sur site, et que vous disposez d'Exchange Enterprise CAL avec des licences de services pour Exchange Online Protection (EOP), vos instructions de connexion EOP PowerShell sont les mêmes que celles d'Exchange Online PowerShell telles que décrites dans cet article.

Conseil

Vous rencontrez des difficultés ? Renseignez-vous sur le Forum Exchange Online .

Connexion à Exchange Online PowerShell à l’aide de l’authentification multifacteur et moderne

Si votre compte utilise l’authentification multifacteur, suivez les étapes décrites dans cette section. Dans le cas contraire, passez à la section Connectez-vous à Exchange Online PowerShell à l’aide de l’authentification moderne.

Remarque : pour les autres méthodes de connexion disponibles dans PowerShell 7, voir la section Expériences de connexion à PowerShell 7 plus loin dans cette rubrique.

  1. Dans une fenêtre PowerShell, chargez le module EXO V2 en exécutant la commande suivante :

    Import-Module ExchangeOnlineManagement
    

    Remarque Si vous avez déjà installé le module EXO v2, la commande précédente fonctionnera comme écrite.

  2. La commande à exécuter utilise la syntaxe suivante:

    Connect-ExchangeOnline -UserPrincipalName <UPN> [-ExchangeEnvironmentName <Value>] [-DelegatedOrganization <String>] [-PSSessionOption $ProxyOptions]
    
    • <UPN> est votre compte au format du nom d’utilisateur principal (par exemple, navin@contoso.com).
    • Lorsque vous utilisez le paramètre ExchangeEnvironmentName, vous n'avez pas besoin d'utiliser les paramètres ConnectionUri ou AzureADAuthorizationEndPointUrl. Pour plus d’informations, consultez la description du paramètre dans Connecter-Exchange en ligne .
    • Le paramètre l’Organisation Déléguée indique l’organisation cliente que vous voulez gérer en tant que partenaire Microsoft agréé. Pour plus d’informations, consultez Partenaires.
    • Si vous êtes derrière un serveur proxy, exécutez cette commande en premier : $ProxyOptions = New-PSSessionOption -ProxyAccessType <Value>, où <Value> estIEConfig, WinHttpConfig, ou AutoDetect. Utilisez ensuite le paramètre de PSSessionOption avec la valeur $ProxyOptions. Pour plus d’informations, voir Nouveau-PSSessionOption.
    • La barre de progression s’affiche désormais par défaut, -ShowProgress $true n’est plus nécessaire. Pour masquer la barre de progression, utilisez la syntaxe exacte : -ShowProgress:$false.

    Cet exemple se connecte à Exchange Online PowerShell dans une organisation Microsoft 365 ou Microsoft 365 GCC:

    Connect-ExchangeOnline -UserPrincipalName navin@contoso.com
    

    Cet exemple se connecte à Exchange Online PowerShell dans une organisation Office 365 Allemagne :

    Connect-ExchangeOnline -UserPrincipalName lukas@fabrikam.de -ExchangeEnvironmentName O365GermanyCloud
    

    Cet exemple se connecte à Exchange Online PowerShell dans une organisation Microsoft GCC High :

    Connect-ExchangeOnline -UserPrincipalName laura@blueyonderairlines.us -ExchangeEnvironmentName O365USGovGCCHigh
    

    Cet exemple se connecte à Exchange Online PowerShell dans une organisation Microsoft 365 DoD :

    Connect-ExchangeOnline -UserPrincipalName julia@adatum.mil -ExchangeEnvironmentName O365USGovDoD
    

    Cet exemple se connecte à Exchange Online PowerShell pour gérer un autre locataire :

    Connect-ExchangeOnline -UserPrincipalName navin@contoso.com -DelegatedOrganization adatum.onmicrosoft.com
    

Pour obtenir des informations de syntaxe et de paramètre détaillées, voir Connect-ExchangeOnline.

Notes

N’oubliez pas de déconnecter la session PowerShell à distance dès que vous avez terminé. Si vous fermez la fenêtre PowerShell sans déconnecter la session, vous pouvez épuiser toutes les sessions PowerShell à distance à votre disposition et vous aurez besoin d’attendre que les sessions expirent. Pour déconnecter la session PowerShell distante, exécutez la commande suivante.

Disconnect-ExchangeOnline

Connexion à Exchange Online PowerShell à l’aide de l’authentification moderne

Si votre compte n’utilise pas l’authentification multifacteur, suivez les étapes décrites dans cette section.

Remarque : pour les autres méthodes de connexion disponibles dans PowerShell 7, voir la section Expériences de connexion à PowerShell 7 plus loin dans cette rubrique.

  1. Dans une fenêtre PowerShell, chargez le module EXO V2 en exécutant la commande suivante :

    Import-Module ExchangeOnlineManagement
    

    Remarque Si vous avez déjà installé le module EXO v2, la commande précédente fonctionnera comme écrite.

  2. Exécutez la commande suivante :

    Notes

    Vous pouvez ignorer cette étape et omettre le paramètre Informations d’identification dans l’étape suivante pour être invité à entrer le nom d’utilisateur et le mot de passe après l’exécution de la commande Connect-ExchangeOnline. Si vous omettez le paramètre Informations d’identification et incluez le paramètre UserPrincipalName à l’étape suivante, vous êtes invité à entrer le mot de passe après l’exécution de la commande Connect-ExchangeOnline.

    $UserCredential = Get-Credential
    

    Dans l’invite d’informations d’identification, entrez votre compte et votre mot de passe.

  3. La dernière commande que vous devez exécuter utilise la syntaxe suivante :

    Connect-ExchangeOnline [-Credential $UserCredential] [-ShowBanner:$false] [-ExchangeEnvironmentName <Value>] [-DelegatedOrganization <String>] [-PSSessionOption $ProxyOptions]
    
    • Lorsque vous utilisez le paramètre ExchangeEnvironmentName, vous n'avez pas besoin d'utiliser les paramètres ConnectionUri ou AzureADAuthorizationEndPointUrl. Pour plus d’informations, consultez la description du paramètre dans Connecter-Exchange en ligne .
    • Le paramètre l’Organisation Déléguée indique l’organisation cliente que vous voulez gérer en tant que partenaire Microsoft agréé. Pour plus d’informations, consultez Partenaires.
    • Si vous vous trouvez derrière un serveur proxy, stockez la sortie de l’applet de commande New-PSSessionOption dans une variable (par exemple, $ProxyOptions = New-PSSessionOption -ProxyAccessType <Value> [-ProxyAuthentication <Value>] [-ProxyCredential <Value>]). Utilisez ensuite la variable ($ProxyOptions) comme valeur du paramètre PSSessionOption.
    • La barre de progression s’affiche désormais par défaut, -ShowProgress $true n’est plus nécessaire. Pour masquer la barre de progression, utilisez la syntaxe exacte : -ShowProgress:$false.

    Se connecter à Exchange Online PowerShell dans une organisation Microsoft 365 ou Microsoft 365 GCC:

    Connect-ExchangeOnline -Credential $UserCredential
    

    Se connecter à Exchange Online PowerShell dans une organisation Office 365 Allemagne :

    Connect-ExchangeOnline -Credential $UserCredential -ExchangeEnvironmentName O365GermanyCloud
    

    Se connecter à Exchange Online PowerShell dans une organisation Office 365 géré par 21Vianet :

    Connect-ExchangeOnline -Credential $UserCredential -ExchangeEnvironmentName O365China
    

    Se connecter à Exchange Online PowerShell dans une organisation Microsoft 365 GCC High :

    Connect-ExchangeOnline -Credential $UserCredential -ExchangeEnvironmentName O365USGovGCCHigh
    

    Se connecter à Exchange Online PowerShell dans une organisation Microsoft 365 DoD :

    Connect-ExchangeOnline -Credential $UserCredential -ExchangeEnvironmentName O365USGovDoD
    

Pour obtenir des informations de syntaxe et de paramètre détaillées, voir Connect-ExchangeOnline.

Notes

N’oubliez pas de déconnecter la session PowerShell à distance dès que vous avez terminé. Si vous fermez la fenêtre PowerShell sans déconnecter la session, vous pouvez épuiser toutes les sessions PowerShell à distance à votre disposition et vous aurez besoin d’attendre que les sessions expirent. Pour déconnecter la session PowerShell distante, exécutez la commande suivante :

Disconnect-ExchangeOnline

Expériences de connexion dans PowerShell 7

Cette section décrit les expériences de connexion disponibles dans la version 2.0.4 ou ultérieure du module EXO v2 dans PowerShell 7.

Pour plus d’informations sur les systèmes d’exploitation pris en charge par le module EXO v2 dans PowerShell 7, consultezSystèmes d’exploitation pris en charge pour le module EXO v2.

Pour obtenir des informations de syntaxe et de paramètre détaillées, voir Connect-ExchangeOnline.

Écriture de script interactive à l’aide de l'authentification unique basée sur le navigateur

L'authentification unique (SSO) basée sur le navigateur est la méthode de connexion par défaut dans PowerShell 7. La commande Connect-ExchangeOnline ouvre la page de connexion à Azure AD dans le navigateur par défaut. Une fois que vous avez entré vos informations d’identification, les applets de commande Exchange Online plus anciennes et les applets de commande du module EXO v2 sont disponibles dans la session PowerShell résultante.

Si vous utilisez le paramètre UserPrincipalName dans la commande, la valeur UPN est utilisée sur la page de connexion dans le navigateur.

Connect-ExchangeOnline -UserPrincipalName navin@contoso.onmicrosoft.com

Connexion basée sur l’appareil

Utilisez la connexion basée sur l’appareil lorsqu’aucun navigateur n’est disponible (et par conséquent, vous ne pouvez pas voir la page de connexion) :

Connect-ExchangeOnline -Device

La commande renvoie une URL et un code unique liés à la session. Vous devez ouvrir l’URL dans un navigateur sur n’importe quel ordinateur, puis entrer le code unique. Une fois la connexion terminée dans le navigateur web, la session dans la fenêtre Powershell 7 est authentifiée via le flux d’authentification Azure AD normal, et les cmdlets Exchange Online sont importées après quelques secondes.

Informations d’identification en ligne

Vous pouvez entrer vos informations d’identification directement dans la fenêtre PowerShell sans accéder au navigateur pour l’authentification unique.

Notes

Cette méthode ne fonctionne pas avec les comptes qui utilisent l’authentification multifacteur.

Cette méthode est une amélioration du paramètre des informations d’identification, car vous n’avez pas besoin de stocker les informations d’identification localement dans un script, et vous pouvez entrer les informations d’identification directement dans une session PowerShell interactive.

Connect-ExchangeOnline -InlineCredential

Comment savoir si cela a fonctionné ?

Les cmdlets Exchange Online sont importées dans votre session PowerShell locale comme indiqué par une barre de progression. Si vous ne recevez aucune erreur, la connexion est établie. Un test rapide consiste à exécuter une cmdlet Exchange Online PowerShell (par exemple, Get-Mailbox ) et à consulter les résultats.

Si vous recevez des erreurs, vérifiez les conditions requises suivantes :

  • Un mot de passe incorrect est un problème courant. Exécutez à nouveau les trois étapes et portez une attention particulière au nom d’utilisateur et au mot de passe que vous utilisez.

  • Pour éviter les attaques par déni de service (DoS), vous ne pouvez ouvrir que cinq sessions PowerShell à distance vers Exchange Online.

  • Le compte que vous utilisez pour vous connecter doit être activé pour Remote PowerShell. Pour plus d’informations, consultez Activer ou désactiver l’accès à Exchange Online PowerShell.

  • Le trafic du port TCP 80 doit être ouvert entre votre ordinateur local et Microsoft 365. Il est probablement ouvert, mais vous devez y penser si votre organisation a une stratégie restrictive d’accès à Internet.

  • Si votre organisation utilise l’authentification fédérée et que votre fournisseur d’identité (IDP) et/ou le service d’émission de jeton de sécurité (STS) n’est pas disponible publiquement, vous ne pouvez pas utiliser un compte fédéré pour vous connecter à Exchange Online PowerShell. Au lieu de cela, créez et utilisez un compte non fédéré dans Microsoft 365 pour vous connecter à Exchange Online PowerShell.