我是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映射是否可以防止开放重定向漏洞。或者这需要手动处理?如果是这样,您能否建议实施它的最佳做法是什么?一些自定义过滤器等?
提前致谢
答案 0 :(得分:1)
开发人员有责任确保当前的Liferay用户有权访问portlet应用程序中包含的特定JSF视图,执行托管bean方法等。
有关详细信息,请参阅How do I do security in JSF?
请注意,Liferay Faces Bridge中有三个与您的问题直接或间接相关的漏洞:
为了确保您使用包含针对这些问题的修复程序的Liferay Faces依赖项版本,请访问liferayfaces.org主页并使用下拉菜单选择您的Liferay Portal和JSF版本。做出选择后,主页将使用最新的Maven / Gradle依赖项进行更新。