TeamsSSOTokenExchangeMiddleware Classe
Definição
Importante
Algumas informações dizem respeito a um produto pré-lançado que pode ser substancialmente modificado antes de ser lançado. A Microsoft não faz garantias, de forma expressa ou implícita, em relação à informação aqui apresentada.
Se o nome da atividade for signin/tokenExchange, este middleware tentará trocar o token e deduplicar a chamada recebida, garantindo que apenas um pedido de troca é processado.
public class TeamsSSOTokenExchangeMiddleware : Microsoft.Bot.Builder.IMiddleware
type TeamsSSOTokenExchangeMiddleware = class
interface IMiddleware
Public Class TeamsSSOTokenExchangeMiddleware
Implements IMiddleware
- Herança
-
TeamsSSOTokenExchangeMiddleware
- Implementações
Observações
Se um utilizador tiver sessão iniciada em vários clientes do Teams, o Bot poderá receber um "signin/tokenExchange" de cada cliente. Cada pedido de troca de tokens para um início de sessão de utilizador específico terá um Activity.Value.Id idêntico.
Apenas um destes pedidos de troca de tokens deve ser processado pelo bot. Os outros devolvem PreconditionFailed. Para um bot distribuído em produção, é necessário um armazenamento distribuído que garanta que apenas uma troca de tokens é processada. Este middleware suporta o armazenamento do CosmosDb encontrado em Microsoft.Bot.Builder.Azure ou MemoryStorage para desenvolvimento local. Implementação de ETag do IStorage para eliminação de duplicados de atividade de troca de tokens.
Construtores
| TeamsSSOTokenExchangeMiddleware(IStorage, String) |
Inicializa uma nova instância da TeamsSSOTokenExchangeMiddleware classe . |
Métodos
| OnTurnAsync(ITurnContext, NextDelegate, CancellationToken) |
Quando implementado no middleware, processa uma atividade de entrada. |