阻止访问AngularJS中的管理页面

tho*_*uts 8 security node.js express angularjs passport.js

我想知道AngularJS中最好的方法是保护管理页面,即普通用户不应该看到的页面.显然,会有后端身份验证,但由于AngularJS应用程序是客户端,人们理论上仍然可以查看路由并直接转到这些URL并查看管理页面.

我使用Express,PassportJS和MongoDB(Mongoose)作为我的后端.当然,他们无法与管理页面进行交互,因为在创建,删除时都有服务器端身份验证......但我更倾向于甚至不向用户提供页面,如果他们没有适当的访问.由于该应用程序完全是客户端JS,我认为这是不可能的,因为人们可以只修改路由和诸如此类的东西.最好的方法是什么?感谢您的任何意见!

Jon*_*mer 0

为什么您“更愿意”不向非管理员用户提供这些页面?除了你应该阻止人们看到他们“不应该”看到的东西的本能之外,你是否有真正的理由关心这个问题?

如果您的安全配置正确,那么非管理员用户将无法访问管理数据或执行管理操作。这就是您应该关注的,而不是发明复杂的方法来阻止他们看到他们无论如何都无法使用的管理屏幕。任何花在这上面的时间基本上都是浪费时间,你应该把它花在更重要的事情上。

  • 抱歉,但我无法相信这个答案,以及它已被投票通过并当选的事实。我从事信息安全工作,问题很好,但回答毫无意义。请人们至少提供简单的解决方案... htdocs 并在提供资源之前评估资源的访问权限... (3认同)
  • 我有雇员,而不是雇主,因为我有一家公司。但让我们回到正题吧,我的朋友。泄露信息是一个安全缺陷,泄露受保护的区域,甚至不应该看到的东西的可视界面,也是一个错误,可能会导致社会工程和其他类型的攻击,你不应该泄露有关应用程序如何进行的信息如果用户不应该看到它,则可以使用。参考:我们与银行和多项安全标准合作。如果您在博客上使用 Angular,那没问题。但这根本不是一个好的做法。 (2认同)