我可以使用MD5 Digest身份验证成功使用明文密码登录AD,另外JNDI代表我们执行SASL加密/哈希工作,所以一切正常。但是我的问题是,我想自己哈希密码或任何外部设备以加密形式发送其密码,因此我必须将加密数据发送到AD,但是当我将密码更改为加密时它不起作用。有没有办法阻止JNDI执行哈希密码?
“
String original = originalPassword;
String pass = null;
MessageDigest md;
尝试{
md = MessageDigest.getInstance(“MD5”);
md.update(original.getBytes());
byte [] digest = md.digest();
StringBuffer sb = new StringBuffer();
for(byte b:digest){
sb.append(Integer.toHexString((int)(b& 0xff)));
}
pass = sb.toString();
} catch(NoSuchAlgorithmException e){
e.printStackTrace();
}
然后我将这个“传递”用于我的代码:
env.put(Context.SECURITY_CREDENTIALS,pass);
但它不起作用:(
“
我非常感谢任何帮助。
感谢。