TeamsSSOTokenExchangeMiddleware 类
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
如果活动名称为 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) |
在中间件中实现时,处理传入活动。 |