gpt4 book ai didi

c - 不以 root 身份运行时如何在 linux 中检查登录凭据?

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:42:52 26 4
gpt4 key购买 nike

我用 C 编写了一个在浏览器中运行的 cgi-bin 应用程序,允许用户打开交互式 shell 并在 Linux 机器上查看和编辑文件。它作为标准的 apache“www-data”用户运行。我只是向其中添加了一个登录屏幕,用户可以在其中输入他们的姓名和密码(在表单中),但我无法使用 getspnam 对用户进行身份验证,因为此功能仅在以 root 身份运行时有效。

当不以 root 身份运行时,我必须使用哪些选项来检查用户的登录凭据?

PS:在我的交互式 shell 中,我可以输入“su root”,然后输入我的密码,它确实可以提升到 root,所以显然可以交互式完成。

最佳答案

我想你想看看Pluggable authentication modules . AFAIK,PAM 为您处理所有杂乱的事情,您只需要执行一些函数调用即可在任何后端对用户进行身份验证,以对 Linux 主机上的用户进行身份验证(无论是影子密码、nis、ldap 等等)

这是一个简短的 guide关于将您的 C 代码与它们集成。

关于c - 不以 root 身份运行时如何在 linux 中检查登录凭据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1948535/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com