对Plone 5上的脚本Python上的doActionFor工作流忽略CSRF保护

ter*_*yon 4 plone

我正在尝试使用Script Python进行工作流转换.

像这样:

wtool = context.portal_workflow
obj = context.Plone.doc1
wtool.doActionFor(obj, 'publish')
obj.reindexObject()
Run Code Online (Sandbox Code Playgroud)

但我得到了确认页面.这个页面标题是Confirming User Action.

我认为这是CSRF保护的自动功能.请告诉我.忽略对我的脚本的保护.

ebr*_*ult 6

我想你的脚本是从一个链接调用的.您需要更改脚本的调用方式:

  • 我为调用网址制作了另一个脚本.`authenticator = context.restrictedTraverse("@@ authenticator")url ="/ Plone/portal_skins/custom/wf_tool_"+"?_ authenticator ="+ authenticator.token()context.REQUEST.RESPONSE.redirect(url)` (3认同)