如何将用户身份验证(JWT)从CAP Java传递到SAP Cloud SDK for Java目标实例?

2020-08-21 16:05发布

点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)您好SAP Cloud SDK ...

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


您好SAP Cloud SDK Java和CAP专家,

我已经创建了一个示例应用程序 epmbp-consumer-app ,该应用程序使用了自定义的OData V2服务 通过主体传播使用SAP Cloud SDK for JavaScript。 因此,通过approuter进行身份验证的用户JWT传递给CAP服务,然后用于后端服务调用:

 .execute({destinationName:destinationName,jwt:jwt})

请参见 srv/service.js#L79 。 我想对适用于Java的SAP Cloud SDK执行相同的操作,但是只有在将目标设置为"基本身份验证"时,它才能正常工作。 将JWT作为标题传递。 com/marco.dahms"> Marco Dahms 不能解决问题。

我可以在哪里传递能够使用以下方法从CAP API中检索到的JWT:

字符串jwt = AuthenticatedUserClaimProvider.INSTANCE.getUserClaim(); 

由SAP Cloud SDK for Java执行的呼叫?

最诚挚的问候
格雷戈尔

5条回答
四川大学会员
2020-08-21 16:29

嗨,格雷格,

您是否检查了" getUserClaim()"返回的字符串是否包含" Bearer"前缀?
如果没有,则可能需要在将标头传递到Cloud SDK之前添加。

最诚挚的问候,
马克

一周热门 更多>