oym*_*oym 8 php authentication ssl codeigniter
我正在使用PHP和codeigniter框架来处理我正在进行的项目,并且需要用户登录/身份验证系统.
现在我宁愿不使用SSL(可能是矫枉过正,而且我使用共享主机的事实不鼓励这样做).我考虑过使用openID,但我认为由于我的目标受众通常不是技术人员,因此可能会吓跑用户(更不用说它需要镜像登录信息等).我知道我可以编写基于散列的身份验证(例如sha1),因为没有传递敏感数据(我将灵敏度级别与stackoverflow的灵敏度进行比较).
话虽如此,在制作自定义解决方案之前,最好知道是否有用于提供半安全身份验证的好库或包?我是codeigniter的新手,但是与它完美结合的东西会更好.有任何想法吗?(我对我的方法持批评态度并接受建议,为什么我可能会因为不使用ssl而疯狂).提前致谢.
更新:我已经研究了一些建议.我很想尝试zend-auth,因为它似乎得到了良好的支持和良好的构建.有没有人在codeigniter中使用zend-auth的经验(它是否太笨重?)你是否有一个很好的参考将它与CI集成?我不需要任何复杂的身份验证方案.只需一个简单的登录/注销/密码管理授权系统.
此外,dx_auth似乎也很有趣,但是我担心它太麻烦了.有没有人有这个成功?
我意识到我也想以类似于stackoverflow的方式管理访客用户(即没有登录/注册的用户).所以具有此功能的任何建议都会很棒
我发现dx_auth在 Codeigniter 中非常好用,并且之前也使用过它。它无疑是 Codeigniter 功能最齐全的身份验证库。
我需要做一些事情来改变它,所以我用一些函数扩展了他们的 User 类以达到我的目的(他们的一些函数并不完全符合你的预期......)。以下是我所做的一些定制的一部分:
$CI = &get_instance();
$CI->load->model("dx_auth/users");
/**
* For most things, try and use the dx_auth models,
* because it's already done, and some stuff is more
* annoying to figure out than might be expected.
*
* For anything site-specific, use this model instead.
*
*/
class UserModel extends Users {
/**
* Sometimes when dx_auth sucks, you have to compensate
* functions that return useful results.
*
* @param int $id id of user to check if banned
* @return int $banned returns the result (0 or 1)
*/
public function is_banned($id) {
$query = "SELECT banned FROM users WHERE id=".(int)$id;
$result=$this->db->query($query);
$row = $result->row_array();
return $row['banned'];
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2458 次 |
| 最近记录: |