我正在使用ZK开发一个Web应用程序。我已经实现了Spring Security工具,因此,根据用户登录的性质,页面应该显示或不显示某些组件。我一直在寻找,似乎没有这样的例子。有人知道这首先是否可行?
答案 0 :(得分:3)
你可以在zk docs中找到sample,但我会解释一下。
许多ZK标签,也许我不确定,可以有if
attribute。
这样就可以在定义的条件下显示组件。
现在,您可以将其与zk安全标记lib结合使用。
<?taglib uri="http://www.zkoss.org/zkspring/security" prefix="sec"?>
因此,您可以使用已定义的前缀进行Spring-Role检查。
if="${sec:isAllGranted('ROLE_SUPERVISOR')}"
当然,你也可以将它用于可见属性
但我认为由于安全方面,这一般不是一个好主意。
请注意,您也可以使用Spring annotations。
@PreAuthorize("checkWhatYouLike")
public void myEventHandler(Event ev){
...
}
然后看看SecurityUtil
类的zks Spring包。
答案 1 :(得分:0)
您可以使用可见属性根据用户登录隐藏和显示该组件。 我现在没有那么多时间创建一个演示示例,但是我可以建议你在这里可以做什么你可以将所有组件id放在DB中,用户名就像我们可以说如果我们在页面中有5个组件让我们假设