Aktivieren des einmaligen Anmeldens für universelle Aktionen für adaptive Karten in Ihrem Bot

Mit dem einmaligen Anmelden (Single Sign-On, SSO) in Teams haben App-Benutzer den Vorteil, dass Sie teams verwenden, um in einem Bot auf universelle Aktionen für adaptive Karten zuzugreifen. Nach der Anmeldung bei Teams mit einem Microsoft- oder Microsoft 365-Konto können App-Benutzer Ihre App verwenden, ohne sich erneut anmelden zu müssen. Ihre App ist für App-Benutzer auf jedem Gerät verfügbar, auf dem der Zugriff über Microsoft Entra-ID gewährt wird.

Weitere Informationen zu Universellen Aktionen für adaptive Karten finden Sie unter Universelle Aktionen für adaptive Karten.

Adaptive Karten Universal Actions verwendet den Bot als allgemeines Back-End für die Behandlung von Aktionen und führt einen neuen Aktionstyp ein. Bot verwendet Bot Framework, um die Kommunikation mit den App-Benutzern zu verarbeiten und zugriffstoken für die SSO-Authentifizierung an den Bot zu senden und zu empfangen. Auf ähnliche Weise verwendet adaptive Karten universal actions auch Bot Framework, um die SSO-Authentifizierung zu aktivieren.

Bevor Sie SSO für Ihre adaptiven Karten Universal Actions aktivieren, stellen Sie sicher, dass Sie das einmalige Anmelden für Ihren Bot aktiviert haben.

SSO in Teams zur Laufzeit

Einmaliges Anmelden für adaptive Karten Universal Actions in einem Bot kann durch Abrufen des Zugriffstokens für den Aktuell angemeldeten Teams-App-Benutzer aktiviert werden. Dieser Prozess umfasst den Bot-App-Client und -Server, den Teams-Client, Bot Framework und Microsoft Entra-ID. Während dieser Interaktion muss der App-Benutzer seine Zustimmung zum Abrufen des Zugriffstokens in einer mehrinstanzenfähigen Umgebung erteilen.

Die folgende Abbildung zeigt, wie einmaliges Anmelden funktioniert, wenn ein Teams-App-Benutzer versucht, auf die universellen Aktionen für adaptive Karten in einem Bot zuzugreifen:

Screenshot: SSO-Fluss für universelle Aktionen für adaptive Karten in einem Bot

# Interaktion Was gerade geschieht
1 Teams-Client → Bot-Dienst Teams sendet eine Aufrufanforderung Action.Execute an den Bot.
Wenn sich der App-Benutzer zuvor angemeldet hat, wird ein Token im Bot Framework-Tokenspeicher gespeichert. Der Bot ruft den Bot Framework-Tokendienst auf, der im Bot Framework-Tokenspeicher nach einem vorhandenen Token für den App-Benutzer sucht.
• Wenn das Token vorhanden ist, erhält der App-Benutzer Zugriff.
• Wenn das Token nicht verfügbar ist, löst der Bot den Authentifizierungsflow aus.
2 Microsoft Entra-ID → Teams-Client Für den App-Benutzer, der die universellen Aktionen für adaptive Karten zum ersten Mal in einem Bot verwendet, kann der Tokenaustausch nur erfolgen, nachdem der App-Benutzer die Zustimmung erteilt hat. Der Teams-Client zeigt dem App-Benutzer eine Meldung zur Erteilung der Zustimmung an.
Falls die Zustimmung fehlschlägt:
1. Die Authentifizierung greift auf die Anmeldeaufforderung zurück, und der App-Benutzer muss sich anmelden, um die Bot-App zu verwenden. Die Anmeldeschaltfläche wird im Teams-Client angezeigt, und wenn der App-Benutzer sie auswählt, wird die Microsoft Entra Anmeldeseite angezeigt.
2. Der App-Benutzer meldet sich an und gewährt Zugriff auf den Bot-Dienst.
3 Teams Client → Bot Service Der Teams-Client sendet die Aufrufanforderung Action.Execute zusammen mit dem Token erneut an den Bot.
Der Botdienst sendet eine Aufrufantwort mit einem OAuth-Karte als Reaktion auf den adaptiveCard/action Aufruf. Der Teams-Client sendet das Original adaptiveCard/action zusammen mit dem Token erneut an den Bot.
4 Microsoft Entra-ID → Teams-Client Microsoft Entra ID sendet eine Aufrufantwort mit adaptiver Karte an den Teams-Client. Der Bot gibt eine Antwort ohne Fehler mithilfe eines Karte oder einer Nachricht an den Teams-Client zurück.

Für universelle Aktionen für adaptive Karten in einem Bot sendet die Bot-App eine OAuth-Karte an den Teams-Client. Dieser Karte wird verwendet, um das Zugriffstoken von Microsoft Entra-ID mithilfe tokenExchangeResourcevon abzurufen. Nach der Zustimmung des App-Benutzers sendet der Teams-Client das von Microsoft Entra ID empfangene Token mithilfe von tokenExchangean die Bot-App. Die Bot-App kann dann das Token analysieren, um die Informationen des App-Benutzers abzurufen, z. B. die E-Mail-Adresse.

Anwendungsfälle zum Aktivieren von SSO

Die Authentifizierung für SSO innerhalb von ermöglicht die Action.ExecuteAuthentifizierung im Kontext des Gruppenchats oder kanals, in dem die adaptive Karte freigegeben wird.

Bots können mit einer Anmeldeanforderung als Antwort auf Action.Execute folgendes antworten:

  • Adaptive Karten, die vom Bot in einem Einzelchat, Gruppenchat oder Kanal gesendet werden.
  • Adaptive Karten, die vom App-Benutzer über eine Nachrichtenerweiterungs-App (unterstützt durch einen Bot) in Einzelchat, Gruppenchat oder Kanal gesendet werden.
  • Adaptive Karten, die im Verfassen- oder Vorschaubereich vorhanden sind, während der App-Benutzer die Nachricht verfasst. Im Verfassenbereich funktioniert die Aktualisierung in adaptiver Karte, und der Bot möchte möglicherweise ein Token verwenden, um dem App-Benutzer eine benutzerspezifische Ansicht bereitzustellen, bevor er die Karte an den Chat sendet.

Nächster Schritt

Siehe auch