Защита информации в ОС UNIX. Защита файлов.



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

Маска доступа содержит 9 бит. Из них 9 бит разбиты на тройки по 3 бита, показывающие какими правами по отношению к данному файлу обладает конкретный процесс.Кроме маски доступа, с каждым файлом связан идентификатор владельца UID и GID группы.

U G r w x r w x r w x

suid,sgid owner                       group                       other

r – чтение. (0- запрещено, 1 – разрешено)w- записьx - запуск (выполнение)Каждый процесс работает в своем собственном контексте и имеет UIDи GID. При попытке доступа к объекту процесс выдает запрос (системный вызов open)на открытие (т.е. сделать его доступным для обработки). ОС выполняет сравнение UIDиGID процесса с UID иGID и на основе этого определяет принадлежность процесса к владельцу файла или группе владельца. В зависимости от этого выбирается одна из трех групп прав и в дескриптор открытого файла заносится набор разрешенных операций. Если в выбранной тройке все права равны 0, то возвращается ошибка – «Файл закрыт» и выполнение любых операций с ним запрещено. !!! Если разрешено выполнение, но запрещены чтение/запись, то команду Open может выполнить только ядро ОС в момент построения процесса, причем программный запрос должен быть только на запуск exec().С использованием битов U и Gвозможно создание так называемых доверенных объектов. Владелец файла, а также пользователь root может изменять владельца и группу-владельца файла. Для изменения владельца (и группы-владельца) файла используется команда chownсо следующим синтаксисом:chown [-h][-R] владелец[:группа] файл.Опция -h требует изменять владельца файла, на который указывает символическая связь, а не самой связи, как происходит по умолчанию. Опция -R требует рекурсивно изменить владельца во всех подкаталогах.Для изменения только группы, владеющей файлом, используется команда chgrp:chgrp [-h][-R] группа файл ...Ее опции аналогичны команде chown.!!!Учтите, что после передачи файла другому владельцу, первоначальный владелец перестает им обладать, и будет иметь права доступа, установленные новым владельцем.

Защита информации в ОС UNIX. Доверенные утилиты и изменение контекста.

Доверенные утилиты – это хорошо протестированные программы, выполняющие действия определенные ее разработчиками. Для доверенных утилит выставляется бит SUID или SGID.Это означает, что при запуске процесса, он будет исполняться с контекстом владельца файла (группы), по которому построен процесс. Таким образом доверенная утилита будет иметь на сервере те же права, какие имеет ее владелец.К доверенным утилитам относится утилита su (superuser), sudo, newgrp позволяющая изменить контекст пользователя на контекст пользователя root.Команда su используется для переключения пользователей:su[username].Команда sudo позволяет запустить одиночную команду с правами другого пользователя (по умолчанию - рута), при этом вводится пароль (если не включен беспарольный запуск) пользователя, который запускает sudo. newgrp используется для изменения текущего идентификатора группы (GID) во время сессии. Пользователь остается в системе и текущий каталог не изменяется, но права доступа к файлам вычисляются в соответствии с новыми реальным и действующим идентификаторами группы.Если задан флаг [-] , то окружение пользователя будет изменено как будто бы пользователь вновь вошел в сиcтему как член новой группы, в противном случае текущее окружение, включая текущий рабочий каталог остается без изменений.newgroup – [группа].Доверенные утилиты являются одним из наиболее уязвимых мест в системе UNIX и администратор системы должен по возможности запретить пользователям их использование.

29. Технологии работы с базами данных. (Технология "файл-сервер").

При любой технологии работы с данными требуются их централизованное хранение и удаленный доступ субъектов технологии (клиентов). С этой целью используются вычислительные сети. Если данные объединены в базу данных (БД), то кажется естественным размещение файлов БД на сетевом ресурсе, доступном для всех клиентов. Технология "файл-сервер" одна из первых технологий работы с данными. Эта технология предполагает, что СУБД и приложение клиента расположены и работают на автоматизированном рабочем месте (АРМ) клиента, а БД располагается на файловом сервере. Такой подход обеспечивает наиболее безболезненный переход от локальной работы с данными на выделенном компьютере к групповой работе в ЛВС. При этом не требуется практически никакой переработки используемых приложений.

Основная проблема при использовании такой технологии связана с обеспечением достоверности и непротиворечивости данных в базе. Эта проблема возникает при одновременном доступе к БД со стороны нескольких клиентов. Данные из БД при работе СУБД и приложения копируются в буферные области памяти АРМ клиента и могут там модифицироваться. При записи данных в БД из нескольких АРМ останутся только данные, записанные последними. Если одновременно с обработкой записи на одном АРМ с другого осуществляется доступ к той же записи, а она еще не сформирована до конца, то ее поля могут оказаться некорректными. Основным средством обеспечения достоверности данных являются транзакции и блокировки данных. Транзакции - это элементарные группы связанных операций выборки, модификации и перезаписи данных. Выполнение транзакции обычно модифицирует данные в нескольких связанных записях в одной или нескольких файлах БД. По началу транзакции содержимое корректируемых полей сохраняется в резервной области (области транзакций) и вся группа корректируемых данных блокируется, т. е. делается недоступной для транзакций, выполняемых другими пользователями. Затем выполняется модификация данных путем прямой записи физических данных в файлы БД. Затем по команде "конец транзакции" сбрасывается признак активной транзакции и разблокируются данные. После этого область транзакций может повторно использоваться. Если в процессе выполнения транзакции возникает аварийная ситуация, то возможен так называемый откат транзакции. Данные из области транзакций восстанавливаются в неверно или не до конца скорректированные поля, после чего с них снимается блокировка. Обычно забота о достоверности данных и выполнении транзакций возлагается на СУБД, а механизм блокировки реализуется на сервере.

30. Технологии работы с базами данных. (Технология "клиент-сервер", двухзвенная архитектура).

Обеспечить высокую эффективность выполнения транзакций одновременно с высокой надежностью хранения данных с использованием технологии "файл-сервер" невозможно. Поэтому более широкое распространение получили клиент-серверные технологии. Основное отличие этой технологии в выделении специализированного сервера баз данных, в котором объединяются СУБД и БД. Централизация этих функций обеспечивает возможность эффективной реализации блокировок и транзакций. Кроме того, за счет использования более надежных аппаратных средств и централизованного обслуживания может быть существенно повышена надежность хранения данных.Под сервером базы данных понимается логический процесс, отвечающий за обработку запросов к ней. Клиентом называется процесс, посылающий серверу запрос на обслуживание. При реализации клиент-серверной технологии требуются универсальные средства общения между клиентом и сервером. Наиболее известные средства: язык SQL. Дистанционный вызов реализуется через механизмы хранимых и присоединенных процедур. Хранимые процедуры находятся на сервере БД и выполняются по специальным командам, позволяя сократить число передаваемых запросов. Это типовые процедуры обработки данных конкретной технологии. Присоединенные процедуры или триггеры представляют собой последовательности команд, выполняющихся при определенных событиях с БД, например, при обновлении полей или удалении записей. Основные достоинства технологии клиент-сервер:экономия вычислительной мощности компьютеров; независимое расширение возможностей клиента и сервера; возможность использования различных инструментальных средств для работы клиента. Для реализации технологии клиент-сервер применяются две основные схемы: двухзвенная и трехзвенная. У клиента работает приложение, обеспечивающее необходимую обработку данных. При необходимости выполнить операцию с сервером приложение посылает запрос, который драйвером БД преобразуется в SQL-запрос, передаваемый по сети. Сеть не обязательно должна быть локальной, поскольку объем передаваемых данных относительно небольшой. В отличие от файл-серверной обработки, где по сети передается часть БД, в данной схеме передаются уже обработанные SQL-сервером данные.

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

31. Технологии работы с базами данных. (Технология "клиент-сервер", трехзвенная архитектура).

Обеспечить высокую эффективность выполнения транзакций одновременно с высокой надежностью хранения данных с использованием технологии "файл-сервер" невозможно. Поэтому более широкое распространение получили клиент-серверные технологии. Основное отличие этой технологии в выделении специализированного сервера баз данных, в котором объединяются СУБД и БД. Централизация этих функций обеспечивает возможность эффективной реализации блокировок и транзакций. Кроме того, за счет использования более надежных аппаратных средств и централизованного обслуживания может быть существенно повышена надежность хранения данных. Под сервером базы данных понимается логический процесс, отвечающий за обработку запросов к ней. Клиентом называется процесс, посылающий серверу запрос на обслуживание. При реализации клиент-серверной технологии требуются универсальные средства общения между клиентом и сервером. Наиболее известные средства: язык SQL. Дистанционный вызов реализуется через механизмы хранимых и присоединенных процедур. Хранимые процедуры находятся на сервере БД и выполняются по специальным командам, позволяя сократить число передаваемых запросов. Это типовые процедуры обработки данных конкретной технологии. Присоединенные процедуры или триггеры представляют собой последовательности команд, выполняющихся при определенных событиях с БД, например, при обновлении полей или удалении записей. Основные достоинства технологии клиент-сервер: экономия вычислительной мощности компьютеров; независимое расширение возможностей клиента и сервера; возможность использования различных инструментальных средств для работы клиента. Для реализации технологии клиент-сервер применяются две основные схемы: двухзвенная и трехзвенная.

Основной недостаток двухзвенной архитектуры - сложность сопровождения. В итоге получается трехзвенная схема, показанная на. У клиента работает только интерфейсная часть приложения, т. е. совокупность экранных форм, заполняемых данными пользователя и отображающих результаты обработки. Эти части приложений относительно стабильны и невелики по объему. Поэтому при необходимости они могут передаваться по сети как данные.


Дата добавления: 2018-05-13; просмотров: 326; Мы поможем в написании вашей работы!

Поделиться с друзьями:






Мы поможем в написании ваших работ!