PowerShell - [решено] ограничение времени работы пользователей

Ответить
Аватара пользователя
katar_mind

PowerShell - [решено] ограничение времени работы пользователей

Сообщение katar_mind »

привет всем, нужна помощь специалиста по powershell.

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

через AD штатными средствами не получается автоматизировать - блокировка учеток означает не только невозможность войти на ПК, но и невозможность воспользоваться OWA, т.е. перестает работать почта и прочие сервисы типа скайпа для бизнеса.



пользователи на ПК без прав локального администратора. нужен логон-скрипт на powershell, который, если поставить в автозагрузку с правами администратора, будет раз в 5 минут проверять текущее время. если оно раньше 8:30 и позже 18:30 - то делать логофф любому залогиненному пользователю - как локально зашедшему, так и через RDP на ПК. желательно, чтобы скрипт дал возможность сохранить документы в течение 2-3 минут. либо просто молча завершал сеанс и все - тоже будет отлично.



буду очень признателен за помощь.
Аватара пользователя
DJ Mogarych

Re: PowerShell - [решено] ограничение времени работы пользователей

Сообщение DJ Mogarych »

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



https://4sysops.com/archives/restric...rectory-users/
Аватара пользователя
katar_mind

Re: PowerShell - [решено] ограничение времени работы пользователей

Сообщение katar_mind »

Цитата DJ Mogarych:



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



https://4sysops.com/archives/restric...rectory-users/








через AD штатными средствами не получается автоматизировать - блокировка учеток означает не только невозможность войти на ПК, но и невозможность воспользоваться OWA, т.е. перестает работать почта и прочие сервисы типа скайпа для бизнеса
Аватара пользователя
DJ Mogarych

Re: PowerShell - [решено] ограничение времени работы пользователей

Сообщение DJ Mogarych »

К блокировке учёток это не имеет отношения. Если вы уже использовали этот механизм, то нужно было описывать это точнее.
Аватара пользователя
katar_mind

Re: PowerShell - [решено] ограничение времени работы пользователей

Сообщение katar_mind »

сорри, недостаток опыта.

буду признателен за помощь Изображение
Аватара пользователя
katar_mind

Re: PowerShell - [решено] ограничение времени работы пользователей

Сообщение katar_mind »

chatgpt: поместить в автозагрузку юзеру, отредактировать путь и границы времени



# Путь к журналу событий для записи логов

$logPath = "C:\1\Log\Log.txt"



# Функция для записи логов

function Write-Log {

param (

[string]$message

)

$timestamp = Get-Date -Format "yyyy-MM-dd HH:mm:ss"

$logEntry = "$timestamp - $message"

$logEntry | Out-File -Append -FilePath $logPath

}



# Проверка времени и выполнение логаута при необходимости

function Check-And-Logout {

$currentTime = Get-Date

$logoutStartTime = Get-Date "8:30 AM"

$logoutEndTime = Get-Date "6:30 PM"



if ($currentTime -lt $logoutStartTime -or $currentTime -ge $logoutEndTime) {

Write-Log "Performing logoff at $currentTime"

shutdown.exe /l /f

} else {

Write-Log "No logoff required at $currentTime"

}

}



# Запись начального статуса в лог

Write-Log "Script started"



# Бесконечный цикл с интервалом в 5 минут

while ($true) {

Start-Sleep -Seconds 300 # Подождать 5 минут

Check-And-Logout

}
Аватара пользователя
DJ Mogarych

Re: PowerShell - [решено] ограничение времени работы пользователей

Сообщение DJ Mogarych »

Бесконечный цикл в висящем процессе - так себе решение, лучше задачу сделать в планировщике.
Ответить

Вернуться в «Скриптовые языки администрирования Windows»