关于auth库,建议如下:
1. ion_auth,基于Redux重写而成,非常不错的认证库,国外用的很多,几个最新的ci2.0.2基础上的开源系统(如doveforum)都用它,支持ci 2.0和以上,2010年的版本就已经稳定,目前仍然在更新。
    优点:这个库除了用户认证,还搭建了简单的权限框架,支持admin、group的结构,并可直接使用,有完整的user_guide,很方便,而且再ci英文社区里受到热捧,使用是比较有保障的。
    缺点:不支持captcha(图形验证码),所以还需要图形验证功能的单独集成。
    链接:https://github.com/benedmunds/CodeIgniter-Ion-Auth/
    介绍和跟踪:http://codeigniter.com/forums/viewthread/145263/
下载: <ignore_js_op> benedmunds-CodeIgniter-Ion-Auth-marster-08dc2d3.zip (85.3 KB, 下载次数: 367) ,这是1.0版,2.0版作者自认为还有bug,慎用。

2. tank_auth,基于dx_auth重写而成,也非常不错,很多人再用,支持ci 2.0,目前不再更新,最新版本1.09应该是2011年2月份写的。
    优点:内建支持captcha(图形验证码)和reCAPTCHA (老外爱用的第三方图形验证网站,google维护),用起来很方便,作者重写的时候,还修正了dx_auth的一些安全问题,比如替换了不安全的md5哈希算法。
    缺点:被作者改写成了单纯的用户认证库,去掉了dx_auth原有的权限框架,如果要进行admin、role的管理,需要单独构架或者再开发,而且user_guide不完整,只能依靠dx_auth原有的说明内容,结合查阅源代码,才能弄明白。且models中的模型类和config/fx_auth.php中定义的数据库尚未完全对应。
    链接:http://www.konyukhov.com/soft/tank_auth/ 
    介绍和跟踪:http://codeigniter.com/forums/viewthread/110993/
下载: <ignore_js_op> tank_auth1.09.zip (195.78 KB, 下载次数: 109) ,虽然作者再1.09后没有更新,但在ci社区中依然保持跟踪。

另外,曾经流传很广的dx_auth主要是不兼容ci2.0,有人也为其做了兼容性调整:
下载: <ignore_js_op> dx_auth_for_20.rar (167.96 KB, 下载次数: 583)

3. fx_auth,作者是中国人,基于tank_auth重写而成,虽然作者自称重写自dx_auth,只要对比源代码,就能看出tank_auth的影子。最新版本1.10,应该也是由tank_auth的版本号继承的,完成于2011年4月,目前未见到更新。支持ci 2.0以上。
    优点:保留了tank的优点,在tank的基础上恢复了部分原来dx_auth权限框架,支持admin、role的结构,可直接使用。
    缺点:但不知为什么,还有一半dx原有的权限架构中的相关方法没有恢复,如is_role等,如果项目需要,得自己开发,和dx、tank一样,没有完整的user_guide,只能依靠dx_auth原有的说明内容,并查阅源代码来掌握,而且作者应该是为了兼容以前的dx_auth,所以改得优点面目全非。
    链接:http://www.mixti.cn/solution/201104/13/n356.shtml
    论坛里面相关:http://codeigniter.org.cn/forums/thread-9463-1-1.html,有更详细的介绍。

下载: <ignore_js_op> fx_auth_modified.rar (224.35 KB, 下载次数: 333) ,是我修改后的fx_auth,修正了原有的模型文件,使和config/fx_auth.php一致,并增加了is_role,is_banned二个方法,希望有帮助。直接解压缩到ci项目文件夹,并安装根目录下的.sql文件到数据库即可。后来发现也有些问题,最近没时间弄了,大家使用的时候得注意下。

有网友为tank_auth又补充了角色,从代码看比fx_auth规范很多,具体链接:https://bitbucket.org/mtsandeep/tank-auth-with-roles/
下载: <ignore_js_op> mtsandeep-tank-auth-with-roles-a65b2788bff6.zip (198.19 KB, 下载次数: 111)

4.FreakAuth_light:用户登录/退出、用户注册 、记住密码 、修改密码 、锁定网站的保留区域 、一个后台管理程序:管理用户 、管理管理员 、它允许你设置 4 个访问级别(从超级管理员到来宾),然后在控制器中设置一个“check”方法。它既能被设置在控制器的构造函数中,也能被设置在某个指定的函数中。如果用户调用控制器(或指定的函数),这段代码将检查他(她)是否登陆。
下载: <ignore_js_op> FreakAuth_light_1.1.zip (261.07 KB, 下载次数: 176)

5.Backend Pro:这个是认证库里面包含的内容最全面的,除了用户登陆、注册、密码、认证,甚至包含一个较完整的后台,管理用户、权限和角色,只是目前只有0.61版,不清楚作者为什么从10年起停止更新的原因,但ci英文社区很多人使用这个库,应该是因为可继承的代码较多。
    链接:http://www.kaydoo.co.uk/projects/backendpro
    介绍和跟踪:http://codeigniter.com/forums/viewthread/76078/
    和php5的兼容性修正:http://www.kaydoo.co.uk/2010/04/patch-backendpro-0-6-1-for-use-with-php-5
下载: <ignore_js_op> BackendPro0.6.1.zip (368.79 KB, 下载次数: 249)

6.BitAuth:是英文社区里面比较新的一个认证库,我阅读了一下代码,写得中规中距,干净,而且容易使用,还使用了最新的phpass 0.3的加密算法,支持 用户-用户组-角色 的认证,其中角色是在config中定义的,不能用于业务逻辑。但目前版本号只有0.1.1,人气比ion auth差不少,大家可以选择使用。
    链接:https://github.com/danmontgomery/codeigniter-bitauth
    介绍和跟踪:http://codeigniter.com/forums/viewthread/197267
下载: <ignore_js_op> danmontgomery-codeigniter-bitauth-0.1.1-0-g61c75ff.zip (74

auth用户认证库的更多相关文章

  1. Django框架 之 Auth用户认证

    Django框架 之 Auth用户认证 浏览目录 auth模块 user对象 一.auth模块 1 from django.contrib import auth django.contrib.aut ...

  2. Django——auth用户认证

    之前我们在进行用户校验的时候,总是从数据库中获取数据,然后再进行对比,就像如下这样: def login(request): if request.method == "POST" ...

  3. laravel的auth用户认证的例子

    参考http://www.cnblogs.com/yjf512/p/4042356.html 需要注意的是,生成的测试数据,password部分必须用laravel自带的hash一下 Hash::ma ...

  4. Django:(7)auth用户认证组件 & 中间件

    用户认证组件 用户认证组件: 功能:用session记录登陆验证状态 前提:用户表:django自带的auth_user 创建超级用户的命令: python manage.py createsuper ...

  5. Django之auth用户认证

    auth模块 from django.contrib import auth django.contrib.auth中提供了许多方法,这里主要介绍其中的三个: authenticate()    提供 ...

  6. Lumen开发:简单实现auth用户认证

    打开bootstrap/app.php,取消下面两段代码的注释, $app->middleware([ App\Http\Middleware\ExampleMiddleware::class ...

  7. Laravel 之Auth用户认证

    (1)生成Auth所需文件 打开phpstorm的命令行: php artisan make:auth 生成成功后,打开web.php, 发现多了如下代码: Auth::routes(); Route ...

  8. 2-功能1:基于用户认证组件和Ajax实现登录验证(图片验证码)

    1.登录页面的设计 (1)label标签的id属性 label标签的id属性,点击label标记,相当于点击了input框 bootstarp样式 class="form-group&quo ...

  9. Django学习笔记(13)——Django的用户认证(Auth)组件,视图层和QuerySet API

    用户认证组件的学习 用户认证是通过取表单数据根数据库对应表存储的值做比对,比对成功就返回一个页面,不成功就重定向到登录页面.我们自己写的话当然也是可以的,只不过多写了几个视图,冗余代码多,当然我们也可 ...

随机推荐

  1. 如何查看屏幕touch driver是否在正常工作

    1. adb shell cat proc/bus/input/devices查看touch对应的是哪个event,如是event3: 2. adb shell getevent dev/input/ ...

  2. 第一章 Andorid系统移植与驱动开发概述 - 读书笔记

    Android驱动月考1 第一章 Andorid系统移植与驱动开发概述 - 读书笔记 1.Android系统的架构: (1)Linux内核,Android是基于Linux内核的操作系统,并且开源,所以 ...

  3. 创建DAO模式的步骤

    1.建立数据库epet 2.创建实体类,和相对应的数据库是对应的 3.创建Dao的基类接口类BaseDao 4.创建Dao的实现类BaseDaoImpl 5.创建具体表的Dao类 6.创建具体表的Da ...

  4. ajax学习总结

    一.ajax简介 AJAX即"Asynchronous Javascript And XML"(异步JavaScript和XML),AJAX 是一种与服务器交换数据的技术,他可以在 ...

  5. linux arch目录下处理器体系架构介绍

    alpha 处理器Alpha 处理器最早由美国DEC 公司设计制造,在Compaq (康柏)公司收购DEC 之后,Alpha 处理器继续得到发展,并且应用于许多高档的Compaq 服务器上,HP (惠 ...

  6. jq封装的tab切换

    function tab(a,b,c){ $(a).on(c,function(){ $(this).addClass('active').siblings().removeClass('active ...

  7. Android四大组件及activity的四大启动模式

    Android四大组件 1. 广播接收者的两种类型: (1)系统广播接收者,就是继承BroadcastReceiver这个类,然后还要在清单文件中注册,注册之后给他一个action.当系统发生了这个a ...

  8. Gridview实现删除弹出提示信息

    实现方法: 双击GridView的OnRowDataBound事件: 在后台的GridView1_RowDataBound()方法添加代码,最后代码如下所示:       protected void ...

  9. etcd api 接口

    etcd api接口 基本操作api: https://github.com/coreos/etcd/blob/6acb3d67fbe131b3b2d5d010e00ec80182be4628/Doc ...

  10. Get Intensity along a line based on OpenCV

    The interpolate function is used to get intensity of a point which is not on exactly a pixel. The co ...