найти имя компьютера для указанного логина - PullRequest
0 голосов
/ 02 марта 2011

У меня есть код C # .Net, который возвращает информацию из Active Directory следующим образом:

        DirectoryEntry entry = new DirectoryEntry("LDAP://MYServer");
        DirectorySearcher Dsearch = new DirectorySearcher(entry);

        String Name = name;
        string restulted = "";

        Dsearch.Filter = "(&(objectClass=user)(displayName=" + Name + "))";

        foreach (SearchResult sResultSet in Dsearch.FindAll())
        {

            restulted = GetProperty(sResultSet, "cn").ToString();

            // First Name
            // myLabel.Text=myLabel.Text+ GetProperty(sResultSet, "sAMAccountName").ToString();

            // Last Name
            restulted = restulted + "*" + GetProperty(sResultSet, "profilePath").ToString();
            restulted = restulted + "*" + GetProperty(sResultSet, "computer").ToString();

            if (GetProperty(sResultSet, "lastLogon") != null)
            {

                long lastlogontimestamp = (long)sResultSet.Properties["lastlogontimestamp"][0]; 
                DateTime dtLastLoginTimeStamp = DateTime.FromFileTime(lastlogontimestamp);
                restulted = restulted + "*" + dtLastLoginTimeStamp.ToString();
            }

Вышеприведенный код не возвращает компьютер, на котором пользователь вошел в систему или последний раз вошел в систему. Как получить компьютер / компьютеры, в которых пользователь в данный момент вошел или, если не вошел в систему, в последний раз вошедшее в систему имя компьютера ???

1 Ответ

0 голосов
/ 02 марта 2011

Active Directory не хранит информацию о том, с какого компьютера последний раз вошел пользователь.

Я видел, как продукт собирал журналы событий с контроллеров домена, чтобы определить, с какого компьютера последний раз входил пользователь.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...