다음을 통해 공유


TeamsSSOTokenExchangeMiddleware 클래스

정의

활동 이름이 signin/tokenExchange인 경우 이 미들웨어는 토큰을 교환하고 들어오는 호출을 중복 제거하여 하나의 교환 요청만 처리되도록 합니다.

public class TeamsSSOTokenExchangeMiddleware : Microsoft.Bot.Builder.IMiddleware
type TeamsSSOTokenExchangeMiddleware = class
    interface IMiddleware
Public Class TeamsSSOTokenExchangeMiddleware
Implements IMiddleware
상속
TeamsSSOTokenExchangeMiddleware
구현

설명

사용자가 여러 Teams 클라이언트에 로그인한 경우 봇은 각 클라이언트에서 "signin/tokenExchange"를 받을 수 있습니다. 특정 사용자 로그인에 대한 각 토큰 교환 요청에는 동일한 Activity.Value.Id 있습니다.

이러한 토큰 교환 요청 중 하나만 봇에서 처리해야 합니다. 다른 항목은 를 반환합니다 PreconditionFailed. 프로덕션의 분산 봇의 경우 하나의 토큰 교환만 처리되도록 분산 스토리지가 필요합니다. 이 미들웨어는 Microsoft.Bot.Builder.Azure에 있는 CosmosDb 스토리지 또는 로컬 개발을 위한 MemoryStorage를 지원합니다. 토큰 교환 작업 중복 제거에 대한 IStorage의 ETag 구현입니다.

생성자

TeamsSSOTokenExchangeMiddleware(IStorage, String)

TeamsSSOTokenExchangeMiddleware 클래스의 새 인스턴스를 초기화합니다.

메서드

OnTurnAsync(ITurnContext, NextDelegate, CancellationToken)

미들웨어에서 구현되면 들어오는 작업을 처리합니다.

적용 대상