none
Последний логинившийся пользователь

    Вопрос

  • Добрый день.
    Подскажите плиз, как через powershell узнать локально, кто последним логинился?
    Пробовал так, но выдается имя ПК а не пользователь:
    Get-WinEvent -FilterHashtable @{Logname='Security';ID=4672} -MaxEvents 1 | select @{N='User';E={$_.Properties[1].Value}}

    Спасибо.

    30 ноября 2018 г. 6:35

Ответы

  • $f = "*[System[EventID=4624] and EventData[Data[@Name='LogonType'] and (Data='2' or Data='7') and Data[@Name='TargetUserName'] != '$env:UserName' and Data[@Name='TargetDomainName']='$env:USERDOMAIN']]"
    (Get-WinEvent Security -FilterXPath $f -max 1).Properties[5].Value

    $env:USERDOMAIN - Текущий домен
    $env:UserName - Исключить текущего пользователя
    • Изменено KazunEditor 30 ноября 2018 г. 7:21
    • Предложено в качестве ответа Vector BCOModerator 30 ноября 2018 г. 9:37
    • Помечено в качестве ответа sekii911 30 ноября 2018 г. 9:39
    30 ноября 2018 г. 7:08
    Отвечающий
  • можно политикой в логонскриптах переписывать в предопределенный файл или ключ реестра $env:username и потом скриптом просто читать это значение

    The opinion expressed by me is not an official position of Microsoft

    • Помечено в качестве ответа sekii911 30 ноября 2018 г. 9:40
    30 ноября 2018 г. 6:51
    Модератор
  • Get-WinEvent Security -FilterXPath "*[System[EventID=4624] and EventData[Data[@Name='LogonType']=2 and Data[@Name='TargetUserName'] != '$env:UserName' and Data[@Name='TargetDomainName']='$env:USERDOMAIN']]" -max 1 | % {$_.Properties[5].Value}

    $env:USERDOMAIN - Текущий домен

    $env:UserName - Исключить текущего пользователя


    Выдает пользователя: DWM-1
    т.к. есть event 
    Новый вход:
    ИД безопасности: Window Manager\DWM-1
    Имя учетной записи: DWM-1
    Домен учетной записи: Window Manager

    может его отфильтровать?
    • Помечено в качестве ответа sekii911 30 ноября 2018 г. 9:36
    30 ноября 2018 г. 7:51

Все ответы

  • можно политикой в логонскриптах переписывать в предопределенный файл или ключ реестра $env:username и потом скриптом просто читать это значение

    The opinion expressed by me is not an official position of Microsoft

    • Помечено в качестве ответа sekii911 30 ноября 2018 г. 9:40
    30 ноября 2018 г. 6:51
    Модератор
  • $f = "*[System[EventID=4624] and EventData[Data[@Name='LogonType'] and (Data='2' or Data='7') and Data[@Name='TargetUserName'] != '$env:UserName' and Data[@Name='TargetDomainName']='$env:USERDOMAIN']]"
    (Get-WinEvent Security -FilterXPath $f -max 1).Properties[5].Value

    $env:USERDOMAIN - Текущий домен
    $env:UserName - Исключить текущего пользователя
    • Изменено KazunEditor 30 ноября 2018 г. 7:21
    • Предложено в качестве ответа Vector BCOModerator 30 ноября 2018 г. 9:37
    • Помечено в качестве ответа sekii911 30 ноября 2018 г. 9:39
    30 ноября 2018 г. 7:08
    Отвечающий
  • Get-WinEvent Security -FilterXPath "*[System[EventID=4624] and EventData[Data[@Name='LogonType']=2 and Data[@Name='TargetUserName'] != '$env:UserName' and Data[@Name='TargetDomainName']='$env:USERDOMAIN']]" -max 1 | % {$_.Properties[5].Value}

    $env:USERDOMAIN - Текущий домен

    $env:UserName - Исключить текущего пользователя


    Выдает пользователя: DWM-1
    т.к. есть event 
    Новый вход:
    ИД безопасности: Window Manager\DWM-1
    Имя учетной записи: DWM-1
    Домен учетной записи: Window Manager

    может его отфильтровать?
    • Помечено в качестве ответа sekii911 30 ноября 2018 г. 9:36
    30 ноября 2018 г. 7:51
  • Какая ОС? И скрин события в формате XML из EventLog сюда привести.
    30 ноября 2018 г. 8:01
    Отвечающий
  • runas /?

    про него не забудьте.

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

    суть задачи в чем? сесурите или утилитарная хрень?

    • Предложено в качестве ответа Vector BCOModerator 30 ноября 2018 г. 9:37
    • Отменено предложение в качестве ответа sekii911 30 ноября 2018 г. 9:39
    30 ноября 2018 г. 9:14
  • Какая ОС? И скрин события в формате XML из EventLog сюда привести.
    Разобрался.
    Спасибо
    30 ноября 2018 г. 9:34
  • можно политикой в логонскриптах переписывать в предопределенный файл или ключ реестра $env:username и потом скриптом просто читать это значение

    The opinion expressed by me is not an official position of Microsoft

    Верно, как вариант. Спасибо.
    30 ноября 2018 г. 9:40
  • runas /?

    про него не забудьте.

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

    суть задачи в чем? сесурите или утилитарная хрень?

    Какие то обрывки информации пишите.
    Имя папки профиля может отличаться от logon - так что это не подходит.
    Суть задачи - получить имя пользователя, который последним заходил на ПК
    30 ноября 2018 г. 9:41