auth_ldap_cache_expiration_time
指令 `auth_ldap_cache_expiration_time` 设置缓存的 LDAP 身份验证结果过期前的持续时间。
LDAP Authentication module for NGINX
·
http
语法auth_ldap_cache_expiration_time time_in_milliseconds;
默认值none
上下文http
参数1
说明
指令 auth_ldap_cache_expiration_time 控制在为 NGINX 使用 LDAP Authentication 模块时,认证结果在缓存中保存的时长。启用缓存后,在指定时长内,同一用户的后续请求可以绕过查询 LDAP 服务器的开销,从而降低响应时间和服务器负载。
该指令接受一个单一参数,指定以毫秒为单位的持续时间,超过该时间后缓存结果将被视为过期。当在过期时间之后访问某个缓存条目时,会再次查询 LDAP 服务器以刷新认证结果。适当的缓存设置可以提高应用性能,尤其在高流量环境中,通过尽量减少对 LDAP 服务器的请求(LDAP 服务器通常比内存查找慢),能够显著改善性能。
要有效利用该缓存功能,设置合理的过期时间很重要。如果设置过高,用户可能会遇到过时的认证结果,尤其在密码更改之后。相反,设置过低可能会因频繁重新查询 LDAP 服务器而抵消性能收益。因此,管理员在配置此指令时应在性能需求和用户体验之间进行权衡。
配置示例
http {
auth_ldap_cache_expiration_time 60000; # Cache entries expire after 60 seconds
ldap_server test {
url ldap://ldap.example.com:389/DC=example,DC=com?sAMAccountName?sub?(objectClass=user);
binddn "[email protected]";
binddn_passwd "password";
require valid_user;
}
}⚠
确保缓存过期时间不要设置得过长,以避免出现陈旧的认证结果。
⚠
请记得通过设置相应的指令来启用缓存,因为该指令不能独立工作。
⚠
根据用户活动模式调整过期时间以获得最佳性能。