Как понять тех, кто смущает разрешения доступа к файлам и общим ресурсам Windows 7
Вы когда-нибудь пытались выяснить все разрешения в Windows? Есть разрешения для общего доступа, разрешения NTFS, списки контроля доступа и многое другое. Вот как они все работают вместе.
Идентификатор безопасности
Операционные системы Windows используют SID для представления всех участников безопасности. SID — это просто строки алфавитно-цифровых символов переменной длины, которые представляют машины, пользователей и группы. SID добавляются в ACL (списки контроля доступа) каждый раз, когда вы предоставляете пользователю или группе разрешение на файл или папку. За сценой SID хранятся так же, как и все остальные объекты данных, в двоичном виде. Однако, когда вы видите SID в Windows, он будет отображаться с использованием более читаемого синтаксиса. Нечасто вы видите любую форму SID в Windows, наиболее распространенный сценарий — когда вы предоставляете кому-то разрешение на доступ к ресурсу, тогда его учетная запись пользователя удаляется, и затем он отображается как SID в ACL. Итак, давайте взглянем на типичный формат, в котором вы увидите SID в Windows.
Обозначение, которое вы увидите, принимает определенный синтаксис, ниже представлены различные части SID в этой нотации.
- Префикс ‘S’
- Номер редакции структуры
- Значение авторитетного 48-битного идентификатора
- Переменный номер 32-битных значений подузла или относительного идентификатора (RID)
Используя мой SID на изображении ниже, мы разберем различные разделы, чтобы лучше понять.
- 0 — нулевой орган
- 1 — Мировой авторитет
- 2 — Местная власть
- 3 — Создатель власти
- 4 — неуникальный орган
- 5 — NT Authority
Принципы безопасности
Субъект безопасности — это все, к чему привязан SID, это могут быть пользователи, компьютеры и даже группы. Участники безопасности могут быть локальными или находиться в контексте домена. Вы управляете локальными участниками безопасности с помощью оснастки «Локальные пользователи и группы» в разделе «Управление компьютером». Для этого щелкните правой кнопкой мыши ярлык компьютера в меню «Пуск» и выберите «Управление».
Чтобы добавить нового участника безопасности пользователя, вы можете перейти в папку пользователей и щелкнуть правой кнопкой мыши и выбрать нового пользователя.
Если дважды щелкнуть пользователя, вы можете добавить его в группу безопасности на вкладке «Член».
Чтобы создать новую группу безопасности, перейдите в папку «Группы» с правой стороны. Щелкните правой кнопкой мыши на пустом месте и выберите новую группу.
Разрешения общего доступа и разрешение NTFS
В Windows есть два типа разрешений для файлов и папок, во-первых, это разрешения общего доступа, а во-вторых, разрешения NTFS, также называемые разрешениями безопасности. Обратите внимание, что при совместном использовании папки по умолчанию группе «Все» предоставляется разрешение на чтение. Безопасность для папок обычно обеспечивается сочетанием разрешений «Общий ресурс» и «Разрешение NTFS». В этом случае важно помнить, что всегда применяется самое ограничительное, например, если для разрешения общего ресурса установлено «Все = Чтение» (по умолчанию), но разрешение NTFS позволяет пользователям вносить изменения в файл, разрешение общего доступа будет иметь приоритет, и пользователям не будет разрешено вносить изменения. Когда вы устанавливаете разрешения, LSASS (Local Security Authority) контролирует доступ к ресурсу. Когда вы входите в систему, вам дается токен доступа с вашим SID, когда вы заходите для доступа к ресурсу, LSASS сравнивает SID, который вы добавили в ACL (список контроля доступа), и, если SID находится в ACL, он определяет, следует ли разрешить или запретить доступ. Независимо от того, какие разрешения вы используете, есть различия, поэтому давайте взглянем, чтобы лучше понять, когда мы должны использовать что.
Share Permissions:
- Применяется только к пользователям, которые получают доступ к ресурсу через сеть. Они не применяются, если вы входите в систему локально, например, через терминальные службы.
- Это относится ко всем файлам и папкам в общем ресурсе. Если вы хотите предоставить более детальную схему ограничений, вы должны использовать разрешение NTFS в дополнение к общим разрешениям.
- Если у вас есть отформатированные тома FAT или FAT32, это будет единственной доступной формой ограничения, так как разрешения NTFS недоступны в этих файловых системах.
NTFS Permissions:
- Единственное ограничение на разрешения NTFS заключается в том, что они могут быть установлены только на томе, отформатированном в файловой системе NTFS.
- Помните, что NTFS является кумулятивным, что означает, что эффективные разрешения пользователей являются результатом объединения назначенных пользователю разрешений и разрешений любых групп, к которым принадлежит пользователь.
Новые разрешения для общего ресурса
Windows 7 куплена по новой «легкой» технологии обмена. Параметры изменились с Чтение, Изменить и Полный доступ на. Читать и читать / писать. Эта идея была частью менталитета всей Домашней группы и позволяет легко делиться папкой для неграмотных людей. Это делается через контекстное меню и легко делится с вашей домашней группой.
Если вы хотите поделиться с кем-то, кто не входит в домашнюю группу, вы всегда можете выбрать опцию «Конкретные люди…». Что приведет к более «сложному» диалогу. Где вы могли бы указать конкретного пользователя или группы.
Существует только два разрешения, как было упомянуто ранее, вместе они предлагают схему защиты всех ваших папок и файлов.
- Разрешение на чтение — это опция «смотри, не трогай». Получатели могут открывать, но не изменять или удалять файл.
- Чтение / запись — опция «делать что угодно». Получатели могут открывать, изменять или удалять файлы.
Старый школьный путь
В старом диалоговом окне общего доступа было больше опций, и мы могли предоставить общий доступ к папке под другим псевдонимом, что позволило нам ограничить количество одновременных подключений, а также настроить кэширование. Ни одна из этих функций не потеряна в Windows 7, а скорее скрыта под опцией, называемой «Расширенный общий доступ». Если вы щелкнете правой кнопкой мыши по папке и перейдете к ее свойствам, вы можете найти эти настройки «Расширенный общий доступ» на вкладке «Общий доступ».
Если вы нажмете кнопку «Расширенный общий доступ», для которой требуются учетные данные локального администратора, вы сможете настроить все параметры, с которыми вы были знакомы в предыдущих версиях Windows.
Если вы нажмете на кнопку «Права доступа», вы увидите 3 настройки, с которыми мы все знакомы.
- Разрешение на чтение позволяет просматривать и открывать файлы и подкаталоги, а также запускать приложения. Однако это не позволяет вносить какие-либо изменения.
- Разрешение на изменение позволяет делать все, что разрешает чтение , оно также добавляет возможность добавлять файлы и подкаталоги, удалять подпапки и изменять данные в файлах.
- Полный контроль — это «делать все» из классических разрешений, поскольку он позволяет вам выполнять все предыдущие разрешения. Кроме того, он предоставляет расширенные возможности изменения разрешения NTFS, это применимо только к папкам NTFS.
NTFS разрешения
Разрешение NTFS позволяет очень детально контролировать ваши файлы и папки. С учетом сказанного количество гранулярности может быть пугающим для новичка. Вы также можете установить разрешение NTFS для каждого файла, а также для каждой папки. Чтобы установить NTFS Permission для файла, вы должны щелкнуть правой кнопкой мыши и перейти к свойствам файлов, где вам нужно перейти на вкладку безопасности.
Чтобы изменить разрешения NTFS для пользователя или группы, нажмите кнопку редактирования.
Как вы можете видеть, существует довольно много NTFS-разрешений, поэтому давайте разберем их. Сначала мы посмотрим на разрешения NTFS, которые вы можете установить для файла.
- Полный контроль позволяет вам читать, писать, изменять, выполнять, изменять атрибуты, разрешения и владеть файлом.
- Изменить позволяет читать, писать, изменять, выполнять и изменять атрибуты файла.
- Чтение и выполнение позволит вам отобразить данные файла, атрибуты, владельца и разрешения, а также запустить файл, если это программа.
- Чтение позволит вам открыть файл, просмотреть его атрибуты, владельца и разрешения.
- Запись позволит вам записать данные в файл, добавить в файл и прочитать или изменить его атрибуты.
Разрешения NTFS для папок имеют несколько разные параметры, поэтому давайте рассмотрим их.
- Полный контроль позволяет вам читать, записывать, изменять и выполнять файлы в папке, изменять атрибуты, разрешения и владеть папкой или файлами внутри.
- Изменить позволяет читать, записывать, изменять и выполнять файлы в папке и изменять атрибуты папки или файлов внутри.
- Чтение и выполнение позволит вам отображать содержимое папки и отображать данные, атрибуты, владельца и разрешения для файлов в папке, а также запускать файлы в папке.
- Список содержимого папки позволит вам отобразить содержимое папки и отобразить данные, атрибуты, владельца и разрешения для файлов в папке.
- Чтение позволит вам отобразить данные файла, атрибуты, владельца и разрешения.
- Запись позволит вам записать данные в файл, добавить в файл и прочитать или изменить его атрибуты.
В документации Microsoft также говорится, что «Список содержимого папки» позволит вам выполнять файлы в папке, но для этого вам все равно потребуется включить «Чтение и выполнение». Это очень запутанно задокументированное разрешение.
Резюме
Таким образом, имена пользователей и группы являются представлениями буквенно-цифровой строки, называемой SID (идентификатор безопасности), разрешения Share и NTFS привязаны к этим SID. Разрешения общего ресурса проверяются LSSAS только при доступе по сети, в то время как разрешения NTFS действительны только на локальных машинах. Я надеюсь, что вы все хорошо понимаете, как реализована защита файлов и папок в Windows 7. Если у вас есть какие-либо вопросы, не стесняйтесь в комментариях.
подскажите какие эффективные разрешения для пользователя
Какие разрешения нужны для записи в папку удаленного доступа на другом компьютере?
Доброго дня всем. Организовал сеть. При попытке с компьютера Б вставить в папку удаленного.
Какие разрешения нужны для определения местоположения?
Какое разрешение нада прописать в манифест чтобы приложение могло определять местоположение?
Подскажите эффективные способы пополнения словарного запаса
Подскажите эффективные способы пополнения словарного запаса, всегда были с этим проблемы :coffee2:
Какие еще разрешения требуются пользователю для выполнения системной хранимой процедуры таблицы master?
Потерял день, но так и не понял, почему хранимая процедура заявляет, что у пользователя нет.
Сообщение было отмечено vjacheslav9 как решение
SMB и NTFS-разрешения. Разбор полетов
Для чего в большинстве случаев в организации нужен сервер? Active Directory, RDS, сервер печати и еще куча мелких и крупных сервисов. Самая заметная всем роль, пожалуй, это файловый сервер. С ним люди, в отличие, от других ролей работают осознаннее всего. Они запоминают в какой папке что лежит, где находятся сканы документов, где их отчеты, где факсы, где общая папка, в которой можно все, куда доступ только одному из отделов, куда другому, а о некоторых они вообще не догадываются
О доступе к сетевым и локальным папкам на сервере я и хочу поговорить.
Доступ к общим ресурсам на сервере осуществляется, как все прекрасно знают, по протоколу SMB уже 3.0. Доступ по сети к папкам можно ограничивать SMB и NTFS-разрешениями. SMB-разрешения работают только при доступе к общей папке по сети и не имеют никакого влияния на доступность той или иной папки локально. NTFS-разрешения работают, как по сети, так и локально, обеспечивая намного больше гибкости в создании прав доступа. SMB и NTFS разрешения работают не отдельно, а дополняют друг друга, по принципу наибольшего ограничения прав.
Для того, чтобы отдать папку в общий доступ в Server 2012 в группе SMB Share Cmdlets, появился командлет New-SMBShare. На примере этого командлета мы увидим все возможности, доступные при создании общей папки, кроме кластерных конфигураций (это отдельная большая тема).
Создание новой общей папки выглядит очень просто:
или
Разбираемся:
имя общей папки в сети, может отличаться от имени папки на локальном компьютере. Имеет ограничение в 80 символов, нельзя использовать имена pipe и mailslot.
путь к локальной папке, которую нужно отдать в общий доступ. Путь должен быть полным, от корня диска.
настройка автономности файлов в общей папке.
- Работа не зависит от сети – может сгореть свитч, может перезагружаться сервер, может оборваться провод или выключиться точка доступа – пользователь работает со своей копией, не замечая, что у вас там какая-то авария, при восстановлении сетевого подключения его работа уходит на сервер.
- Пользователь может работать работу где угодно: на даче, в автобусе, в самолете – в тех местах, где подключение к VPN по каким-то причинам недоступно.
- Если даже пользователь работает через VPN, но подключение или очень медленное, или постоянно обрывается – проще работать с автономной копией и синхронизировать изменения, чем пытаться что-то сделать на сервере.
- Пользователь сам может выбирать что и когда синхронизировать, если дать ему такую возможность.
- none – файлы недоступны автономно, для доступа к файлам нужен доступ к серверу
- manual – пользователи сами выбирают файлы, которые будут доступны автономно
- programs – все в папке доступно автономно (документы и программы (файлы с расширением *.exe, *.dll))
- documents – документы доступны, программы нет
- branchcache – кэширование вместо локального компьютера пользователя происходит на серверах BranchCache, пользователи сами выбирают автономные файлы
У этих разрешений есть одно большое преимущество – они очень простые.
-noaccess secretary,steward – секретарше и завхозу нечего делать в общих папках бухгалтерии
-readaccess auditor – аудитор, проверяющий работу бухгалтерии может видеть имена файлов и подпапок в общей папке, открывать файлы для чтения, запускать программы.
-changeaccess accountant – бухгалтеры в своей общей папке могут создавать файлы и подпапки, изменять существующие файлы, удалять файлы и подпапки
-fullaccess admin – fullaccess это readaccess+changeaccess плюс возможность изменять разрешения.
При создании общей папки автоматически применяется наиболее ограничивающее правило – группе «Все» дается право на чтение.
Эти разрешения применяются только для пользователей, получивших доступ к общей папке по сети. При локальном входе в систему, например в случае терминального сервера, и секретарша и завхоз увидят в бухгалтерии все, что пожелают. Это исправляется NTFS-разрешениями. SMB-разрешения применяются ко всем файлам и папкам на общем ресурсе. Более тонкая настройка прав доступа осуществляется также NTFS-разрешениями.
c помощью этого параметра можно ограничить максимальное число подключений к папке общего доступа. В принципе, также можно использовать для ограничения доступа к папке, дополняя NTFS-разрешения, только надо быть точно уверенным в необходимом количестве подключений.
описание общего ресурса, которое видно в сетевом окружении. Описание – это очень хорошая вещь, которой многие пренебрегают.
В SMB до версии 3.0 единственным способом защитить трафик от файлового сервера клиенту был VPN. Как его реализовать зависело полностью от предпочтений системного администратора: SSL, PPTP, IPSEC-туннели или еще что-нибудь. В Server 2012 шифрование работает из коробки, в обычной локальной сети или через недоверенные сети, не требуя никаких специальных инфраструктурных решений. Его можно включить как для всего сервера, так и для отдельных общих папок. Алгоритмом шифрования в SMB 3.0 является AES-CCM, алгоритмом хеширования вместо HMAC-SHA256 стал AES-CMAC. Хорошая новость в том, что SMB 3.0 поддерживает аппаратный AES (AES-NI), плохая новость в том, что Россия не поддерживает AES-NI.
Чем грозит включение шифрования? Тем, что работать с зашифрованными общими папками смогут только клиенты, поддерживающие SMB 3.0, то есть Windows 8. Причина опять же, максимально допустимое ограничение прав пользователей. Предполагается, что администратор знает, что он делает и при необходимости даст доступ для клиентов с другой версией SMB. Но так как SMB 3.0 использует новые алгоритмы шифрования и хеширования трафик клиентов с другой версией SMB шифроваться не будет, нужен VPN. Пустить всех клиентов на файловый сервер с включенным шифрованием поможет команда
В конфигурации по умолчанию (запрещен нешифрованный трафик к зашифрованным общим папкам), при попытке доступа к папке клиента с версией SMB ниже 3.0 на клиенте мы получим «Ошибку доступа». На сервере в журнал Microsoft-Windows-SmbServer/Operational будет добавлено событие 1003, в котором можно будет найти IP-адрес клиента, пытавшегося получить доступ.
Шифрование SMB и EFS – это разные вещи, никак не связанные друг с другом, то есть его можно применять на FAT и ReFS томах.
- accessbased – включить
- unrestricted – выключить
NTFS-разрешения
С помощью NTFS-разрешений мы можем более детально разграничить права в папке. Можем запретить определенной группе изменять определенный файл, оставив возможность редактирования всего основного; в одной и той же папке одна группа пользователей может иметь права изменения одного файла и не сможет просматривать другие файлы, редактируемые другой группой пользователей и наоборот. Короче говоря, NTFS-разрешения позволяют нам создать очень гибкую систему доступа, главное самому потом в ней не запутаться. К тому же NTFS-разрешения работают, как при доступе к папке по сети, дополняя разрешения общего доступа, так и при локальном доступе к файлам и папкам.
Существует шесть основных (basic) разрешений, которые являются комбинацией из 14 дополнительных (advanced) разрешений.
Основные разрешения
Полный доступ (fullcontrol) – полный доступ к папке или файлу, с возможностью изменять права доступа и правила аудита к папкам и файлам
Изменение (modify) – право чтения, изменения, просмотра содержимого папки, удаления папок/файлов и запуска выполняемых файлов. Включает в себя Чтение и выполнение (readandexecute), Запись (write) и Удаление (delete).
Чтение и выполнение (readandexecute) – право открывать папки и файлы для чтения, без возможности записи. Также возможен запуск выполняемых файлов.
Список содержимого папки (listdirectory) – право просматривать содержимое папки
Чтение (read) – право открывать папки и файлы для чтения, без возможности записи. Включает в себя Содержание папки / Чтение данных (readdata), Чтение атрибутов (readattributes), Чтение дополнительных атрибутов (readextendedattributes) и Чтение разрешений (readpermissions)
Запись (write) – право создавать папки и файлы, модифицировать файлы. Включает в себя Создание файлов / Запись данных (writedata), Создание папок / Дозапись данных (appenddata), Запись атрибутов (writeattributes) и Запись дополнительных атрибутов (writeextendedattributes)
Дополнительные разрешения
Я ставил на папку только 1 из 14 разрешений и смотрел, что получается. В реальном мире, в большинстве случаев хватает основных разрешений, но мне было интересно поведение папок и файлов с максимально урезанными правами.
Траверс папок / выполнение файлов (traverse) – право запускать и читать файлы, независимо от прав доступа к папке. Доступа к папке у пользователя не будет, (что находится в папке останется загадкой) но файлы в папке будут доступны по прямой ссылке (полный, относительный или UNC-путь). Можно поставить на папку Траверс папок, а на файл любые другие разрешения, которые нужны пользователю для работы. Создавать и удалять файлы в папке у пользователя не получится.
Содержание папки / Чтение данных (readdata) – право просматривать содержимое папки без возможности изменения. Запускать и открывать файлы в просматриваемой папке нельзя
Чтение атрибутов (readattributes) – право просматривать атрибуты (FileAttributes) папки или файла.
Просматривать содержимое папки или файлов или изменить какие-либо атрибуты нельзя.
Чтение дополнительных атрибутов (readextendedattributes) – право просматривать дополнительные атрибуты папки или файла.
Единственное, что я смог найти по дополнительным атрибутам – это то, что они используются для обеспечения обратной совместимости с приложениями OS/2. (Windows Internals, Part 2: Covering Windows Server 2008 R2 and Windows 7). Больше мне о них ничего не известно.
Создание файлов / запись данных (writedata) – дает пользователю возможность создавать файлы в папке, в которую у него нет доступа. Можно копировать файлы в папку и создавать в папке новые файлы. Нельзя просматривать содержимое папки, создавать новые папки и изменять уже существующие файлы. Пользователь не сможет изменить какой-либо файл, даже если он является владельцем этого файла – только создавать.
Создание папок / дозапись данных (appenddata) – дает пользователю возможность создавать подпапки в папке и добавлять данные в конец файла, не изменяя существующее содержание.
C созданием подпапок все понятно: отработает, как ожидается — создаст в недоступной для просмотра пользователем папке testperms подпапку testappend. Попробуем добавить строку в конец файла – сэмулируем ведение какого-нибудь лога.
Хм… В CMD не работает. А если так.
А по конвейеру?
И так не работает.
Начинаем сеанс черной магии: используем класс File, метод AppendText. Получаем объект лога.
Думаю, что AppendAllText пробовать уже не стоит
Дело, в принципе, ясное. Только права на дозапись данных в файл вышеперечисленным способам не хватает, им нужна запись в файл. Но вместе с этим мы дадим возможность на изменение файла, а не только добавление записей, то есть открываем потенциальную возможность уничтожить все содержимое файла.
- Путь к файлу – понятно
- Как открывать файл – открыть файл и найти конец файла
- Права доступа к файлу – дозапись данных
- Доступ для других объектов FileStream – не нужен
- Размер буфера – по умолчанию 8 байт
- Дополнительные опции — нет
Работает! Объект лога мы создали, попробуем туда что-нибудь записать. Метод FileStream.Write принимает входящие значения в байтах. Перегоняем событие, которое мы хотим записать, в байты – класс Encoding, метод GetEncoding (нам не нужны кракозябры на выходе) и GetBytes (собственно, конвертирование)
Параметры FileStream.Write:
Что писать; откуда начинать писать; количество байт, которые нужно записать
Записываем:
Все нормально, у пользователя нет прав на просмотр написанного. Перелогиниваемся под администратором.
Папке, в которой находится файл кроме разрешения Создание папок / дозапись данных должно быть еще выдано разрешение Содержание папки / Чтение данных. На файл хватает только Создание папок / дозапись данных с отключенным наследованием. Полностью оградить пользователя (а пользователем может быть и злоумышленник) от файлов, в которые он должен что-то писать не получится, но с другой стороны, кроме списка файлов в папке, пользователь ничего не увидит и не сможет сделать.
Вывод из этого простой: в батниках реализовать безопасное логирование чего-либо не получится, PowerShell спасает умение работать c .NET объектами.
Запись атрибутов (writeattributes) – разрешаем пользователю изменять атрибуты файла или папки. Вроде все просто. Но вот только что ответить на вопрос: «Фотографии моих котиков занимают почти все место в моем профиле и у меня не остается места для деловой переписки. Я бы хотел сжать папку с котиками, но у меня требуют прав администратора. Вы же говорили, что у меня есть право менять атрибуты папок. Это же атрибут? Почему я не могу его поменять?»
Да, пользователю с правом записи атрибутов можно менять почти все видимые атрибуты файлов и папок, кроме атрибутов сжатия и шифрования. Технически, пользователю дается право выполнять функцию SetFileAttributes. А сжатие файлов выполняется функцией DeviceIOControl, которой нужно передать параметр FSCTL_SET_COMPRESSION и сжатие файлов является далеко не единственной ее работой. С помощью этой функции мы можем управлять всеми устройствами и их ресурсами в системе и, наверное, дать пользователю это право на выполнение этой функции означает сделать его администратором.
С шифрованием история похожа: функция EncryptFile, которая как раз и отвечает за шифрование, требует, чтобы у пользователя были права Содержание папки / Чтение данных, Создание файлов / Запись данных, Чтение атрибутов, Запись атрибутов и Синхронизация на объект. Без них ничего не получится.
Запись расширенных атрибутов (writextendedattributes). Ну это тех, которые используются для обратной совместимости с приложениями OS/2, ага. Ну, а еще в расширенные атрибуты файла C:\Windows\system32\services.exe с недавних пор начали записывать троянов (ZeroAccess.C). Может быть стоит их отключать на самом верхнем уровне? На этот вопрос я не могу дать ответ, теоретически – может быть и стоит, практически в продакшене – я не пробовал.
Удаление подпапок и файлов. (deletesubdirectoriesandfiles) Интересное разрешение, применяемое только к папкам. Суть в том, чтобы разрешить пользователю удалять подпапки и файлы в родительской папке, не давая разрешения Удаление.
Допустим, есть каталог товаров, в который пользователи заносят данные. Есть родительская папка Catalog, внутри подпапки по алфавиту, от A до Z, внутри них какие-нибудь наименования. Наименования меняются каждый день, что-то добавляется, что-то изменяется, что-то устаревает и устаревшую информацию нужно удалять. Но будет не очень хорошо, если кто-нибудь по запарке или злому умыслу грохнет весь каталог K, что очень возможно, если у пользователей есть право Удаление. Если забрать у пользователей право Удаление, то администратору можно смело менять работу, потому что он весь день будет выполнять запросы на удаление того или иного наименования.
Вот тут и включается Удаление подпапок и файлов. На всех буквах алфавита отключается наследование и пользователям добавляется право Удаление подпапок и файлов. В итоге, в папке catalog пользователи не смогут удалить ни одну букву, но внутри букв могут удалять все, что угодно.
Удаление (delete). Здесь все просто. Удаление — это удаление. Не работает без права Чтение.
Чтение разрешений (readpermissions) дает право пользователю просматривать разрешения на папке или файле. Нет права – пользователь не видит разрешения на вкладке «Безопасность»
Смена разрешений (changepermissions) – разрешает пользователю менять разрешения, по сути делает пользователя администратором папки. Можно использовать, например, для делегирования полномочий техподдержке. Без права чтения разрешений не имеет никакого смысла. Смена разрешений не подразумевает смену владельца папки.
Смена владельца (takeownership) – для начала, кто такой владелец. Владелец – это пользователь, создавший файл или папку.
Особенностью владельца является то, что у него есть полный доступ к созданной папке, он может раздавать разрешения на свою созданную папку, но что важнее – никто не может лишить владельца права изменять разрешения на его папку или файл. Если Вася создал папку, дал полный доступ Пете, а Петя зашел и грохнул доступ пользователей к папке вообще и Васи в частности, то Вася без особого труда может восстановить статус-кво, так как он является владельцем папки. Изменить владельца папки Петя не сможет, даже если у него есть разрешение Смена владельца. Более того, даже Вася не может изменить владельца, несмотря на то, что папку создал он. Право Смена владельца относится только к группе Администраторы или Администраторы домена.
Но если Петя внутри Васиной папки создал файл и не дал Васе доступа к нему, то Васе остается только думать и гадать, что же внутри этого файла такого секретного. Вася не сможет изменить права доступа к файлу, потому что владельцем файла является Петя. Также Вася не сможет изменить владельца файла – изменение владельца подконтейнеров и объектов также является привилегией группы Администраторы, к которой Вася не относится. Единственный оставшийся у Васи вариант – смотреть на Петин файл внутри своей папки.
Управляем
В CMD для управления разрешениями используется хорошо всем известная icacls. В PowerShell управление NTFS-разрешениями выглядит примерно так:
Изучите общие сведения об использовании разрешений NTFS
Разрешения NTFS позволяют явно указать, какие пользователи и группы имеют доступ к файлам и папкам и какие операции с содержимым этих файлов или папок им разрешено выполнять. Разрешения NTFS применимы только к томам, отформатированным с использованием файловой системы NTFS. Они не предусмотрены для томов, использующих файловые системы FAT или FAT32. Система безопасности NTFS эффективна независимо от того, обращается ли пользователь к файлу или папке на локальном компьютере или в сети.
Разрешения, устанавливаемые для папок, отличаются от разрешений, устанавливаемых для файлов. Администраторы, владельцы файлов или папок и пользователи с разрешением Полный доступ (Full Control) имеют право назначать разрешения NTFS пользователям и группам для управления доступом к этим файлам и папкам.
Разрешения для папок в NTFS
Ниже перечислены стандартные разрешения для папок в NTFS, которые вы можете установить, и обеспечиваемые ими типы доступа (таблица 2.1). Вы можете запретить разрешение для пользователя или группы. Для полного запрещения доступа пользователя или группы к папке, откажите в разрешенииПолный доступ (Full Control).
Таблица 2.1 – Стандартные расширения для папок в NTFS
Разрешения для папок в NTFS | Права пользователя |
Чтение (Read) | Просматривать файлы и папки, а также список владельцев, разрешения и атрибуты папки [такие, как Только чтение (Read-Only), Скрытый (Hidden), Архивный (Archive) и Системный (System)] |
Запись (Write) | Создавать новые файлы и папки внутри папки, изменять атрибуты папки и просматривать владельцев и разрешения для папки |
Список содержимого папки (List Folder Contents) | Просматривать имена файлов и папок |
Чтение и выполнение (Read & Execute) | Перемещаться по структуре папок в поисках других файлов или папок, даже если пользователь не обладает разрешением на доступ к просматриваемым папкам. Выполнять все действия, право на которые дают разрешения Чтение (Read) и Список содержимого папки (List Folder Contents) |
Изменить (Modify) | Удалять папки и выполнять все действия, право на которые дают разрешения Запись (Write) и Чтение и выполнение (Read & Execute) |
Полный доступ (Full Control) | Изменять разрешения, менять владельца, удалять папки и файлы и выполнять действия, право на которые дают все остальные разрешения NTFS для папок |
Разрешения для файлов в NTFSуправляют доступом пользователей к файлам. Ниже перечислены стандартные разрешения для файлов в NTFS, которые можно установить, и обеспечиваемые ими типы доступа.
В NTFS хранится список управления доступом(access control list, ACL) для каждого файла и папки на томе NTFS. В этом списке перечислены пользователи и группы, для которых установлены разрешения для файла или папки, а также сами назначенные разрешения. Чтобы пользователь получил доступ к ресурсу, в ACL должна быть запись, называемая элемент списка управления доступом(access control entry, АСЕ), для этого пользователя или группы, к которой он принадлежит. Эта запись назначит запрашиваемый тип доступа [например,Чтение(Read)] пользователю. Если в ACL нет соответствующей АСЕ, то пользователь не получит доступ к ресурсу.
Таблица 2.2 – Стандартные разрешения для файлов в NTFS
Разрешения для файлов в NTFS | Права пользователя |
Чтение (Read) | Просматривать файлы, владельцев, разрешения и атрибуты |
Запись (Write) | Перезаписывать файл, изменять атрибуты файлов и просматривать владельцев и разрешения |
Чтение и выполнение (Read & Execute) | Запускать приложения и выполнять (Read & Execute) все действия, право на которые дает разрешение Чтение (Read) |
Изменить (Modify) | Изменять и удалять файл, а также выполнять все действия, право на которые дают разрешения Запись (Write) и Чтение и выполнение (Read & Execute) |
Полный доступ (Full Control) | Изменять разрешения, менять владельца и выполнять действия, право на которые дают все остальные разрешения NTFS для файлов |
Множественные разрешения NTFS
Вы можете установить несколько разрешений пользователю и всем группам, членом которых он является. Для этого вы должны иметь представление о правилах и приоритетах, по которым в NTFS назначаются и объединяются множественные разрешения и о наследовании разрешений NTFS.
Эффективные разрешения пользователя для ресурса — это совокупность разрешений NTFS, которые вы назначаете отдельному пользователю и всем группам, к которым он принадлежит. Если у пользователя есть разрешениеЧтение (Read) для папки и он входит в группу, у которой есть разрешениеЗапись (Write) для той же папки, значит, у этого пользователя есть оба разрешения.
Приоритет разрешений для файлов над разрешениями для папок.
В NTFS разрешения для файлов имеют больший приоритет, чем разрешения для папок. Если у вас есть разрешение на доступ к файлу и право Обход перекрестной проверки (Bypass Traverse Checking), то вы сможете воспользоваться доступом к этому файлу, даже если у вас нет доступа к папке, в которой содержится файл. Вы можете получить доступ к тем файлам, для которых у вас есть разрешения, воспользовавшись UNC-именем файла или локальным путем для открытия файла из соответствующего приложения. Это возможно, даже если папка, в которой находится файл, невидима и у вас нет соответствующего разрешения для данной папки. Другими словами, если у вас нет разрешения на доступ к папке, содержащей нужный вам файл, для доступа к файлу вам необходимо обладать правом Обход перекрестной проверки(Bypass Traverse Checking) и знать полный путь к файлу.