【发布时间】:2010-09-25 08:56:59
【问题描述】:
在 Codeigniter 的会话中存储用户的角色是否安全?
角色将决定用户将拥有什么功能;即是管理员、普通订阅者或高级用户。
我还将会话存储在数据库中以提高安全性,但我想知道是否应该使用备用路由,例如查询用户的 id 并检查他们的角色,但我相信只需更进一步在身份验证中。
请指教。
【问题讨论】:
标签: php session codeigniter
在 Codeigniter 的会话中存储用户的角色是否安全?
角色将决定用户将拥有什么功能;即是管理员、普通订阅者或高级用户。
我还将会话存储在数据库中以提高安全性,但我想知道是否应该使用备用路由,例如查询用户的 id 并检查他们的角色,但我相信只需更进一步在身份验证中。
请指教。
【问题讨论】:
标签: php session codeigniter
是的,这很安全。如果它存储在数据库中,用户几乎无法篡改数据。
【讨论】:
将角色存储在会话中以避免一直查询它应该没问题,如果它主要是静态的。
只需考虑在会话有效(登录或未过期)时编辑用户角色的边缘情况下该怎么做。会话是否应该对他无效,所以他必须重新登录?还是让您的应用程序知道该角色现在已过时并且应该从数据库中刷新?
【讨论】:
$this->session 将访问您的会话。这确实是一个边缘情况,因为它很少发生,您可以设置一个用户属性来通知用户重新登录。我只是想我会把它作为思考的食物。每当您积极缓存内容时,您都需要一种远程使缓存无效的方法。