PowerShell: Как узнать последнюю авторизацию пользователей (Get-LocalUser)
С введением PowerShell 5.1 были введены новые команды для локального управления пользователями. Я рад это слышать. Мне не нравится команда net user.
Изучение местных команд администрирования пользователей
Сначала убедитесь, что ваша система работает на PowerShell 5.1. Откройте PowerShell и выполните
(Get-Host).VersionКоманды можно найти, выполнив
Get-Command -Module Microsoft.PowerShell.LocalAccountsВремя последнего входа пользователя
Вернемся к теме. Чтобы узнать всех пользователей, которые вошли в систему за последние 10 дней, выполните
Get-LocalUser | Where-Object {$_.Lastlogon -ge (Get-Date).AddDays(-10)} | Select-Object Name,Enabled,SID,Lastlogon | Format-List
Чтобы найти пользователей, которые не входили в систему в последние 30 дней, выполните
Get-LocalUser | Where-Object {$_.Lastlogon -le (Get-Date).AddDays(-30)} | Select-Object Name,Enabled,SID,Lastlogon | Format-ListДругие примеры
Создание пользователей:
New-LocalUser -Name Peter -Password (ConvertTo-SecureString "Pa$$w0rd" -AsPlainText -Force)Настройка параметра, при котором пароль никогда не истекает:
Set-LocalUser -Name Peter -PasswordNeverExpires $true -Description BrotherДальнейшие размышления
Для управления учетными записями Active Directory я рекомендую свою статью "PowerShell: Мои 10 лучших команд для документирования и мониторинга Active Directory"


