首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >php用户认证库/框架..。有什么选择吗?

php用户认证库/框架..。有什么选择吗?
EN

Stack Overflow用户
提问于 2009-07-20 11:51:50
回答 3查看 2.5K关注 0票数 8

我正在为我正在从事的项目使用PHP和codeigniter框架,并且需要一个用户登录/身份验证系统。

现在,我宁愿不使用SSL (这可能有点过分,而且我使用的是共享主机,这会使我感到沮丧)。我已经考虑过使用openID,但是我决定,由于我的目标用户通常不是技术人员,它可能会吓跑用户(更不用说它需要镜像登录信息等等)。我知道我可以编写基于哈希的身份验证(比如sha1),因为没有传递敏感数据(我会比较敏感级别和堆栈溢出级别)。

尽管如此,在制定自定义解决方案之前,最好知道是否有任何好的库或包是您用来提供半安全身份验证的?我是新的代码点火器,但一些与它很好的集成将是可取的。有什么想法吗?(我愿意接受对我的方法的批评,也愿意接受一些建议,为什么我会疯狂地不使用ssl)。提前谢谢。

更新:我已经研究了一些建议。我很想尝试zend-auth,因为它似乎得到了良好的支持和良好的建造。有没有人有使用zend在代码点火器方面的经验(它太大了吗?)你有一个很好的参考资料与CI集成吗?我不需要任何复杂的认证schemes..just,一个简单的登录/注销/密码管理授权系统。

而且,dx_auth看起来也很有趣,但是我担心它太多才多艺了。还有人在这方面取得了成功吗?

我意识到我还想以类似于stackoverflow..so的方式管理来宾用户(即不登录/注册的用户)--任何具有此功能的建议都将是很棒的。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2009-07-20 12:23:10

我发现身份验证在Codeigniter方面很好,以前也使用过它。它无疑是Codeigniter最完整的身份验证库。

为了改变它,我需要做一些事情,所以为了我的目的,我用几个函数扩展了它们的用户类(它们的一些函数没有完全按照您的预期..)。以下是我所做的一些自定义的部分:

代码语言:javascript
复制
     $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'];
       }


    }
票数 2
EN

Stack Overflow用户

发布于 2009-07-20 12:11:44

我用Zend_Auth。但总的来说,我使用。据我所知,它与CI融合得很好。对于Zend_Auth,我使用一个Db_Table适配器和一个全局salt的SHA1。我认为这对很多目的来说都足够了。

票数 4
EN

Stack Overflow用户

发布于 2009-07-20 19:48:26

看起来,如果你想让zend在代码点火器中工作,那么可能正是你想要的。如果您发现zend& codeigniter是一个很好的混合体,请再次更新您的问题。

我个人认为对dx_auth进行黑客攻击是很痛苦的,特别是因为它缺乏文档,如果听起来很有希望的话,我很乐意尝试一下其他的东西。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1153117

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档