Избирательное управление доступом

Избирательное управление доступом (англ. discretionary access control, DAC) — тип управления доступом, определённый в Критериях оценки доверенных компьютерных систем (англ. Trusted Computer System Evaluation Criteria, TCSEC) как способ ограничения доступа к объектам на основе принадлежности субъектов или групп, к которым они принадлежат[1]. Контроль носит дискреционный (избирательный) характер в том смысле, что субъект, обладающий определёнными правами доступа, способен передать это право (возможно, косвенно) любому другому субъекту (если только это не ограничено обязательным управлением доступом).

Избирательное управление доступом обычно рассматривается в противопоставление обязательному управлению доступом. Иногда система в целом называется системой «избирательного» или «чисто избирательного» управления доступом, если в ней отсутствует обязательное управление доступом. С другой стороны, существуют системы, реализующие и MAC, и DAC одновременно: при этом DAC относится к одной категории элементов управления доступом, которые могут быть переданы между субъектами, тогда как MAC накладывает ограничения на первую категорию.

Реализация

На практике значение термина избирательного управления доступом не столь однозначно, как определено в стандарте TCSEC, поскольку определение TCSEC не предписывает конкретных способов реализации. Существует по меньшей мере две реализации: с использованием владельца объекта (распространённый вариант) и с использованием возможностей (capabilities)[2].

С владельцем

Термин DAC часто используют в контекстах, где предполагается, что каждый объект имеет владельца, который управляет правами доступа к объекту, что характерно для многих систем, реализующих DAC на основе концепции владельца. Однако определение TCSEC не упоминает о владельцах, поэтому с технической точки зрения система управления доступом не обязана иметь понятие собственности для соответствия определению TCSEC.

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

С использованием возможностей

Другой пример — безопасность на основе возможностей (capability-based security): такие системы иногда описывают как предоставляющие избирательные средства управления, поскольку они позволяют субъектам передавать свои права другим субъектам, хотя в основе security на возможностях не лежит ограничение по идентичности субъекта. Как правило, такие системы не позволяют передавать права абсолютно любому субъекту: субъект, желающий передать право, должен иметь доступ к принимающему субъекту, причём доступ обычно ограничивается кругом субъектов, соответствующим принципу наименьших привилегий.

Примечания

Литература