Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
У. Столлингс ГЛАВА 15 Безопасность.doc
Скачиваний:
66
Добавлен:
11.05.2015
Размер:
795.14 Кб
Скачать

Контроль доступа, ориентированный на пользователя

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

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

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

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

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

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

Контроль доступа, ориентированный на данные

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

Система управления файлами или базой данных основывается на общей модели под названием матрица доступа (access matrix) (рис. 15.4,а, основой для которого послужил рисунок из [SAND94]). В эту модель входят такие основные элементы.

  • Субъект. Элемент, способный осуществлять доступ к объектам. Вообще го­воря, понятие "субъект" приравнивается к понятию "процесс". Фактически любой пользователь или приложение получает доступ к объекту с помощью представляющего его процесса.

  • Объект. Все то, доступ к чему контролируется. Примерами могут быть фай­лы, части файлов, программы и сегменты памяти.

  • Право доступа. Способ, с помощью которого субъект осуществляет доступ к объекту. В качестве примеров можно привести чтение, запись и выполнение.

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

На практике матрица доступа применяется редко; обычно при реализации она раскладывается одним из двух способов. Эту матрицу можно разложить по столбцам, в результате чего получаются списки контроля доступа (access control lists) (рис. 15.4,б). Таким образом, каждому объекту соответствует список контроля доступа, в котором перечислены пользователи, а также указаны их права доступа. Список контроля доступа может содержать элемент, который задается по умолчанию (например, является общедоступным). Это позволяет пользовате­лям, для которых специальные права явно не указаны, предоставлять права по умолчанию. Элементами списка могут быть как отдельные пользователи, так и группы пользователей.

В результате разложения по строкам получаются мандаты возможностей (capability tickets) (рис. 15.4,в). В мандате возможностей указаны объекты и операции, санкционированные для данного пользователя. Каждый пользователь обладает несколькими мандатами и может иметь возможность передавать или предоставлять их другим. Поскольку мандаты могут быть рассеяны по системе, они являются большей проблемой для безопасности, чем списки контроля досту­па. Эти мандаты нужно хранить в области памяти, недоступной пользователям.

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