【发布时间】:2015-09-15 21:25:31
【问题描述】:
我们正在使用AngularJS 和PHP 开发一个系统。我对身份验证问题的安全性有些担忧。我基于网络上的多个不同示例编写了一个基本身份验证(我才开始学习 Angular),它通过 REST API 调用使用数据库。在某些路线上,它会在创建承诺之前检查用户信息是否存在,但我有几个问题:
可以将会话信息存储在
$window.sessionStorage或$cookieStorage中,而客户端无法修改这些值,或者我应该使用 PHP$_SESSION将它们保留在服务器端并从那里获取它们,从不存储它们JS中的任何地方?会话信息可以包含 uid、角色、电子邮件和姓名我可以存储一个值,比如
$rootScope.role或$scope.role,而客户端不能修改这个值吗?例如,假设我们有多个级别的用户帐户,其中超级管理员是最高级别的。如果我创建一个带有解析的路由来检查$rootScope.rolelevel,新手可以将$rootScope.role值更改为超级管理员,以获得对受限后端部分的访问权限吗?我是否必须对获取
$_SESSION数据的每条路由执行 GET /session 检查,以确保这些数据保持不变?还是我只是偏执?
【问题讨论】:
标签: javascript php angularjs session