Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
К_Глава 10_Безопасность.doc
Скачиваний:
98
Добавлен:
19.05.2015
Размер:
2.17 Mб
Скачать

5.3 Авторизация доступа

Формы прав доступа

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

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

  • избирательный доступ;

  • мандатный доступ.

Избирательные права доступа реализуются в операционных системах универ­сального назначения. В наиболее распространенном варианте такого подхода определенные операции над определенным ресурсом разрешаются или запреща­ются пользователям или группам пользователей, явно указанным своими иден­тификаторами. Например, пользователю, имеющему идентификатор User_7, может быть разрешено выполнять операции чтения и записи по отношению к файлу File1. Модификацией этого способа является использование для идентификации пользователей их должностей, или факта их принадлежности к персоналу того или иного производственного подразделения, или еще каких-либо других пози­ционирующих характеристик. Примером такого правила может служить следую­щее: файл бухгалтерской отчетности BUCH могут читать работники бухгалте­рии и руководитель предприятия.

Мандатный подход к определению прав доступа заключается в том, что вся ин­формация делится на уровни в зависимости от степени секретности, а все поль­зователи сети также делятся на группы, образующие иерархию в соответствии с уровнем допуска к этой информации. Такой подход используется в известном делении информации на информацию для служебного пользования, «секретно», «совершенно секретно». При этом пользователи этой информации в зависимо­сти от определенного для них статуса получают различные формы допуска: пер­вую, вторую или третью. В отличие от систем с избирательными правами доступа, в системах с мандатным подходом пользователи в принципе не имеют возмож­ности изменить уровень доступности информации. Например, пользователь более высокого уровня не может разрешить читать данные из своего файла пользо­вателю, относящемуся к более низкому уровню. Отсюда видно, что мандатный подход является более строгим, он в корне пресекает всякий волюнтаризм со стороны пользователя. Именно поэтому он часто используется в системах воен­ного назначения.

Процедуры авторизации реализуются программными средствами, которые могут быть встроены в операционную систему или в приложение, а также могут по­ставляться в виде отдельных программных продуктов.

В крупных сетях часто применяется комбинированный подход предоставления пользователю прав доступа к ресурсам сети: сервер удаленного доступа ограничивает доступ пользователя к подсетям или серверам корпоративной сети, то есть к укрупненным элементам сети, а каждый отдельный сервер сети сам по себе ограничивает доступ пользователя к своим внутренним ресурсам: разделяемым каталогам, принтерам или приложениям. Сервер удаленного доступа предоставляет доступ на основании имеющегося у него списка прав доступа пользователя ACL (Access Control List), а каждый отдельный сервер сети предоставляет доступ к своим ресурсам на основании хранящегося у него списка прав доступа, например, ACL файловой системы.

Механизмы авторизации

Механизмы авторизации в различных ОС и прикладных системах различны, но их трудно назвать разнообразными. Два основных подхода к авторизации — это ACL (Access Control List, список управления доступом) или список контроля доступа и полномочия (capability).

Полномочие представляет собой абстрактный объект, наличие которого в контексте доступа задачи позволяет выполнять ту или иную операцию над защищаемым объектом или классом объектов, а отсутствие — соответственно, не позволяет. При реализации такой системы разработчик должен гаран­тировать, что пользователь не сможет самостоятельно сформировать полномочие. Например, полномочие может быть реализовано в виде ключа шифрования или электронной подписи. Невозможность формирования таких полномо­чий обеспечивается непомерными вычислительными затратами, которые нужны для подбора ключа.

Список контроля доступа ACL ассоциируется с объектом или группой объектов и представляет собой таблицу, строки которой соответствуют учетным записям пользователей, а столбцы – отдельным операциям, которые можно осуществить нал объектом. Перед выполнением операции система ищет идентификатор пользователя в таблице и проверяет, указана ли выполняемая операция в списке его прав. В общем случае совокупность всех ACL в системе представляет собой трехмерную матрицу, строки которой соответствуют пользователям, столбцы - операциям над объектами, а слои — самим объектам. С ростом количества объектов и пользователей в системе объем этой матрицы быстро растет, поэтому, как уже говорилось, разработчики реальных систем контроля доступа предпринимают те или иные меры для более компактного представления матрицы. Есть три основных подхода, используемых для сокращения АСL.

  • Использование прав по умолчанию

  • Группирование пользователей и/или объектов

  • Ограничение комбинаций прав, которыми пользователи и группы могут реально обладать.

Права по умолчанию дают наибольший эффект тогда, когда большая часть прав большинства пользователей на большинство объектов одинакова. Чаше всего рекомендуют при установлении прав исходить из принципа “запрещено все, что не разрешено [явным образом]” — при последовательном его применении должно получаться, что большинство пользователей не имеет прав на подавляющую часть объектов в системе. Исходя из этого, в большинстве систем пользователи, явно или неявно не перечисленные в ACL объекта; не имеют на объект никаких прав. Многие системы также предоставляют специальную запись в АСL, соответствующую пользователям, которые не перечислены явно.

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

Назначение человека на должность сопровождается включением его в соответствующую группу, а снятие — исключением из нее. Без использования групп эти операции потребовали бы явной модификации АСL всех объектов, права на которые изменяются, что во многих случаях совершенно нерационально.

Иерархическая структура особенно удобна для больших организаций, потому что она не только обеспечивает "естественную" структуру вложенных групп, но и облегчает просмотр учетных записей и управление ими.

При активном использовании групп пользователей может возникнуть специфическая проблема: пользователь может состоять в нескольких группах и иметь собственную запись в АСL и, таким образом, получать права на объект несколькими путями. Чаще всего права, полученные разными путями, просто складываются, в некоторых случаях ранжируются, и пользователь получает список прав, соответствующий той записи в ACL, которая содержит наивысшее право. Очень часто некоторые записи в ACL обладают особым статусом, записанные в них права оказываются "сильнее" всех прав, которые пользователь получает как член группы. Запись с правами по умолчанию часто рассматривается как более "слабая", чем явные и групповые записи, и при наличии у пользователя прав, полученных из записей по умолчанию, вообще игнорируется. Каждое из этих правил по отдельности обычно преследует цель облегчить формирование списков, предоставляющих требуемые комбинации прав.

Группирование объектов используется несколько реже, но также является мощным средством управления правами и сокращения общего объема АСL системе. Для файловых систем естественным средством группирования является иерархия каталогов.

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