我正在开发一个应用程序,其中我在客户端和java使用angularjs,在服务器端弹出,所有通信都是以JSON的形式。
我得到的问题是安全问题。 我有多个角色,用户可以拥有并基于这些角色,UI上的选项卡是否可见。
如果我使用JSP然后很容易使用taglib来解决这个问题,因为jsp是在服务器上编译的,并且返回的html不会有隐藏标签的html部分,并且最终用户无法看到这些标签或者他们的网址部分。
但是如何在基于角度的应用程序中解决这个问题,因为无论我在angular文件中编写什么代码,用户都可以通过firebug等更改它,并且可以看到选项卡及其URL。
示例:我在我的html中有以下内容:
<a href="users">Users</a>
如果用户没有必要的角色,我想完全隐藏这个东西。
一个解决方案可以编写一些指令,但用户可以编辑该指令的脚本,并可以在html中看到这个东西。
答案 0 :(得分:0)
你需要做两件事:
然后,在服务器端:
通过保护HTML,我的意思是对于选项卡XX,我使用ng-include =&#34;&#39; tabXX.html&#39;&#34;,我用同样的方式用Spring Security保护这个html我保护RestResources。