在Keycloak的account-linking文档中,有一段代码片段:
KeycloakSecurityContext session = (KeycloakSecurityContext) httpServletRequest.getAttribute(KeycloakSecurityContext.class.getName())
为什么KeycloakSecurityContext
中会设置httpServletRequest
?这段代码应该在哪里运行?在什么情况下?感谢。
答案 0 :(得分:1)
如文档中所述,此代码可以驻留在Java servlet中。包含此servlet的服务器端应用程序必须受Keycloak OIDC适配器保护,以获取请求中登录用户的安全上下文。
用户必须已登录才能调用帐户链接。这是文档中列出的先决条件:
The application must already be logged in as an existing user via the OIDC protocol