none
Автоматизация регламента для отключенных аккаунтов. RRS feed

  • Вопрос

  • Доброго времени суток Уважаемые коллеги.

    Есть у нас некий регламент для учетных записей сотрудников при увольнении, со следующими условиями:

    Учетная запись пользователя остается заблокированной в течение 3 месяцев после передачи дел сотрудником, при этом сохраняется возможность восстановления работоспособности учетной записи, а также использование почтового ящика, закрепленного за учетной записью.  Через 3 месяца после установки блокировки, учетная запись будет помечена на «удаление»,  почтовые адреса, закрепленные за учетной записью и пространство, занимаемое почтовым ящиком, высвобождаются.

    Вопрос:

    Возможно ли автоматизировать данный регламент через PowerShell, то есть очистку почтового ящика, его отключение и удаление, а затем и самой учетной записи ? Но перед тем как проделать все эти действия, хотелось бы еще за день два увидеть соответствующие уведомления на почту+ после отключения учеток - последние перемещались бы в специальный контейнер для отключенных аккаунтов, а так же почистить членство в группах ?

    Тут еще загвоздка- по какому параметру отслеживать и отсчитывать время (3 месяца) от того как будет отключена учетка пользователя ? Почта на MS Exchang 2010.

    Заранее благодарен!


    Люди тратят здоровье, что бы заработать $, а затем тратят $, что бы вернуть здоровье!




    • Изменено rеstless 16 января 2017 г. 12:02
    16 января 2017 г. 11:38

Все ответы

  • >Возможно ли автоматизировать данный регламент через PowerShell

    Да

    >по какому параметру отслеживать и отсчитывать время (3 месяца) от того как будет отключена учетка пользователя

    Наилучшим вариантом будет брать время из атрибута lastLogonTimestamp


    https://exchange12rocks.org/ | http://about.me/exchange12rocks

    26 января 2017 г. 22:52
  • Могу предложить как основу свой скрипт: отключенные УЗ из контейнеров, содержащих имя Users, скриптом сразу перемещаются в отдельный контейнер Disabledusers, отправляется оповещение. Через месяц УЗ из контейнера удаляются, опять отправляется оповещение. Время определяется атрибутом whenchanged.

    date = ((get-date).addmonths(-1))
    $Removed = "removed.txt"
    $Moved = "moved.txt"
    Get-ADUser -Filter {(enabled -ne $true)}|?{ ($_.distinguishedname -like '*ou=Users*')}| ForEach-Object {write-output $_.name;move-adobject –Identity $_ -targetpath "ou=DisabledUsers,dc=company,dc=com"}|out-file $moved
    Get-ADUser -SearchBase "ou=DisabledUsers,dc=company,dc=com"-Filter {(enabled -ne $true)}|?{ ($_.whenchanged -ge $date)}|ForEach-Object {write-output $_.name;Remove-ADObject –Identity $_ -Confirm:$false -Recursive}|out-file $removed
    $RemovedBody = "<pre>" + (Get-Content -Path $removed | Out-String)
    $text1 = Get-Content -Path $moved
    if ($text1) {
        $MovedBody = "<pre>" + (Get-Content -Path $moved | Out-String)
        Send-MailMessage -SmtpServer "exchange.company.com" -From "Active Directory <ad@company.com>" -To "adadmins@company.com" -Subject "Отключенные пользователи перемещены в DisabledUsers" -Body $MovedBody -BodyAsHtml:$true -Encoding "UTF8"
    }
    $text2 = Get-Content -Path $removed
    if ($text2) {
        $RemovedBody = "<pre>" + (Get-Content -Path $removed | Out-String)
        Send-MailMessage -SmtpServer "exchange.company.com" -From "Active Directory <ad@company.com>" -To "adadmins@company.com" -Subject "Удаление отключенных пользователей" -Body $RemovedBody -BodyAsHtml:$true -Encoding "UTF8"
    }

    27 января 2017 г. 7:31