Authentication 如何保护我的Microsoft Bot Framework iframe WebChat url

Authentication 如何保护我的Microsoft Bot Framework iframe WebChat url,authentication,botframework,Authentication,Botframework,我想使用“”将其与Web应用程序集成。 但是,我想通过将令牌传递给它来保护对话,因为密钥在querystring中,所以没有人可以直接复制上面的链接并在任何其他应用程序中使用它,因为这些数据包含机密数据 Dan Driscoll对此作了广泛的回答: 在本次讨论中,我们将讨论机密和 标记是相同的东西。如果可以的话,我们可以在以后详细讨论这些问题 你想要的。我现在将它们称为“秘密/令牌” 要访问对话,您需要机密/令牌和对话 ID。这些值有时粘在一起,有时在 独立变量。有时它们在URL中,有时 它们存

我想使用“”将其与Web应用程序集成。
但是,我想通过将令牌传递给它来保护对话,因为密钥在querystring中,所以没有人可以直接复制上面的链接并在任何其他应用程序中使用它,因为这些数据包含机密数据

Dan Driscoll对此作了广泛的回答:

在本次讨论中,我们将讨论机密和 标记是相同的东西。如果可以的话,我们可以在以后详细讨论这些问题 你想要的。我现在将它们称为“秘密/令牌”

要访问对话,您需要机密/令牌和对话 ID。这些值有时粘在一起,有时在 独立变量。有时它们在URL中,有时 它们存储在内存中的JavaScript中。这些类似于用户 令牌,存储在用户的cookie中

在所有情况下,这些值都可供坐在其位置的用户访问 自己的电脑。他们可以读取自己的URL,他们可以读取自己的URL JavaScript变量状态,并且他们可以读取自己的cookie

如果他们将这些信息发送给其他人,该人可以 模仿他们。如果我的银行给我发了一封密码重置链接 与其他人共享,该人可以重置我的帐户 输入密码并登录到我的帐户

我们的iFrame使用url来传递这些参数,因为这是一个足够的方法 许多情况下的安全级别。(您是否访问过网站, 手动将URL提取到iFrame,将其发送给其他人,然后 希望您的会话保持私密?可能不会。)

如果需要额外的安全性,可以跳过iFrame并发送 在JS或cookie中拥有秘密/令牌。你的JS可以提取这个,然后 将其发送到Web聊天JS对象。一旦网络聊天拥有秘密/令牌, is专门使用HTTP授权头将这些值发送到 直达电话服务


如果可以从web应用程序进行服务器调用,则可以通过向“”发出GET请求来请求令牌,并将您的web聊天机密作为授权标头传递。然后,您可以在webchat URL的查询字符串中使用“t=”而不是“s=”,并传递获得的令牌。有关更多详细信息,请参阅。使用,我可以生成令牌,但我需要再次将此令牌作为querystring参数发送,这是不安全的。我们不能对用户隐藏它,然后仍然使用webchat URL吗?谢谢Raj,我刚刚做到了。除此之外,我还向我的手机发送了带有令牌的webchat URL,并从手机和笔记本电脑上打开了该链接。它在两个位置打开,数据共享。这就是安全问题。我不希望其他人仅通过特定应用程序直接使用链接。@HARDIKSHAH如果您使用的是t=[token],则只有您的web应用程序才允许将webchat控件嵌入该标记。尝试使用该令牌将webchat控件嵌入另一个站点。它不会工作。我通过电子邮件将下面的链接发送给其他人。。。那个人点击链接就能看到聊天。我认为,令牌将在30分钟内过期,因此如果有人在过期之前看到链接,他们将能够访问数据。在这里,我和那个人都可以看到相同的聊天,任何人都可以回复聊天。