Compartir a través de


TeamsSSOTokenExchangeMiddleware Clase

Definición

Si el nombre de la actividad es signin/tokenExchange, este middleware intentará intercambiar el token y desduplicará la llamada entrante, lo que garantiza que solo se procese una solicitud de intercambio.

public class TeamsSSOTokenExchangeMiddleware : Microsoft.Bot.Builder.IMiddleware
type TeamsSSOTokenExchangeMiddleware = class
    interface IMiddleware
Public Class TeamsSSOTokenExchangeMiddleware
Implements IMiddleware
Herencia
TeamsSSOTokenExchangeMiddleware
Implementaciones

Comentarios

Si un usuario ha iniciado sesión en varios clientes de Teams, el bot podría recibir un "signin/tokenExchange" de cada cliente. Cada solicitud de intercambio de tokens para un inicio de sesión de usuario específico tendrá un Activity.Value.Id idéntico.

Solo el bot debe procesar una de estas solicitudes de intercambio de tokens. Los demás devuelven PreconditionFailed. Para un bot distribuido en producción, esto requiere un almacenamiento distribuido que garantice que solo se procese un intercambio de tokens. Este middleware admite el almacenamiento de CosmosDb que se encuentra en Microsoft.Bot.Builder.Azure o MemoryStorage para el desarrollo local. Implementación de ETag de IStorage para la desduplicación de la actividad de intercambio de tokens.

Constructores

TeamsSSOTokenExchangeMiddleware(IStorage, String)

Inicializa una nueva instancia de la clase TeamsSSOTokenExchangeMiddleware.

Métodos

OnTurnAsync(ITurnContext, NextDelegate, CancellationToken)

Cuando se implementa en middleware, procesa una actividad entrante.

Se aplica a