Adn*_*aza 5 java jwt kotlin vert.x
我在后端使用Vertx的Kotlin,并且从One Login获得身份验证后,前端将JWT令牌转发给我。现在,我要确保令牌有效而不是假的(伪造的)。如果我点击以下链接,它表示我需要一个公共密钥才能创建JWTAuth对象,该对象可用于调用身份验证进行验证。 https://vertx.io/docs/vertx-auth-jwt/kotlin/
我需要知道在哪里可以获取公钥?
我不了解 OneLogin,但从他们的文档中我可以看到他们是 SAML/OpenId Connect 提供商,因此可以轻松地从他们的配置中检索公钥。根据他们的文档,您可以从以下位置找到您的实例配置:
https://<subdomain>.onelogin.com/oidc/.well-known/openid-configuration
Run Code Online (Sandbox Code Playgroud)
从这个文件中,您应该查找jwks_uri包含如下值的键:https://acme.onelogin.com/oidc/certs。如果您获得此 URL,您将获得类似于以下内容的 JSON:
{
"keys": [
{
"kty": "RSA",
"kid": "JRcO4nxs5jgc8YdN7I2hLO4V_ql1bdoiMXmcYgHm4Hs",
"n": "z8fZsz...GHSTAoQw",
"e": "AQAB"
}
]
}
Run Code Online (Sandbox Code Playgroud)
该文件是一个 JSON Web 密钥(链)。可以将该 JSON 提供给 JWTAuth 以加载密钥并执行您需要的验证。作为 3.6 的旁注,OpenId Connect DiscoveryOAuth2 模块将提供适当的支持,这意味着您无需再摆弄它,只需传递 URL(如果您的提供程序和所有内容都已正确配置)即可。
| 归档时间: |
|
| 查看次数: |
1796 次 |
| 最近记录: |