2012-07-02 49 views
2

我正在使用System.DirectoryServices.Protocols函數來查詢目錄。如何獲得ldap綁定響應

目錄正在使用密碼策略疊加。

如果我綁定到目錄,服務器可能會返回可能包含密碼到期警告的控件。

如何獲得C#中的綁定響應? System.DirectoryServices.Protocols.Bind返回void

查詢用戶pwdChangedTime,檢索pwdPolicySubentry中指示的策略,用數學來警告用戶密碼過期似乎並不是一個好的方法。

任何幫助,非常感謝,

回答

2

不幸的是,你不能用綁定操作。 S.DS.P是Winldap32之上的一個薄層,它不能識別綁定操作發回的任何控件。我在去年走了幾條路,最後到了使用反射來操縱S.DS.P內部類,並且自己陷入了Winldap32,並且由於Winldap32的侷限性而最終不了了之。有一個由Novell編寫的ldap庫,它是它自己的純CLR實現。我不確定這些日子保持良好狀態。你唯一的選擇是在openldap客戶端庫上編寫你自己的.net庫。

另外一邊。在服務器端應用中使用帶有S.DS.P的TLS將導致S.DS.P在特定條件下處理TLS響應時進入無限循環。解決方法是在端口636上使用直連SSL。

+0

;)感謝您的確認 – user1495681

+0

如果我想嘗試在Win32中執行此操作,我應該在winldap中使用哪些調用? – gyurisc