6.38. pam_userdb-针对 db 数据库进行身份验证

pam_userdb.so db = * /path/database * [调试] [crypt = [crypt | none]] [icase] [dump] [try_first_pass] [use_first_pass] [unknown_ok] [key_only]

6.38.1. DESCRIPTION

pam_userdb 模块用于根据 Berkeley DB 数据库中存储的值来验证用户名/密码对。数据库由用户名索引,并且与用户名键相对应的数据字段是密码。

6.38.2. OPTIONS

  • crypt=[crypt|none]

    • 指示是将加密密码还是纯文本密码存储在数据库中。如果为crypt,则密码应以 crypt(3)形式存储在数据库中。如果选择none,则密码应以明文形式存储在数据库中。
  • db=/path/database

    • 使用/path/database数据库执行查找。没有默认值。如果未提供数据库,则模块将返回* PAM_IGNORE *。请注意,数据库文件的路径应不带.db后缀。
  • debug

    • 打印调试信息。
  • dump

    • 将数据库中的所有条目转储到日志中。默认情况下不要这样做!
  • icase

    • 使密码验证不区分大小写(即,使用注册 Numbers 等时)。仅适用于纯文本密码存储。
  • try_first_pass

    • 使用先前与应用程序进行对话的另一个模块获得的身份验证令牌。如果无法获得此令牌,则模块将尝试进行对话。此选项可用于堆叠需要处理身份验证令牌的不同模块。
  • use_first_pass

    • 使用先前与应用程序进行对话的另一个模块获得的身份验证令牌。如果无法获得此令牌,则模块将失败。此选项可用于堆叠需要处理身份验证令牌的不同模块。
  • unknown_ok

    • 当检查不在数据库中的用户时,不要返回错误。这可以用于堆叠多个 pam_userdb 模块,该模块将检查多个数据库中的用户名/密码对。
  • key_only

    • 用户名和密码在数据库哈希中以“ username-password”(具有随机值)的形式连接在一起。如果用户名和密码的连接(中间带有短划线)返回任何结果,则该用户有效。这在用户名可能不是唯一但用户名和密码对是唯一的情况下很有用。

6.38.3. 提供的模块类型

提供了authaccount模块类型。

6.38.4. 返回值

  • PAM_AUTH_ERR

    • Authentication failure.
  • PAM_AUTHTOK_RECOVERY_ERR

    • 认证信息无法恢复。
  • PAM_BUF_ERR

    • 内存缓冲区错误。
  • PAM_CONV_ERR

    • Conversation failure.
  • PAM_SERVICE_ERR

    • 服务模块中的错误。
  • PAM_SUCCESS

    • Success.
  • PAM_USER_UNKNOWN

    • 基础身份验证模块未知的用户。

6.38.5. EXAMPLES

auth  sufficient pam_userdb.so icase db=/etc/dbtest

6.38.6. AUTHOR

pam_userdb 由 Cristian Gafton> [email protected] <编写。