CAP应用程序的目的地

2020-08-17 22:25发布

点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中) CAP专家们! 我开发了一个...

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

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


CAP专家们!

我开发了一个可以通过浏览器正常运行的CAP应用程序。 它包含db,srv,app和approuter模块。 我的服务用@注释(需要:"已验证用户")。

一旦部署到cf,则通过调用approuter要求我登录,然后将我重定向到服务。 因此它可以按预期工作。

从SAP移动卡调用服务时,我的问题开始了。 我的移动服务服务也在Cloud Foundry上运行。

我在移动服务(SAP移动卡/功能/移动连接)中创建了一个指向我的approuter URL的目的地,并选中了sso机制"转发身份验证"和"将用户令牌转发给AppRouter"。 如 https://help.sap.com/viewer/ 468990a67780424a9e66eb096d4345bb/Cloud/zh-CN/c5896a6238ae4f11a4f0d37d483340f0.html

"当为端点配置了转发身份验证SSO机制时,将出现将用户令牌转发到AppRouter复选框。选中该复选框以启用。启用后,用户令牌将作为x-转发到app-router应用程序 approuter-authorization标头。"

正如预期的那样,在移动卡应用程序集上刷新时,我在approuter中的标题x-approuter-authorization中收到了JWT,并且该请求已转发到服务层,但是我总是收到401错误。 该错误带有注释@(requires:'authenticated-user'),因为如果删除该错误,该错误就会消失。 因此,看来approuter收到了jwt,但是服务层不知道如何正确管理它。

有什么建议吗? 我应该在目的地中使用其他sso类型吗?

提前谢谢!

4条回答
哎,真难
2020-08-17 22:59

嗨,

请检查approuter是否设置了参数" forwardAuthToken = true"。

然后您应该尝试是否 JWT确实到达了后端。 您可以在包中配置显示令牌的端点。

在NODE中,您可以在此处找到示例:公开 CF中的JWT

在JAVA中,您可以轻松地从请求的http标头中提取字符串,然后将其粘贴到 https://jwt.io/

最诚挚的问候

MatthiasBühl

一周热门 更多>