Désactiver l’authentification de base dans Exchange Online

Importante

À compter de décembre 2022, le centre de Administration Exchange classique sera déprécié pour les clients du monde entier. Microsoft recommande d’utiliser le nouveau Centre Administration Exchange, s’il ne le fait pas déjà.

Bien que la plupart des fonctionnalités aient été migrées vers le nouveau centre d’administration exchange, certaines ont été migrées vers d’autres centres d’administration et les autres seront bientôt migrées vers le nouveau centre d’administration exchange. Recherchez les fonctionnalités qui ne sont pas encore disponibles dans le nouveau CENTRE d’administration Exchange sur Autres fonctionnalités ou utilisez la recherche globale qui vous aidera à naviguer dans le nouveau CAE.

Remarque

Si vous avez activé les paramètres de sécurité par défaut dans votre organisation, l’authentification de base est déjà désactivée dans Exchange Online. Pour plus d’informations, consultez Présentation des paramètres de sécurité par défaut

Si vous avez atteint cette page parce que l’authentification de base ne fonctionne pas dans votre locataire et que vous n’avez pas configuré de stratégies d’authentification ou par défaut de sécurité, nous avons peut-être désactivé l’authentification de base dans votre locataire dans le cadre de notre programme plus large visant à améliorer la sécurité sur Exchange Online. Consultez votre Centre de messages pour les publications faisant référence à l’authentification de base, puis lisez Authentification de base et Exchange Online pour obtenir les dernières annonces concernant l’authentification de base.

L’authentification de base dans Exchange Online utilise un nom d’utilisateur et un mot de passe pour les demandes d’accès au client. Le blocage de l’authentification de base peut aider à protéger votre organisation Exchange Online contre les attaques par pulvérisation de mots de passe ou par force brute. Lorsque vous désactivez l’authentification de base pour les utilisateurs dans Exchange Online, leurs clients de messagerie et leurs applications doivent prendre en charge l’authentification moderne. Ces clients sont les suivants :

Si votre organisation n’a pas de clients de messagerie hérités, vous pouvez utiliser des stratégies d’authentification dans Exchange Online pour désactiver les demandes d’authentification de base. La désactivation de l’authentification de base force toutes les demandes d’accès client à utiliser l’authentification moderne. Pour plus d’informations sur l’authentification moderne, voir Utilisation de l’authentification moderne avec les clients Office.

Cette rubrique explique comment l’authentification de base est utilisée et bloquée dans Exchange Online, ainsi que les procédures correspondantes pour les stratégies d’authentification.

Fonctionnement de l’authentification de base dans Exchange Online

L’authentification de base est également appelée authentification proxy, car le client de messagerie transmet le nom d’utilisateur et le mot de passe à Exchange Online, et Exchange Online transfère ou transmet par proxy les informations d’identification à un fournisseur d’identité (IdP) faisant autorité au nom du client ou de l’application de messagerie. Le fournisseur d’identité dépend du modèle d’authentification de votre organisation :

  • Authentification cloud : le fournisseur d’identité est Azure Active Directory.
  • Authentification fédérée : le fournisseur d’identité est une solution locale comme Services ADFS (AD FS).

Ces modèles d’authentification sont décrits dans les sections suivantes. Pour plus d’informations, consultez Choisir la méthode d’authentification appropriée pour votre solution d’identité hybride Azure Active Directory.

Authentification cloud

Les étapes de l’authentification cloud sont décrites dans le diagramme suivant :

Étapes de base pour l’authentification basée sur le cloud et où l’authentification de base est bloquée.

  1. Le client de messagerie envoie le nom d’utilisateur et le mot de passe à Exchange Online.

    Remarque : Lorsque l’authentification de base est bloquée, elle est bloquée à cette étape.

  2. Exchange Online envoie le nom d’utilisateur et le mot de passe à Azure Active Directory.

  3. Azure Active Directory retourne un ticket utilisateur à Exchange Online et l’utilisateur est authentifié.

Authentification fédérée

Les étapes de l’authentification fédérée sont décrites dans le diagramme suivant :

Étapes de base pour l’authentification fédérée et où l’authentification de base est bloquée.

  1. Le client de messagerie envoie le nom d’utilisateur et le mot de passe à Exchange Online.

    Remarque : Lorsque l’authentification de base est bloquée, elle est bloquée à cette étape.

  2. Exchange Online envoie le nom d’utilisateur et le mot de passe au fournisseur d’identité local.

  3. Exchange Online reçoit un jeton SAML (Security Assertion Markup Language) du fournisseur d’identité local.

  4. Exchange Online envoie le jeton SAML à Azure Active Directory.

  5. Azure Active Directory retourne un ticket utilisateur à Exchange Online et l’utilisateur est authentifié.

Comment l’authentification de base est bloquée dans Exchange Online

Vous bloquez l’authentification de base dans Exchange Online en créant et en affectant des stratégies d’authentification à des utilisateurs individuels. Les stratégies définissent les protocoles clients où l’authentification de base est bloquée, et l’attribution de la stratégie à un ou plusieurs utilisateurs bloque leurs demandes d’authentification de base pour les protocoles spécifiés.

Lorsqu’elle est bloquée, l’authentification de base dans Exchange Online est bloquée à la première étape de pré-authentification (étape 1 des diagrammes précédents) avant que la requête n’atteigne Azure Active Directory ou le fournisseur d’identité local. L’avantage de cette approche est que les attaques par force brute ou par pulvérisation de mot de passe n’atteignent pas le fournisseur d’identité (ce qui peut déclencher des verrouillages de compte en raison de tentatives de connexion incorrectes).

Étant donné que les stratégies d’authentification fonctionnent au niveau de l’utilisateur, Exchange Online ne peut bloquer que les demandes d’authentification de base pour les utilisateurs qui existent dans l’organisation cloud. Pour l’authentification fédérée, si un utilisateur n’existe pas dans Exchange Online, le nom d’utilisateur et le mot de passe sont transférés au fournisseur d’identité local. Par exemple, envisagez le scénario suivant :

  1. Une organisation a le domaine fédéré contoso.com et utilise AD FS local pour l’authentification.

  2. L’utilisateur ian@contoso.com existe dans l’organisation locale, mais pas dans Office 365 ou Microsoft 365 (il n’existe aucun compte d’utilisateur dans Azure Active Directory et aucun objet destinataire dans la liste d’adresses globale Exchange Online).

  3. Un client de messagerie envoie une demande de connexion à Exchange Online avec le nom d’utilisateur ian@contoso.com. Une stratégie d’authentification ne peut pas être appliquée à l’utilisateur, et la demande d’authentification pour ian@contoso.com est envoyée au service AD FS local.

  4. Le service AD FS local peut accepter ou rejeter la demande d’authentification pour ian@contoso.com. Si la demande est acceptée, un jeton SAML est retourné à Exchange Online. Tant que la valeur ImmutableId du jeton SAML correspond à un utilisateur dans Azure Active Directory, Azure AD émet un ticket utilisateur pour Exchange Online (la valeur ImmutableId est définie lors de l’installation d’Azure Active Directory Connect).

Dans ce scénario, si contoso.com utilise un serveur AD FS local pour l’authentification, le serveur AD FS local reçoit toujours des demandes d’authentification pour les noms d’utilisateur inexistants de Exchange Online lors d’une attaque par pulvérisation de mot de passe.

Dans un déploiement Exchange hybride, l’authentification pour vos boîtes aux lettres locales est gérée par vos serveurs Exchange locaux, et les stratégies d’authentification ne s’appliquent pas. Pour les boîtes aux lettres déplacées vers Exchange Online, le service de découverte automatique les redirige vers Exchange Online, puis certains des scénarios précédents s’appliquent.

Procédures de stratégie d’authentification dans Exchange Online

Vous gérez tous les aspects des stratégies d’authentification dans Exchange Online PowerShell. Les protocoles et services dans Exchange Online pour lesquels vous pouvez bloquer l’authentification de base sont décrits dans le tableau suivant.

Protocole ou service Description Nom du paramètre
Exchange Active Sync (EAS) Utilisé par certains clients de messagerie sur les appareils mobiles. AllowBasicAuthActiveSync
Découverte automatique Utilisé par les clients Outlook et EAS pour rechercher et se connecter aux boîtes aux lettres dans Exchange Online AllowBasicAuthAutodiscover
IMAP4 Utilisé par les clients de messagerie IMAP. AllowBasicAuthImap
MAPI sur HTTP (MAPI/HTTP) Utilisé par Outlook 2010 et versions ultérieures. AllowBasicAuthMapi
Carnet d’adresses en mode hors connexion Copie des collections de listes d’adresses téléchargées et utilisées par Outlook. AllowBasicAuthOfflineAddressBook
Outlook Service Utilisé par l’application Courrier et Calendrier pour Windows 10. AllowBasicAuthOutlookService
POP3 Utilisé par les clients de messagerie POP. AllowBasicAuthPop
Reporting Web Services Utilisé pour récupérer des données de rapport dans Exchange Online. AllowBasicAuthReportingWebServices
Outlook Anywhere (RPC sur HTTP) Utilisé par Outlook 2016 et les versions antérieures. AllowBasicAuthRpc
SMTP authentifié Utilisé par les clients POP et IMAP pour envoyer des e-mails. AllowBasicAuthSmtp
Services Web Exchange (EWS) Interface de programmation utilisée par Outlook, Outlook pour Mac et des applications tierces. AllowBasicAuthWebServices
PowerShell Permet de se connecter à Exchange Online avec PowerShell distant. Pour obtenir des instructions, voir Connexion à Exchange Online PowerShell. AllowBasicAuthPowerShell

En règle générale, lorsque vous bloquez l’authentification de base pour un utilisateur, nous vous recommandons de bloquer l’authentification de base pour tous les protocoles. Toutefois, vous pouvez utiliser les paramètres AllowBasicAuth* (commutateurs ) sur les applets de commande New-AuthenticationPolicy et Set-AuthenticationPolicy pour autoriser ou bloquer de manière sélective l’authentification de base pour des protocoles spécifiques.

Pour les clients de messagerie et les applications qui ne prennent pas en charge l’authentification moderne, vous devez autoriser l’authentification de base pour les protocoles et services dont ils ont besoin. Ces protocoles et services sont décrits dans le tableau suivant :

Client Protocoles et services
Clients EWS plus anciens
  • Découverte automatique
  • EWS
Anciens clients ActiveSync
  • Découverte automatique
  • ActiveSync
Clients POP
  • POP3
  • SMTP authentifié
Clients IMAP
  • IMAP4
  • SMTP authentifié
Outlook 2010
  • Découverte automatique
  • MAPI sur HTTP
  • Carnet d'adresses en mode hors connexion
  • Outlook Anywhere (RPC sur HTTP)
  • Services Web Exchange (EWS)

Remarque

Le blocage de l’authentification de base bloque les mots de passe d’application dans Exchange Online. Pour plus d’informations sur les mots de passe d’application, consultez Créer un mot de passe d’application.

Ce qu'il faut savoir avant de commencer

Créer et appliquer des stratégies d’authentification

Les étapes pour créer et appliquer des stratégies d’authentification pour bloquer l’authentification de base dans Exchange Online sont les suivantes :

  1. Créez la stratégie d’authentification.

  2. Affectez la stratégie d’authentification aux utilisateurs.

  3. Attendez 24 heures que la stratégie soit appliquée aux utilisateurs, ou forcez l’application immédiate de la stratégie.

Ces étapes sont décrites dans les sections suivantes.

Étape 1 : Créer la stratégie d’authentification

Pour créer une stratégie qui bloque l’authentification de base pour tous les protocoles clients disponibles dans Exchange Online (configuration recommandée), utilisez la syntaxe suivante :

New-AuthenticationPolicy -Name "<Descriptive Name>"

Cet exemple crée une stratégie d’authentification nommée Bloquer l’authentification de base.

New-AuthenticationPolicy -Name "Block Basic Auth"

Pour obtenir des informations détaillées sur la syntaxe et les paramètres, consultez New-AuthenticationPolicy.

Remarques :

  • Vous ne pouvez pas modifier le nom de la stratégie après l’avoir créée (le paramètre Name n’est pas disponible sur l’applet de commande Set-AuthenticationPolicy ).

  • Pour activer l’authentification de base pour des protocoles spécifiques dans la stratégie, consultez la section Modifier les stratégies d’authentification plus loin dans cette rubrique. Les mêmes paramètres de protocole sont disponibles sur les applets de commande New-AuthenticationPolicy et Set-AuthenticationPolicy , et les étapes permettant d’activer l’authentification de base pour des protocoles spécifiques sont les mêmes pour les deux applets de commande.

Étape 2 : Affecter la stratégie d’authentification aux utilisateurs

Les méthodes que vous pouvez utiliser pour attribuer des stratégies d’authentification aux utilisateurs sont décrites dans cette section :

  • Comptes d’utilisateur individuels : utilisez la syntaxe suivante :

    Set-User -Identity <UserIdentity> -AuthenticationPolicy <PolicyIdentity>
    

    Cet exemple affecte la stratégie nommée Bloquer l’authentification de base au compte laura@contoso.comd’utilisateur .

    Set-User -Identity laura@contoso.com -AuthenticationPolicy "Block Basic Auth"
    
  • Filtrer les comptes d’utilisateur par attributs : cette méthode exige que les comptes d’utilisateur partagent tous un attribut filtrable unique (par exemple, Title ou Department) que vous pouvez utiliser pour identifier les utilisateurs. La syntaxe utilise les commandes suivantes (deux pour identifier les comptes d’utilisateur et l’autre pour appliquer la stratégie à ces utilisateurs) :

    $<VariableName1> = Get-User -ResultSize unlimited -Filter <Filter>
    $<VariableName2> = $<VariableName1>.MicrosoftOnlineServicesID
    $<VariableName2> | foreach {Set-User -Identity $_ -AuthenticationPolicy "Block Basic Auth"}
    

    Cet exemple affecte la stratégie nommée Bloquer l’authentification de base à tous les comptes d’utilisateur dont l’attribut Title contient la valeur « Sales Associate ».

    $SalesUsers = Get-User -ResultSize unlimited -Filter "(RecipientType -eq 'UserMailbox') -and (Title -like '*Sales Associate*')"
    $Sales = $SalesUsers.MicrosoftOnlineServicesID
    $Sales | foreach {Set-User -Identity $_ -AuthenticationPolicy "Block Basic Auth"}
    
  • Utiliser une liste de comptes d’utilisateur spécifiques : cette méthode nécessite un fichier texte pour identifier les comptes d’utilisateur. Les valeurs qui ne contiennent pas d’espaces (par exemple, le compte Office 365 ou le compte professionnel ou scolaire Microsoft 365) fonctionnent mieux. Le fichier texte doit contenir un compte d’utilisateur sur chaque ligne, comme suit :

    akol@contoso.com
    tjohnston@contoso.com
    kakers@contoso.com

    La syntaxe utilise les deux commandes suivantes (une pour identifier les comptes d’utilisateur et l’autre pour appliquer la stratégie à ces utilisateurs) :

    $<VariableName> = Get-Content "<text file>"
    $<VariableName> | foreach {Set-User -Identity $_ -AuthenticationPolicy <PolicyIdentity>}
    

    Cet exemple affecte la stratégie nommée Bloquer l’authentification de base aux comptes d’utilisateur spécifiés dans le fichier C:\My Documents\BlockBasicAuth.txt.

    $BBA = Get-Content "C:\My Documents\BlockBasicAuth.txt"
    $BBA | foreach {Set-User -Identity $_ -AuthenticationPolicy "Block Basic Auth"}
    
  • Filtrer Active Directory local comptes d’utilisateur synchronisés avec Exchange Online : pour plus d’informations, consultez la section Filtrer Active Directory local comptes d’utilisateur synchronisés avec Exchange Online de cette rubrique.

Remarque

Pour supprimer l’attribution de stratégie aux utilisateurs, utilisez la valeur $null du paramètre AuthenticationPolicy sur l’applet de commande Set-User .

Étape 3 : (Facultatif) Appliquer immédiatement la stratégie d’authentification aux utilisateurs

Par défaut, lorsque vous créez ou modifiez l’attribution de stratégie d’authentification sur les utilisateurs ou que vous mettez à jour la stratégie, les modifications prennent effet dans les 24 heures. Si vous souhaitez que la stratégie prenne effet dans les 30 minutes, utilisez la syntaxe suivante :

Set-User -Identity <UserIdentity> -STSRefreshTokensValidFrom $([System.DateTime]::UtcNow)

Cet exemple applique immédiatement la stratégie d’authentification à l’utilisateur laura@contoso.com.

Set-User -Identity laura@contoso.com -STSRefreshTokensValidFrom $([System.DateTime]::UtcNow)

Cet exemple applique immédiatement la stratégie d’authentification à plusieurs utilisateurs précédemment identifiés par des attributs filtrables ou un fichier texte. Cet exemple fonctionne si vous êtes toujours dans la même session PowerShell et que vous n’avez pas modifié les variables que vous avez utilisées pour identifier les utilisateurs (vous n’avez pas utilisé le même nom de variable par la suite à d’autres fins). Par exemple :

$Sales | foreach {Set-User -Identity $_ -STSRefreshTokensValidFrom $([System.DateTime]::UtcNow)}

ou

$BBA | foreach {Set-User -Identity $_ -STSRefreshTokensValidFrom $([System.DateTime]::UtcNow)}

Afficher les stratégies d’authentification

Pour afficher une liste récapitulative des noms de toutes les stratégies d’authentification existantes, exécutez la commande suivante :

Get-AuthenticationPolicy | Format-Table Name -Auto

Pour afficher des informations détaillées sur une stratégie d’authentification spécifique, utilisez la syntaxe suivante :

Get-AuthenticationPolicy -Identity <PolicyIdentity>

Cet exemple retourne des informations détaillées sur la stratégie nommée Block Basic Auth.

Get-AuthenticationPolicy -Identity "Block Basic Auth"

Pour obtenir des informations détaillées sur la syntaxe et les paramètres, consultez Get-AuthenticationPolicy.

Modifier les stratégies d’authentification

Par défaut, lorsque vous créez une stratégie d’authentification sans spécifier de protocoles, l’authentification de base est bloquée pour tous les protocoles clients dans Exchange Online. En d’autres termes, la valeur par défaut des paramètres AllowBasicAuth* (commutateurs ) est False pour tous les protocoles.

  • Pour activer l’authentification de base pour un protocole spécifique désactivé, spécifiez le commutateur sans valeur.

  • Pour désactiver l’authentification de base pour un protocole spécifique activé, vous pouvez uniquement utiliser la valeur :$false.

Vous pouvez utiliser l’applet de commande Get-AuthenticationPolicy pour voir l’état actuel des commutateurs AllowBasicAuth* dans la stratégie.

Cet exemple active l’authentification de base pour le protocole POP3 et désactive l’authentification de base pour le protocole IMAP4 dans la stratégie d’authentification existante nommée Bloquer l’authentification de base.

Set-AuthenticationPolicy -Identity "Block Basic Auth" -AllowBasicAuthPop -AllowBasicAuthImap:$false

Pour obtenir des informations détaillées sur la syntaxe et les paramètres, consultez Set-AuthenticationPolicy.

Configurer la stratégie d’authentification par défaut

La stratégie d’authentification par défaut est affectée à tous les utilisateurs qui ne disposent pas déjà d’une stratégie spécifique. Notez que les stratégies d’authentification attribuées aux utilisateurs sont prioritaires sur la stratégie par défaut. Pour configurer la stratégie d’authentification par défaut pour l’organisation, utilisez la syntaxe suivante :

Set-OrganizationConfig -DefaultAuthenticationPolicy <PolicyIdentity>

Cet exemple configure la stratégie d’authentification nommée Bloquer l’authentification de base comme stratégie par défaut.

Set-OrganizationConfig -DefaultAuthenticationPolicy "Block Basic Auth"

Remarque

Pour supprimer la désignation de stratégie d’authentification par défaut, utilisez la valeur $null du paramètre DefaultAuthenticationPolicy .

Utilisez l’exemple suivant pour vérifier qu’une stratégie d’authentification par défaut est configurée.

Get-OrganizationConfig | Format-Table DefaultAuthenticationPolicy

Supprimer les stratégies d’authentification

Pour supprimer une stratégie d’authentification existante, utilisez la syntaxe suivante :

Remove-AuthenticationPolicy -Identity <PolicyIdentity>

Cet exemple supprime la stratégie nommée Stratégie d’authentification de test.

Remove-AuthenticationPolicy -Identity "Test Auth Policy"

Pour obtenir des informations détaillées sur la syntaxe et les paramètres, consultez Remove-AuthenticationPolicy.

Comment savez-vous que vous avez correctement désactivé l’authentification de base dans Exchange Online ?

Pour confirmer qu’une stratégie d’authentification a été appliquée directement aux utilisateurs :

Remarque

Prenez en compte qu’une stratégie d’authentification par défaut peut déjà être configurée. Pour plus d’informations, consultez Configurer la stratégie d’authentification par défaut .

  1. Exécutez la commande suivante pour rechercher la valeur de nom unique (DN) de la stratégie d’authentification :

    Get-AuthenticationPolicy | Format-List Name,DistinguishedName
    
  2. Utilisez la valeur DN de la stratégie d’authentification dans la commande suivante :

    Get-User -Filter "AuthenticationPolicy -eq '<AuthPolicyDN>'"
    

    Par exemple :

    Get-User -Filter "AuthenticationPolicy -eq 'CN=Block Basic Auth,CN=Auth Policies,CN=Configuration,CN=contoso.onmicrosoft.com,CN=ConfigurationUnits,DC=NAMPR11B009,DC=PROD,DC=OUTLOOK,DC=COM'"
    

Lorsqu’une stratégie d’authentification bloque les demandes d’authentification de base d’un utilisateur spécifique pour un protocole spécifique dans Exchange Online, la réponse est 401 Unauthorized. Aucune information supplémentaire n’est retournée au client pour éviter toute fuite d’informations supplémentaires sur l’utilisateur bloqué. Voici un exemple de réponse :

HTTP/1.1 401 Unauthorized
Server: Microsoft-IIS/10.0
request-id: 413ee498-f337-4b0d-8ad5-50d900eb1f72
X-CalculatedBETarget: DM5PR2101MB0886.namprd21.prod.outlook.com
X-BackEndHttpStatus: 401
Set-Cookie: MapiRouting=#################################################; path=/mapi/; secure; HttpOnly
X-ServerApplication: Exchange/15.20.0485.000
X-RequestId: {3146D993-9082-4D57-99ED-9E7D5EA4FA56}:8
X-ClientInfo: {B0DD130A-CDBF-4CFA-8041-3D73B4318010}:59
X-RequestType: Bind
X-DiagInfo: DM5PR2101MB0886
X-BEServer: DM5PR2101MB0886
X-Powered-By: ASP.NET
X-FEServer: MA1PR0101CA0031
WWW-Authenticate: Basic Realm="",Basic Realm=""
Date: Wed, 31 Jan 2018 05:15:08 GMT
Content-Length: 0

Gérer l’authentification de base dans le Centre d'administration Microsoft 365

Dans le Centre d'administration Microsoft 365 à l’adresse , accédez à https://admin.microsoft.comParamètres>Paramètres De l’organisation>Authentification moderne. Dans le menu volant Authentification moderne qui s’affiche, vous pouvez identifier les protocoles qui ne nécessitent plus l’authentification de base.

En arrière-plan, ces paramètres utilisent des stratégies d’authentification. Si des stratégies d’authentification ont été créées par le passé, la modification de l’une de ces sélections crée automatiquement la première nouvelle stratégie d’authentification. Cette stratégie est visible uniquement via PowerShell. Pour les clients avancés qui utilisent peut-être déjà des stratégies d’authentification, les modifications apportées à la Centre d'administration Microsoft 365 modifient leur stratégie par défaut existante. Examinez les journaux de connexion Azure AD pour voir quels protocoles les clients utilisent avant d’apporter des modifications.

La désactivation de l’authentification de base dans le Centre d'administration Microsoft 365 ne désactive pas les services hérités suivants :

  • AllowBasicAuthOutlookService
  • AllowBasicAuthReportingWebServices

Vous pouvez uniquement désactiver ces paramètres dans Exchange Online PowerShell.

  1. Exécutez la commande suivante pour rechercher le nom de la stratégie d’authentification existante :

    Get-AuthenticationPolicy
    
  2. Remplacez AuthenticationPolicyName> par <la valeur de l’étape précédente, puis exécutez la commande suivante :

    Set-AuthenticationPolicy -Identity "<AuthenticationPolicyName>" -AllowBasicAuthReportingWebServices:$false -AllowBasicAuthOutlookService:$false
    
  3. La commande précédente affecte toutes les boîtes aux lettres que vous allez créer, mais pas les boîtes aux lettres existantes. Pour appliquer la stratégie aux boîtes aux lettres existantes, utilisez la <valeur AuthenticationPolicyName> dans la commande suivante :

    $mbx = Get-Mailbox -RecipientTypeDetails UserMailbox -ResultSize unlimited
    $mbx | foreach {Set-User -Identity $_.ExchangeObjectID.tostring() -AuthenticationPolicy <AuthenticationPolicyName>}
    

Filtrer Active Directory local comptes d’utilisateur synchronisés avec Exchange Online

Cette méthode utilise un attribut spécifique comme filtre pour Active Directory local membres du groupe qui seront synchronisés avec Exchange Online. Cette méthode vous permet de désactiver les protocoles hérités pour des groupes spécifiques sans affecter l’ensemble de l’organisation.

Tout au long de cet exemple, nous allons utiliser l’attribut Department , car il s’agit d’un attribut commun qui identifie les utilisateurs en fonction de leur service et de leur rôle. Pour afficher toutes les propriétés étendues de l’utilisateur Active Directory, accédez à Active Directory : Get-ADUser propriétés par défaut et étendues.

Étape 1 : Rechercher les utilisateurs Active Directory et définir les attributs utilisateur Active Directory

Obtenir les membres d’un groupe Active Directory

Ces étapes nécessitent le module Active Directory pour Windows PowerShell. Pour installer ce module sur votre PC, vous devez télécharger et installer les outils d’administration de serveur distant (RSAT).

Exécutez la commande suivante dans Active Directory PowerShell pour retourner tous les groupes dans Active Directory :

Get-ADGroup -Filter * | select -Property Name

Une fois que vous avez obtenu la liste des groupes, vous pouvez interroger les utilisateurs qui appartiennent à ces groupes et créer une liste en fonction de l’un de leurs attributs. Nous vous recommandons d’utiliser l’attribut objectGuid , car la valeur est unique pour chaque utilisateur.

Get-ADGroupMember -Identity "<GroupName>" | select -Property objectGuid

Cet exemple renvoie la valeur de l’attribut objectGuid pour les membres du groupe nommé Developers.

Get-ADGroupMember -Identity "Developers" | select -Property objectGuid

Définir l’attribut utilisateur filtrable

Après avoir identifié le groupe Active Directory qui contient les utilisateurs, vous devez définir la valeur d’attribut qui sera synchronisée avec Exchange Online pour filtrer les utilisateurs (et désactiver l’authentification de base pour eux).

Utilisez la syntaxe suivante dans Active Directory PowerShell pour configurer la valeur d’attribut pour les membres du groupe que vous avez identifiés à l’étape précédente. La première commande identifie les membres du groupe en fonction de leur valeur d’attribut objectGuid . La deuxième commande affecte la valeur d’attribut Department aux membres du groupe.

$variable1 = Get-ADGroupMember -Identity "<GroupName>" | select -ExpandProperty "objectGUID"; Foreach ($user in $variable1) {Set-ADUser -Identity $user.ToString() -Add@{Department="<DepartmentName>"}}

Cet exemple définit l’attribut Department sur la valeur « Développeur » pour les utilisateurs qui appartiennent au groupe nommé « Développeurs ».

$variable1 = Get-ADGroupMember -Identity "Developers" | select -ExpandProperty "objectGUID"; Foreach ($user in $variable1) {Set-ADUser -Identity $user.ToString() -Add@{Department="Developer"}}

Utilisez la syntaxe suivante dans Active Directory PowerShell pour vérifier que l’attribut a été appliqué aux comptes d’utilisateur (maintenant ou par le passé) :

Get-ADUser -Filter "Department -eq '<DepartmentName>'" -Properties Department

Cet exemple retourne tous les comptes d’utilisateur avec la valeur « Développeur » pour l’attribut Department .

Get-ADUser -Filter "Department -eq 'Developer'" -Properties Department

Étape 2 : Désactiver l’authentification héritée dans Exchange Online

Remarque

Les valeurs d’attribut des utilisateurs locaux sont synchronisées avec Exchange Online uniquement pour les utilisateurs disposant d’une licence Exchange Online valide. Pour plus d’informations, consultez Ajouter des utilisateurs individuellement ou en bloc.

La syntaxe PowerShell Exchange Online utilise les commandes suivantes (deux pour identifier les comptes d’utilisateur et l’autre pour appliquer la stratégie à ces utilisateurs) :

$<VariableName1> = Get-User -ResultSize unlimited -Filter <Filter>
$<VariableName2> = $<VariableName1>.MicrosoftOnlineServicesID
$<VariableName2> | foreach {Set-User -Identity $_ -AuthenticationPolicy "Block Basic Auth"}

Cet exemple affecte la stratégie nommée Bloquer l’authentification de base à tous les comptes d’utilisateur synchronisés dont l’attribut Department contient la valeur « Développeur ».

$developerUsers = Get-User -ResultSize unlimited -Filter "(RecipientType -eq 'UserMailbox') -and (department -like '*developer*')"
$developers = $developerUsers.MicrosoftOnlineServicesID
$developers | foreach {Set-User -Identity $_ -AuthenticationPolicy "Block Basic Auth"}

Si vous vous connectez à Exchange Online PowerShell dans une session Active Directory PowerShell, vous pouvez utiliser la syntaxe suivante pour appliquer la stratégie à tous les membres d’un groupe Active Directory.

Cet exemple crée une stratégie d’authentification nommée Stratégie marketing qui désactive l’authentification de base pour les membres du groupe Active Directory nommé Service marketing pour les clients ActiveSync, POP3, SMTP authentifiés et IMAP4.

Remarque

Une limitation connue dans Active Directory PowerShell empêche l’applet de commande Get-AdGroupMember de retourner plus de 5 000 résultats. Par conséquent, l’exemple suivant fonctionne uniquement pour les groupes Active Directory qui ont moins de 5 000 membres.

New-AuthenticationPolicy -Name "Marketing Policy" -AllowBasicAuthActiveSync $false -AllowBasicAuthPop $false -AllowBasicAuthSmtp $false -AllowBasicAuthImap $false
$users = Get-ADGroupMember "Marketing Department"
foreach ($user in $users) {Set-User -Identity $user.SamAccountName -AuthenticationPolicy "Marketing Policy"}