第 7 章 在不设置锁定策略的情况下跟踪最后一次登录时间
您可以使用 Account Policy 插件跟踪用户登录时间,而无需设置过期时间或不活跃的时间。在这种情况下,插件会将 lastLoginTime 属性添加到用户条目中。
7.1. 配置帐户策略插件以记录最后一次登录时间 复制链接链接已复制到粘贴板!
复制链接链接已复制到粘贴板!
按照以下步骤,在用户条目的 lastLoginTime 属性中记录用户最后一次登录时间。
流程
启用帐户策略插件:
dsconf -D "cn=Directory Manager" ldap://server.example.com plugin account-policy enable
# dsconf -D "cn=Directory Manager" ldap://server.example.com plugin account-policy enableCopy to Clipboard Copied! Toggle word wrap Toggle overflow 创建插件配置条目来记录登录时间:
dsconf -D "cn=Directory Manager" ldap://server.example.com plugin account-policy config-entry set "cn=config,cn=Account Policy Plugin,cn=plugins,cn=config" --always-record-login yes --state-attr lastLoginTime
# dsconf -D "cn=Directory Manager" ldap://server.example.com plugin account-policy config-entry set "cn=config,cn=Account Policy Plugin,cn=plugins,cn=config" --always-record-login yes --state-attr lastLoginTimeCopy to Clipboard Copied! Toggle word wrap Toggle overflow 这个命令使用以下选项:
-
--always-record-login yes:启用登录时间的日志记录。 -
--state-attr lastLoginTime:配置 accounts Policy 插件会在用户的lastLoginTime属性中存储最后一次登录的时间。
-
重启实例:
dsctl instance_name restart
# dsctl instance_name restartCopy to Clipboard Copied! Toggle word wrap Toggle overflow
验证
以 用户身份登录目录服务器。例如,运行搜索:
ldapsearch -H ldap://server.example.com -x -D "uid=example,ou=People,dc=example,dc=com" -W -b "dc=example,dc=com"
# ldapsearch -H ldap://server.example.com -x -D "uid=example,ou=People,dc=example,dc=com" -W -b "dc=example,dc=com"Copy to Clipboard Copied! Toggle word wrap Toggle overflow 显示您在上一步中使用的用户
的最后LoginTime属性:ldapsearch -H ldap://server.example.com -x -D "cn=Directory Manager" -W -b "uid=example,ou=people,dc=example,dc=com" lastLoginTime
# ldapsearch -H ldap://server.example.com -x -D "cn=Directory Manager" -W -b "uid=example,ou=people,dc=example,dc=com" lastLoginTime ... dn: uid=example,ou=People,dc=example,dc=com lastLoginTime: 20210913091435ZCopy to Clipboard Copied! Toggle word wrap Toggle overflow 如果
lastLoginTime属性存在,并且 Directory Server 更新其值,则最后登录时间的记录可以正常工作。