
Fin de l’authentification de base, place à l’authentification moderne!
Après l’avoir annoncé depuis déjà plusieurs années, Microsoft tourne définitivement la page de l’authentification de base (identifiant + mot de passe) pour les services Office365, notamment pour l’envoi d’e-mails via SMTP.
Cette évolution impacte directement de nombreuses applications métiers développées avec WinDev, WebDev ou WinDev Mobile, qui s’appuyaient jusqu’alors sur une configuration SMTP classique pour l’envoi automatique de courriels.
Si cette méthode est encore partiellement tolérée, vous ne pourrez plus l’utiliser à compter de septembre 2025. N’attendez pas la dernière minute pour passer à l’action!
L’alternative consiste à utiliser l’API Graph, avec une authentification OAuth2. Cela nécessite une configuration spécifique dans le Microsoft Entra (anciennement Azure Active Directory) de votre compte.
Dans cet article, je vous guide étape par étape pour configurer correctement une application dans Microsoft Entra et utiliser l’API Graph Mail.Send depuis une application WinDev (ou WebDev, Windev Mobile).
Configuration dans Microsoft Entra
Étape 1 : Créer une application dans Microsoft Entra
- Connectez-vous au portail Entra : https://entra.microsoft.com
- Dans le menu “Applications – Inscriptions d’applications”, cliquez sur “Nouvelle inscription”
- Donnez un nom à votre application
- Définissez les types de comptes autorisés (généralement Comptes dans cet annuaire d’organisation uniquement)
- Facultatif mais recommandé : indiquez une URL de redirection (même fictive si vous utilisez le flux client credentials, par défaut vous pouvez mettre http://localhost:9000)
👉 Validez la création : votre application est maintenant enregistrée.
Étape 2 : Générer un secret d’application
- Dans la fiche de votre application, allez dans “Certificats et secrets”
- Cliquez sur “Nouveau secret client”
- Donnez-lui un nom et une durée de validité (choisissez selon vos contraintes de sécurité, sa durée maximale peut-être de 2 ANS)
- Une fois créé, vous pouvez copier la valeur du secret nous en aurons besoin à l’étape 4
Étape 3 : Donner les autorisations à l’API Graph
- Dans le menu de votre application, cliquez sur “API autorisées”
- Cliquez sur “Ajouter une autorisation”
- Choisissez Microsoft Graph, puis “Autorisations d’Application”
- Recherchez et sélectionnez Mail.Send
- Une fois ajouté et pour valider l’autorisation, cliquez sur “Accorder le consentement de l’administrateur”
✅ Cette autorisation permet à votre application d’envoyer des e-mails au nom d’un utilisateur ou d’un groupe autorisé, sans interaction.
Utilisation dans votre projet PCSOFT
Étape 4 : Générer un token OAuth2 dans WinDev/WebDev
💡 ATTENTION pour cela vous avez besoin de 3 paramètres à récupérer de la configuration dans l’Entra Microsoft
- L’ID de l’annuaire (locataire), visible dans le portail Entra, rubrique “Vue d’ensemble”
- L’ID d’application client (Client ID), idem dans la “Vue d’ensemble”
- La valeur du secret client créé à l’étape 2
Voici un exemple d’appel pour générer un token d’accès en utilisant une requête HTTP POST vers l’endpoint de Microsoft :
Étape 5 : Envoyer un e-mail avec l’API Graph Mail.Send
- Construisez une variable Email, identique à celle utilisée pour vos envois avec la fonction EmailEnvoieMessage
- Puis appelez l’API Graphe pour envoyer votre email (vous avez ici deux possibilités soit le format JSON, soit le format MIME, selon ce qui vous conviendra le mieux)
Voici un exemple d’envoi de mail au format MIME via l’API Graph :
Félicitations ! vous avez envoyé un email sans le mécanisme d’authentification de base !
🎯Conclusion
Plus sécurisé, plus moderne, mais plus technique !
Ce nouveau fonctionnement peut dérouter au premier abord. Il impose une montée en compétence, les requêtes HTTP, le portail Entra, etc. Mais il garantit un meilleur niveau de sécurité et une compatibilité avec les standards actuels.
Si vous développez des applications professionnelles avec les outils PCSOFT, cette méthode vous permettra de continuer à envoyer des e-mails depuis Office365 sans interruption de service à partir de septembre 2025 ✅
Chez Revoludev, nous accompagnons nos clients dans ce type de transition : configuration Entra, intégrations d’API, sécurisation des flux, mise en œuvre dans vos projets WinDev, WebDev ou Windev Mobile.
Sources Microsoft :
- https://techcommunity.microsoft.com/blog/exchange/exchange-online-to-retire-basic-auth-for-client-submission-smtp-auth/4114750
- https://learn.microsoft.com/fr-fr/exchange/clients-and-mobile-in-exchange-online/deprecation-of-basic-authentication-exchange-online
- https://learn.microsoft.com/fr-fr/entra/identity-platform/v2-oauth2-client-creds-grant-flow#get-a-token
- https://learn.microsoft.com/fr-fr/graph/api/user-sendmail?view=graph-rest-1.0&tabs=http
Envoi e-mails via Office365 sans authentification de base depuis l’application WinDev WebDev ou WinDev Mobile – e-mails Office365 sans authentification