TeamsSSOTokenExchangeMiddleware class
アクティビティ名が signin/tokenExchange の場合、このミドルウェアはトークンの交換を試み、着信呼び出しを重複除去して、1 つの交換要求のみが処理されるようにします。 ユーザーが複数の Teams クライアントにサインインしている場合、ボットは各クライアントから "signin/tokenExchange" を受け取る可能性があります。 特定のユーザー ログインに対する各トークン交換要求には、同じ activity.value.id があります。
これらのトークン交換要求の 1 つだけをボットで処理する必要があります。 その他は StatusCodes.PRECONDITION_FAILEDを返します。 運用環境の分散ボットの場合、これには分散ストレージが必要であり、トークン交換が 1 つだけ処理されます。 このミドルウェアは、botbuilder-azure 内にある CosmosDb ストレージ、またはローカル開発用の MemoryStorage をサポートしています。
コンストラクター
Teams |
TeamsSSOTokenExchangeMiddleware クラスの新しいインスタンスを初期化します。 |
メソッド
on |
ボットが新しい要求を受信するたびに呼び出されます。 |
コンストラクターの詳細
TeamsSSOTokenExchangeMiddleware(Storage, string)
TeamsSSOTokenExchangeMiddleware クラスの新しいインスタンスを初期化します。
new TeamsSSOTokenExchangeMiddleware(storage: Storage, oAuthConnectionName: string)
パラメーター
- storage
-
Storage
重複除去に使用する Storage
- oAuthConnectionName
-
string
シングル サインオン トークン交換に使用する接続名
メソッドの詳細
onTurn(TurnContext, () => Promise<void>)
ボットが新しい要求を受信するたびに呼び出されます。
function onTurn(context: TurnContext, next: () => Promise<void>): Promise<void>
パラメーター
- context
-
TurnContext
ユーザーとの会話の現在のターンのコンテキスト。
- next
-
() => Promise<void>
ミドルウェア チェーンの次のステップへの実行を続行するために呼び出す関数。
戻り値
Promise<void>