none
lastLogontimeStamp RRS feed

  • Вопрос

  • Доброго времени суток.
    Многие используют этот атрибут или lastlogondate (конвертированную локально пошем версию сабжевого). Есть пара вопросов, которые не дают покоя после прочтения этого:
    1. По типам входа, которые инициируют обновление значения данного атрибута. Сказано что для пользователя это:
    a. локальный вход (interactive);
    b. сетевой (например, если пользователь заходит на доменную шару (ведь неважно что она примаплена как сетевой диск, верно?));
    c. вход на почтовый сервер (полагаю, речь только об Exchange, или о другом, но интегрированном со службой каталогов);
    d. "Service logon" - вот это не понятно, т.е. если служба выполняется от имени этого пользователя что-ли?
    e. LDAP запрос и др... может кто-нибудь привести пример такого запроса, который может быть нужен рядовому пользователю?
    Также не ясно какие события инициируют обновление данного атрибута для учетной записи компьютера (кроме, очевидно, интерактивного входа). Также интересно, что требуется для успешного обновления данного атрибута на компьютере, я имею в виду доступ к какой службе/протоколу.

    2. На некоторых объектах значение данного атрибута пустое (как и значение lastlogon на всех контроллерах домена, т.е. проблема не в репликации lastLogontimeStamp). Из-за чего такое может быть (может ли быть в случае, если уровень домена поднимался с 2000 и аккаунты этих машин существовали еще тогда)? Означает ли это что такие компьютеры никогда не выполняли вход или выполняли очень давно?

    3. режим работы домена 2008, в ADSI в атрибутах пользователей или компьютеров нет атрибута ms-DS-Logon-Time-Sync-Interval, даже для тех аккаунтов, у которых метка lastlogonTimeStamp не пустая. что это значит?

    Спасибо заранее.
    29 октября 2014 г. 8:53

Ответы

  • Про учетную запись компьютера понятно, мне не ясно какие кроме включения процедуры могут спровоцировать обновление LastLogonTimeStamp.

    ну вот тут сложнее.. нам нужно заставить компьютер вновь аутентифицироваться в AD. Ну можно попробовать отключить его от сети и дождаться истечения срока дейтсвия керберос тикета и затем включить в сеть, но не уверен. Можно попробовать поднимать впн от имени системы. вот так вот на вскидку не скажу.

    У билета Kerberos  помимо срока обновления есть ещё и время жизни, по истечении которого билет обновить нельзя, и компьютер вынужден заново пройти аутентификацию на КД, чтобы получить новый билет.

    Кроме того, в некоторых случаях вместо Kerberos может быть использован NTLM (самый типовой - обращение к серверу по IP, а не по имени), в этих случаях клиент (в данном случае, компьютер) проходит аутентификацию на КД.


    Слава России!

    • Предложено в качестве ответа Svolotch 29 октября 2014 г. 22:06
    • Помечено в качестве ответа Копылов Анатолий 30 октября 2014 г. 4:58
    29 октября 2014 г. 16:12
  • 1) многа букв, но мне не совсем понятно чо конкретно спросить то хотели?

    2) Если пустое - значит не логинились, или глюк т.к. в win 2000 этого атрибута в ад не было.

    3) А вы еще в холодильнике поищите, может там найдется. Это атрибут ДОМЕНА, а никак не отдельного юзверя или компьютера.


    29 октября 2014 г. 12:12

Все ответы

  • 1) многа букв, но мне не совсем понятно чо конкретно спросить то хотели?

    2) Если пустое - значит не логинились, или глюк т.к. в win 2000 этого атрибута в ад не было.

    3) А вы еще в холодильнике поищите, может там найдется. Это атрибут ДОМЕНА, а никак не отдельного юзверя или компьютера.


    29 октября 2014 г. 12:12
  • 1) вы когда нить слышали страшное слово аутентификация? попробуйте погуглить определение этого понятия

    >>a. локальный вход (interactive);

    юзер явно вводит логин и пароль, домен контроллер обновляет значение ластлогон и ластлогонтаймстап(если нужно). Если обновилось значение ластлогонтаймстап - оно реплицируется на другие.

    b. сетевой (например, если пользователь заходит на доменную шару (ведь неважно что она примаплена как сетевой диск, верно?));

    например возможность указать логин пароль при примапливании шары сделана по ошибке и аутентификации\авторизации к ресурсу не может иметь никакого отношения по определению.

    c. вход на почтовый сервер (полагаю, речь только об Exchange, или о другом, но интегрированном со службой каталогов);

    верно

    d. "Service logon" - вот это не понятно, т.е. если служба выполняется от имени этого пользователя что-ли?

    Ты не поверишь..

    e. LDAP запрос и др... может кто-нибудь привести пример такого запроса, который может быть нужен рядовому пользователю?

    Стороннее приложение обращается к домену например для поиска пользователя или списка рассылки. А т.к. доменконтроллеры абы кому инфу не дают, нужно авторизироваться.

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

    Укомпьютера в AD, как и у пользователя есть свой логин и свой пароль(создается и меняется автоматически). При включении компа он авторизируется в домене представляя эти креденшелы.

    Также интересно, что требуется для успешного обновления данного атрибута на компьютере, я имею в виду доступ к какой службе/протоколу.

    вот тут поподробнее.. чо спросить то хотели? вы про сам компьютер или обьект компьютера в АД?

    29 октября 2014 г. 13:08
  • Доброго времени суток. Спасибо за ответ.

    По п.3 - того, что это атрибут домена, а не объекта типа компьютер или пользователь из статьи я не понял. Спасибо.

    По п.2 - я в курсе что этого атрибута в AD не было при режиме работы 2000, я хотел узнать опыт комьюнити - появляется ли он корректно после повышения режима до 2003 и выше. Правда в моем случае, похоже, проблемы именно с lastLogon и стампу неоткуда брать значение. На всех КД значения lastLogon у компьютеров домена в основном этого года и по большей части последних 3х месяцев, реже - более старые. Примерно у 2/3 значение "Не задано".

    По п.1

    b. При чем тут возможность указать логин/пароль при переходе на шару, я такого вообще не писал. Вот цитата: "So if a user logs on interactively, browses a network share....the lastLogontimeStamp attribute will updated if the right condition is met."

    d. Не поверю, вы можете ответить нормально?

    Укомпьютера в AD, как и у пользователя есть свой логин и свой пароль(создается и меняется автоматически). При включении компа он авторизируется в домене представляя эти креденшелы.

    Про учетную запись компьютера понятно, мне не ясно какие кроме включения процедуры могут спровоцировать обновление LastLogonTimeStamp.

    вот тут поподробнее.. чо спросить то хотеливы про сам компьютер или обьект компьютера в АД? 

    Должны ли быть запущены какие-то службы (не знаю, rpc например) или включены правила брандмауэра на компьютере, чтобы при его "входе" обновился атрибут LastLogon соответствующей учетной записи компьютера на одном из КД, или это неважно и атрибут будет обновлен при определенных условиях (зависящих от ms-DS-Logon-Time-Sync-Interval)? 

    29 октября 2014 г. 14:37
  • Я попытался заострить ваше внимание на аутентификации. Процесс обновления атрибута происходит НА ДОМЕНКОНТРОЛЛЕРЕ в момент аутентификации пользователя\компьютера(т.е. грубо говоря проверки валидности пары логин\пароль).

    1)

     b)  browses a network share - ситуация, ктото с недоменной тачки и левым локальным пользователем лезет на какуюто шару\ресурс. Получает отлуп(гость уже сто лет как отключен почти везде) и предложение ввести доменные логин и пароль, которые затем аутентифицируются на доменконтроллере(!!!!!!!) и авторизацией занимается уже ресурсный сервер в зависимости от прав доступа и пермишенах на шаре. Так вот в момент валидной аутенфикации и происходит обновление атрибута.

    так понятнее?

     d) http://msdn.microsoft.com/en-us/library/ms677948%28v=vs.85%29.aspx

    =====

    Про учетную запись компьютера понятно, мне не ясно какие кроме включения процедуры могут спровоцировать обновление LastLogonTimeStamp.

    ну вот тут сложнее.. нам нужно заставить компьютер вновь аутентифицироваться в AD. Ну можно попробовать отключить его от сети и дождаться истечения срока дейтсвия керберос тикета и затем включить в сеть, но не уверен. Можно попробовать поднимать впн от имени системы. вот так вот на вскидку не скажу.

    Должны ли быть запущены какие-то службы (не знаю, rpc например) или включены правила брандмауэра на компьютере, чтобы при его "входе" обновился атрибут LastLogon соответствующей учетной записи компьютера на одном из КД, или это неважно и атрибут будет обновлен при определенных условиях (зависящих от ms-DS-Logon-Time-Sync-Interval)?

    Ну стандартно должны быть открыты порты и запушены службы для нормального логона.вот порты на вскидку(могут менятся в записимости от  версии оси):

    http://technet.microsoft.com/en-us/library/dd772723%28v=ws.10%29.aspx

    а все сервисы мне лень гуглить, рабочий день заканчивается. :)

    LastLogon - обновляется всегда при входе компа на конкретном домен контроллере, этот атрибут не реплицируется между DC. также в момент входа пользователя\компьютера на DC берется текущее значение LastLogonTimeStamp и сравнивается с текущей датой\временем.

    если разница больше чем значение ms-DS-Logon-Time-Sync-Interval (точнее ms-DS-Logon-Time-Sync-Interval минус случайное количество времени в пределах 5 дней) то тогда вместо старого значения LastLogonTimeStamp записывается текущее время.

    По п.2 точно не скажу, не припомню чтоб сталкивался с такой проблемой. Но блин я с 2000го грейдился сто лет назад в последний раз. :)

    29 октября 2014 г. 16:02
  • Про учетную запись компьютера понятно, мне не ясно какие кроме включения процедуры могут спровоцировать обновление LastLogonTimeStamp.

    ну вот тут сложнее.. нам нужно заставить компьютер вновь аутентифицироваться в AD. Ну можно попробовать отключить его от сети и дождаться истечения срока дейтсвия керберос тикета и затем включить в сеть, но не уверен. Можно попробовать поднимать впн от имени системы. вот так вот на вскидку не скажу.

    У билета Kerberos  помимо срока обновления есть ещё и время жизни, по истечении которого билет обновить нельзя, и компьютер вынужден заново пройти аутентификацию на КД, чтобы получить новый билет.

    Кроме того, в некоторых случаях вместо Kerberos может быть использован NTLM (самый типовой - обращение к серверу по IP, а не по имени), в этих случаях клиент (в данном случае, компьютер) проходит аутентификацию на КД.


    Слава России!

    • Предложено в качестве ответа Svolotch 29 октября 2014 г. 22:06
    • Помечено в качестве ответа Копылов Анатолий 30 октября 2014 г. 4:58
    29 октября 2014 г. 16:12

  • По п.2 - я в курсе что этого атрибута в AD не было при режиме работы 2000, я хотел узнать опыт комьюнити - появляется ли он корректно после повышения режима до 2003 и выше. Правда в моем случае, похоже, проблемы именно с lastLogon и стампу неоткуда брать значение. На всех КД значения lastLogon у компьютеров домена в основном этого года и по большей части последних 3х месяцев, реже - более старые. Примерно у 2/3 значение "Не задано".

    Насколько я помню этот процесс, при повышении функционального уровня домена копирование атрибута LastLogon в LastLogonTimeStamp не производится. B я вообще не понимаю, как можно выполнить это копирование корректно, скопировав туда только максимальную величину LastLogon: неизбечжные в таких случаях конфликты обновления атрибутов, обновленных на разных КД, будут решаться в пользу более позднего обновления (т.е. в пользу КД, который последним узнал об изменении функционального уровня), потому что механизм разрешения конфликтов в AD игнорирует значения атрибутов.

    Слава России!

    29 октября 2014 г. 16:17
  • Спасибо всем за ответы.

    Svolotch

    1. b. по поводу просмотра шары - даже если пользователь доменный, и ему подключена шара как сетевой диск при входе (от его имени), разве у такой сессии нет определенного ttl? Т.е. через несколько часов произойдет повторная аутентификация, прозрачная для пользователя, разве не так? Я имею в виду что для обновления атрибута в данном случае нет необходимости явно вводить креденшиалы.

    M.V.V. _

    Значит нет необходимости выключать/включать компьютер для обновления атрибута. Понятно, спасибо.

    Вопрос всем: в указанной мной статье от Уоррена Уильямса указаны условия обновления атрибута lastLogonTimeStamp и они ясны, условия обновления атрибута lastLogon такие же (например, его значение для одного из компьютеров уже пару дней не меняется ни на одном КД и равно lastLogontimeStmap, так что похоже условия те же)? При этом возможна гипотетически такая ситуация:

    1й КД обслужил вход 1 январая, изменил lastLogon и изменил lastLogonTimeStamp и реплицировал его.

    2й КД обслужил вход 8 января, его "прежний" LastLogon очень старый и он обновляет его значение, но условия для обновления lastLogontimeStamp не выполнены и получаем ситуацию, когда на одном из КД lastLogon больше чем lastLogontimeStamp. Такое может быть, верно? Хм, однако это похоже на правило 14 дней это не повлияет (имею в виду, что если ведется поиск неактивных машин в последние 90 дней, то стоит добавить 13 дней и искать по сроку 103 дня, чтобы гарантировано не задеть живые машины).

    Также интересно, может ли быть какая-то причина (кроме ситуации, когда компьютер никогда не выполнял вход) отсутствия значения lastLogon (именно этого атрибута) для машины на любом контроллере домена? В моем случае ситуация такова, что за неделю до моего прихода из эксплуатации вывели КД, который был поднят с 2000 и если учесть, что есть вероятность отсутствия нормального копирования (или вообще копирования) lastLogon в LastLogontimeStamp для учеток компьютеров, которые жили еще при 2000 режиме, то есть большой шанс, что этот КД забрал с собой некоторые lastLogon`ы старых машин, ведь в моей структуре всего у нескольких машин lastLogon из 2013 года, остальные, если есть, все из 14го (в основном из последних 3-4х месяцев), но я не верю что обслуживал вход тех давно добавленных машин только этот удаленный КД, ведь в пределах одного сайта выбор КД для аутентификации происходит рандомно. Может у значений атрибутов lastLogon есть время жизни?

    30 октября 2014 г. 4:58