пʼятниця, 15 червня 2018 р.

Инвентаризация доступов сетевой папки how to

Инвентаризация доступов сетевой папки how to


Черновик на память, чтобы не забыть и не искать решение заново. 
(Задача возникает раз в год).  

Возникла задача, выгрузить список доступов - кто именно имеет доступ на чтение или запись к определенным папкам в сети (Windows).
Т.к. папок чрезвычайно много, а задача была достаточно срочная, то возникла необходимость быстро искать решение. Мое решение было следующим:

1) Необходимо выгрузить список всех имеющихся папок в директории.

  Здесь мне пришла на помощь программа AccessEnum, на сайте microsoft ее можно скачать      бесплатно. Программа достаточна проста. Указываем путь и жмем кнопку Scan.
Она смотрит на структуру и выгружает папки, файлы и соответственно, кто имеет доступ к ним. Далее я сохранил в текстовый файл, и потом сохранил все в формате xls. Для удобства работы со списком.

2) Необходимо выгрузить всех актуальных работников из групп AD исключив уволенных сотрудников.


В powershell запросом смотрим список всех сотрудников в группах и вложенных группах рекурсивно:

 Get-ADGroup "Бухгалтерия"  -PipelineVariable LGroups `
     | Get-ADGroupMember -Recursive `
     | % { Get-ADUser -Identity $_ -Properties *} `
     | Where-Object {$_.enabled -eq $true} `
     | % { Add-Member -InputObject $_ -Name "GroupName" -Value $LGroups.Name  -MemberType NoteProperty -force -PassThru } `
     | select name #samaccountname 

Поиском заменой в эксель вставил список ФИО вместо групп.
В тех случаях где нужно заменить samaccountname на ФИО

Get-ADUser "apetrov" | select name 
p.s Данное решение, можно сказать на "скорую руку". Все можно заменить и автоматизировать одним скриптом на powershell, но времени было в обрез. Так что, пока так. 


Следующие сообщения Предыдущие сообщения Главная страница