RECOMMEND
RECOMMEND
SELECTED ENTRIES
RECENT COMMENTS
RECENT TRACKBACK
CATEGORIES
ARCHIVES
MOBILE
qrcode
LINKS
PROFILE
OTHERS

01
--
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
--
>>
<<
--

bose999's memo

<< モンハングッズ来た | main | シェル書きなぐり メモ >>
unicodePwd文字列生成
0
    ActiveDirectoryに対してLDIF形式で更新処理が可能ですが、
    その際のunicodePwdに格納するパスワードを生成する
    てけとーなサンプルです。

    #時間ないのでソースをHTMLにするのも省きます。
    #ごめんなさい。

    参考URL:
    http://itpro.nikkeibp.co.jp/free/NT/WinReadersOnly/20041006/2/

    import java.io.ByteArrayOutputStream;
    import java.io.IOException;
    import java.io.OutputStream;
    import java.io.UnsupportedEncodingException;

    import javax.mail.MessagingException;
    import javax.mail.internet.MimeUtility;

    public class PasswordMaker4LdifAD {

    public static void main(String[] args) {

    String str = "¥"" + "password$01" + "¥"";

    try {
    str = encodeBase64(encodeUTF16LE(str));

    System.out.println(str);

    } catch (UnsupportedEncodingException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
    } catch (MessagingException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
    } catch (IOException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
    }
    }

    private static byte[] encodeUTF16LE(String str) throws UnsupportedEncodingException{
    return str.getBytes("UTF-16LE");
    }

    private static String encodeBase64(byte[] data) throws MessagingException,
    IOException {
    ByteArrayOutputStream bao = new ByteArrayOutputStream();
    OutputStream out = MimeUtility.encode(bao, "base64");
    out.write(data);
    out.close();
    return bao.toString("iso-8859-1");
    }
    }
    | JBoss | 13:50 | comments(0) | trackbacks(0) | - | - |









    http://bose.techie.jp/trackback/810894