Configuration de l'authentification OAuth Outlook/Microsoft 365
Ce guide vous accompagne dans la création d'une application Microsoft Azure pour l'authentification OAuth avec Outlook/Microsoft 365. OAuth offre un moyen plus sécurisé d'accéder à votre compte Outlook par rapport à l'authentification traditionnelle par mot de passe.
Prérequis
- Un compte Microsoft (personnel ou Microsoft 365/Office 365)
- Accès au portail Azure
- L'URL de votre installation Perfex CRM (pour la configuration de l'URI de redirection)
Pour les organisations Microsoft 365, vous pourriez avoir besoin de l'approbation d'un administrateur.
Configuration étape par étape
Étape 1 : Enregistrer une application dans le portail Azure
- Allez sur le portail Azure
- Connectez-vous avec votre compte Microsoft
- Naviguez vers "Azure Active Directory" (ou recherchez-le)
- Cliquez sur "App registrations" dans le menu de gauche
- Cliquez sur "+ New registration"
- Remplissez les détails de l'application :
- Name : Entrez un nom (par ex., « Perfex CRM Mailbox »)
- Supported account types : Choisissez "Accounts in any organizational directory and personal Microsoft accounts" pour une compatibilité maximale
- Redirect URI :
- Plateforme : Web
- URI :
https://your-domain.com/admin/mailbox/oauth/callback?provider=outlook - Remplacez
your-domain.compar votre domaine Perfex CRM réel
- Cliquez sur "Register"
Étape 2 : Configurer les permissions API
- Dans votre enregistrement d'application, cliquez sur "API permissions" dans le menu de gauche
- Cliquez sur "+ Add a permission"
- Sélectionnez "Microsoft Graph"
- Sélectionnez "Delegated permissions"
- Ajoutez les permissions suivantes :
Mail.Read- Lire les e-mails dans toutes les boîtes aux lettresMail.ReadWrite- Lire et écrire les e-mails dans toutes les boîtes aux lettresMail.Send- Envoyer des e-mails en tant qu'utilisateuroffline_access- Maintenir l'accès aux données auxquelles vous avez accordé l'accès (pour le rafraîchissement du token)
- Cliquez sur "Add permissions"
- IMPORTANT : Cliquez sur "Grant admin consent for [Your Organization]" si vous voyez ce bouton
Ceci est requis pour les comptes d'organisation. Cela nécessite des privilèges d'administrateur.
Étape 3 : Créer un secret client
- Dans votre enregistrement d'application, cliquez sur "Certificates & secrets" dans le menu de gauche
- Cliquez sur "+ New client secret"
- Entrez une description (par ex., « Perfex Mailbox Secret »)
- Choisissez une période d'expiration : 24 mois (recommandé pour la production)
- Cliquez sur "Add"
- IMPORTANT : Copiez la Value immédiatement (vous ne pourrez plus la voir) - c'est votre Client Secret
Étape 4 : Obtenir l'Application (Client) ID
- Dans votre enregistrement d'application, allez dans "Overview"
- Copiez l'Application (client) ID - c'est votre Client ID
Étape 5 : Configurer l'URI de redirection (vérification)
- Dans votre enregistrement d'application, cliquez sur "Authentication" dans le menu de gauche
- Sous "Redirect URIs", vérifiez que votre URI de redirection est listée :
https://your-domain.com/admin/mailbox/oauth/callback?provider=outlook
- Si absente, cliquez sur "+ Add a platform" > "Web" et ajoutez-la
- Sous "Implicit grant and hybrid flows", assurez-vous que "Access tokens" est coché (si disponible)
- Cliquez sur "Save"
Étape 6 : Configurer dans Perfex CRM
- Allez dans votre zone d'administration Perfex CRM
- Naviguez vers Mailbox > Configuration
- Sélectionnez "OAuth2" comme méthode d'authentification
- Sélectionnez "Outlook" comme fournisseur
- Entrez votre Client ID (Application ID depuis Azure)
- Entrez votre Client Secret (la valeur du secret que vous avez copiée)
- Pour les organisations Microsoft 365 : Entrez votre Tenant ID (trouvable dans Azure AD > Overview). Laissez vide pour les comptes Microsoft personnels.
- Cliquez sur "Save Configuration"
- Cliquez sur le bouton "Connect Outlook"
- Autorisez l'application dans la fenêtre popup Microsoft
- Vous devriez voir un message de succès confirmant la connexion
Limitations et considérations importantes
Restrictions de l'application Azure Microsoft
-
Exigences de consentement administrateur - Les comptes d'organisation (Microsoft 365/Office 365) nécessitent un consentement administrateur pour certaines permissions. L'administrateur doit approuver l'application avant que les utilisateurs puissent l'utiliser.
-
Restrictions de type de compte :
- « Accounts in this organizational directory only » - Uniquement les utilisateurs de votre organisation
- « Accounts in any organizational directory » - Utilisateurs de n'importe quelle organisation Microsoft 365
- « Accounts in any organizational directory and personal Microsoft accounts » - Compatibilité maximale
- « Personal Microsoft accounts only » - Uniquement les comptes personnels @outlook.com, @hotmail.com
-
Exigences du Tenant ID - Les comptes d'organisation nécessitent un Tenant ID pour une authentification correcte. Les comptes personnels peuvent le laisser vide.
Vérification et publication de l'application
- Les applications non vérifiées peuvent être utilisées immédiatement pour les comptes personnels mais peuvent afficher des messages d'avertissement aux utilisateurs.
- Les applications vérifiées nécessitent une soumission au Microsoft App Store (optionnel) et offrent une meilleure expérience utilisateur (sans avertissements).
- Workflow de consentement administrateur - Pour les comptes d'organisation, l'administrateur doit accorder le consentement. L'administrateur voit quelles permissions l'application demande.
Rafraîchissement des tokens
Notre module gère automatiquement le rafraîchissement des tokens :
- Refresh tokens : Obtenus automatiquement avec la permission
offline_access - Expiration des tokens : Typiquement 1 heure pour les access tokens, 90 jours pour les refresh tokens
- Rafraîchissement automatique : Notre module rafraîchit les tokens automatiquement avant leur expiration
Multi-Tenant vs Single-Tenant
- Multi-Tenant : L'application peut être utilisée par n'importe quel compte Microsoft (nécessite un consentement administrateur par organisation)
- Single-Tenant : L'application ne peut être utilisée qu'au sein de votre organisation
Notes
- L'URI de redirection doit correspondre exactement à ce que vous avez configuré dans le portail Azure
- Gardez votre Client Secret en sécurité - ne le partagez jamais publiquement
- Si vous changez de domaine, mettez à jour l'URI de redirection dans le portail Azure
- Pour les comptes d'organisation, assurez-vous que le consentement administrateur est accordé
- Le Tenant ID n'est nécessaire que pour les comptes Microsoft 365/Office 365
- Le flux OAuth est entièrement géré par Microsoft - notre module ne fait qu'initier et recevoir le callback
Dépannage
Erreur « AADSTS50011: Redirect URI mismatch » :
- Assurez-vous que l'URI de redirection dans le portail Azure correspond exactement :
https://your-domain.com/admin/mailbox/oauth/callback?provider=outlook - Vérifiez les barres obliques finales ou les différences HTTP vs HTTPS
- Vérifiez que l'URI est listée sous le type de plateforme « Web »
Erreur « Admin consent required » :
- C'est normal pour les comptes d'organisation (politique de Microsoft)
- Contactez votre administrateur Microsoft 365 pour accorder le consentement
- L'administrateur peut accorder le consentement dans Azure Portal > Enterprise applications
Erreur « Invalid client secret » :
- Les secrets clients expirent - créez-en un nouveau dans le portail Azure
- Assurez-vous d'avoir copié la « Value » (pas le Secret ID)
- Vérifiez que le secret n'a pas expiré
Erreur « AADSTS700016: Application not found » :
- Vérifiez que le Client ID est correct
- Assurez-vous d'utiliser l'Application (client) ID, pas l'Object ID
- Vérifiez que l'enregistrement de l'application existe dans le bon tenant Azure AD
Erreur « Token refresh failed » :
- Assurez-vous que la permission
offline_accessest accordée - Vérifiez que le consentement administrateur a été accordé (pour les comptes d'organisation)
- Vérifiez que le secret client n'a pas expiré
Ressources supplémentaires
- Documentation Microsoft Identity Platform
- Documentation Microsoft Graph API
- Portail Azure
- Flux Microsoft OAuth 2.0
Les exigences de consentement administrateur, les restrictions de type de compte et les politiques de tokens sont des politiques de sécurité de Microsoft pour les applications Azure. Ces limitations ne sont pas imposées par notre logiciel.