Списки управления доступом
Рефераты >> Программирование и компьютеры >> Списки управления доступом

Для сохранности разрешений важно сохранить настолько много информации, насколько это возможно. И, хотя это выглядит очевидно, правильная реализация этого не всегда тривиальна. Существует ряд сложностей, которые делают эти операции склонными к порождению ошибок в реализации. Это случается, например, если файл-источник и файл-назначение расположены на различных файловых системах, только одна из которых поддерживает ACL. Для того, чтобы освободить программистов необходимости предусматривать огромное количество возможных ситуаций, текущая версия libacl включает функции копирования EAs и ACL между файлами [8].

Также было бы замечательно, если поддержка EA и ACL была бы включена в такие популярные утилиты, как scp и rsync. К несчастью, утилиты, которые переносят файлы между различными файловыми системами, имеют намного более сложные несовместимости. Только некоторые UNIX-подобные системы поддерживают библиотечные функции POSIX.1e ACL, а остальные имеют свои собственные интерфейсы. Даже хуже, семантика ACL сильно различается среди одних только UNIX систем, не говоря уже о не-UNIX системах. Семантика и системные интерфейсы для EAs, к несчастью, также сильно различаются среди различных операционных систем.

4. ACL в Microsoft Windows

4.1 Защита файлов и каталогов

4.1.1 DACL и SACL

Операционная система Windows NT 4.0 поддерживает файловые системы FAT и NTFS. Первая поддерживается такими известными операционными системами, как MS-DOS, Windows 3.x, Windows 95/98 и OS/2, вторая — только семейством Windows NT. У FAT и NTFS различные характеристики производительности, разный спектр предоставляемых возможностей и т.д. Основное отличие файловой системы NTFS от других (FAT, VFAT, HPFS) состоит в том, что только она одна удовлетворяет стандарту безопасности C2, в частности, NTFS обеспечивает защиту файлов и каталогов при локальном доступе.

Защиту ресурсов с использованием FAT можно организовать с помощью прав доступа: чтение, запись, полный доступ.

Таким образом, наиболее удачным с точки зрения безопасности будет создание дисковых разделы NTFS вместо FAT. Если все же необходимо использовать раздел FAT, то его надо сделать отдельным разделом для приложений MS-DOS и не размещать в нем системные файлы Windows NT.

Поскольку файлы и каталоги в Windows NT являются объектами, контроль безопасности осуществляется на объектном уровне. Дескриптор безопасности любого объекта в разделе NTFS содержит два списка управления доступом (ACL) — дискреционный (DACL) и системный (SACL).

В операционной системе Windows NT управление доступом к файлам и каталогам NTFS возлагается не на администратора, а на владельца ресурса и контролируется системой безопасности с помощью маски доступа (access mask), содержащейся в ACE соответствующего ACL.

Маска доступа включает стандартные (Synchronize, Write_Owner, Write_Dac, Read_Control, Delete), специфические (Read(Write)_Data, Append_Data, Read(Write)_Attributes, Read(Write)_ExtendedAttributes, Execute) и родовые (Generic_Read(Write), Generic_Execute) права доступа. Все эти права входят в дискреционный список контроля доступа (DACL). Вдобавок маска доступа содержит бит, который соответствует праву Access_System_Security. Это право контролирует доступ к системному списку контроля доступа (SACL).

В списке DACL определяется, каким пользователям и группам разрешен или запрещен доступ к данному ресурсу. Именно этим списком может управлять владелец объекта.

Список SACL задает определенный владельцем тип доступа, что заставляет систему генерировать записи проверки в системном протоколе событий. Только системный администратор управляет этим списком.

4.1.2 Права и разрешения

На самом деле для администрирования используются не отдельные права доступа, а разрешения NTFS. Разрешения подразделяются на:

  • индивидуальные — набор прав, позволяющий предоставлять пользователю доступ того или иного типа (таблица 8.1);
  • стандартные — наборы индивидуальных разрешений для выполнения над файлами или каталогами действий определенного уровня (таблица 8.2);
  • специальные — комбинация индивидуальных разрешений, не совпадающие ни с одним стандартным набором (таблица 8.3).

Таблица 8.1 – Индивидуальные разрешения в NTFS

Разрешения

Права доступа

Операция над

файлами

папками

Read

Read_Control

Read_Data

Read_Atributes

Read_EA

Synchronize

Операции чтения файла, просмотр атрибутов, прав доступа, а также имени владельца

Операции отображения содержимого папки, просмотра атрибутов, прав доступа, а также имени ее владельца

Write

Read_Control

Write_Data

Append_Data

Write_Atributes

Write_EA

Synchronize

Операции изменения файла и его атрибутов, просмотра прав доступа и имени владельца

Операции создания подпапок и файлов, изменения атрибутов файлов, просмотра прав доступа и имени владельца

Execute

Read_Control

Read_Atributes

Synchronize

Execute

Операции запуска программы, просмотр атрибутов, прав доступа, а также имени владельца

Операции просмотра атрибутов и прав доступа, а также имени владельца и изменения подпапок

Delete

Delete

Операции удаления файла

Операции удаления папок

Change permission

Write_Dac

Операции изменения прав доступа

Операции изменения прав доступа

Take ownership

Write_Owner

Операции изменения владельца файла

Операции изменения владельца папки

Таблица 8.2 - Стандартные разрешения в NTFS

Разрешение

Индивидуальные разрешения

Операции

No Access

Нет

Запрещение доступа к файлу. Пользователь, для которого оно установлено, не может получить доступ к файлу даже в том случае, если он входит в группу пользователей, имеющих права доступа к данному документу.

Read

Read, Execute

Предоставление пользователю права на просмотр файлов и запуск приложений, хранящихся в папке.

Change

Read, Write, Execute, Delete

Разрешение (дополнительно к правам, предоставляемым правом Read) на создание и удаление файлов и папок, модификацию содержимого файлов.

Full Control

Все

Разрешение (дополнительно к правам, предоставляемым правом Change) на изменение прав доступа и вступление во владение файлами и папками.


Страница: