我正在编写一个自定义JAAS模块来使用JSON Web令牌(JWT)对用户进行身份验证。用户通过WebSockets连接到第三方应用程序,此应用程序支持自定义JAAS模块。
我不知道如何从应用程序中检索JWT令牌。它将作为标题传递,但我不知道如何使用JAAS API检索它。
当然,我可以访问客户端已经通过的所有内容并使用它进行身份验证吗?我认为应该有一些方法可以检索主题上有权请求访问应用程序的任意标题?
答案 0 :(得分:0)
所以在花了更多时间在JAAS之后,我的问题就解决了:
JAAS 不允许我访问包含JWT的(任意)协议头。但是,请注意我在WSS上使用MQTT,而MQTT CONNECT数据包具有“用户名”和“密码”字段。因此,JWT可以作为密码传递(关于这看似hacky,身份验证令牌 是一种密码)。 JAAS提供了一个API,用于从请求auth的用户检索密码,无论用于发送用户身份验证数据的基础协议如何。