在业务或持久性层上复制JSF用户输入验证



我一直在研究仅在JSF托管bean上对用户输入验证进行验证的系统。从理论上讲,在大学台上,我们被告知要始终在业务层上复制验证(或者在不可能的情况下,在持久性层上:通过bean验证API或Hibernate侦听器)。

但是,经过一些研究,我得出的结论是,由于JSF不允许直接访问" bellow"它,因此没有任何安全漏洞。但是我真的想被证明是错误的。

当您仅使用JSF时,可能不是安全漏洞。总的来说,我认为最好将验证和授权尽可能靠近数据存储。例如,如果您决定在您的应用程序中添加REST服务,那么您的验证和授权已得到处理。

如果您使用的是javax.validation,则在使用PrimeFaces之类的组件库时,无需在JSF中复制验证。在PrimeFaces中,您可以简单地根据javax.validation注释使用Bean验证。

最新更新