Activer l’authentification unique pour votre application
Avec l’authentification unique (SSO) dans Teams, les utilisateurs de l’application ont l’avantage d’utiliser Teams pour accéder aux applications d’extension de bot ou de message. Une fois connectés à Teams à l’aide de Microsoft ou de Microsoft 365 compte, les utilisateurs de l’application peuvent utiliser votre application sans avoir à se reconnecter. Votre application est disponible pour les utilisateurs de l’application sur n’importe quel appareil disposant d’un accès accordé via l’ID Microsoft Entra.
Remarque
L’authentification unique pour une application de bot dans Teams n’est prise en charge que dans une conversation en un-à-un.
Cette section décrit la configuration de l’authentification unique requise pour les applications de bot et d’extension de messagerie.
Expérience utilisateur de l’authentification unique dans Teams
Les utilisateurs de l’application se connectent à Teams à l’aide d’un compte Microsoft personnel ou d’un compte Microsoft 365. Vous pouvez en tirer parti et utiliser l’authentification unique pour authentifier et autoriser les utilisateurs de l’application. L’ID Microsoft Entra permet aux utilisateurs de l’application d’accéder à votre application de bot ou d’extension de message.
- Teams authentifie et stocke l’identité de son utilisateur d’application.
- Votre bot utilise l’identité stockée de l’utilisateur de l’application qui est déjà validée par Teams.
- L’utilisateur de l’application doit donner son consentement à Teams pour utiliser l’identité pour accéder à votre bot.
- L’utilisateur de l’application peut accéder à l’application sur le web, le bureau ou le client mobile.
Remarque
Les utilisateurs de l’application ne peuvent pas accorder d’autorisation à certaines étendues d’autorisation, telles que Sites.ReadWrite.All
, ce qui permet à l’utilisateur de l’application de lire et d’écrire dans toutes les ressources SharePoint et OneDrive du locataire. Pour ces étendues, seul l’administrateur client peut accorder le consentement au nom d’un utilisateur d’application.
Voyons maintenant ce qui se passe sur le serveur principal pendant l’exécution pour obtenir une expérience d’authentification unique dans Teams.
Authentification unique dans Teams au moment de l’exécution
Obtenez l’authentification unique dans un bot ou une application d’extension de message en obtenant un jeton d’accès pour l’utilisateur de l’application Teams connecté. Ce processus implique le client et le serveur de l’application bot, le client Teams, Bot Framework et l’ID Microsoft Entra. Pendant cette interaction, l’utilisateur de l’application doit donner son consentement pour obtenir le jeton d’accès dans un environnement multilocataire.
L’image suivante montre le fonctionnement de l’authentification unique lorsqu’un utilisateur de l’application Teams tente d’accéder à l’application d’extension de bot ou de message :
# | Interaction | Causes |
---|---|---|
1 | Service bot → client Teams | Le message envoyé par l’utilisateur de l’application est reçu par le client Teams, qui l’envoie au bot. Si l’utilisateur de l’application s’est déjà connecté, un jeton est enregistré dans le magasin de jetons Bot Framework. Le bot appelle le service d’émission de jetons Bot Framework qui recherche un jeton existant pour l’utilisateur de l’application dans le magasin de jetons Bot Framework. • Si le jeton existe, l’accès est accordé à l’utilisateur de l’application. • Si aucun jeton n’est disponible, le bot déclenche le flux d’authentification. |
2 | Service bot → service de jeton Bot Framework | Le bot appelle le service d’émission de jetons Bot Framework pour obtenir un lien de connexion pour l’utilisateur. |
3 | Service de jeton Bot Framework → client Teams | • Pour l’application bot : Bot Framework Token Service envoie la demande de lien de connexion au service bot, qui la transfère au client Teams dans une carte OAuth. • Pour l’application d’extension de message : au lieu de la carte OAuth, bot Framework Token Service envoie une demande d’appel. |
4 | Teams client → Bot service → Bot Framework Token Service → Microsoft Entra ID | Une fois que le client Teams a reçu la carte OAuth pour l’utilisateur de l’application, si l’authentification unique est activée, il renvoie une demande d’échange de jetons pour l’utilisateur de l’application au bot. Le bot appelle le service de jeton Bot Framework, en tentant d’échanger le jeton reçu à partir de l’ID Microsoft Entra. |
5 | Id Microsoft Entra → client Teams | Pour l’utilisateur de l’application qui utilise le service bot pour la première fois, l’échange de jetons ne peut se produire qu’après que l’utilisateur de l’application a donné son consentement. Le client Teams affiche un message à l’utilisateur de l’application pour donner son consentement. En cas d’échec du consentement : 1. L’authentification revient à l’invite de connexion et l’utilisateur de l’application doit se connecter pour utiliser l’application bot. Le bouton de connexion s’affiche dans le client Teams et lorsque l’utilisateur de l’application le sélectionne, la page de connexion Microsoft Entra est affichée. 2. L’utilisateur de l’application se connecte et accorde l’accès au service de bot. |
6 | Service bot → service de jeton Bot Framework | Le jeton de l’utilisateur de l’application est stocké dans le magasin de jetons Bot Framework. |
Pour un bot ou une application d’extension de message, l’application de bot envoie une carte OAuth au client Teams. Cette carte est utilisée pour obtenir un jeton d’accès à partir de l’ID Microsoft Entra à l’aide de tokenExchangeResource
. Après le consentement de l’utilisateur de l’application, le client Teams envoie le jeton reçu de l’ID Microsoft Entra à l’application bot à l’aide tokenExchange
de . L’application de bot peut ensuite analyser le jeton pour récupérer les informations de l’utilisateur de l’application, telles que l’adresse e-mail.
Importante
Une application de bot ou d’extension de message peut avoir plusieurs points de terminaison actifs. La première fois que l’utilisateur de l’application reçoit une demande de consentement pour tous les points de terminaison actifs.
Activer l’authentification unique pour une application Teams
Les applications bot et d’extension de message utilisent Bot Framework pour gérer la communication avec les utilisateurs de l’application.
Application bot : également appelé chatbot ou bot conversationnel, il s’agit d’un service qui exécute des tâches simples et répétitives pour les utilisateurs de l’application. Les bots peuvent faire partie d’une application plus grande ou être un service autonome.
Application d’extension de message : il s’agit d’un service web que vous hébergez et qui peut être appelé à partir du client Teams. Il utilise le schéma de messagerie d’un bot pour garantir une communication sécurisée. Vous devez inscrire votre service web en tant que bot pour activer l’authentification unique pour votre application d’extension de message.
Cette section décrit les tâches impliquées dans l’implémentation de l’authentification unique pour un bot Teams ou une application d’extension de message. Pour activer l’authentification unique pour un bot Teams ou une application d’extension de message :
Configurer l’application avec l’ID Microsoft Entra : créez une application Microsoft Entra pour générer un ID d’application et un URI d’ID d’application. Pour générer un jeton d’accès, vous configurez des étendues et autorisez les applications clientes approuvées. La configuration requise dans l’ID Microsoft Entra pour activer l’authentification unique dans un bot et les applications d’extension de message est la même. Créez une ressource de bot et configurez sa clé secrète client, son point de terminaison de messagerie et sa connexion OAuth pour activer l’authentification unique.
Ajouter du code : ajoutez le code pour gérer le jeton d’accès afin d’envoyer ce jeton au code serveur de votre application dans l’en-tête Authorization et de valider le jeton d’accès lorsqu’il est reçu. Le code requis pour activer l’authentification unique dans une application de bot est différent du code requis pour une application d’extension de message.
Remarque
Cette section vous permet de sélectionner l’application pour laquelle vous souhaitez ajouter du code pour activer l’authentification unique.
Mettre à jour le manifeste d’application (précédemment appelé manifeste d’application Teams) : Mettez à jour votre manifeste d’application avec l’ID d’application et l’URI d’ID d’application générés dans l’ID Microsoft Entra pour permettre à Teams de demander des jetons d’accès au nom de votre application. La mise à jour requise dans le fichier manifeste de l’application est la même pour les applications de bot et d’extension de message.
Configurer des étendues et des autorisations Graph : vous pouvez ajouter d’autres étendues à votre application en étendant votre application avec des autorisations et des étendues Microsoft Graph.