Немного теории.
Компьютеры, работающие под управлением операционных систем Windows, могут работать с различными файловыми системами, такими как FAT32 и NTFS. Не вдаваясь в подобности можно сказать одно, что отличаются они главным – файловая система NTFS позволяет настраивать параметры безопасности для каждого файла или папки(каталога). Т.е. для каждого файла или папки файловая система NTFS хранит так называемые списки ACL(Access Control List), в которых перечислены все пользователи и группы, которые имеют определенные права доступа к данному файлу или папке. Файловая система FAT32 такой возможности лишена.
В файловой системе NTFS каждый файл или папка могут иметь следующие права безопасности:
- Чтение — Разрешает обзор папок и просмотр списка файлов и подпапок, просмотр и доступ к содержимому файла;
- Запись — Разрешает добавление файлов и подпапок, запись данных в файл;
- Чтение и Выполнение — Разрешает обзор папок и просмотр списка файлов и подпапок, разрешает просмотр и доступ к содержимому файла, а также запуск исполняемого файла;
- Список содержимого папки — Разрешает обзор папок и просмотр только списка файлов и подпапок. Доступ к содержимому файла это разрешение не дает!;
- Изменить — Разрешает просмотр содержимого и создание файлов и подпапок, удаление папки, чтение и запись данных в файл, удаление файла;
- Полный доступ — Разрешает просмотр содержимого, а также создание, изменение и удаление файлов и подпапок, чтение и запись данных, а также изменение и удаление файла
Перечисленные выше права являются базовыми. Базовые права состоят из особых прав. Особые права — это более подробные права, из которых формируются базовые права. Использование особых прав дает очень большую гибкость при настройке прав доступа.
Список особых прав доступа к файлам и папкам:
- Обзор папок/Выполнение файлов — Разрешает перемещение по структуре папок в поисках других файлов или папок, выполнение файлов;
- Содержание папки/Чтение данных — Разрешает просмотр имен файлов или подпапок, содержащихся в папке, чтение данных из файла;
- Чтение атрибутов — Разрешает просмотр таких атрибутов файла или папки, как «Только чтение» и «Скрытый»;
- Чтение дополнительных атрибутов — Разрешает просмотр дополнительных атрибутов файла или папки;
- Создание файлов / Запись данных — Разрешает создание файлов в папке (применимо только к папкам), внесение изменений в файл и запись поверх имеющегося содержимого (применимо только к файлам);
- Создание папок / Дозапись данных — Разрешает создание папок в папке (применимо только к папкам), внесение данных в конец файла, но не изменение, удаление или замену имеющихся данных (применимо только к файлам);
- Запись атрибутов — Разрешает или запрещает смену таких атрибутов файла или папки, как «Только чтение» и «Скрытый»;
- Запись дополнительных атрибутов — Разрешает или запрещает смену дополнительных атрибутов файла или папки;
- Удаление подпапок и файлов — Разрешает удаление подпапок и файлов даже при отсутствии разрешения «Удаление» (применимо только к папкам);
- Удаление — Разрешает удаление файла или папки. Если для файла или папки отсутствует разрешение «Удаление», объект все же можно удалить при наличии разрешения «Удаление подпапок и файлов» для родительской папки;
- Чтение разрешений — Разрешает чтение таких разрешений на доступ к файлу или папке, как «Полный доступ», «Чтение» и «Запись»;
- Смена разрешений — Разрешает смену таких разрешений на доступ к файлу или папке, как «Полный доступ», «Чтение» и «Запись»;
- Смена владельца — Разрешает вступать во владение файлом или папкой;
- Синхронизация — Разрешает ожидание различными потоками файлов или папок и синхронизацию их с другими потоками, могущими занимать их. Это разрешение применимо только к программам, выполняемым в многопоточном режиме с несколькими процессами;
!!!Все базовые и особые права являются как разрешающими так и запрещающими.
Все разрешения файлов и папок делятся на два вида: явные и наследуемые. Механизм наследования подразумевает автоматическую передачу чего-либо от родительского объекта дочернему. В файловой системе это означает, что любой файл или папка могут наследовать свои права от родительской папки. Это очень удобный механизм, избавляющий от необходимости назначать явные права для всех вновь создаваемых файлов и папок. Представьте, что у вас на каком-то диске несколько тысяч файлов и папок, как им всем раздать права доступа, сидеть и каждому назначать? Нет. Тут работает механизм наследования. Создали папку в корне диска, папка автоматически получила точно такие же права, как и корень диска. Изменили права для вновь созданной папки. Потом внутри созданной папки создали еще вложенную папку. У этой вновь созданной вложенной папки права унаследуются от родительской папки и т.д. и т.п.
Результатом применения явных и наследуемых прав и будут фактические права на конкретную папку или файл. Подводных камней при этом очень много. Например, у вас есть папка, в которой вы разрешаете пользователю «Вася» удалять файлы. Потом вы вспоминаете, что в этой папке есть один очень важный файл, который Вася ни в коем случае не должен удалить. Вы устанавливаете на важный файл явный запрет (особое право запрета «Удаление»). Казалось бы, дело сделано, файл явно защищен от удаления. А Вася спокойно заходит в папку и удаляет этот суперзащищенный файл. Почему? Потому что Вася имеет права удаления от родительской папки, которые в данном случае являются приоритетными.
Старайтесь не пользоваться назначением прав, непосредственно, на файлы, назначайте права на папки.
!!! Старайтесь назначать права только для групп, это значительно упрощает администрирование. Назначение прав для конкретных пользователей не рекомендуется фирмой Microsoft. Не забывайте, что в группу могут входить не только пользователи, но и другие группы.
Например. Если компьютер включен в домен, то в его локальную группу «Пользователи» автоматически добавляется группа «Domain Users»(пользователи домена), а в локальную группу «Администраторы» автоматически добавляется группа «Domain Admins»(администраторы домена), и соответственно, назначая на какую-либо папку права группе локальных пользователей, вы автоматически назначаете права для всех пользователей домена.
Не расстраивайтесь если все описанное выше сразу не очень понятно. Примеры и самостоятельная работа быстро исправят положение!
Переходим к конкретике.
Все примеры я буду показывать на примере окон Windows XP. В Windows 7 и выше сущность осталась идентичной, только окон стало немного больше.
Итак, чтобы назначить или изменить права на файл или паку необходимо в проводнике нажать правой клавишей мышки на нужный файл или папку выбрать пункт меню «Свойства»
У вас должно открыться окно с закладкой «Безопасность»
Если такой закладки нет, тогда делаем следующее. Запускаем Проводник, затем открываем меню «Сервис»—«Свойства папки…»
В открывшемся окне переходим на закладку «Вид» и снимаем галочку с параметра «Использовать простой общий доступ к файлам(рекомендуется)»
Все, теперь вам доступны все свойства файловой системы NTFS.
Возвращаемся к закладке «Безопасность».
В открывшемся окне нам доступно много информации. Сверху находится список «Группы и пользователи:», в котором перечислены все пользователи и группы, имеющие права доступа к данной папке (стрелка 1). В нижнем списке показаны разрешения для выделенного пользователя/группы(стрелка 2). В данном случае это пользователь SYSTEM. В данном списке разрешений видны базовые разрешения. Обратите внимание, что в колонке «Разрешить» галочки имеют блеклый цвет и не доступны для редактирования. Это говорит о том, что данные права унаследованы от родительской папки. Еще раз, в данном случае все права пользователя SYSTEM на папку «Рабочая» полностью унаследованы от родительской папки, и пользователь SYSTEM имеет все права («Полный доступ»)
Выделяя в списке нужную группу или пользователя, мы можем посмотреть базовые права для этой группы или пользователя. Выделив пользователя «Гостевой пользователь (gu@btw.by)» можно увидеть, что у него все права явные
А вот группа «Пользователи (KAV-VM1\Пользователи» имеет комбинированные права, часть из них унаследована от родительской папки(серые квадратики напротив «Чтение и выполнение», «Список содержимого папки», «Чтение»), а часть установлено явно – это право «Изменить» и «Запись»
!!!Внимание. Обратите внимание на названия пользователей и групп. В скобочках указывается принадлежность группы или пользователя. Группы и пользователи могут быть локальными, т.е. созданными непосредственно на этом компьютере, а могут быть доменными. В данном случае группа «Администраторы» локальная, так как запись в скобочках указывает имя компьютера KAV-VM1, а после слэша уже идет само название группы. Напротив, пользователь «Гостевой пользователь» является пользователем домена btw.by, на это указывает запись полного имени gu@btw.by
Зачастую при просмотре или изменении прав можно ограничиться окном с базовыми правами, но иногда этого недостаточно. Тогда можно открыть окно, в котором изменяются особые разрешения, владелец или просматриваются действующие разрешения. Как это сделать? Нажимаем на кнопку «Дополнительно». Открывается вот такое окно
В данном окне в таблице «Элементы разрешений» перечислены все пользователи, имеющие права на данную папку. Точно так же, как и для базовых разрешений, мы выделяем нужного пользователя или группу и нажимаем кнопку «Изменить». Открывается окно, в котором показаны все особые разрешения для выделенного пользователя или группы
Аналогично базовым разрешениям, особые разрешения, унаследованные от родительской папки, будут показаны блеклым серым цветом и не будут доступны для редактирования
Как вы уже могли заметить, в окне особых разрешений для некоторых пользователей или групп есть несколько строк.
Это происходит потому, что для одного пользователя или группы могут быть различные виды прав: явные и наследуемые, разрешающие или запрещающие, различающиеся по виду наследования. В данном случае права на чтение для группы «Пользователи» наследуются от родительской папки, а права на изменение добавлены явно.
Примеры назначения прав.
!!! Все примеры будут идти с нарастанием сложности. Читайте и разбирайтесь с ними в такой же последовательности как они идут в тексте. Однотипные действия в последующих примерах буду опускать, чтобы сократить объём текста. 🙂
Пример 1. Предоставление права доступа к папке определенной локальной группе безопасности только на чтение.
Данная ситуация очень распространена. Предположим у вас есть локальная папка, содержимым которой вы хотите поделиться с определенным количеством пользователей. Причем доступ к данной папке перечисленным пользователям должен быть только на чтение. Как это сделать?
Сначала создадим локальную группу, в которую включим весь список нужных нам пользователей. Можно и без группы, но тогда для каждого пользователя нужно будет настраивать права отдельно, и каждый раз, когда понадобится дать права новому человеку, потребуется проделывать все операции заново. А если права предоставить локальной группе, то для настройки нового человека понадобится только одно действие – включение этого человека в локальную группу. Как создать локальную группу безопасности читаем в статье «Настройка локальных групп безопасности».
Итак. Мы создали локальную группу безопасности с именем «Коллегам для чтения»,
в которую добавили всех нужных пользователей.
Теперь настраиваю права доступа к папке. В данном примере я сделаю права доступа созданной группе «Коллегам для чтения» на папку «Фото».
Нажимаю правой клавишей мышки на папку «ФОТО» и выбираю пункт меню «Свойства», перехожу на закладку «Безопасность».
В открывшейся закладке «Безопасность» отображаются текущие права папки «ФОТО». Выделив группы и пользователей в списке, можно увидеть, что права этой папки наследуются от родительской папки(серые галочки в столбце «Разрешить»). В данной ситуации я не хочу, чтобы кто-то кроме вновь созданной группы имел хоть какой-то доступ к папке «ФОТО».
Поэтому, я должен убрать наследование прав и удалить ненужных пользователей и группы из списка. Нажимаю кнопку «Дополнительно». В открывшемся окне,
убираю галочку с пункта «Наследовать от родительского объекта применимые к дочерним объектам разрешения, добавляя их к явно заданным в этом окне.». При этом откроется окно, в котором я смогу выбрать, что делать с текущими унаследованными правами.
В большинстве случаев я советую нажимать здесь кнопку «Копировать», так как если выбрать «Удалить», то список прав становится пуст, и вы можете фактически забрать права у самого себя. Да, не удивляйтесь, это очень легко сделать. И если вы не администратор на своем компьютере, или не пользователь группы «Операторы архива», то восстановить права вам будет невозможно. Ситуация напоминает дверь с автоматической защелкой, которую вы закрываете, оставляя ключи внутри. Поэтому, лучше всегда нажимайте кнопку «Копировать», а потом удаляйте ненужное.
После того, как я нажал «Копировать», я опять возвращаюсь в предыдущее окно, только уже со снятой галочкой.
Нажимаю «ОК» и возвращаюсь в окно базовых прав. Все права стали доступны для редактирования. Мне нужно оставить права для локальной группы «Администраторы» и пользователя SYSTEM, а остальных удалить. Я поочередно выделяю ненужных пользователей и группы и нажимаю кнопку «Удалить».
В результате у меня получается вот такая картина.
Теперь мне остается добавить только группу «Коллегам для чтения» и назначить этой группе права на чтение.
Я нажимаю кнопку «Добавить», и в стандартном окне выбора выбираю локальную группу «Коллегам для чтения». Как работать с окном выбора подробно описано в статье «Настройка локальных групп безопасности».
В результате всех действий, я добавил группу «Коллегам для чтения» в список базовых прав, при этом для этой группы автоматически установились права «Чтение и выполнение», «Список содержимого папки», «Чтение».
Все, остается нажать кнопку «ОК» и права назначены. Теперь любой пользователь, который принадлежит локальной группе безопасности «Коллегам для чтения», получит возможность читать все содержимое папки «ФОТО».
Пример 2. Предоставление персонального доступа пользователям к своим подпапкам в папке.
Данная ситуация тоже распространена на практике. Например, у вас есть папка для новых сканированных документов. В этой папке для каждого пользователя создана своя отдельная подпапка. После сканирования документ забирается пользователем из свой подпапки. Задача назначить права так, чтобы каждый пользователь видел содержимое только своей подпапки и не мог получить доступ в подпапку коллеги.
Для данного примера я немного перефразирую задание. Предположим у нас есть общая папка «ФОТО», в которой для каждого пользователя есть подпапка. Необходимо настроить права так, чтобы пользователь имел в своей подпапке все права, а подпапки других пользователей были бы ему недоступны.
Для такой настройки я полностью повторяю все действия из первого примера. В результате повторения у меня получаются права для всей группы «Коллегам для чтения» на чтение ко всем подпапкам. Но моя задача сделать видимой пользователю только «свою» подпапку. Поэтому, в окне базовых прав я нажимаю кнопку «Дополнительно»
и перехожу в окно особых прав, в котором выделяю группу «Коллегам для чтения» и нажимаю кнопку «Изменить»
В открывшемся окне я меняю правила наследования, вместо значения «Для этой папки, ее подпапок и файлов» в поле «Применять:» я выбираю значение «Только для этой папки».
Это самый ключевой момент этого примера. Значение «Только для этой папки» приводит к тому, что права чтения для группы «Коллегам для чтения» распространяются только на корень папки «ФОТО», но не на подпапки. Таким образом, каждый пользователь сможет добраться к своей папке, но заглянуть в соседнюю не сможет, права на просмотр подпапок у него нет. Если же не дать такое право группе совсем, то пользователи вообще не смогут попасть в свои подпапки. Файловая система не пропустит их даже в папку «ФОТО».
В итоге, пользователи смогут заходить в папку «ФОТО» но дальше в подпапки зайти не смогут!
В окне особых прав нажимаем «ОК» и выходим в предыдущее окно, теперь в столбце «Применять к» напротив группы «Коллегам для чтения» стоит значение «Только для этой папки».
Нажимаем во всех окнах «ОК» и выходим.
Все. Теперь остается настроить персональные права на каждую подпапку. Сделать это придется для каждой подпапки, права-то персональные для каждого пользователя.
Все нужные действия вы уже делали в первом примере, повторим пройденное 🙂
На подпапке «Пользователь1» нажимаю правой клавишей мышки, выбираю пункт меню «Свойства», перехожу на закладку «Безопасность». Нажимаю кнопку «Добавить»
и в стандартном окне выбора выбираю доменного пользователя с именем «Пользователь1».
Остается установить галочку для разрешающего права «Изменить». При этом галочка для разрешающего права «Запись» установится автоматически.
Нажимаем «ОК». Выходим. Остается повторить аналогичные действия для всех подпапок.
Пример 3. Предоставление персонального доступа пользователю к своей подпапке на запись, с одновременным запретом изменения или удаления.
Понимаю, что тяжело звучит, но постараюсь пояснить. Такой вид доступа я называю защелка. В быту мы имеем аналогичную ситуацию с обычным почтовым ящиком, в который бросаем бумажные письма. Т.е. бросить письмо в ящик можно, но вытащить его из ящика уже нельзя. В компьютерном хозяйстве такое может пригодиться для ситуации, когда вам кто-то записывает в папку отчет. Т.е. файл записывается пользователем, но потом этот пользователь уже ничего не может с этим файлом сделать. Таким образом, можно быть уверенным, что создатель уже не сможет изменить или удалить переданный отчет.
Как и в предыдущем примере, повторяем все действия, за исключением того, что пользователю не даем сразу полные права на свою папку, изначально в базовых разрешениях даем только доступ на чтение, и нажимаем кнопку «Дополнительно»
В открывшемся окне выделяем «Пользователь1» и нажимаем кнопку «Изменить»
В открывшемся окне мы видим стандартные права на чтение
Для того чтобы дать права пользователю создавать файлы ставим разрешение на право «Создание файлов/Запись данных», а на права «Удаление подпапок и файлов» и «Удаление» ставим запрет. Наследование оставляем стандартное «Для этой папки, ее подпапок и файлов».
После нажатия кнопки «ОК» и возврата в предыдущее окно можно увидеть существенные изменения. Вместо одной записи для «Пользователь1» появилось две.
Это потому, что установлены два вида прав, одни запрещающие, они идут в списке первыми, вторые разрешающие, они в списке вторые. Так как особые права являются нестандартными, то в столбце «Разрешение» стоит значение «Особые». При нажатии кнопки «ОК» появляется окно, к котором windows предупреждает, что есть запрещающие права и что они имеют более высокий приоритет. В переводе это означает туже ситуацию с самозакрывающейся дверью, ключи от которой находятся внутри. Подобную ситуацию я описывал во втором примере.
Все. Права установлены. Теперь «Пользователь1» сможет записать в свою папку любой файл, открыть его, но изменить или удалить не сможет.
А как же полная аналогия с реальным почтовым ящиком ?
Чтобы пользователь не смог открыть или скопировать записанный файл, нужно сделать следующее. Опять открываем разрешающие особые разрешения для «Пользователь1», и в поле «Применять:» меняем значение на «Только для этой папки»
При этом у пользователя не остается права на чтение или копирование файла.
Все. Теперь аналогия с физическим почтовым ящиком почти полная. Он сможет только видеть названия файлов, их размер, атрибуты, но сам файл увидеть не сможет.
Просмотр действующих прав.
Хочу сказать сразу, имеющаяся возможность просмотреть действующие права для папки или файла, является полной фикцией. В моем представлении такие инструменты должны давать гарантированную информацию. В данном случае это не так. Майкрософт сама признается в том, что данный инструмент не учитывает много факторов, влияющих на результирующие права, например, условия входа. Поэтому, пользоваться подобным инструментом – только вводить себя в заблуждение относительно реальных прав.
Описанный в самом начале статьи случай, с запретом на удаление файла из папки в данном случае является очень красноречивым. Если вы смоделируете подобную ситуацию и посмотрите на права файла, защищенного от удаления, то вы увидите, что в правах файла на удаление стоит запрет. Однако, удалить этот файл не составит труда. Почему Майкрософт так сделала — я не знаю.
Если же вы все-таки решите посмотреть действующие права, то для этого необходимо в окне базовых прав нажать кнопку «Дополнительно», и в окне особых прав перейти на закладку «Действующие разрешения».
Затем необходимо нажать кнопку «Выбрать» и в стандартном окне выбора выбрать нужного пользователя или группу.
После выбора можно увидеть «приблизительные» действующие разрешения.
В заключении хочу сказать, что тема прав файловой системы NTFS очень обширна, приведенные выше примеры лишь очень малая часть того, что можно сделать. Поэтому, если возникают вопросы, задавайте их в комментариях к этой статье. Постараюсь на них ответить.
Если вам понравилась статья, то «на чашку кофе» можно перевести вот сюда:
Для посетителей из РФ: кошелек ЮMoney https://yoomoney.ru/to/4100116592326121
Для посетителей из РБ: оплата через ЕРИП: «Банковские, финансовые услуги»-«Банки, НКФО»-«Альфа-Банк»-«Пополнение счета | код услуги 4485471» На счет: BY05ALFA30147131190010270000
Здравствуйте!
Статья годовой давности, но я всё-таки попрошу здесь помощи 🙂
Я пытаюсь сделать то, о чём третий пример. Только для компов в лок. сети (как я заметил, они заходят под пользователем Гость, поэтому меняю права для него).
Проблема в том, что если выключаешь «Содержание папки/Чтение данных» файлам, то файлы они даже не видны, хотя папкам «Содержание папки/Чтение данных» включено.
Заранее спасибо!
Доброго для.
Все правильно, если вы явно устанавливаете для файлов запрет на их просмотр, то и не сможете их посмотреть.
Но это плохая практика. Не манипулируйте правами на уровне файлов. Удалите файл и все, все права удаляются вместе с файлом. 🙂 Не выход каждый раз назначать права для вновь созданных файлов. Поэтому я и рекомендую все права назначать только для папок. В этом случае все файлы будут наследовать права от своей родительской папки.
Добрый день. Спасибо за статью. Пара вопросов:
1. Подскажите, можно ли дать группе полные права на работу с папкой, за исключением некоторых пользователей из этой группы?
2. Если папке дать полный доступ для одной группы и сделать ее недоступной для другой группы, что будет с пользователем, присутствующем в обеих группах?
Спасибо.
Добрый.
1.Да, можно. Можно перечислить всех пользователей и включить для них запрет, т.е. проставить галочки в колонке «Запретить». А можно сделать другую группу, включить туда нужных пользователей и добавив созданную группу в права на папку, поставить этой группе галочки в колонку «Запретить». Желательно сделать группу. 🙂 Тогда при попытке запрещенного пользователя или пользователя из запретной группы сделать в запрещенной папке действия, сначала произойдет проверка на запрещение и проверка на разрешение уже работать не будет.
2. Фактически ответил. Тот, кто в обеих группах в папку не попадет. Запрет сработает раньше!
Спасибо за ответ. Я так понял принцип простой — приоритет у запрета.
Железобетонный. 🙂 Причем с запретом надо быть осторожным, можно запретить даже самому себе. Запретил, нажал ОК и вуаля, папка недоступна самому.
Добрый день. Имею ситуацию, когда необходимо работать с общей книгой MSExcel на сетевом ресурсе. Нужно разрешить изменение файла но запретить удаление. Тут подводный камень — при сохранении изменений, Excel создает временный файл, который права папки потом запрещают удалить и происходит ошибка прав доступа при сохранении (файл не сохраняется). Если установить «разрешить удаление» в правах папки, то пользователь может удалить и весь файл. Явное указание запрета на удаление в свойствах файла не помогает. Как можно решить эту проблему?
Доброго времени. Спасибо за прекрасный вопрос. Но вынужден вас огорчить, я так и не нашел как выйти из этой ситуации. Хотелось бы задать этот вопрос разработчикам NTFS.
Еще один такой подводный камень — создание новой подпапки. Зачем туда всунули полные права для создателя — абсолютно непонятно. Т.е. создавая папку в папке, где у вас нет полных прав, вы все равно их можете получить. Вообщем, если кто-то знает ответы на такие вопросы буду очень рад их услышать сам.
Отдельное фи хочу высказать разработчикам Excel. Все эти временные файлы убивают всю безопасность на корню.
Спасибо за внимание. Сама Майкрософт не дает дельных советов:
https://support.microsoft.com/ru-ru/help/813973/you-may-receive-a-your-changes-could-not-be-saved-error-message-when-y
Посему мне видится только два корявых решения, методы реализации которых мной еще не разработаны:
1) При правах доступа на удаление, постоянно занимать файл любым пользователем. Недостаток — пользователь не должен быть оффлайн, иначе файл можно удалить.
2) Попробовать написать сохранение файла макросом во встроенном проекте VBA от имени пользователя, имеющего полномочия на удаление. Остальные пользователи не имеют таких прав. Возможно придется скрывать кнопку сохранения на панели (как сделать это только для текущего сеанса не представляю) или как минимум делать огромную отдельную кнопку с жирным шрифтом красного цвета «Сохранить».
Если получится, отпишусь.
А на маке?
MacOS’у пофиг на все установленные запреты. Он тупо пишет, игнорируя все правила. Вы же «по-умолчанию» не заметите созданных папок fseventsd, спотлайтов, трэшей и т.п., т.к. для макосей это привычное дело. Вы вторкнёте свою «защищённую» флешку в чей-нибудь mac, а там что-то скрытно воспользуется этой «уязвимостью», закинув какую-нибудь вымогалку: эксплойт в .LNK-виде в корень (autorun.inf уже давно не в моде), срабатывющий только на винде, а само тело вирусняка проникнет в одну из этих папок. И начнёте плеваться и проклинать Microsoft, убедившись в том, что NTFS — ошибка.
Конечно, так подозрение сразу же упадёт на мак, но в ответ Вы услышите «откуда я знаю, у меня эта зараза зашилась?..»
Тупо конечно, что привелегии настраиваются только для пользователей вниды. В висте научили назначать привелегии службам, как например [NT Service\TrustedInstaller]. Но это бесполезно. Фактически, с любой *nix-подобной системы (даже удалённо) с таким «пакетом поддержки NTFS», можно перетасовать все папки, поменять имена, прикола ради, с «недопустимыми символами», а если ещё над альтернативными потоками поиздеваться… ооо… Если бы файловая система сама работала «как программа», а не была пассивной, то было бы интереснее. А тут, ОСь – начальник…
Увы, NTFS не самостоятельная файловая система. В любой момент можно все сбросить!
Здравствуйте!
А как сделать так, чтобы в папке файлы и вложенные папки можно было копировать, но нельзя ни записывать, ни изменять?
Спасибо!
Как раз «Пример 1» — это ваш случай. Т.е. определенному пользователю или группе вы даете только права на чтение и выполнение. И для этого же пользователя или группы явно устанавливаете запрет на изменение и удаление.
Спасибо за статью интересная.)
Есть вопрос с которым периодически сталкиваюсь, но для себя не получил ответ.
Есть файловый сервер FS02 на нем шара. К шаре дан полный доступ для пользователей домена. В данной шаре содержаться папки с отключенным наследованием. И установлен полный доступ группы безопасности в домене GROUP01. В данную группу входят пользователи домена user01, user02, user03… но к сожалению данные пользователи не могут зайти в каталог на данной шаре. Аудит показывает что данная группа не имеет прав. Отдельное назначение этого пользователя на данную шару с полным доступом удачно.
Доброго дня, spa.
Из вашего вопроса у меня возникли вот такие дополнительные вопросы:
1.Какие разрешения на доступ стоят на \\FS02\SHARA? Просто права доступа помимо прав NTFS могут настраиваться и на уровне доступа. Расскажите, что у вас настроено в закладке «Доступ»
2.Нет ли у вас в настройке NTFS явных запрещающих правил для каких-либо групп. Вполне возможно что пользователи user01 и т.п. входят в одну из таких групп.
Никак не могу настроить чтобы ко всему разделу был доступ закрыт для определенного пользователя, а для одной папки на этом разделе был полный доступ с возможностью создания, изменения и удаления файлов. Получается, что если просто не установить права к разделу, а к папке на этом разделе дать полный доступ, то все равно к этой папке доступа нет.
Доброго времени суток ! Возникла потребность ограничить видимость файлов в папках,которые открыты на доступе по локальной сети. Т.е., есть несколько компьютеров которые подключены по локальной сети .Есть мой ПК, на моем ПК открыто доступ к некоторым папкам в которых много разных под папок с файлами разных расширений. Можно ли как-то или какой-то программой ограничить доступ к определенным типам файлов в этих папках?. Т. е. чтобы во всех папках, которые открыты для общего доступа, отображались только файлы с расширением *.jpeg и *.pdf ?
Увы. Прописать какие-либо фильтры в системе NTFS нельзя. А пофайлово назначать права не надо. Как выход — разместить файлы с разными расширениями в подпапках и уже на них дать нужные разрешения.
Здравствуйте! Очень интересная статья!
Прошу помочь решить такую проблему:
– Как разграничить доступ учащимся к своим папкам на головном (учительском) компьютере, чтобы они не могли копировать, удалять и т.п. чужие файлы? Речь идет о работе в локальной сети в кабинете информатики. Есть ли способ кроме создания учетных записей для каждого ученика (200) и организации доступа по паролю?
Может есть возможность средствами Linux или Windows или отдельных приложений разрешения доступа конкретному компьютеру локальной сети в определенное время, например, компьютеру comp1 иметь доступ к папке «Иванов Иван» на учительском компьютере только в Понедельник с 11-00 до 11-45 и т.д.?
Спасибо!
Доброго времени.
Если у вас в вашем классе компьютеры с Windows и файловой системой NTFS, то проблем нет. Опишите мне немного инфраструктуру если можете.
А по поводу разрешения доступа не подскажу. Скорее всего софт такой есть, применялся в игровых клубах. Но я не в теме. Немного не та специфика.
Здравствуйте!
У меня в кабинете информатики 1+7 компьютеров с Windows XP SP3 и файловой системой NTFS. На головном компьютере обычная Windows XP SP3. Настроить доступ необходимо только в пределах этой локальной сети. Ученики сохраняют свои файлы (результаты выполнения практических работ)на головном (учительском) компьютере:
2018-2019 учебный год\4 четверть\6 класс\1 группа\Иванов Иван
Очень важно, чтобы ученик не мог открывать не свою папку, чтобы оттуда не позаимствовать чужую работу.
Спасибо!
На ученических компах разные ученики заходят под одной учетной записью?
Если можно, не поленитесь, почитайте в разделе «BELSHINA» статью «Что такое домен? Зачем он нужен?» http://podmoga.org/?page_id=888 Это нужно для понимания как и где хранятся пользователи, каким образом разграничивается доступ к сетевым ресурсам.
Если вопрос с пользователями решить, то ваша потребность — это «Пример 2. Предоставление персонального доступа пользователям к своим подпапкам в папке.» из моей статьи.
Но! Если заводить каждого ученика как пользователя, то их слишком много. Тем более придется заводить всех учеников 8 раз, так как без Active Directory такое не получится сделать. Если же у вас на ученических компах один пользователь, то добавить какой-то отличительный признак в NTFS нельзя, списки разрешений содержат только пользователей(в упрощенном представлении).
Если отвлечься от NTFS, то вашу задачу можно решить с помощью установки на головной комп FTP сервера. Но на нем все равно придется заводить всех учеников как пользователей и назначать права на папки FTP сервера.
А сети в пределах всей школы у вас нет? Чтобы не зря решать задачу с регистрацией всех учеников всех учебных классов.
Добрый день!
Имеем Windows Server 2016 Standart и Windows Server 2008 R2
Подскажите пожалуйста как сделать так, чтоб Пользователь при заходе в папку(или на расшару) видел только доступные ему подпапки, а имена не доступных ему подпапок не отображались в списке.
Огромное человеческое СПАСИБО.
Добрый!
Спасибо за вопрос.
Такая возможность есть, но только это не свойство NTFS а дополнительные костыли к ОС.
Называются эти костыли «Access-based Enumeration». При включении этого свойства пользователь будет видеть только те папки, на которые имеет разрешение хотя бы на чтение. Все остальные будут для него скрыты.
В 2008-ом сервере Access-based Enumeration включается в свойствах общего ресурса в оснастке «Диспетчер сервера»-«Управление общими ресурсами и хранилищами», выделяете нужную расшарку, нажимаете в правом окне «Свойства». На открывшейся закладке «Доступ» нажимаете на кнопку «Дополнительно» и ставите галочку «Включить перечисление на основе доступа».
Если делаете расшарку с помощью мастера, то это свойство настраивается в свойствах протокола SMB.
К сожалению 2016-го сервера у меня нет, но там практически тоже самое. В оснастке где управляются все шары вы можете включить это свойство.
Вообщем, тема актуальная. Буду писать отдельную статью про эту возможность.
Здравствуйте. Очень дельная статья. Я мучаюсь-изучаю бешусь из за вот этих «родительских разрешений»
С какой стати Виндовз 7 по умолчанию при создании папки самостоятельно ставит галочку вот в inherited permissions?
я один работаю на компьютере, детей нет…и каждый раз надо ковыряться удалять эту проклятую галочку. нельзя ли в регистре или еще как то изначально убрать этот родительский контроль. спасибо заранее.
Огромное спасибо!!!! Очень помогла статья
Спасибо! Было Полезно.
Алла, пожалуйста!
Здравствуйте! Если Вы, уважаемый Админ, всё ещё здесь, помогите, пожалуйста, разобраться в проблеме.
Есть несколько компьютеров с разными ОС, на одном из них (с Win7) есть шара. На этом компьютере заведены учетные записи всех пользователей. Все пользователи разбиты на две группы, для одной группы — полные права на шару, для другой — доступ только к некоторым подкаталогам. В настройках NTFS — явные запрещающие правила. Проблема в том, что для компьютеров с Win7 эти правила работают, а для компьютеров Win 8.1 и 10 — нет. Пользователи с Win8 и 10 (для которых запрет) заходят на шару как к себе домой и для них даже открыта возможность редактировать права на папку! Хотя у них нет никаких административных прав.
Приветствую, Ольга.
Не сочтите мой вопрос странным. Изначально от и до сами все настраивали?
Похоже на то, что могли «поиграть» с локальными политиками и вошедшие на комп с шарой являются админами.
По личному опыту с таким не сталкивался.
Вопрос очень объемный чтобы что-то спросить конкретное.
Здравствуйте. По поводу предыдущего вопроса. Поставила шару на компьютер с Win8 и всё заработало как надо. Проблема решена, но ясности не прибавилось.
А вообще спасибо за Ваш ресурс, другие темы тоже интересные.
Ольга, здравствуйте.
Попробую смоделировать вашу ситуацию на виртуалках. Заинтриговали.
В чем принципиальное отличие атрибута от дополнительного атрибута?
В детализации.
Добрый день.Подскажите пожалуйста существует ли какой либо механизм который может решить проблему такого плана? Я хочу передать файл одному пользователю, но я не хочу, чтобы у этого пользователя была возможность передавать этот файл третьим лицам. Выгрузка на гуглдиск с правом просмотра не устраивает. У человека должен быть этот файл на устройстве с правом печати.
Здравствуйте, Алексей.
Увы, не подскажу. Но судя по такой информации в привычном компьютерном окружении такое невозможно в принципе. https://kiwibyrd.org/2020/02/29/20h24/ Утверждающие обратное мягко говоря немного лукавят.
Познавательная статья. Но как я ни бьюсь = расшарить папки для доступа к медиафайлам в локалке никак не могу… Когда был 1 комп с Windows XP и 1 тюнер проблем небыло, теперь есть 2 компа 2 ноута 2 тюнера планшет =)) везде разные оси и ничего не получается приходиться носиться с флешками имея дома гигабитную сеть =(((
Буду весьма признателен за помощь…
Здравствуйте! Спасибо за статью! Если хочу выложить фото в интернет и не хочу, чтобы их кто-либо «скачал», сохранил себе на устройство, а они были бы только для просмотра, достаточно ли будет на ноутбуке с Windows сделать настройки «только чтение» и потом выложить в интернет? Спасибо.
Здравствуйте, Марина.
Кратко дело обстоит так:
1.Выкладывание в интернет и файловая система вашего ноутбука никак не связаны. Т.е. файл, в данном случае содержащий изображение, не является самостоятельным элементом. Это всего-лишь файл. Поэтому не важно какие настройки на вашем ноутбуке. Когда файл попадает куда-либо, он подчинятся тем правилам системы в которую попал. В данном случае правилам того сайта или сервиса куда вы его скопировали.
2.Даже если на сайте, облаке, одноклассниках, фэйсбуке и т.д. и т.п. есть возможность просмотра изображения, то технических средств предовратить скачивание не существует. Ограничением служит лишь квалификация скачивальщика. Все что вы видите на экране уже можно сохранить. Да, возможно сервис не даст скачать полный файл, но хотя бы миниатюру вы будете видеть, а значит и иметь возможность ее сохранить.
3.Если говорить исключительно про ноутбук и файловую систему NTFS, то комбинирую права можно сделать так что пользователь будет видеть список файлов в папке, но ни посмотреть ни скопировать не сможет.
Прошу прощения, скорее всего Автор счёл мой вопрос абсолютно неуместным? Если так то где мне поискать решение?.. А если нет то непонятно, на все вопросы стоят ответы в течении суток, а мой 10 дней провисел…
Приветствую, Руслан.
Прошу прощения что не ответил сразу. Давно думал сделать пост про то, как сделать маленькую домашнюю сеть из компов под windows. А тут ваш вопрос немного расширил тему. 🙂 Надеюсь завершить статью в ближайшее время.
Маленькое уточнение. Ваш тюнер под какой версией андроида?(если, конечно, андроид)
Благодарю за реакцию, у меня обычный тюнер, я даже не знаю чем он управляется… При запуске пишет «Spark» модель Amiko ALIEN SHD 8900… Вы считаете что это из-за тюнера? я полагаю что проблема в совместимости ОС, т.к. сами компьютеры друг друга тоже не видят.
Заранее спасибо за ответ!
Спасибо за ответ! Всего Вам доброго!
Добрый день!
Структура папок \\x.x.x.x\1\2\3\
А как сделать так, чтобы конкретному доменному пользователю «User_3» дать доступ в подподпапку «3» и к её файлам, но запретить доступ в папки 1 и 2?
Добрый.
Ваш случай это «Пример 2. Предоставление персонального доступа пользователям к своим подпапкам в папке.»
\\x.x.x.x\1\2\3\ скорее всего будет как:
\\x.x.x.x\<имя ресурса>\1\2\3
На ресурс в закладке «Доступ» всем все права(не на закладке «Безопасность»)
На ресурс в закладке «Безопасность» пользователю «User_3» доступ на чтение и !!! «Только к этой папке», это делается в расширенных настройках.
На папку «3» пользователю «User_3» дать полные права или права на запись.
Здравствуйте. Подскажите пожалуйста, как можно получить реальный доступ к изменению редактированию файлов в папке windowsapp. К самой папке доступ есть, однако с некоторыми файлами ничего сделать не могу. Я дал полный доступ пользователю,от которого сижу и пользователю «Все». Также в свойствах папки постарался убрать все ограничения (кроме особого доступа, т к недоступно). Сделать это пытаюсь для подключения Logitech Profiler к игре ForzaHorizon4.exe, чтобы настройки руля были задействованы в самой игре. Вот я, ради эксперимента, переместил файл ForzaHorizon4.exe и теперь не могу его закинуть обратно в папку с игрой,хотя в папку windowsapp удалось переместить. Пока что подозреваю, что дело в самой папке с игрой, а не в файлах, которые там находятся.
Ссылка на скриншот, в котором есть недоступные файлы (помечены желтым замком):
http://i.piccy.info/i9/8c957077747b3dbb41645fd2009cc5c0/1589016772/132380/1377371/1.png
Здравствуйте, Иван.
Скорее всего помимо, собственно, прав, ваши файлы могут быть открыты какими-нибудь запущенными программами или процессами.
Но, давайте пойдем вот каким путем:
1.Так как проводник ВСЕГДА запускается отимени пользователя, то рекомендую поставить себе Total Commander и запустить его от имени Администратора.
2.Изменить и проверить все права.
3.Если после изменения прав некоторые файлы нельзя удалить(переименовать, изменить), то вам нужно поискать программу, или процесс, который держит данные файлы. Скачайте старенькую бесплатную утилиту PrcView https://prcview.en.uptodown.com/windows в ней можно все увидеть.
Добрый день!
Возникла острая необходимость контролировать дату (можно и время) установки и снятия прав доступа к каталогам и файлам полязователям на Windows Server 2016 Standart. Как возможно включить аудит только для контроля изменений прав доступа ?
Приветствую, Игорь.
Думаю в течении дня я дам вам ответ на ваш вопрос. Не пропадайте.
Здравствуйте.
Подскажите, вы общий доступ с какими правами и пользователями ставите?
Делал как по инструкции, но у меня папка по вложенных папкам. Делал общий сетевой доступ до это папки в настройках. Но, то есть доступ, то пропадает, папку скрытую все равно видит. Сеанс сбрасывал, заходил под другим пользователей. Как где то кэшируются данные входа. Хотя сеанс удаляю на всякий случай.
Права тогда надо делать для простого пользователя, до самой вложенной папки?
OC Windows 10
Максим, если речь идет о настройке прав на закладке «Доступ», то там ставится полный доступ всем. А регулировка прав делается через настроку прав NTFS(закладка «Безопасность»).
Далее начните с самого начала. Домен у вас или компы в рабочей группе?
Компы в рабочей группе. Да про этот доступ. Удалось всё сделать на другом компе. Создал папку в корне.
Но потратил пол дня на поиск проблемы, но так и не понял почему на предыдущем не заработало.
Как было — на компьютере отключен доступ с парольной защитой. На компе расшаренны две папки на Всех. Одна из папок для всех стоит только на чтение. Все пользователи находятся по учеткой user. И легко заходят в данные папки. На этом компе я создал пользователя, пароль и группу для него, куда поместил. Создал папку и подпапки как здесь написали. На другом компе я в Диспетчере учетных данных создал пользователя с паролем и думал по нему будут заходить. Из созданной шары я убрал пользователей Все. И вот хоть убейся не хотела работа. Показывала якобы скрытую папку, то вообще пропадал доступ к шаре. На всякий случай отключал сеансы в управлении. Хотел оставить текущий безпарольный вход, но для других пользователей сделать отдельную папку с правами как здесь, на чтение и одну невидимую для тех у кого не прописал это пользователь, то есть Все остальные.
Понимаю, что это от нехватки знаний. Есть у вас статья по сетевому доступу? И как его можно комбинировать с файловым.
По сетевому доступу статьи еще нет. Мой план для компов без домена примерно такой:
1.Не изменяю параметры локальной политики, которая запрещает подключение к компьютеру пользователей без пароля. Т.е. запрет остается. Пользователи без пароля не подключаются.
2.Не включаю пользователя «Гость»
3.Создаю на всех компах пользователя с одним и тем же именем и одинаковым паролем. Помещаю созданного пользователя в группу «Администраторы»
4.На каждом компьютере в «Диспетчере учетных данных» прописываю остальные компы с указанием созданного пользователя и пароля.
5.Расшариваю нужные папки и на закладке «Доступ» даю пользователю «Все» полные права
В результате:
Все компы подключаются друг к другу абсолютно прозрачно, причем к любым ресурсам.
Добрый день, подскажите, возможно ли настроить права таким образом, чтобы можно было переименовывать файлы/некоторые папки, но нельзя было бы удалять? Win2003
Добрый день, ситуация такая, есть комп с вин10, на нем 2 учетные записи(Админ и Юзер) и он в домене.
Требуется учетной записи по имени Юзер, дать права на редактирования и копирование файлов в папке от имени админа без вводов паролей и т.д.. Папка не сетевая, не расшаренная.. Не могу понять как это работает
Алекс,
Дай права на изменение «пользователи» . Свойства папки зайди и во вкладке «БЕЗОПАСНОСТЬ» выбери пользователи/пользователи домена и выставить ему право на изменение, естественно все делать с учетки админа.
Алекс,
Дай права на изменение «пользователи» . Свойства папки зайди и во вкладке «БЕЗОПАСНОСТЬ» выбери пользователи/пользователи домена и выставить ему право на изменение, естественно все делать с учетки админа.
Здравствуйте. Есть сервер с расшареной папкой с полным доступом для всех. В папке программа, но кроме всего прочего там лежит исполняемый файл регистрации модулей. На рабочей станции пользователь не является админом. Чтоб пользователю с этой рабочей станции мог войти в программу нужно сначала запустить исполняемый файл регистрации модулей, но т.к. он не является админом, но спрашивает админский пароль. Подскажите пожалуйста как правильно сделать так, чтоб при запуске конкретно этого исполняемого файла пароль не спрашивался?
Добрый день. Думаю что это надо делать через групповые политики. Получается так, что у пользователя не хватает прав для регистрации модулей на локальном компе. Программист, который писал программу регистрации модулей сделал все правильно, выдал подсказку для ввода имени и пароля пользователя с админскими правами на компе. Грубо говоря, вам надо чтобы пользователь без прав запустил программу с правами администратора.
Мне кажется лучше всего искать решение через групповые политики и регистрировать модули на компе БЕЗ участия пользователя. Или вводить пароль администратора в выдаваемом окне, либо сделать пользователя администратором на компе, зарегистрировать модули и потом права забрать.
Спасибо за быстрый ответ. Не думаю что регистрация модулей под админом поможет. Т.к. чтоб войти в другую базу этой же программы нужна регистрация модулей от этой другой базы. Наверное действительно надо делать через групповые политики.
Вообще, вопрос работы пользователя без админских прав очень интересный. Для многих доморощенных программистов — неведомый!
Некоторые способы решения:
1. RunAs — увы только для Windows XP
2. GPO — на уровне политики пользователя
3. psexec — делаем практически все на компе пользователя
4. Вручную изменяем права на нужные папки и ветки реестра
Здравствуйте, в попытках удалить саму папку я как дебил не совсем понимая, походу удалил разрешения. И получается и вовсе отнял у себя права на изменение и тем более на удаление. Что я могу сделать в таком случае? Блин бешусь, как я могу вернуть права? Или же как нибудь да удалить ту папку, сносить всё из-за одной папки тоже не вариант.
Чтобы вернуть себе права на папку нужно сменить владельца на себя. Меняем владельца на закладке «Владелец». Обязательно после смены закрываем окно прав полностью и только потом открываем его заново и назначаем права.
Сохранить права на папку можно с помощью стандартной утилиты ICACLS.
Два вопроса очень актуальны и практичны. Стоит написать пару статей про это. Понимаю что в рамках ответа в комментариях не очень все понятно, предлагаю немного подождать.
Разобрался, спасибо большое. Решил вопрос с помощью учётки администратора.
А вот вопрос.
Как сделать чтобы в общую папку все могли добавлять и изменять файлы, но не могли удалять?
Как-то встречал решение, но не могу найти.
А вот ответ.
Сделайте лучше все-таки группу. Добавьте в нее всех, но не себя. Потом для данной группы установите два запретительных правила «Удаление подпапок и файлов» и «Удаление».
Если добавите абсолютно всех, то НИКТО не сможет удалить ничего из папки.
Пробовал ставить эти два запрета. Тогда никакой файл нельзя изменить. Разрешенич и запреты делал для — Все.
Приветствую.
Скорее всего вы пользуетесь чем-то вроде excel и word. Эти программы не смогут работать без прав удаления на папку. Они работают некорректно с точки зрения прав NTFS. Программы, которые могут ИЗМЕНЯТЬ содержимое файла отлично работают при таких разрешениях. Попробуйте, например, блокнот или Notepad++ В них при изменении файла файл не пересоздается заново а ИЗМЕНЯЕТСЯ. А excel сначала создает новый файл, потом удаляет старый.
Увы, нет счастья в Microsoft Office.
Приветствую. Вопрос знатокам, допустим есть папка на диске С , есть сервер IIS встроенный в windows 10, при активации данного сервера создается типа пользователь IUSRS, так вот даешь полный доступ данному пользователю к папке, но сервер все равно не может получить доступ к этой папке и ее файлам, даже если сделать этой папке полный доступ группе пользователей «Все» все равно нет доступа к этой папке службе этого сервера, и не только этого сервера, так же и у apach. В чем может быть причина когда папке делаешь полный доступ для всех и вся, а все равно какие либо сервисы или службы не имеют к ней доступа?
Доброго дня, Олег Олегович.
Помогите мне смоделировать вашу ситуацию. У меня после включения служб IIS в Windows 10 20H2 есть только группа IIS_IUSRS, а вот пользователя IUSRS нет.
Ситуация подобная вашей у меня была только однажды со службой HYPER-V, тогда все решилось сменой владельца и настройкой прав.
Может кто-нибудь подсказать, почему после закрытия доступа к одной подпапке закрылся доступ к остальным подпапкам и можно ли это исправить.
Наследование скорее всего. Если изменились права на подпапки.
Добрый день! Можно ли закрыть права на родительскую папку, но открыть все права на одну из дочерних папок со всем содержимым?
Здравствуйте. Помогите разобраться с доступом. Нужно в расшаренной папке Windows 2008 Server Standart пользователь добавлял файлы, папки и мог редактировать, но удалять мог только свои созданные файлы папки. Созданные папки и файлы других пользователей удалить не может. Заранее благодарен за помощь.
Сергей, приветствую.
Увы, я такого метода не знаю.
При назначении прав в NTFS я не знаю такой возможности по делению файлов на «свои» и «чужие». Может быть это можно как-то сделать через «Создатель владелец», но и этот путь я не вижу. Интересный вопрос. Надо подумать над ним. Обычно всегда все делили на уровне папок. А вот часть файлов…
Есть папка с сайтом. Шарю ее в сеть для коллеги-разработчика. Есть ли возможность распределить достут так чтобы он мог просматривать структуру папок и файлы в них, но не мог читать файлы не им созданные, а свои файлы создавать и изменять как угодно?
Нет!
Может такое получится для новых папок и файлов, но для существующих — нет!
Добрый день!
Имеем Windows Server 2016. Все пользователи работают с ним через RDP.
Возможно ли сделать невидимыми для них папки к которым у них нет прав доступа?
Шары не используются .
Добрый.
Увы, для локальных похоже никак.