首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Spring/GWT : UI端的权限控制

Spring/GWT : UI端的权限控制
EN

Stack Overflow用户
提问于 2015-09-23 05:03:37
回答 3查看 360关注 0票数 0

我正在编写一个简单的网页,它显示了一些基于用户权限的小部件。如果用户拥有编辑权限,页面就会呈现编辑小部件,否则编辑小部件就不会出现。

实现这一目标的最佳途径是什么?

我首先调用一个服务来登录用户的权限,然后根据权限设置可见性:无或阻止。但是,我看到用户可以在浏览器上“检查元素”并相应地设置可见性。然而,在服务器端,我正在使用DAO上的@PreAuthorize注释来控制用户操作。

如何控制UI小部件的可见性,而不需要用户进行更改,可能是在服务器端?

更新:我正在寻找在GWT中等效的JSTL

EN

回答 3

Stack Overflow用户

发布于 2015-09-23 13:08:30

AFAIK没有JSTL等价于GWT

然而,有一些第三方(即ArcIS)库使基于用户权限的UI元素显示/隐藏更加方便。

但是,无论是手动执行还是使用库,都应该确保正确地保护后端端(据我所知,您正在使用方法级安全性进行此操作)。

在处理客户端权限/安全性时,要记住一件重要的事情:

--您不应该信任来自客户机/浏览器的输入/操作,因为您无法控制它。因此,您必须始终在后端上执行安全性操作。

在我看来,用户是否能够从理论上检查编辑按钮(例如使用Browser Dev Tools )并使其可见并不重要,只要后端上的编辑操作是正确安全的。如果您真的那么担心,您可以从DOM中删除元素(即编辑按钮),而不是隐藏它,但这不会使它更加安全。

票数 2
EN

Stack Overflow用户

发布于 2015-09-23 05:31:15

我首先调用一个服务来登录用户的权限,然后根据权限设置可见性:无或块。

那么,假设您使用的是JSP,而不是设置可见性none或块,而是使用JSTL标记

代码语言:javascript
复制
<c:if test="${if the user has permission}">Show widget UI code</c:if> 

如果页面具有用户没有权限的n个小部件,为什么要加载所有n个小部件的代码?这是不表演的。

票数 0
EN

Stack Overflow用户

发布于 2015-09-24 05:52:24

  • 编写一个面板,根据客户端代码中的安全设置显示其内容
  • 添加要在安全面板中控制的小部件
  • 该面板现在将根据客户端代码中的安全性控制子组件的外观。

如前所述,并已得到您的认可,客户端安全性只是能见度控制,因此不足以保护应用程序。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/32731337

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档