java経由でClearTextのTDSからユーザーパスワードを取得することは可能ですか? ldapsearch -v -D cn=root -w xxxxxx -s sub uid=testuser userPassword
私は次の結果を得ています:
その場合のパスワードは Joko2014!
Javaで私はそれを試しました:
String[] attrIDs = {".....",....,"userPassword"}
SearchControls ctls = new SearchControls();
ctls.setReturningAttributes(attrIDs);
ctls.setSearchScope(SearchControls.SUBTREE_SCOPE);
NamingEnumeration<SearchResult> results = ctx.search(name,
filter, ctls);
while (results.hasMore()) {
SearchResult entry = results.next();
System.out.println(entry);
}
しかし、コンソールの出力は次のとおりです。
uid=testuser: null:null:{givenname=givenName: xxxx, sn=sn: xxx, pwdchangedtime=pwdChangedTime: 20160926173016.000000Z, mail=mail: xxxxxx@xx.xxx.com, uid=uid: testuser, userpassword;binary=userPassword;binary: [B@1a626f, pwdreset=pwdReset: true, cn=cn: xxxx, description=description: xxxxxx;xxxxxx;I;xxxxxx}
"binary=userPassword;binary:[B@1a626f..." とはどういう意味ですか? また、ここでパスワードを取得するにはどうすればよいですか? エンコードする必要がありますか?はいの場合、どうすれば解決できますか?他の操作属性を取得することは問題ありません。
よろしくお願いします!