使用Spring Security在ZUL文件中隐藏/显示组件

时间:2013-04-23 12:50:25

标签: spring-security zk

我正在使用ZK开发一个Web应用程序。我已经实现了Spring Security工具,因此,根据用户登录的性质,页面应该显示或不显示某些组件。我一直在寻找,似乎没有这样的例子。有人知道这首先是否可行?

2 个答案:

答案 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个组件让我们假设