【发布时间】:2019-04-20 19:02:04
【问题描述】:
我想针对 Keycloak 服务器 (KS) 验证 Rest 服务 (RS)。
例如,RS 是通过应用程序 (APP) 而不是浏览器访问的。
到目前为止,我已经理解的方法如下:
- APP 正在针对 KS 进行身份验证并获得 ACCESS_TOKEN。
- APP 正在向 RS 发送请求,以某种方式传递 ACCESS_TOKEN。
- RS 正在提取 ACCESS_TOKEN 并对其进行验证/解码以获取与用户关联的所需信息。
我很难找到正确的 JAVA API 来执行步骤 (3)。
到目前为止,我已经使用 TokenVerifier(使用 KS 的 RSA 公钥设置)“验证”了令牌 => TokenVerifier.verify()。一旦验证,我正在解析它以使用它来解码它。到目前为止一切顺利。
我想要实现的一个额外步骤是确保 ACCESS_TOKEN 在 KS 中仍然有效。但我没有找到任何用于此目的的 JAVA API。因此,我使用 ACCESS_TOKEN 向 UserInfo 端点发出了一个常规的 HTTP 请求。
那么是否有任何 JAVA API 来检查 ACCESS_TOKEN 的有效性?
对于这种情况,我做的正确吗?
【问题讨论】:
标签: java oauth-2.0 openid-connect keycloak