【发布时间】:2015-07-30 16:00:44
【问题描述】:
第一次开发 Angular 应用程序,我想知道拥有路由/控制器级别安全性的正确方法是什么。我基本上想将用户限制在某些应用程序部分并有这个要求:
- 如果用户未登录,则禁止访问某些路由,如果用户未登录,则重定向到登录,如果用户已登录,则访问该页面。
- 根据用户字段禁止访问某些路由,例如如果用户有
verified: false对象字段或其他方式来保存用户数据,则将用户重定向到验证页面。如果用户拥有verified: true,则允许访问该页面。
我想如何做到这一点是,要创建一个具有verified() 方法的服务并为用户返回正确的值,我将在控制器中使用该服务,并且此方法基于手动重定向以上要求。我关心的当然是安全,但也不是重新发明轮子。
【问题讨论】:
-
几乎所有方法都可以从控制台或 Grease/Tampermonkey 轻松“破解”,甚至不需要篡改 JS 资产。我认为在客户端应用程序的上下文中谈论“安全性”是不合适的,尤其是服务器端未备份的部分。
标签: javascript angularjs security controller