TeamsSSOTokenExchangeMiddleware class
Se o nome da atividade for signin/tokenExchange, esse middleware tentará trocar o token e deduplicar a chamada de entrada, garantindo que apenas uma solicitação de troca seja processada. 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 tokens deve ser processada pelo bot. Os outros retornam StatusCodes.PRECONDITION_FAILED. Para um bot distribuído em produção, isso requer armazenamento distribuído garantindo que apenas uma troca de tokens seja processada. Esse middleware dá suporte ao armazenamento do CosmosDb encontrado no botbuilder-azure ou no MemoryStorage para desenvolvimento local.
Construtores
Teams |
Inicializa uma nova instância da classe TeamsSSOTokenExchangeMiddleware. |
Métodos
on |
Chamado sempre que o bot recebe uma nova solicitação. |
Detalhes do construtor
TeamsSSOTokenExchangeMiddleware(Storage, string)
Inicializa uma nova instância da classe TeamsSSOTokenExchangeMiddleware.
new TeamsSSOTokenExchangeMiddleware(storage: Storage, oAuthConnectionName: string)
Parâmetros
- storage
-
Storage
O de Armazenamento do
- oAuthConnectionName
-
string
O nome da conexão a ser usado para a troca de token de logon único
Detalhes do método
onTurn(TurnContext, () => Promise<void>)
Chamado sempre que o bot recebe uma nova solicitação.
function onTurn(context: TurnContext, next: () => Promise<void>): Promise<void>
Parâmetros
- context
-
TurnContext
Contexto para a virada atual da conversa com o usuário.
- next
-
() => Promise<void>
Função a ser chamada para continuar a execução para a próxima etapa na cadeia de middleware.
Retornos
Promise<void>