我想知道是否有办法使用PHP(或者其他一些CGI,但最好是PHP)来验证用户的操作系统(在本例中为Linux,Debian 5)用户名和密码。可能?难?谢谢!
答案 0 :(得分:4)
通常这种东西是特定于操作系统的,并且挂钩到现有的身份验证过程中。对于Linux,您可能想要查看PAM ...有一个PECL module for PAM可以帮助您完成此任务。我想你必须配置PAM以允许这种类型的身份验证,因此它可能需要一些系统管理工作。
答案 1 :(得分:1)
如果您在服务器上使用他们的登录凭据,则取决于如何处理身份验证(主要使用PAM后端之一)
那么最简单的方法就是使用http://pecl.php.net/package/PAM
答案 2 :(得分:0)
执行此操作的唯一方法是使用php exec()命令执行某种登录。
我不是系统管理员所以我不知道该命令是什么,但如果你能找到一个登录命令,你可以使用PHP传递该命令,然后解析结果。
答案 3 :(得分:0)
尽管这是一个已有10年历史的问题,但今天我在搜索相同的问题时还是出现了。
万一它对任何人都有帮助,这是我为用例(在Raspberry Pi上的Debian)解决它的方法:
function checkLogin($user, $password) {
return exec("echo $password | su $login -c 'echo Yes'") == 'Yes';
}
毫无疑问,它可以得到改进(例如,对$ user / $ password值进行语意检查),但我正在分享它,因为它可能会帮助某人。