Linux

Openldap 中的錯誤結構

  • April 26, 2021

我有一個關於 Openldap 的問題。我正在使用從 openldap 獲取錯誤的解決方案(PingFederate)根據過濾器執行不同的操作。例如我可以說:檢測無效的 DN 錯誤,當你得到它時做一些事情。

我在 ppolicy 中將 olcPPolicyUseLockout 設置為 true,以便在憑據無效時獲取更多資訊;這樣 Pingfederate 就會抓住它。但它不起作用

當我將 ldapwhoami 與 -e ppolicy 一起使用時,我得到以下資訊: ldap_bind: Invalid credentials (49); 密碼過期 ldap_bind:憑據無效 (49);帳戶被鎖定

所以我的問題如下:Openldap 中的分號是什麼意思?是否考慮分號後的消息?Openldap 是否將整個錯誤傳達給與其集成的其他解決方案?

首先請注意,OpenLDAP 命令行工具輸出結果程式碼和診斷消息的一些文本表示,這不是精確的線上協議編碼。

LDAP PDU 是 ASN.1 編碼的消息。要了解響應結構,您可以查看RFC 4511 第 4.1.9 節。要觀察 LDAP 組件實際發送的 LDAP PDU,Wireshark 中的 LDAP 解析器非常有用。

主要是 OpenLDAP 的覆蓋slapo-ppolicy實現了 draft-behera-ldap-password-policy-09。這個網際網路草案為請求和響應指定了所謂的擴展控制,它們擴展了綁定操作的協議語義。

這意味著每個 ppolicy-aware LDAP 客戶端必須 1. 發送密碼策略請求控制和 2. 解碼和解釋響應控制

另請參閱python-ldap 展示程式碼作為範例。

引用自:https://serverfault.com/questions/1060804