我们正在使用 S4SDK 访问目标服务。它需要在多租户环境中工作。通常,如果应用程序是前端应用程序,则请求上下文由用户请求触发。使用 approuter 和 XUAA 可以访问多租户的目标服务。在我们的例子中,我们的应用程序位于 RabbitMQ 之后,它不是由用户请求(例如 REST API 调用)触发的。目前我们正在使用来自云 SDK 的 com.sap.cloud.sdk.cloudplatform.connectivity.DestinationAccessor 类。我们可以从消息(RabbitMQ/AMQP)中检索租户 ID。问题是我们找不到从 S4SDK 注入租户 ID 或将 JWT 令牌克隆到 DestinationAccessor 的方法。我们寻找如何实现这一目标的方法/指导。我们希望这个交换/克隆令牌由 SDK 提供。
问问题
113 次
1 回答
1
您应该能够为此目的使用JwtBasedRequestContextExecutor 。
new JwtBasedRequestContextExecutor()
.withJwt(encodedJwt)
.execute(() -> {
// code using the SAP Cloud SDK
});
于 2019-05-29T19:26:25.737 回答