问题标签 [oauth2resttemplate]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - 得到错误org.springframework.http.converter.HttpMessageNotReadableException:无法构造java.time.LocalDate的实例
我正在尝试使用 oAuth2RestTemplate.getForEntity 进行 Rest Get 调用以服务并期望 json 回复被映射到我的模型类之一,但由于映射类使用本地日期(Java 8 概念),我当时收到以下错误杀菌:
在 [来源:sun.net.www.protocol.http.HttpURLConnection$HttpInputStream@96ce9eb2;线:1,
这是我的代码片段:
我知道发生这种情况是因为我的模型类将出生日期映射到 java 8 中引入的本地日期,而我的 oAuth2RestTemplate 不支持它。使用下面的代码解决了这个问题
但在这种情况下,我需要以字符串形式获取我的服务响应,然后我需要对其进行转换。我需要 oAuth2RestTemplate 的解决方案。有人可以帮忙吗?
java - 使用 Spring Oauth2RestTemplate 时如何切换到服务用户
我正在尝试使用 Spring 的 Oauth2RestTemplate,但我们需要它在进行 Rest 调用时使用一些超级用户(我们已经定义了用户),而不是通过最初进行服务调用的用户。
所以情况如下:
userA
打电话给endpointA
. 自然,他有权访问此端点(基于他在 Keycloak 中分配的角色中允许的操作)。 endpointA
然后将使用 OAuth2RestTemplate 对另一个服务进行 Rest 调用,endpointB
. 但是,userA
没有访问该端点的权限。这个调用应该作为一个service-user
,在我们的 keycloak 中,他本质上是一个可以做任何事情的超级用户。问题是,OAuth2RestTemplate 保留了进行原始调用的同一用户userA
( )。
有没有办法使用访问权限受限的 访问端点,并使用有权访问所有内容userA
的 OAuth2RestTemplate 触发 REST 调用?service-user
注意:该 OAuth2 信息service-user
仍应被检索,就像它仍然一样userA
(在 keycloak 中查找)。本质上,这只是我们在进行 REST 调用之前更改用户名(嗯......我认为这就是它所需要的)。
注意:我找到了一种暂时通过这个的方法。那就是在进行 REST 调用之前创建一个新线程。这是因为 Spring 不再有权访问该新线程中的用户安全上下文,从而强制它使用创建 OAuth2RestTemplate 时提供的安全详细信息检索新令牌。这表明另一种解决方案(实际上是首选)是强制 OAuth2RestTemplate 在命中时始终检索新令牌(使用 ResourceDetails,而不是用户令牌的“刷新”),而不是使用存储在 SecurityContextHolder 中的令牌请求的开始。
spring-boot - 访问受 OAuth2 和 mTLS 保护的 HTTPS 端点
我们有一个用例,我们需要访问受 OAuth2 + mTLS 保护的 HTTPS 端点。此端点在 APIGEE 中发布。当我尝试访问此端点时,总是收到错误消息“400 Bad Request,No required SSL certificate was sent”。任何人请帮助我?
请找到我遵循的以下步骤。
- 获得客户端证书+私钥。这也是由服务器授权的。即,能够在邮递员中使用客户端证书和私钥获得有效响应。
- 但是当我尝试通过 OAuth2RestTemplate 访问时,总是出现上述错误。
这是示例代码:
spring-boot - 如何在 Spring Boot 中用 WebClient 替换密码授予类型实现的 OAuth2RestTempate
我有以下 OAuth2RestTempate 配置用于密码授予类型实现,我正在实例化 bean:
由于 OAuth2RestTemplate 已被弃用,我试图用 Spring Boot WebClient 替换它以执行相同的操作,但似乎没有一种简单的方法可以做到这一点。任何线索表示赞赏。
java - oauth2RestTemplate Java
我是 Java 新手,我们有一个使用 oauth2RestTemplate 使用 SSO 实现的应用程序,由于某种原因,SSO 在非常罕见的情况下不会成功,我们无法追踪,SSO 系统由不同的团队管理。
这是我们配置的代码
我的问题是有什么方法可以在 SSO 不成功时重新尝试请求,或者在 SSO 失败时重定向到给定的 URL,现在 SSO 正在重定向到它自己的错误页面,该页面没有向用户提供任何信息
任何建议将不胜感激。