1

我可以使用 MD5 Digest 身份验证使用明文密码成功登录 AD,另外 JNDI 代表我们执行 SASL 加密/哈希工作,所以一切正常。但是我的问题是,我想自己散列我的密码或任何外部设备以加密形式发送其密码,因此我必须将加密数据发送到 AD,但是当我将密码更改为加密时它不起作用。有什么办法可以防止 JNDI 对密码进行哈希处理?

"
String original = originalPassword;

字符串传递=空;

消息摘要医学博士;

尝试 {

md = MessageDigest.getInstance("MD5");

md.update(original.getBytes());

字节[] 摘要 = md.digest();

StringBuffer sb = new StringBuffer();

对于(字节 b:摘要){

sb.append(Integer.toHexString((int) (b & 0xff)));

}

pass = sb.toString();

} 捕捉(NoSuchAlgorithmException e){

e.printStackTrace();

}

然后我在我的代码中使用这个“通行证”:

env.put(Context.SECURITY_CREDENTIALS, pass );

但它没有用:(

"

我将不胜感激任何帮助。

谢谢。

4

0 回答 0