我想知道是否有一种方法可以使用PHP(或者其他CGI,但最好是PHP)来验证用户的操作系统(在这种情况下是Linux,Debian 5)用户名和密码。可能吗?难吗?谢谢!
我想知道是否有一种方法可以使用PHP(或者其他CGI,但最好是PHP)来验证用户的操作系统(在这种情况下是Linux,Debian 5)用户名和密码。可能吗?难吗?谢谢!
如果您指的是使用服务器上的登录凭据,那么这取决于身份验证的处理方式(通常使用其中一个PAM后端)
然后最简单的方法是使用http://pecl.php.net/package/PAM
唯一的方法是使用php exec()命令执行某种登录。
我不是系统管理员,所以不知道该命令是什么,但如果您能找到一个登录命令,您可以使用PHP传递该命令,然后解析结果。
虽然这是一个十年前的问题,但当我今天搜索同样的问题时,它出现了。
如果有人需要帮助,以下是我为我的用例(在树莓派上的Debian)解决它的方法:
function checkLogin($user, $password) {
return exec("echo $password | su $login -c 'echo Yes'") == 'Yes';
}
毫无疑问,它可以得到改进(例如对$user/$password值进行安全检查),但我分享它是因为它可能会帮助某些人。