如果用户是对话框用户,则网关错误403

2020-09-23 10:41发布

点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)大家好, 我们正在尝试使用...

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

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


大家好,

我们正在尝试使用网关服务,而对于返回码403则存在一些问题。

场景

由于与我们的Intranet集成,我们正在创建一个Python请求来使用服务器端的SAP Gateway服务。

在服务的开发阶段,我们使用SAPUI5库对其进行了测试,并且一切正常。

对于此测试,我们将我的Developer用户与SAP_ALL个人资料一起使用


问题
当我们移开开发服务器端(在Apache 2.4上)并复制调用序列时,我们得到了403响应。
据我了解,这意味着该用户已经上瘾,但不允许该操作。
真正奇怪的是,使用 SERVICE TYPE 用户可以正常工作!

我们尝试了什么

我们清理了所有请求,并通过POSTMAN重新制作了请求,然后它们就起作用了。

在服务器上复制它们,我们仍然出现403错误。

我们将对话框用户与UI5库一起使用,并且有效。

从HAR文件中,我们使用相同的用户创建了一个Server脚本,并且再次出现403错误。

我们在对话框一,相同的授权以及全部的副本中创建了SERVICE TYPE用户。 有效。



有人在哪里寻找解决此问题的建议吗?

1条回答
SAP小菜
2020-09-23 10:52 .采纳回答

更新! -是MYSAPSSO2

经过数小时的交流,我们发现错误的原因是域值被截断。
我们通过IP地址(即10.11.12.13)连接到SAP,而MYSAPSSO2包含域值, .11.12.13,当我重新发送它时导致错误。

检查Wiki https://wiki.scn.sap .com/wiki/display/ASJAVA/The + MYSAPSSO2 + cookie 我发现我必须使用该域来处理MYSAPSSO2。

在创建MYSAPSSO2 cookie时,票证发行系统会将在请求URL中指定的域设置为cookie的domain属性的值。 例如,如果登录票证是由服务器server.support.mycompany.com颁发的,则MYSAPSSO2 cookie的域属性值通常为.support.mycompany.com。 因此,在使用"登录票证"的SSO方案中,所有使用的URL应包含服务器的完全合格域名(FQDN),而不包含主机名或IP地址。 如果网址中未包含FQDN名称,而是使用主机名,则该主机名将设置为Cookie的域属性值。 同样,如果请求中包含IP地址,则将该IP地址设置为Cookie的域。 在这两种情况下,浏览器将仅将带有请求的MYSAPSSO2 cookie发送回票证发行系统,因此无法进行到其他系统的SSO。

或者从我的请求中删除MYSAPSSO2 cookie。


由于我们计划在不久的将来传递到SSO登录,因此我们只是将呼叫从ip地址更改为域,并且可以使用POSTMAN进行操作。
通过代码...我们仍然有403, 回复:(

一周热门 更多>