pam_aix 模块
pam_aix 模块是一个 PAM 模块,通过提供调用相应AIX服务的接口,使启用 PAM 的应用程序能够访问AIX安全服务。
这些服务依次由可装入认证模块或 AIX 内置函数根据用户的定义和 methods.cfg 文件中的相应设置来执行。 在执行 AIX 服务期间生成的任何错误代码都将映射到相应的 PAM 错误代码。

此插图显示了如果配置 /etc/pam.conf 文件以利用 pam_aix 模块,那么 PAM 应用程序 API 调用将要遵循的路径。 如图所示,集成后,用户可通过任何可加载的身份验证模块(DCE、LDAP 或KRB5)或AIX®文件(compat)进行身份验证。
pam_aix 模块安装在 /usr/lib/security 目录中。 pam_aix 模块的集成要求配置 /etc/pam.conf 文件以使用该模块。 堆栈仍然是可用的,但是不在以下 /etc/pam.conf 文件的示例中显示:
#
# Authentication management
#
OTHER auth required /usr/lib/security/pam_aix
#
# Account management
#
OTHER account required /usr/lib/security/pam_aix
#
# Session management
#
OTHER session required /usr/lib/security/pam_aix
#
# Password management
#
OTHER password required /usr/lib/security/pam_aix pam_aix 模块实现了 pam_sm_authenticate、pam_sm_chauthok 和 pam_sm_acct_mgmt SPI 功能。 pam_sm_setcred、pam_sm_open_session 和 pam_sm_close_session SPI 也在 pam_aix 模块中实现,但是这些 SPI 功能返回 PAM_SUCCESS 调用。
以下是对 AIX 安全子系统的 PAM SPI 调用的近似映射:
PAM SPI AIX
========= =====
pam_sm_authenticate --> authenticate
pam_sm_chauthtok --> passwdexpired, chpass
Note: passwdexpired is only checked if the
PAM_CHANGE_EXPIRED_AUTHTOK flag is passed in.
pam_sm_acct_mgmt --> loginrestrictions, passwdexpired
pam_sm_setcred --> No comparable mapping exists, PAM_SUCCESS returned
pam_sm_open_session --> No comparable mapping exists, PAM_SUCCESS returned
pam_sm_close_session --> No comparable mapping exists, PAM_SUCCESS returned可以在模块使用之前使用 pam_set_item 函数设置要传递到 AIX 安全子系统的数据,或者使用 pam_aix 模块设置数据 (如果尚不存在)。