RDT1C/DataProcessors/ирУправлениеСлужбамиСервера1С/Templates/СкриптУстановкаПравNTFS_Описание/Ext/Template.txt
Администратор c2290077e6 .
2021-03-18 16:14:11 +03:00

45 lines
3.8 KiB
Plaintext
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

Скрипт для поддерживания и назначения прав на папки. Например, у нас есть такая структура папок:
D:\Клиенты\
D:\Клиенты\Ромашка
D:\Клиенты\Справка
И стоит следующая задача:
“D:\Клиенты” удалить стандартные права для пользователей домена
“D:\Клиенты\Ромашка” дать полные права группе flora
“D:\Клиенты\Ромашка” дать права на чтение пользователю secretary
“D:\Клиенты\Справка” дать полные права для пользователя secretary
“D:\Клиенты\Справка” дать права на чтения для группы flora
для этого создаем файлик acl.csv в кодировке UTF-8 следующего содержания:
[text]
Folder;SecIdentity;AccessRights;AccessControlType;BlockInherit
D:\Клиенты;BUILTIN\Users;Remove;;Yes
D:\Клиенты\Ромашка;Domain Name\flora;FullControl;Allow;
D:\Клиенты\Ромашка;Domain Name\flora;ReadAndExecute;Allow;
D:\Клиенты\Справка;Domain Name\secretary;FullControl;Allow;
D:\Клиенты\Справка;Domain Name\secretary;ReadAndExecute;Allow;
[/text]
и запускаем с админским правами скрипт
[powershell]
ntl-Set-Acl.ps1 -FolderListFile .\acl.csv
[/powershell]
Сначала опишу формат файла.
Folder в этом поле просто имя файла/папки
SecIdentity доменный/локальный аккаунт группы или пользователя
AccessRights может принимать по одному или через запятую следующие значения FullControl, Read, ReadAndExecute и т.д. Полный список по одной из ссылок в конце статьи. Кроме того в этом поле можно указать значение Remove и тогда это даст команду удалить из ACL папки или файла аккаунт, указанный в поле SecIdentity
AccessControlType значения Allow или Deny. Игнорируется, если поле AccessRights имеет значение Remove.
BlockInherit Если стоит значение Yes, то перед тем, как добавить/удалить права, для папки Folder отключается применение прав от родителя с сохранением текущих настроек. В основном это нужно, когда удаляешь права. Например, для того что убрать дефолтные разрешения для доменных пользователей. Для добавления прав, обычно не нужно блокировать наследование.
Правила заполнения файла:
Папки верхнего уровня надо указывать раньше
Для стандартных групп(Administrators,Users) и пользователей(Administrator) надо указывать BUILTIN\Users, а не Domain Name\Users
Как работает скрипт.
Если просто, то ACL(Access Control List) это все права на папку, а ACE(Access Control Entry) это одна запись, например, пользователь Вася имеет полные права на эту папку. Таким образом, в ACL входит кучка ACE. Кроме этого в ACL хранятся настройки наследования, владелец, группа и т.д.