Compartilhar via


TeamsSSOTokenExchangeMiddleware Classe

Se o nome da atividade for signin/tokenExchange, o auto middleware tentará trocar o token e deduplicar a chamada de entrada, garantindo que apenas uma solicitação de troca seja processada.

Inicializa uma instância da classe .

faça logon na troca de tokens.

Herança
TeamsSSOTokenExchangeMiddleware

Construtor

TeamsSSOTokenExchangeMiddleware(storage: Storage, connection_name: str)

Parâmetros

Nome Description
storage
Obrigatório

O Armazenamento a ser usado para eliminação de duplicação.

connection_name
Obrigatório

O nome da conexão a ser usado para o único

Comentários

Se um usuário estiver conectado a vários clientes do Teams, o Bot poderá receber uma "conexão/tokenExchange" de cada cliente. Cada solicitação de troca de token para um logon de usuário específico terá uma Activity.Value.Id idêntica.

Apenas uma dessas solicitações de troca de token deve ser processada pelo bot. Os outros retornam . Para um bot distribuído em produção, auto requer um armazenamento distribuído, garantindo que apenas uma troca de token seja processada. O auto middleware dá suporte ao armazenamento do CosmosDb encontrado em Microsoft.Bot.Builder.Azure ou MemoryStorage para desenvolvimento local. Implementação de ETag do IStorage para eliminação de duplicação de atividade de troca de token.

Métodos

on_turn

on_turn

async on_turn(context: TurnContext, logic: Callable[[TurnContext], Awaitable])

Parâmetros

Nome Description
context
Obrigatório
logic
Obrigatório