Форум программистов, компьютерный форум, киберфорум
PowerShell
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.50/34: Рейтинг темы: голосов - 34, средняя оценка - 4.50
0 / 0 / 0
Регистрация: 12.06.2015
Сообщений: 11
1

Доступ к папке (powershell)

21.07.2017, 11:13. Показов 6998. Ответов 3
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Добрый день,

Есть общий файлообменник. Есть папка в файлообменнике с кучей вложенных папок. Специфика доступа такая, что пришлось отключить родительские связи между папками.

Поставили задачу - разрешить новому пользователю полный доступ к папке и всем вложенным папкам. Так как наследование отключено - только вручную.

Скажите, можно ли с помощью powershell выполнить скрипт, который может выдать пользователю полный доступ ко всем папкам в директории?
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
21.07.2017, 11:13
Ответы с готовыми решениями:

Доступ к папке С$
При входе по сети в папку С$ появляется окно авторизации пользователя, после ввода данных...

Доступ к папке
Компы есть в домене и есть еще не заведенные в домен, IP все получают по DHCP в одной IP сети и те...

Ограниченный доступ к папке
На сервере (Windows Server 2008) установлен контроллер домена, на нем же лежат общие документы,...

Права на доступ к папке
Запрещаю права на всё группе пользователи, в которую не входит пользователь1. И он, обладая правами...

3
1885 / 1107 / 428
Регистрация: 22.01.2016
Сообщений: 3,050
21.07.2017, 12:09 2
Цитата Сообщение от Jurasz Посмотреть сообщение
можно ли с помощью powershell выполнить скрипт, который может выдать пользователю полный доступ ко всем папкам в директории?
Да можно:

PowerShell
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
$Root_Folder = "C:\Shares"
$AccessRule = new-object System.Security.AccessControl.FileSystemAccessRule('MyDomain\RW_Group',"Modify", "ContainerInherit, ObjectInherit", "None", "Allow")
 
$ACL = Get-Acl $Root_Folder
$ACL.AddAccessRule($AccessRule)
$ACL | Set-Acl $Root_Folder -WhatIf
 
foreach ($folder in Get-ChildItem -Path $Root_Folder -Recurse -Directory)
{
    if ( ($ACL = Get-Acl $folder.FullName).AreAccessRulesProtected ) #- выбираем папки со снятым наследованием
    {
        $folder.FullName
        
        $ACL.AddAccessRule($AccessRule)
        $ACL | Set-Acl $folder.FullName -WhatIf
    }
 
}
Если всё ок, убираете -WhatIf.

А чтобы в дальнейшем избежать таких проблем, права на все папки следует назначать для групп доступа. Появился новый пользователь - добавили его в нужные группы и не нужно проходить скриптом тысячи папок.
1
0 / 0 / 0
Регистрация: 12.06.2015
Сообщений: 11
21.07.2017, 12:27  [ТС] 3
Спасибо. А где в этом скрипте имя пользователя?
0
1885 / 1107 / 428
Регистрация: 22.01.2016
Сообщений: 3,050
21.07.2017, 12:41 4
Цитата Сообщение от Jurasz Посмотреть сообщение
Спасибо. А где в этом скрипте имя пользователя?
Во второй строчке - 'MyDomain\RW_Group'.

И ещё раз - не назначайте права напрямую пользователям - это очень плохая практика. Не поленитесь и один раз создайте группы доступа, в дальнейшем избавитесь от множества проблем.
1
21.07.2017, 12:41
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
21.07.2017, 12:41
Помогаю со студенческими работами здесь

Закрыть доступ к расшаренной папке
Здравствуйте! Скорее это вопрос к разделу настройки винды, но думаю кто-то из разработчиков с этим...

Пропал доступ к общей папке
Всем доброго дня. Имеется Windows Server 2008R2 с расшаренной на нем папкой и клиентская машина на...

Запретить Администратору доступ к папке
Собственно это можно сделать, но при попытке открыть папку появляется сообщение, что можно изменить...

Пропадает доступ к общей папке
Добрый день! Стоит компьютер в качестве файлового сервера. Система XP professional sp3. Компов в...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru