В. Столлингс - Операционные системы (1114679), страница 146
Текст из файла (страница 146)
П и этом подходе каждый процесс работает отдельно от других ° Изоляция. Ри э не используя совместно с ними никаких ресурсов процессов, не с ы есное п оясь инФормацие . ажды й. К ый процесс имеет свое собственное адр Р странство, свои Файлы и другие объекты. его отсутствие. Владелец объекта .Ф сегмента памяти) объявляет его откр ытым либо за- ° Полное разделение или полное его о ут ~например, Фаила или крытым. В первом случае дос и туп к объекту может получить любой процесс; во втором — доступ к этому о ъек бъекту предоставляется только его владельцу. м ос в. Операционная система ° Совместное использование с ограничением до туп .
пользователя к кажпроверяет дозво ленность доступа каждого отдельного п с пает в д му о отдельному объекту. этом см . В с ысле операционная система выступае с п к объектам получат только авторизороли стража, гарантируя, что доступ к о ъе ванные пользователи. е Совместное использование с помощью динамич еских возможностей. Этот т ля ос па, позволяя динамически вариант расширяет концепцию контроля доступа, создавать права совместного использования объектов. .
П и этой Фо ме защиты ограничивас п к объекту, сколько его использование. Например, ется не столько доступ к о ъекту, пользователю может ь быт разрешено просматривать важны докуме т, ин п име: пользователь имеет досне распечатывать его. Приведем еще од р р: может извлекать статистические сводки, ' туп к базе данных, при котором он м но не имеет возможности определять значения д от ельных величин. ты за иты в порядке возрастания-,.
Выше перечислены различные варианты з щ изации что соответствует качеству пр д е оставляемой защиты. сложности их реализац за и азной степени Конкретная операцион онная система может предоставлять защиту р ля азных объектов, пользователей или приложений. для рази Требуется, чтобы в операционно й системе поддерживался баланс между ной сис возможностями совместного и спользования компонентов компьютерно сис тивности ее использования, и сте темы, способствующего повышению эффек Часть 7. Безопасность: пенью защищенности ресурсов отдельных пользователей.
В этом разделе р ле рас. смотрены некоторые механизмы, с помощью которых н операционной систе. ме обеспечивается защита. Защита памяти В многозадачной среде защита памяти становится важной проблемой. Эдес~ возникают вопросы, связанные не только с безопасностью, но и с правильной ра ботой различных активных процессов. Если один из процессов неосторожно за пишет что-то в область памяти другого процесса, то этим он может нарушил работу последнего Разделение пространства памяти между различными процессами легко осу ществляется при использовании схемы ниртуальной памяти. ЭФФективным сред ством управления основной памятью является сегментная или страничная орга низация памяти, либо комбинированный вариант, в котором сочетаются оба ви да организации.
Если нужно обеспечить полную изоляцию, то операционно системе достаточно просто убедиться, что каждый сегмент или каждая страниц~ доступна только тому процессу, которому она предоставлена. Этого легко до биться, потребовав, чтобы в таблицах страниц и,Уили сегментов не было понто ряющихся элементов. Если совместное использование разрешено, то один и тот же сегмент или страница может появиться в нескольких таблицах.
Этот тип совместног~ использования легче всего осуществить в системе. поддерживающей сегмен тацию или комбинацию сегментации с разбивкой на страницы. В этом случа~ сегментная структура видима приложению, которое может объявлять от дельные сегменты доступными или недоступными для совместного использо вания.
В среде с чисто страничной организацией памяти труднее провест~ черту между двумя областями памяти, потому что структура памяти про зрачна для приложения. Примером аппаратной поддержки защиты памяти является система за щиты, установленная на машинах семейства 1ВМ ЯуэФет~370, работающи.' под управлением операционной системы ОЯ/390. На этих машинах каждом; страничному блоку основной памяти отвечает 7-битовый управляющий ключ значение которого может устанавливаться операционной системой. Два бит этого ключа указывают на то, делались ли запросы и изменения страницы занимающей данный блок; эти биты используются алгоритмом замещени.
страниц. Остальные биты, четыре из которых являются разрядами управле ния доступом и один — разрядом защиты от выборки, используются меха низмом защиты. Чтобы получить разрешение на доступ к какой-либо стра нице, в обращениях процессора к памяти и в обращениях устройства прямо "о доступа к памяти ~01гес1 Метогу Ассезэ — ВМА) должен использонатьс. соответствующий ключ. В разряде защиты от выборки указывается, дает л: ключ Управления доступом право записи или право чтения и записи. В про цессоре имеется регистр под названием '*слово состояния программы (Ргобгат Бйа1иэ Ъуого — РБ%'), который содержит управляющую инФормэ цию, имеющую отношение к выполняющемуся в данное время процессу- Сс ставляющим элементом этого слова является 4-битовый ключ РБ'6~.
Есл' процесс пытается получить доступ к странице или начинает операцию с уча стием прямого доступа к памяти, текущий ключ Ря'Ф сравнивается с кодо1 Глава Хб Безопасность Глава 1$. Безопасжщйть 'Часть 7. Безопаацость доступа. Разрешение на запись будет получено только при условии совпаде- ния ключей. Если бит выборки установлен, то ключ РБЮ должен соответст- вовать ключу доступа для чтения. Контроль доступа, ориентированный на пользователя Меры по контролю доступа, которые предпринимаются в системах обработки данных, можно разбить на две категории: имеющие отношение к пользователю и имеющие отношение к данным.
Контроль доступа, осуществляемый по отношению к пользователю, иногда неудачно называют аутентификацией. Мы воздержимся от использования этого термина, так как он широко применяется в связи с аутентификацией сообщений. Однако читателю следует иметь в виду, что в литературе он может употребляться в различном смысле. Наиболее распространенным методом контроля доступа пользователя в совместно используемой системе или сервере является процедура регистрации, при которой пользователю нужно ввести свой идентификатор и пароль. Система позволит пользователю войти только тогда, когда его идентификатор совпадает с известным системе, и если пользователь знает пароль, относящийся к этому идентификатору.
Такая система совместного использования идентификатора и пароля зарекомендовала себя как не очень надежный метод контроля доступа пользователя. Пользователи иногда забывают свои пароли, случайно или непреднамеренно раскрывают их. Хакеры приобрели большие навыки разгадывания идентификаторов особых пользователей, осуществляющих управление системой, а также принадлежащих к персоналу, выполняющему ее обслуживание. Наконец, предпринимаются попытки проникнуть в файл, в котором хранятся идентификаторы и пароли.
Возможные контрмеры обсуждаются в разделе 15.3. Контроль доступа пользователей в распределенной среде может быть либо централизованным, либо децентрализованным. При централизованном подходе сеть обеспечивает сервис регистрации, определяя, кому позволено пользоваться сетью и кому из пользователей позволено подключиться к ней. При децентрализованном контроле доступа пользователей сеть рассматривается как прозрачный канал связи, а процедура регистрации пользователя выполняется на том узле, иа который он пытается войти.
Конечно же, в таком случае следует позаботиться о безопасной передаче паролей по сети. Во многих сетях используется двухуровневый контроль доступа. Отдельные узлы могут быть оснащены регистрационными устройствами для защиты своих ресурсов и приложений, а вся сеть в целом может иметь защиту, ограничивающую доступ к ней несанкционированных пользователей. Такие двухуровневые средства желательно иметь в том случае, когда в одну сеть подключены неравноправные узлы, а сама она просто служит удобным средством доступа с терминала узла. В сети с более однородными узлами на центральном узле управления сетью можно обеспечить централизованную стратегию доступа.
Контроль доступа, ориентированный на данные После успешной регистрации пользователю предоставляется доступ к одному или нескольким узлам и приложениям. Для системы, в базе данных которой содержится важная информация, этого в общем случае недостаточно. Пользователь может быть идентифицирован системой с помощью проце дуры управления доступом. Каждому пользователю может соответствовать профиль, в котором указываются разрешенные операции и режимы доступа к файлам. В некоторых операционных системах профили пользователей служат основой для определенных правил. Однако система управления базой данных должна управлять доступом к отдельным записям или даже к их частям.
Например, возможна ситуация, когда каждому члену администрации разрешено просматривать список персонала компании, но только некоторым из них предоставлен доступ к информации по зарплате. Зто больше, чем просто еще одна степень детализации. В то время как операционная система имеет возможность предоставлять пользователю доступ к файлу или право на пользование приложением, после чего она не в состоянии производить даль. нейших проверок, система управления базой данных должна принимать решения по поводу каждой отдельной попытки доступа. Зто решение будет зависеть не только от персоны пользователя, но также от конкретных данных, которые он пытается получить, и даже от того, какая информация ему уже предоставлена.