如果“auth”成功或失敗,會檢查“account”模組嗎?

如果“auth”成功或失敗,會檢查“account”模組嗎?

在以下檔案的 PAM 配置中/etc/pam.d/system-auth

auth        required      pam_env.so
auth        sufficient    pam_unix.so nullok try_first_pass
auth        requisite     pam_succeed_if.so uid >= 500 quiet
auth        required      pam_deny.so

account     required      pam_unix.so
account     sufficient    pam_localuser.so
account     sufficient    pam_succeed_if.so uid < 500 quiet
account     required      pam_permit.so

如果第一部分 ( auth) 成功,第二部分 ( account) 是否會被呼叫並檢查?相反,如果auth部分失敗,會account被呼叫嗎?

在另一個場景中,強調我的主要困難是,如果我們混合auth併且account,讓我們看下面的例子:

auth        sufficient    pam_unix.so nullok try_first_pass
account     required      pam_unix.so

auth        requisite     pam_succeed_if.so uid >= 500 quiet
account     sufficient    pam_succeed_if.so uid < 500 quiet

PAM 究竟會如何表現?我對此感到困惑,如果有人能為我解釋這一點,那將對我非常有幫助。

答案1

PAM 不會混合身份驗證和帳戶類型,而是獨立堆疊它們根據管理類型。堆疊的傳回值取決於選項的順序和控制標誌,參見。https://docs.oracle.com/cd/E19253-01/816-4557/pam-15/index.html

如何處理結果在一定程度上取決於應用程式。通常,像 login 或 su 這樣的程式僅在成功驗證後才會驗證帳戶。

相關內容