Sprache

TeamsSSOTokenExchangeMiddleware Klasse

Definition

Wenn der Aktivitätsname signin/tokenExchange ist, versucht diese Middleware, das Token auszutauschen und den eingehenden Anruf zu deduplizieren, um sicherzustellen, dass nur eine Exchange-Anforderung verarbeitet wird.

public class TeamsSSOTokenExchangeMiddleware : Microsoft.Bot.Builder.IMiddleware
type TeamsSSOTokenExchangeMiddleware = class
    interface IMiddleware
Public Class TeamsSSOTokenExchangeMiddleware
Implements IMiddleware
Vererbung
TeamsSSOTokenExchangeMiddleware
Implementiert

Hinweise

Wenn ein Benutzer bei mehreren Teams-Clients angemeldet ist, kann der Bot von jedem Client ein "signin/tokenExchange" empfangen. Jede Tokenaustauschanforderung für eine bestimmte Benutzeranmeldung hat eine identische Activity.Value.Id.

Nur eine dieser Tokenaustauschanforderungen sollte vom Bot verarbeitet werden. Die anderen kehren zurück PreconditionFailed. Für einen verteilten Bot in der Produktion erfordert dies einen verteilten Speicher, der sicherstellt, dass nur ein Tokenaustausch verarbeitet wird. Diese Middleware unterstützt CosmosDb-Speicher, der bei Microsoft gefunden wird. Bot.Builder. Azure, oder MemoryStorage für lokale Entwicklung. Die ETag-Implementierung von IStorage für die Deduplizierung von Tokenaustauschaktivitäten.

Konstruktoren

Name Beschreibung
TeamsSSOTokenExchangeMiddleware(IStorage, String)

Initialisiert eine neue Instanz der TeamsSSOTokenExchangeMiddleware-Klasse.

Methoden

Name Beschreibung
OnTurnAsync(ITurnContext, NextDelegate, CancellationToken)

Wenn es in Middleware implementiert ist, verarbeitet es eine eingehende Aktivität.

Gilt für: