如何通过使用Twilio Flex SSO令牌对自定义api /微服务进行身份验证

时间:2019-07-13 06:00:36

标签: twilio twilio-flex

我已成功启用了插件以与Azure AD一起使用。基于我能找到的文档,Twilio鼓励这样一种想法:如果您想从React JS应用程序与自定义API进行通信,则可以这样做。我看到的问题是Twilio忽略了一个事实,即从客户端应用程序与这些API通信时,必须在自定义api和react plugin应用程序之间进行身份验证

人们如何统一以后在UI上进行的Auth和随后对后端api的请求之间的身份验证?我们可以重复使用令牌吗?

在我看到的https://www.twilio.com/console/flex/users/single-sign-on

enter image description here

这是否意味着OAuth支持即将到来?我可以在哪里发布此问题,以增加在不久的将来将支持哪些协议的一些指标的可能性?如果twilio flex团队实际上正在努力添加OAuth支持,我想这只会让他们知道,只会让社区了解它们,特别是那些已经预先配置了现有微服务和基于OAuth流程的社区。

我希望在此处添加一个问题,以便对此问题有所回应。 https://github.com/twilio/twilio-flex-token-validator/issues/13

1 个答案:

答案 0 :(得分:1)

这里是Twilio开发人员的传播者。

这与SSO tokens中使用的Twilio Flex有关。

您可以重新使用令牌来验证您的插件。为此,您需要验证插件中的令牌。您可以通过将令牌发送到https://iam.twilio.com/v1/Accounts/{AccountSid}/Tokens/validate端点来实现。

该端点当前未记录,并且在Twilio帮助器库中不可用,这就是为什么您很难找到有关此端点的指南的原因,但是这是您的用法。

您需要使用帐户sid和auth令牌(或API密钥和密钥)向URL POST

发出经过身份验证的https://iam.twilio.com/v1/Accounts/{AccountSid}/Tokens/validate请求

请求的正文应为JSON,并包含一个密钥token,其中包含您的SSO令牌的值。

结果将为JSON,并且如果令牌有效,则将密钥valid设置为true。如果不是,则会出现一个message字段,您可以阅读该字段以查找更多信息。

如果您正在使用Node.js,那么很幸运,因为可以安装一个模块来为您完成所有这些操作; twilio-flex-token-validator。有关调用验证端点的更多详细信息,可以检查the source code of twilio-flex-token-validator。还有a tutorial on how to make calls to plugins from Flex可以在大约一半时间内保护插件。

对不起,花了所有这些才得到了这个答案,但这不是最大的答案。请告诉我这是否有帮助以及您的生活如何。