Authentification et EWS dans Exchange

Cette page contient des informations pour vous aider à choisir la norme d’authentification correcte pour votre application EWS qui cible Exchange.

L'authentification est un élément clé de votre application EWS (Exchange Web Services). Exchange Online, Exchange Online en tant qu'application Office 365 et les versions locales d'Exchange en commençant par Exchange Server 2013 prennent en charge les protocoles d'authentification web standard pour vous aider à sécuriser les communications entre votre application et le serveur Exchange.

Si vous ciblez Exchange Online, la méthode d'authentification que vous choisissez doit utiliser HTTPS pour chiffrer les demandes et les réponses que votre application envoie. Bien que vous puissiez utiliser HTTP avec les serveurs Exchange locaux, nous vous recommandons d'utiliser HTTPS pour toute demande que votre application envoie à un point de terminaison EWS de façon à sécuriser convenablement les communications entre votre application et un serveur Exchange.

Exchange propose les options d'authentification suivantes :

  • OAuth 2.0 (Exchange Online uniquement)

  • NTLM (Exchange en mode local uniquement)

  • De base (déconseillé)

La méthode d'authentification que vous choisissez dépend des exigences de sécurité de votre organisation, selon que vous utilisez Exchange Online ou Exchange en mode local et que vous avez accès à un fournisseur tiers qui peut émettre des jetons OAuth. Cet article fournit des informations qui vous aideront à sélectionner la norme d'authentification qui convient le mieux à votre application.

Authentification OAuth

Il est recommandé que toutes les nouvelles applications utilisent la norme OAuth pour se connecter aux services Exchange Online. La supériorité de ce mécanisme sur l'authentification de base vaut bien le travail supplémentaire de mise en œuvre d'OAuth dans votre application. Pour information, toutefois, il existe également un certain nombre d'inconvénients que vous devez connaître.

Tableau 1. Avantages et inconvénients de l’utilisation d’OAuth

Avantages Inconvénients
OAuth est un protocole d'authentification standard.

L'authentification est gérée par un fournisseur tiers. Votre application ne collecte pas et ne stocke pas les informations d'identification Exchange.

Cette solution est plus confortable, car votre application reçoit uniquement un jeton opaque qui émane du fournisseur d'authentification. Par conséquent, une violation de la sécurité dans votre application exposerait uniquement le jeton, et non pas les informations d'identification Exchange de l'utilisateur.
OAuth s'appuie sur un fournisseur d'authentification tiers. Cela peut impliquer des coûts supplémentaires à votre organisation ou vos clients.

La norme OAuth est plus difficile à mettre en œuvre que l'authentification de base.

Pour mettre en œuvre OAuth, vous devez intégrer votre application au fournisseur d'authentification et au serveur Exchange.

Pour réduire les inconvénients, vous pouvez utiliser la bibliothèque d’authentification Microsoft Microsoft Entra (ADAL) pour authentifier les utilisateurs auprès de services de domaine Active Directory (AD DS) dans le cloud ou localement, puis obtenir des jetons d’accès pour sécuriser les appels à un serveur Exchange. Exchange Online nécessite des jetons émis par le service Microsoft Entra, qui est pris en charge par la bibliothèque ADAL. Toutefois, vous pouvez utiliser n’importe quelle bibliothèque tierce.

Pour en savoir plus sur l'utilisation de l'authentification OAuth dans votre application EWS, consultez les ressources suivantes :

Authentification NTLM

L'authentification NTLM est disponible uniquement pour les serveurs Exchange locaux. Pour les applications qui s'exécutent dans le pare-feu de l'entreprise, l'intégration entre l'authentification NTLM et .NET Framework fournit un moyen prédéfini d'authentifier votre application.

Tableau 2. Avantages et inconvénients de l’utilisation de l’authentification NTLM

Avantages Inconvénients
Prêt à l'emploi avec votre serveur Exchange. Vous pouvez configurer l'accès aux services Exchange en utilisant une applet de commande Exchange Management Shell.

Utilise l'objet .NET Framework CredentialCache afin d'obtenir automatiquement les informations d'identification de l'utilisateur.

exemples de code disponibles emploient les informations d'identification de l'utilisateur connecté pour l'authentifier auprès d'un serveur d'Exchange local.
Les utilisateurs doivent être connectés à un domaine pour utiliser l'authentification NTLM.

Il peut être difficile d'accéder aux comptes de messagerie qui ne sont pas associés au compte de domaine de l'utilisateur.

Les applications de service doivent posséder un compte de domaine pour tirer parti de l’authentification NTLM.

Authentification de base

L'authentification de base fournit un niveau de sécurité rudimentaire à votre application cliente. Nous recommandons que toutes les nouvelles applications utilisent NTLM ou le protocole OAuth pour l'authentification ; toutefois, l'authentification de base peut être le bon choix pour votre application dans certaines circonstances.

Tableau 3. Avantages et inconvénients de l’utilisation de l’authentification de base

Avantages Inconvénients
Prêt à l'emploi avec votre serveur Exchange. Vous pouvez configurer l'accès aux services Exchange en utilisant une applet de commande Exchange Management Shell.

Les applications Windows peuvent utiliser les informations d'identification de l'utilisateur connecté par défaut.

Nombreux sont les exemples de code qui illustrent la façon d'appeler EWS à l'aide de l'authentification de base.
Nécessite que l'application collecte et stocke les informations d'identification de l'utilisateur.

Vous devez désactiver l’authentification NTLM si vous voulez forcer tous les utilisateurs à utiliser l’authentification de base.

En cas de violation de la sécurité dans votre application, ce mécanisme peut exposer l'adresse de messagerie et le mot de passe de l'utilisateur à un utilisateur malveillant.

Vous devez décider si l'authentification de base répond aux exigences de sécurité de votre organisation et des clients. L'authentification de base peut être judicieuse si vous souhaitez éviter les tâches de configuration fastidieuses, par exemple pour les applications de démonstration ou de test simples.

Remarque

L’authentification de base n’est plus prise en charge pour EWS pour la connexion à Exchange Online. Utilisez l’authentification OAuth dans toutes les applications nouvelles ou existantes EWS pour vous connecter à Exchange Online. L’authentification OAuth pour EWS est disponible uniquement dans Exchange dans le cadre d’Office 365. Les applications EWS qui utilisent OAuth doivent d’abord être inscrites auprès de Microsoft Entra.

Voir aussi