【发布时间】:2017-03-23 11:49:01
【问题描述】:
我是 JSF 和 Primefaces 的新手,我正在尝试使用 Primefaces 为 liferay 实现自定义 portlet。要提交简单的表单数据,我使用 ajax 如下:
<f:ajax execute="@form" render="@form :message-show" listener="#{dataController.addData}" onevent="updateProgresBar" />
提交将导致 ajax 调用,该调用在 url 中有一个带有视图映射的参数,例如
_sampleportlet_WAR_servicexy_INSTANCE_eVh2tM4zSkIj__facesViewIdResource=%2Fview.xhtml
作为 JSF/Primefaces 规范的一部分,您能否建议该 view.xhtml 映射是否受到保护,免受开放重定向漏洞的影响。或者这需要手动处理?如果是这样,您能否建议实施它的最佳实践,例如一些自定义过滤器等?
提前致谢
【问题讨论】:
-
每个表单都有一个 viewState 值,该值与表单一起提交以进行验证,以确保它是正确的,如果人们知道您的视图可以从任何方式击中他们,这取决于您保护是否你期望一个预期的流程 - 虽然以前从未见过那个 url 映射,也许这是一个生命线的事情。
-
如果我的理解正确,我应该经常检查是否例如view.xhtml 是我的 portlet 上下文的有效视图,对吧?
标签: ajax primefaces jsf-2 liferay portlet