3

関数を使用してディレクトリSystem.DirectoryServices.Protocolsを照会しています。

openldapディレクトリは、パスワード ポリシー オーバーレイを使用しています

ディレクトリにバインドすると、サーバーは、パスワードの有効期限切れの警告を含むコントロールを返す場合があります。

c#でバインド応答を取得するにはどうすればよいですか? System.DirectoryServices.Protocols.Bind戻りますvoid

ユーザーにクエリを実行し、数学を実行してユーザーにパスワードの有効期限について警告するためにpwdChangedTime示されているポリシーを取得することはpwdPolicySubentry、良い方法とは思えません。

どんな助けでも大歓迎です、

4

1 に答える 1

2

残念ながら、バインド操作ではできません。S.DS.P は Winldap32 上の薄いレイヤーであり、バインド操作で返されたコントロールを認識しません。昨年、リフレクションを使用して S.DS.P 内部クラスを操作し、自分で Winldap32 にピンボークすることになりましたが、最終的には Winldap32 の制限のために不十分になりました。独自の純粋な CLR 実装である、Novell によって作成された LDAP ライブラリがあります。最近よく維持されているかどうかはわかりません。他の唯一のオプションは、openldap クライアント ライブラリの上に独自の .net ライブラリを作成することです。

脇にもう一人。サーバー側アプリで S.DS.P で TLS を使用すると、特定の条件下で TLS 応答を処理しているときに、S.DS.P が無限ループに陥ります。回避策は、ポート 636 でストレート SSL を使用することです。

于 2012-07-02T14:44:35.550 に答える