点击此处---> 群内免费提供SAP练习系统(在群公告中)
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
你好
我将hybris从5.0升级到6.0。 此后,以下脚本不再起作用:
USER =管理员
PWD =尼姆达
ADMIN = https://localhost:9002/admin
FILE = myfile.impex
curl -m 600 -c $ COOKIE -b $ COOKIE -o/dev/null -s -d j_username = $ USER -d j_password = $ PWD $ ADMIN/j_spring_security_check
RES =`卷曲-f -c $ COOKIE -b $ COOKIE -o- -s -D $ {COOKIE} .hdr -F encoding =" UTF-8" -F maxThreads = 1 -F legacyMode = true -F _legacyMode = -F验证时Enum = IMPORT_STRICT -F file =" @ $ FILE; type = octet/stream; filename = $(basename $ FILE)" -F enableCodeExecution = true -F _enableCodeExecution = on" $ ADMIN/console/impex/import/上传"
第二次卷曲返回403禁止错误。 似乎杂交体的身份验证过程已更改。 有人知道如何解决吗?
致谢
安迪
是的,这很痛苦。 SAP已经添加了跨站点请求伪造保护,考虑到您可以在临时操作中造成的破坏,这是一件好事。
您需要在登录名和每个后续请求中传递csrf令牌。 我没有尝试过impex,但我这样做是为了从脚本运行Groovy,我认为它是相似的。
请求登录页面/login.jsp
解析表单字段
_csrf
的值使用上面解析的值发送登录凭据+字段
_csrf
加载脚本页面
/console/scripting
解析
_csrf
http响应标头的值(与我们之前获得的令牌不同!)将此值作为
X-CSRF-Token
http请求标头与您提出的每个发布请求一起发送(即,发布到/console/scripting/execute)我放弃了尝试从bash脚本执行此操作的方法,而是编写了一个普通的shell脚本来代替它。
很好! 感谢分享。
感谢您指出正确的方向。 这是工作脚本部分:
一周热门 更多>