我有一个自定义 PAM 模块,需要访问硬盘上的一些敏感信息才能执行其工作。理想情况下,这些文件仅以 root 访问权限存储。
我在让它工作时遇到了一些问题,因为似乎所有 PAM 身份验证都是在用户尝试身份验证时运行的 - 这些用户不应访问这些受保护的文件,因此该过程失败。
有没有办法为 PAM 模块提供这些权限,无论谁尝试进行身份验证?理想情况下,我希望身份验证以 root 身份运行,或者在我可以授予特定组访问权限的守护程序用户下运行。
我认为/etc/shadow
所有密码尝试都读取“是”。我已经编写了 PAM 模块和共享 .so 库。
在 Ubuntu 16.04 上(如果相关的话)
答案1
我想出了这一点 - 这里的关键点是:
root
是拥有该文件的用户root
包含您希望需要访问的用户的组是该文件的组所有者。这些用户(在我的例子中)是安装了尝试进行身份验证的应用程序的用户。- 为用户设置读写,为组设置读取,其他人不设置任何内容