繁体   English   中英

Spring OAuth2 使用 Keycloak 自动登录

[英]Spring OAuth2 automatical login with Keycloak

我在 Spring 安全方面经验不足,所以我的问题可能听起来有点奇怪。

我的环境由 4 个部分组成:

  • Keycloak 授权服务器(授权服务器)
  • Spring 资源服务器应用(资源服务器)
  • 2 OAuth2 客户端应用程序(客户端)

我配置得很好,OAuth2 和 SSO 与所有应用程序都可以正常工作。

除了 OAuth2 配置之外,还有更多工作要做。 当我的用户使用客户端应用程序时,他将在尝试访问资源时在表单上提供他的凭据。 但是我的model(资源用)比较复杂,时不时要做一些后台(家务)任务。 这些任务不是由用户(以用户的名义)完成的,而是由客户端应用程序本身请求的。 我的问题是,如何以客户端应用程序本身的名义从我的客户端访问资源服务器的端点。

我的第一个想法是客户端应用程序应该存储一个长期的 JWT 令牌并在调用期间使用这个令牌。 但我不确定。 我不想在糟糕的道路上浪费时间,这就是我首先要问的原因。

对我来说最关键和最可疑的部分:

  • 如何从 Keycloak 获得长期 JWT
  • 如何自动登录后台呼叫(通过 SSO 和 OAuth2)
  • 如何存储自动登录的凭据。

感谢您的想法或建议。

你永远不应该拥有长期令牌,因为这是一个安全风险。

如果有人设法获得一个长期令牌,那么他们就有很长时间恶意使用它。

我无法指导您如何在 keycloak 等中进行设置。但我会使用Client Credential Flow对服务器进行身份验证,并在每次需要进行这些“家务工作”之一时获取一个令牌。

您可以在此处阅读有关流程的更多信息Client Credential Flow

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM