none
Список шар и какие группы имеют к ним доступ RRS feed

  • Вопрос

  • Добрый день!

    Есть домен 2003 и установил Quest_ActiveRolesManagementShellforActiveDirectoryx86_151.

    Хотел получить список шар и кто к ним имеет доступ.  Есть скрипт на обработку одной шары

    (Get-ACL "\\server1\Shara\").Access  | 
    Select @{n="DisplayName"; e={([adsisearcher]"samaccountname=$($_.IdentityReference.Value.split("\")[1])").FindOne().Properties["displayname"]}},	IdentityReference, FilesystemRights | 
    Export-Csv -Encoding "Unicode" -Path "d:\FolderReport.csv" -Delimiter ";"
    Как его можно дописать, что бы он сканировал вложенные каталоги и выдавал какие группы имеют к ним доступ начиная с первой папки shara ?

    10 июля 2015 г. 7:16

Ответы

  • Попробуйте так:
    Get-ChildItem "\\server1\Shara\" -Recurse  | where {$_.Mode -like "d*"} | Foreach {
    (Get-ACL $($_.Fullname)).Access  | 
    Select @{n="Path"; e={$($_.fullname)}; n="DisplayName"; e={([adsisearcher]"samaccountname=$($_.IdentityReference.Value.split("\")[1])").FindOne().Properties["displayname"]}}, IdentityReference, FilesystemRights | 
    Export-Csv -Encoding "Unicode" -Path "d:\FolderReport.csv" -Delimiter ";"}
    • Помечено в качестве ответа KazunEditor 21 июля 2015 г. 9:31
    10 июля 2015 г. 10:34
    Модератор

Все ответы

  • Добрый день!

    Есть домен 2003 и установил Quest_ActiveRolesManagementShellforActiveDirectoryx86_151.

    Хотел получить список шар и кто к ним имеет доступ.  Есть скрипт на обработку одной шары

    (Get-ACL "\\server1\Shara\").Access  | 
    Select @{n="DisplayName"; e={([adsisearcher]"samaccountname=$($_.IdentityReference.Value.split("\")[1])").FindOne().Properties["displayname"]}},	IdentityReference, FilesystemRights | 
    Export-Csv -Encoding "Unicode" -Path "d:\FolderReport.csv" -Delimiter ";"
    Как его можно дописать, что бы он сканировал вложенные каталоги и выдавал какие группы имеют к ним доступ начиная с первой папки shara ?

    Get-ChildItem "\\server1\Shara\" -Recurse -Directory | Foreach
    {(Get-ACL $($_.Fullname)).Access  | 
    Select @{n="DisplayName"; e={([adsisearcher]"samaccountname=$($_.IdentityReference.Value.split("\")[1])").FindOne().Properties["displayname"]}},	IdentityReference, FilesystemRights | 
    Export-Csv -Encoding "Unicode" -Path "d:\FolderReport.csv" -Delimiter ";"}



    10 июля 2015 г. 7:28
    Модератор
  • Выдал ошибку

    Get-ChildItem : A parameter cannot be found that matches parameter name 'Directory'.
    At C:\Scripts\FolderGroup.ps1:1 char:61

    10 июля 2015 г. 7:50
  • Версия поша у вас какая?

    Попробуйте заменить

    Get-ChildItem "\\server1\Shara\" -Recurse -Directory

    на

    Get-ChildItem "\\server1\Shara\" -Recurse  | where {$_.Mode -like "d*"} | Foreach


    10 июля 2015 г. 8:41
    Модератор
  • Он начал выводить, только без FOREACH.

    Выводятся только названия директорий и поддиректорий, но я не вижу названия групп которые имеют к им доступ

    10 июля 2015 г. 9:04
  • Фишка именно в foreach

    10 июля 2015 г. 9:25
    Модератор
  • Выполните дословно это

    Get-ChildItem "\\server1\Shara\" -Recurse  | where {$_.Mode -like "d*"} | Foreach {
    (Get-ACL $($_.Fullname)).Access  | 
    Select @{n="DisplayName"; e={([adsisearcher]"samaccountname=$($_.IdentityReference.Value.split("\")[1])").FindOne().Properties["displayname"]}}, IdentityReference, FilesystemRights | 
    Export-Csv -Encoding "Unicode" -Path "d:\FolderReport.csv" -Delimiter ";"}

    10 июля 2015 г. 9:35
    Модератор
  • Спасибо отработал.

    Как можно добавить вывод название каталога?

    10 июля 2015 г. 9:49
  • Попробуйте так:
    Get-ChildItem "\\server1\Shara\" -Recurse  | where {$_.Mode -like "d*"} | Foreach {
    (Get-ACL $($_.Fullname)).Access  | 
    Select @{n="Path"; e={$($_.fullname)}; n="DisplayName"; e={([adsisearcher]"samaccountname=$($_.IdentityReference.Value.split("\")[1])").FindOne().Properties["displayname"]}}, IdentityReference, FilesystemRights | 
    Export-Csv -Encoding "Unicode" -Path "d:\FolderReport.csv" -Delimiter ";"}
    • Помечено в качестве ответа KazunEditor 21 июля 2015 г. 9:31
    10 июля 2015 г. 10:34
    Модератор
  • Ошибка:

    Повторяющиеся ключи "n" не допускаются в хэш-литералах.

    10 июля 2015 г. 10:54