Разрешения NTFS в Windows 2000/XP
В семействе операционных систем Windows 2000 и Windows XP были существенно переработаны и сама система управления файлами, получившая название NTFS5, и интерфейс, посредством которого можно управлять разрешениями NTFS. Вместо описанных выше индивидуальных, стандартных и специальных разрешений Windows NT 4.0 теперь в пользовательском интерфейсе имеется перечень из 13 разрешений, которые можно (по аналогии с предыдущей системой) назвать индивидуальными, хотя Microsoft более этот термин не употребляет1 и называет их специальными разрешениями. Опишем кратко эти индивидуальные (специальные) разрешения.
- Traverse Folder/Execute File (Обзор папок/Выполнение файлов):
■ Traverse Folder — разрешает (или запрещает) перемещение по папке в поис
ках файлов или вложенных папок, даже если пользователь не обладает раз
решением на доступ к просматриваемой папке (это разрешение применимо
только к папкам и только если группа или пользователь не обладает правом
перекрестной проверки, а по умолчанию группа Everyone наделена правом
перекрестной проверки);
■ Execute File — разрешает (или запрещает) запуск программ (применимо толь
ко к файлам).
- List Folder/Read Data (Содержание папки/Чтение данных):
■ List Folder — разрешает (или запрещает) просмотр имен файлов и вложен
ных папок внутри папки (применимо только к папкам);
■ Read Data — разрешает (или запрещает) чтение данных из файлов (примени
мо только к файлам).
- Read Attributes (Чтение атрибутов). Разрешает (или запрещает) просмотр атрибутов файла или папки, таких как «только для чтения» или «скрытый». Атрибуты определяются файловой системой NTFS.
- Read Extended Attributes (Чтение дополнительных атрибутов). Разрешает (или запрещает) просмотр дополнительных атрибутов файла или папки. Дополнительные атрибуты определяются программами и зависят от них. Атрибуты сжатия файлов NTFS и шифрования относятся к дополнительным.
1 В целях преемственности терминологии и удобства изложения материала мы тем не менее будем использовать этот термин.
204___________________________________________ Глава 6. Файловые системы
- Create Files/Write Data (Создание файлов/Запись данных):
■ Create Files — разрешает (или запрещает) создание файлов в папке (приме
нимо только к папкам);
■ Write Data — разрешает (или запрещает) внесение изменений в файл и заме
ну имеющегося содержимого (применимо только к файлам).
- Create Folders/Append Data (Создание папок/Дозапись данных):
■ Create Folders — разрешает (или запрещает) создание папок в папке (приме
нимо только к папкам);
■ Append Data — разрешает (или запрещает) внесение изменений в конец фай
ла, но не изменение, удаление и замену имеющихся данных (применимо толь
ко к файлам).
- Write Attributes (Запись атрибутов). Разрешает (или запрещает) смену атрибутов файла или папки, таких как «только для чтения» или «скрытый». Атрибуты определяются файловой системой NTFS.
- Write Extended Attributes (Запись дополнительных атрибутов). Разрешает (или запрещает) смену дополнительных атрибутов файла или папки. Дополнительные атрибуты определяются программами и зависят от них.
- Delete Subfolders and Files (Удаление подпапок и файлов). Разрешает (или запрещает) удаление вложенных папок и файлов даже при отсутствии разрешения Delete.
- Delete (Удаление). Разрешает (или запрещает) удаление файла или папки. При отсутствии этого разрешения требуемый объект (файл или папку) все же можно удалить при наличии разрешения Delete Subfolders and Files для родительской папки.
- Read Permissions (Чтение разрешений). Разрешает или запрещает чтение разрешений на доступ к файлу или папке, таких как Full Control, Read и Write.
- Change Permissions (Смена разрешений). Разрешает или запрещает чтение разрешений на доступ к файлу или папке, таких как Full Control, Read и Write.
- Take Ownership (Смена владельца). Разрешает или запрещает возможность стать владельцем файла или папки. Владелец файла или папки всегда может изменить разрешения на доступ к ним независимо от любых разрешений, защищающих файл или папку.
Из перечисленных выше «индивидуальных» разрешений формируются так называемые основные разрешения. Они являются аналогом стандартных разрешений в NTFS4. Принципиальное отличие между стандартными и индивидуальными разрешениями в NTFS4 и NTFS5 заключается в том, что теперь имеется 6 основных разрешений на каталог и 5 основных разрешений на файл. Причем каждое из этих разрешений может быть в явном виде разрешено или запрещено. То есть каждое основное разрешение пользователь может разрешить (allow) или запретить (deny). Если разрешение не отмечено как разрешенное или запрещенное, то считается, что оно не запрещено. Таким образом, конкретное разрешение может быть задано тремя способами: разрешено (в явном виде), не запрещено, запрещено. Напомним, что итоговые разрешения для конкретного пользователя вычисляются как сумма всех
Файловая система NTFS______________________________________________ 205
разрешений по записям АСЕ, образующим список DACL Например, если в списке DACL у пользователя имеется разрешение на запись, а членам группы, в которую он входит, присвоено разрешение на чтение, то этот пользователь будет иметь итоговое разрешение и на чтение, и на запись.
Запрет имеет большую силу, нежели явное разрешение. Другими словами, если встречается АСЕ с явным запретом на некоторое разрешение для конкретного пользователя или группы, в которую он входит, то это разрешение всегда будет запрещено для данного пользователя и его группы, даже если в остальных записях данное разрешение будет помечено как разрешенное.
Если вас не устраивают основные разрешения, то можно сформировать специальные разрешения как конкретную комбинацию «индивидуальных» разрешений. Для этого необходимо щелкнуть на кнопке Advanced (Дополнительно). При этом открывается окно управления разрешениями, в котором они перечислены. В этом окне есть кнопки Add (Добавить), Change (Изменить) и Delete (удалить), которые позволяют добавлять, изменять или удалять выбранные разрешения.
Если в окне свойств безопасности объекта флажки затенены, значит, разрешения на доступ к данному объекту унаследованы от родительского объекта. Существуют три способа изменения унаследованных разрешений.
- Внесите в разрешения на доступ к родительскому объекту изменения, которые будут унаследованы данным объектом.
- Явно разрешите (если оно было помечено как запрещенное) или запретите (если оно было помечено как разрешенное) данное унаследованное разрешение.
- Снимите флажок Inherit from parent the permission entries that apply to child objects. Include these with entries explicity defined here (Переносить наследуемые от родительского объекта разрешения на этот объект). В появившемся диалоговом окне будет предложено выбрать одну из трех альтернатив: скопировать разрешения родительского объекта (к ним можно будет впоследствии добавить новые), удалить разрешения и сформировать их заново или ничего не трогать и вернуться к исходному состоянию разрешений. После снятия флажка можно изменять список разрешений: изменять сами разрешения, удалять пользователей или группы из списка разрешений, поскольку данный объект больше не будет наследовать разрешения на доступ к родительскому объекту.
Разрешения на доступ к файловым объектам должны быть максимально строгими. Это снизит вероятность случайного удаления или изменения важной информации. Рекомендуется всегда, когда возможно, назначать разрешения для групп, а не для отдельных пользователей. Другими словами, следует создавать группы безопасности, исходя из требований уровня доступа к файлам, и именно этим группам предоставлять необходимые разрешения. Отдельным пользователям следует предоставлять разрешения на доступ только в исключительных случаях, когда это действительно требуется.
При назначении разрешений для папок, в которых расположены приложения или данные справочного характера, то есть практически неизменяемые при рядовой работе пользователей, следует заменить стандартное разрешение Full Contorol (пол-
206___________________________________________ Глава 6. Файловые системы
ный доступ) для группы Everyone (все) на разрешение Read & Execute (чтение и выполнение). Это позволит предотвратить случайное удаление файлов или заражение их вирусами. Тем пользователям, которые ответственны за обновление хранящихся в папке файлов, можно дать разрешения Change (изменение), Read & Execute (чтение и выполнение), Read (чтение) и Write (запись). Имея их, они смогут выполнять порученную им работу, но не смогут изменять разрешения. Право на изменение разрешений следует оставлять за членами группы Администраторы.
В качестве примера управления разрешениями NTFS при работе в Windows 2000/ ХР рассмотрим следующую несложную задачу. Пусть требуется создать папку Контрольные работы, в которой члены группы Студенты должны иметь возможность размещать свои файлы и при необходимости даже исправлять их, но чтобы они не имели возможности читать чужие контрольные работы и удалять файлы. Для группы Преподаватели должно быть разрешение на чтение этих файлов. Администраторы должны иметь разрешение Full Control (Полный доступ), чтобы иметь возможность управлять разрешениями и удалять старые ненужные файлы и папки. Последовательность действий, которые нужно выполнить для решения этой задачи, может быть следующей.
1. Создаем папку Контрольные работы. Переходим на вкладку Security (Безопасность)
в окне Properties (Свойства папки).
2. Снимаем в левом нижнем углу этого окна флажок Inherit from parent the permission
entries that apply to child objects (Переносить наследуемые от родительского объекта
разрешения на этот объект) и копируем разрешения родительского каталога.
3. Щелкаем на кнопке Add (Добавить), в открывшемся окне находим группу Адми
нистраторы, щелкаем на кнопке Add (Добавить), после чего щелкаем на кнопке 0К
в окне добавления. В окне Security (Безопасность) для каждой повой учетной
записи по умолчанию устанавливается разрешение Read & Execute (Чтение и вы
полнение), которое предполагает наличие разрешений List (Список содержимого
папки) и Read (Чтение).
4. Устанавливаем для группы Администраторы разрешение Full Control (Полный дос
туп), для чего достаточно установить соответствующий флажок. Флажки для
остальных разрешений установятся автоматически.
5. Добавляем группу Преподаватели. В окне безопасности для них автоматически
устанавливается разрешение Read & Execute (Чтение и выполнение), что нас впол
не устраивает.
6. Добавляем группу Студенты. В окне безопасности снимаем флажки для разре
шений Read & Execute (Чтение и выполнение) и Read (Чтение), оставив разрешение
на получение списка содержимого папки.
7. Поскольку члены группы Студенты должны иметь возможность поместить в пап
ку Контрольные работы свои файлы, в окне безопасности устанавливаем флажок
для разрешения Write (Запись).
8. Чтобы студенты могли читать и исправлять только свои файлы, добавляем спе
циальную учетную запись СОЗДАТЕЛЬ-ВЛАДЕЛЕЦ. Поля с разрешениями для нее
окажутся пустыми, однако это не должно нас смущать. Если щелкнуть на кноп-
Контрольные вопросы и задачи_________________________________________ 207
ке Advanced (Дополнительно), то в открывшемся окне Advanced security settings for Контрольные работы (Параметры управления доступом для Контрольные работы) мы увидим, что для учетной записи СОЗДАТЕЛЬ-ВЛАДЕЛЕЦ имеется разрешение Full Control (Полный доступ).
9. Для того чтобы запретить студентам удалять файлы (и папки) в папке Контрольные работы, необходимо в окне Advanced security settings for Контрольные работы (Параметры управления доступом для Контрольные работы) выделить группу Студенты. Далее, щелкнув на кнопке Edit (Показать/Изменить), в открывшемся окне специальных разрешений установить флажок в столбце Deny (Запретить) для разрешений, связанных с удалением.
По умолчанию выставленные нами разрешения будут действовать для этой папки, ее вложенных папок и файлов. Если бы нас не устраивало такое положение вещей, то, щелкнув на кнопке Edit (Показать/Изменить), в открывшемся окне Permission Entry for Контрольные работы (Элемент разрешения для Контрольные работы) можно было бы с помощью переключателей Apply onto (Применять) указать, к каким объектам должны относиться установленные разрешения.
В качестве дополнительной рекомендации можно посоветовать при просмотре существующих разрешений NTFS на панки не закрывать окно безопасности щелчком на кнопке ОК и не щелкать без необходимости на кнопке Apply (Применить), поскольку в этом случае с достаточно большой вероятностью будут изменены существующие разрешения на файлы и вложенные папки. После просмотра разрешений, если ничего не нужно менять, следует щелкнуть на кнопке Cancel (Отмена).
Контрольные вопросы и задачи Вопросы для проверки
1. Что такое «файловая система»? Что дает использование той или иной файло
вой системы? Какие файловые системы применяются на персональных компь
ютерах?
2. Объясните общие принципы устройства файловой системы FAT. Что представ
ляет собой таблица FAT? Что такое кластер, от чего зависит его размер?
3. Сравните файловые системы FAT 16 и FAT32. В чем их достоинства и недо
статки?
4. Изложите основные принципы работы системы HPFS. За счет чего в файловой
системе HPFS обеспечена высокая производительность?
5. Что означает протоколирование файловых операций? Что оно дает?
6. Перечислите основные возможности файловой системы NTFS. Объясните по
нятие потока данных в NTFS.
7. Расскажите о правилах, которые определяют состояние разрешений на доступ
при перемещении и копировании файловых объектов на томах с файловой си
стемой NTFS.
208 Глава 6. Файловые системы
8. Что такое стандартные, индивидуальные и специальные разрешения на дос
туп? Перечислите их и постройте таблицы соответствия стандартных и инди
видуальных разрешений для NTFS4.
9. Постройте таблицы соответствия стандартных и индивидуальных разрешений
для NTFS5. Не забудьте, что индивидуальные разрешения в Windows 2000/XP
стали называть специальными.
Задания
1. Используя персональный компьютер с установленной на нем ОС Windows NT
или Windows 2000/XP, проверьте правила, которые определяют состояние раз
решений доступа при перемещении или копировании объектов при использо
вании NTFS. Расскажите о полученных результатах.
2. Создайте папку с двумя программами (для простоты можно взять Блокнот
и Калькулятор) и обеспечьте, чтобы можно было запускать эти программы, но
нельзя было бы их скопировать, переместить, удалить.
3. Создайте папку Examen, в которую пользователи — члены группы Students — мог
ли бы записать результаты своей работы, но не смогли бы прочитать чужую
работу и, соответственно, исправить ошибки в своей.