1

VS 2012、C#.NETを使用しており、LDAPを介して認証するためのフォームを作成しています。

私はこのコードを持っています、そしてそれはうまく機能しています:

root = new DirectoryEntry(
                "LDAP://192.168.116.20:389",
                username,
                password
            );

ユーザー名とパスワードはどちらもプレーンテキストです。

しかし、「パスワードを覚えていますか?」を作成したいのですが。ユーザー名とパスワードmd5をファイルにハッシュして保存できるチェックボックス。

では、DirectoryEntryとLDAPでmd5-hashを使用して認証するにはどうすればよいですか?!出来ますか?

4

3 に答える 3

2

私はそうは思いません.LDAPはプロトコルであり、DESとMD4であるLM / NTハッシュに対して動作しますが、それは低レベルです. おそらくやりたいことは、パスワードを暗号化して保存し、復号化して LDAP 文字列に渡すことです。

于 2013-02-18T19:12:51.693 に答える
1

私はそうは思いません。LDAPはプロトコルであり、DESとMD4であるLM / NTハッシュに対して機能しますが、それは低レベルです。

LDAPはプロトコルですが、LDAPはLM/NTハッシュを使用しません。

LDAPからLM/NT / Kerborosおよびmd5-hashは、LDAPからSASLを介して実行できますが、LDAPクライアントおよびLDAPサーバーにSASLを利用する機能がある場合に限ります。

(私はwk3サーバーだと思います)を簡単に見ると、ROOTDSE:supportedSASLMechanisms:DIGEST-MD5supportedSASLMechanisms:EXTERNALsupportedSASLMechanisms:GSS-SPNEGOsupportedSASLMechanisms:GSSAPIが表示されます

これは、DIGEST-MD5がADでサポートされていることを意味します。これがDirectoryServicesAPIでサポートされているかどうかはわかりません。

于 2013-02-19T11:39:21.390 に答える