我正在将前端写到一个应用程序中,该应用程序接收来自Solace消息代理的实时数据。目前,前端和消息代理都运行在受保护的dev环境中。
在某种程度上,我们显然希望公开应用程序。我们在应用程序中进行了有效的身份验证,但是我们希望message在构建连接之前和以后在订阅中验证从前端发送的令牌。
身份验证是通过angular-auth-oidc-client
完成的。然而,关于配置OAuth授权的解决方案文档指出
安慰PubSub+事件代理只支持MQTT客户端的OAuth授权。
该应用程序使用solcientjs
npm包与代理进行通信。我不得不承认,对于所有的消息协议,我不是很坚定,但我认为包没有使用MQTT连接。
这就让Kerberos离开了可用客户端身份验证类型列表。然而,看看kerberos授权文档,它也说
Kerberos身份验证对于Solace Web消息传递API不可用
因此,现在我想知道如何验证来自客户端的令牌。以下是“理想”流对我的期待:
session.connect()
与代理建立连接,并发送承载令牌。preConnect
钩子(如果它存在的话),我可以向发出令牌的STS发送一个请求并等待响应。有办法做到这一点吗?我是不是误会了什么?我在“慰藉”方面的经验不多,只在前台工作,而不是管理经纪人的部门。
感谢你的暗示。
发布于 2021-08-02 19:03:25
目前,只有MQTT客户端可以使用OAuth进行身份验证。对于solclientjs,身份验证选项是使用内部数据库、LDAP、RADIUS或客户端证书身份验证。
在所有SMF客户端都可用OAuth之前,您可以使用第三方MQTT客户端库连接到Solace并使用OAuth令牌进行身份验证。
https://stackoverflow.com/questions/68177057
复制相似问题