Управление доступом включает в себя управление защищенными ресурсами с помощью программ setuid и setgid, а также разметку печатных копий. Операционная система поддерживает несколько типов информационных ресурсов, или объектов. С помощью этих объектов процессы могут хранить и передавать информацию.
Основными типами объектов являются:
С каждым объектом связан владелец, группа и режим. Режим определяет права доступа к объекту для владельца, членов группы и всех остальных пользователей.
Ниже перечислены атрибуты управления прямым доступом для различных типов
объектов:
Дополнительная информация о списках управления доступом приведена в разделе "Списки управления доступом" книги Руководство пользователя AIX 5L версии 5.1 - Операционная система и устройства.
Схема с разрешающим битом в большинстве случаев обеспечивает достаточно эффективное управление доступом к ресурсам. Для более строгого управления доступом служат программы setuid и setgid.
Как правило, программы выполняются с правами доступа пользователя и группы, соответствующими вызвавшему их пользователю. Владелец программы может связать с ней права доступа вызвавшего пользователя, установив в поле прав доступа бит setuid или setgid. Когда процесс вызывает такую программу, он получает права доступа ее владельца. Программа с установленным битом setuid при выполнении получает права доступа владельца, а программа с установленным битом setgid - права доступа группы, причем можно одновременно установить оба бита.
Несмотря на то, что процессу предоставляются дополнительные права доступа, эти права контролируются выполняемой программой. Таким образом, установка битов setuid и setgid позволяет предоставлять права доступа косвенным образом. Программы играют роль защищенных подсистем, защищая таки образом права пользователей.
Применение таких программ повышает эффективность защиты, но если программа недостаточно надежна, то ее использование может привести к потере данных. В частности, программа не должна передавать управление пользователю, пока ей предоставлены права доступа владельца, так как в этом случае пользователю будут предоставлены все права доступа владельца этой программы.
Примечание: В целях обеспечения защиты система не поддерживает вызовы setuid и setgid из сценариев оболочки.
Операционная система предоставляет системным администраторам особые права доступа. Системные права доступа зависят от ИД пользователя и группы. Пользователи, для которых действительный ИД пользователя или группы равен 0, считаются привилегированными.
Процессы, для которых ИД пользователя равен 0, называются процессами пользователя root. Эти процессы могут выполнять следующие операции:
Управление системой можно осуществлять с помощью привилегий двух типов - команды su и программы setuid-root. Команда su позволяет всем программам, которые вы вызываете, выполняться в качестве процессов пользователя root. Таким образом, su предоставляет гибкий, но не самый безопасный способ управления системой.
Программа setuid-root - это программа, владельцем которой является пользователь root и для которой установлен бит setuid. Программа setuid-root предоставляет обычным процессам возможность выполнять административные функции, не нарушая защиту: права доступа предоставляются программе, а не непосредственно пользователю.
В некоторых случаях сложно реализовать все необходимые возможности только в программах setuid-root, но такой подход обеспечивает наилучшую защиту системы.