我正在编写一个CI应用程序,它必须具有身份验证,最好是不同的角色(普通和管理员)。在使用MySQL DB时我使用了很棒的tank_auth库,我从来没有遇到任何问题。我在使用SQL SERVER时遇到了问题。当用户表为空时,当我插入用户时(在删除用户名检查后),当我登录时,即使我100%肯定,我也会不断收到错误的信用错误,这就像告诉我用户名一样奇怪。细节是正确的。
是否有人使用SQL SERVER DB成功使用任何良好的身份验证库?或者更好的是有人设法让tank_auth使用SQL SERVER吗?
我正在使用sqlsrv驱动程序btw。
非常感谢任何帮助!
比利ION_AUTH错误
A Database Error Occurred
Error Number: 22003
[Microsoft][SQL Server Native Client 10.0][SQL Server]Arithmetic overflow error converting expression to data type datetime.
INSERT INTO users (username, password, email, group_id, ip_address, created_on, last_login, active) VALUES ('billy jones', '0c85ef6874f2e08d3667a4334c4f4fc0d95b9358', 'billyjones26@gmail.com', 2, '127.0.0.1', 1297081373, 1297081373, 1)
Filename: C:\Program Files (x86)\Apache Software Foundation\Apache2.2\htdocs\cp\system\database\DB_driver.php
Line Number: 330
答案 0 :(得分:3)
试过Ion Auth?适用于MSSQL和一堆其他数据库引擎。
答案 1 :(得分:1)
这是另一个安全的身份验证库,具有许多安全功能:http://ulogin.sourceforge.net/
答案 2 :(得分:0)
Zend_Auth和Zend_Acl怎么样? Zend Framework是一个松散耦合的库,因此您可以单独使用这两个类。
Zend_Auth用于身份验证,Zend_Acl用于用户角色和权限。
答案 3 :(得分:0)
自己编写!
或者,如果您不想浪费数小时学习安全性和高级SQL,请转到Wiki中的CI贡献部分: http://codeigniter.com/wiki/Category:Contributions::Libraries::Authentication/