遇到 LDAP 普通用戶登錄時密碼不區分大小寫,且無法直接讀取密碼屬性(通常為 userPassword),需從以下方向排查:
pwdCheckQuality 等策略,可強制大小寫敏感應用層若使用簡單綁定,應直接傳遞用戶輸入的原始密碼給 LDAP 服務端驗證,切勿在應用層自行比對密碼。若應用層先查詢再比對,因無法讀取 userPassword(通常受 ACL 保護),會導致邏輯錯誤。
檢查代碼中是否存在 toLowerCase() / toUpperCase() 等操作導致密碼被標準化。
若使用 DIGEST-MD5 等 SASL 機制,確保客戶端與服務端協商一致,且未啟用忽略大小寫選項。
ldapsearch -x -D "cn=user,dc=example,dc=com" -W 直接測試大小寫敏感度pwdMinLength, pwdCheckModule 等)若問題依然存在,請提供具體 LDAP 服務類型(OpenLDAP / AD / ApacheDS 等)及客戶端代碼片段以便進一步分析。