是否未从其他XSA应用转发的外部身份验证令牌设置XS_APPLICATIONUSER?

2020-08-17 13:03发布

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

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


您好,专家

对于"家庭"呼叫(ui5_a-> app_router_a-> node_a-> hana_a),按预期将HANA上下文设置为以下内容:

" APPLICATIONUSER":" XSA_USER_X",
" APPLICATION":" node_a/SPACE/ORG",
" XS_APPLICATIONUSER":" XSA_USER_X",
" SESSION_USER" :" SCHEMA_1AZM40AOS5SATT4I8WMQZ7583_RT",
" CURRENT_USER":" SCHEMA_1AZM40AOS5SATT4I8WMQZ7583_RT",
" CURRENT_SCHEMA":" SCHEMA"

但是对于外线通话(ui5_b-> app_router_b-> node_a-> hana_a)我得到了

" APPLICATIONUSER":" sidxsa",
" APPLICATION":" node_a/SPACE/ORG",
" XS_APPLICATIONUSER":" SCHEMA_1AZM40AOS5SATT4I8WMQZ7583_RT",
" SESSION_USER" :" SCHEMA_1AZM40AOS5SATT4I8WMQZ7583_RT",
" CURRENT_USER":" SCHEMA_1AZM40AOS5SATT4I8WMQZ7583_RT",
" CURRENT_SCHEMA":" SCHEMA"

两个应用程序都使用UAA,在mta.yaml中都具有forwardAuthToken:true。 这两个应用程序都是同一XSA用户,并且在同一UAA服务中进行了身份验证。

文档中到处都有暗示,这是设计使然。 在这种情况下,这样做的动机可能是什么? 但更重要的是,可以配置/更改此行为吗? 还是应该使用其他方法?

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

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


您好,专家

对于"家庭"呼叫(ui5_a-> app_router_a-> node_a-> hana_a),按预期将HANA上下文设置为以下内容:

" APPLICATIONUSER":" XSA_USER_X",
" APPLICATION":" node_a/SPACE/ORG",
" XS_APPLICATIONUSER":" XSA_USER_X",
" SESSION_USER" :" SCHEMA_1AZM40AOS5SATT4I8WMQZ7583_RT",
" CURRENT_USER":" SCHEMA_1AZM40AOS5SATT4I8WMQZ7583_RT",
" CURRENT_SCHEMA":" SCHEMA"

但是对于外线通话(ui5_b-> app_router_b-> node_a-> hana_a)我得到了

" APPLICATIONUSER":" sidxsa",
" APPLICATION":" node_a/SPACE/ORG",
" XS_APPLICATIONUSER":" SCHEMA_1AZM40AOS5SATT4I8WMQZ7583_RT",
" SESSION_USER" :" SCHEMA_1AZM40AOS5SATT4I8WMQZ7583_RT",
" CURRENT_USER":" SCHEMA_1AZM40AOS5SATT4I8WMQZ7583_RT",
" CURRENT_SCHEMA":" SCHEMA"

两个应用程序都使用UAA,在mta.yaml中都具有forwardAuthToken:true。 这两个应用程序都是同一XSA用户,并且在同一UAA服务中进行了身份验证。

文档中到处都有暗示,这是设计使然。 在这种情况下,这样做的动机可能是什么? 但更重要的是,可以配置/更改此行为吗? 还是应该使用其他方法?

付费偷看设置
发送
3条回答
粗暴的香蕉
1楼-- · 2020-08-17 13:44

我走到兔子洞下。 在sap/xssec nodejs包的内部深处有两个防护措施,并且消息" SecurityContext已使用外部OAuth客户端ID和/或标识区域的访问令牌初始化。此外,访问令牌包含属性。由于事实 如果我们想限制对提供属性的应用程序的属性访问,则getHdbToken函数不会返回有效的令牌。" 。

如果somone带有外部令牌和带有" xs.user.attributes"的令牌,则它们不会让任何人通过。 我的令牌有一个空对象xs.user.attributes对象{},但警卫队仍然坚持认为它不为空。 警卫认为这是正确的吗? 你认为我应该和他们的主管说话吗?


槿木_熙
2楼-- · 2020-08-17 13:39

我已经达到了支持。 该问题应该在@ sap/xsjs @ 3.0.4

打个大熊猫
3楼-- · 2020-08-17 13:29
中修复

一周热门 更多>