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 Azure Active Directory (AD).

Remarque

L’authentification unique pour une application de bot dans Teams est prise en charge uniquement 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. Azure AD 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 actuellement connecté. Ce processus implique le client et le serveur de l’application bot, le client Teams, Bot Framework et Azure AD. 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 :

Authentification unique pour les bots et extension de message au moment de l’exécution

# 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 → Azure AD Une fois que le client Teams a reçu la carte OAuth de 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 essayant d’échanger le jeton reçu d’Azure AD.
5 Client Azure AD → 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 Azure AD 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 d’Azure AD à l’aide de tokenExchangeResource. Après le consentement de l’utilisateur de l’application, le client Teams envoie le jeton reçu d’Azure AD à l’application bot à l’aide tokenExchangede . L’application 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é bot conversationnel ou chatbot, 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 :

  1. Configurer l’application avec Azure AD : créez une application Azure AD 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 Azure AD 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.

  2. 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.

  3. Mettre à jour le manifeste de l’application Teams : Mettez à jour le manifeste de votre application cliente Teams avec l’ID d’application et l’URI d’ID d’application générés dans Azure AD pour permettre à Teams de demander des jetons d’accès au nom de votre application. La mise à jour requise dans le fichier manifeste est la même pour les applications de bot et d’extension de message.

  4. 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.

Étape suivante

Voir aussi

Glossaire