ОРГАНИЗАЦИЯ КОНТРОЛЯ ДОСТУПА В ОС UNIX

Владельцы файлов

Файлы в UNIX имеют двух владельцев: пользователя (user owner) и груп­пу (group owner). Группой называется определенный список пользователей системы. Пользователь системы может быть членом нескольких групп, одна из которых является первичной (primary), ос­тальные — дополнительными (supplementary).

Важной особенностью является то, что владелец-пользователь может не являться членом группы, владеющей файлом. Это дает гибкость в организации доступа к файлам. Совместное пользование файлами можно организовать практически для любого состава пользователей, создав соответствующую группу и установив для нее права на требуемые файлы. При этом для того чтобы некий пользователь получил доступ к этим файлам, достаточно включить его в группу, и наоборот - исключение из группы автоматически изменяет для пользователя права доступа к файлам.

Для определения владельца файла достаточно посмотреть подробный листинг команды ls –l. Третья и четвертая колонки содержат имена владельца-пользователя и владельца-группы соответственно:

1 2 3 4 5 6 7 8

-rw-r—r-- 1 andy group 235520 Dec 22 19:13 p1.txt

-rw-rwr-- 1 andy student 3450 Apr 1 12:00 joke

Владельцем–пользователем вновь созданного файла является пользователь, который создал файл. Порядок назначения владельца-группы зависит от версии UNIX. Например, в SCO UNIX владельцем-группой является первичная группа пользователя, создавшего файл, а в Digital UNIX владелец-группа наследуется от владельца группы - каталога, в котором создается файл.

Владение файлом определяет тот набор операций, который пользователь может совершить с файлом. Часть из них, такие как изменение прав доступа или владельца файла (табл. 17.1), может осуществлять только владелец (или суперпользователь), другие операции, такие как чтение, запись и запуск на выполнение (для исполняемых файлов) дополнительно контролируются правами доступа.

 

 

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

Операция Команда Имеет право выполнить
В системе BSD В системе SVR4
Изменение владельца - пользователя chown суперпользователь Владелец файла
Изменение владельца - группы chgr суперпользователь Владелец файла только для группы, к которой сам принадлежит