我们有一个用 Spring Boot 编写的服务,目前使用 kerberos/spnego 和 keytab 进行身份验证。 我试图用 Oauth2 框架替换它,由于 API 没有 UI,而且主要是服务 Id 进行身份验证,所以我陷入了如何继续的两难境地。我在某处读到可以使用 JWT。我应该使用 JWT 来获取访问令牌吗?有人能给我指个方向吗?或者有什么示例可以参考吗?
谢谢,
巴莱
这似乎是 OAuth2 客户端凭据流程的典型案例(无用户)。
最简单的选项可能是使用
client-id
和 client-secret
但 Keycloak 和 Spring Security 都支持其他选项。
将
spring-boot-stater-client
添加到您的依赖项,然后 打开文档。
请注意,您在 Spring 中可以选择 REST 客户端:RestTemplate(但处于维护模式)、WebClient(更好地适应响应式 apos)、@FeignClient(来自 Spring Cloud)、RestClient(尚未成熟)等。每个都有它自己与
OAuth2AuthorizedClientManager
集成以获取访问令牌。因此,也打开您选择的文档。