- PR -

Active Directoryからユーザー情報の取得

1
投稿者投稿内容
Marcye
常連さん
会議室デビュー日: 2004/06/17
投稿数: 22
お住まい・勤務地: 大阪
投稿日時: 2004-09-02 11:30
いつもお世話になっています。
すいません教えてください。
言語C# ASP.NET です。

Active Directoryからメールアドレスなどのユーザー情報の取得したいと思っています。
LDAP://CN=Users,DC=DEV,DC=MSFT,DC=COM,O=Internet
と child.SchemaClassName == "user"でユーザーの一覧は取得できたのですが
ユーザー情報の取得の仕方が分かりません。
ご存知のかたご教授ください。


[ メッセージ編集済み 編集者: Marcye 編集日時 2004-09-02 11:36 ]
へげもん
ベテラン
会議室デビュー日: 2002/04/14
投稿数: 87
お住まい・勤務地: 埼玉県
投稿日時: 2004-09-04 10:56
メールアドレスなどはプロパティに入っているので、下記のようなコードで抜き出してみてください。
コード:
public void PrintProperties(DirectoryEntry entry)
{
    foreach ( string pname in entry.Properties.PropertyNames )
    {
        if ( pname == "userCertificate" ) continue;

        PropertyValueCollection values = entry.Properties[pname];
        System.Console.Write(pname+": ");
        bool first = true;
        foreach ( object obj in values )
        {
            if ( first ) first = false;
            else System.Console.Write(",");

            string str = obj.ToString();
            if ( str == "System.Byte[]" )
            {
                System.Byte[] bytes = (System.Byte[])obj;
                System.Console.Write("0x");
                foreach ( byte b in bytes )
                {
                    System.Console.Write(b.ToString("X"));
                }
            }
            else if ( str == "System.__ComObject" )
            {
                Type t = obj.GetType();
            }
            else
            {
                System.Console.Write(str);
            }
        }
        System.Console.WriteLine("");
    }
    System.Console.WriteLine("");
}

1

スキルアップ/キャリアアップ(JOB@IT)