关于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. Laravel学习笔记(二)Laravel 应用程序的体系结构

    在一切环境就绪了,当然就要开始了解框架了. 站在巨人的肩膀上,学东西会事半功倍.我在网上找到一篇好文章,正好可以让我轻松了解Laravel应用程序的体系结构.因此借来直接用了. 该章节内容翻译自< ...

  2. .net MVC3 页面和 action 传值问题

    一.ViewData ViewData ViewBag 的特点和使用场景比较 1.  TempData:类型是字典的键值对结构 特点:值只能取一次.保存在Session中,Controller每次执行 ...

  3. Spring MVC基本配置@controller和@RequestMapping解释

    一:配置web.xml 1)问题:spring项目中有多个配置文件mvc.xml   dao.xml 2)解决:在web.xml中 <init-param> <param-name& ...

  4. org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Catalina].StandardHost[localhost].StandardContext[/pcisv7]]

    重新配jar包

  5. 关于ckeditor 第二次加载 出现问题

    在使用ckeditor 出现的问题也比较多的 ,一个问题是图片上传的问题 ,一个就是第二次加载的时候 ckeditor编辑框出现不了的问题 第一个问题 是修改ckeditor js属性 网上都有  第 ...

  6. mac系统下Ruby环境安装

    在我们编写代码过程中,会用到一系列的第三方开源类库,我们可以选择手动去一个个添加需要的库,但这非常麻烦.因此我们可以使用CocoaPods来帮助我们自动添加.使用CocoaPods需要先安装Ruby环 ...

  7. Maven构建项目后项目报Error错误Java compiler level does not match the version of the installed Java project fac

    项目->右键->Project Facets->修改facets中Java版本(下拉箭头出)为要用的版本 Maven构建项目需注意 1.项目右键->Preferences-&g ...

  8. 用VBS实现公司自动打卡

    公司每天要求早晚打卡,方式是登录某一个页面,然后点击上面的圈圈,如下图: 每天都要打开书签,登录这个页面,然后打卡...这么重复性的工作,怎么能是程序员天天干的事情呢(其实是我太懒了),那么就尝试让程 ...

  9. 命令与文件的查询 which whereis locate find

    一:which which查找脚本文件也就是我们的系统命令 用法:which [command] 默认根据我们PATH路径去查找,但是不同的用户肯定设置不同的PATH,所以就像普通用户查找不到一些/s ...

  10. javascript获取当前时间

    function getCurrentDate(){ var myDate = new Date(); var month = myDate.getMonth()+1; var day = myDat ...