Введение в архитектуру компьютеров

Особенности защиты информации в компьютерных сетях


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

Работа в сети на принципах "клиент–сервер" необычайно привлекательна своей открытостью. Однако построение систем защиты информации в них усложняется тем, что в одну сеть объединяется разнообразное ПО, построенное на различных аппаратно-программных платформах. Поэтому система защиты должна быть такой, чтобы владелец информации мог быстро ею воспользоваться, а не имеющий соответствующих полномочий испытывал значительные затруднения в овладении информацией. Системы защиты информации в них тоже различны. Даже простой вариант смены паролей требует согласования, ибо ПО защиты типа RACF для мейнфреймов требует смены пароля с периодичностью в 30 дней, а сетевая ОС – ежеквартально. Для доступа к информации требуется преодолеть несколько охранных рубежей. В связи с этим возникает задача синхронизации работы средств безопасности всех платформ, т. е. создание своеобразного "зонта безопасности" для всей компьютерной системы.

Работа в распределенных вычислительных средах в связи с наличием различных точек входа: рабочие станции, серверы баз данных, файл-серверы LAN – усложняет решение проблемы безопасности.

Многие разработчики баз данных (БД) перекладывают функции контроля доступа к данным на ОС, чтобы упростить работу пользователя ПК. Особенно это показательно для ОС Unix, где реализована надежная защита информации. Однако такой подход позволяет хакерам, маскируясь под клиентов Unix, иметь доступ к данным.


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

В БД Oracle, например, принцип географической прозрачности и фрагментарной независимости реализуется через механизм связей (links) и синонимов (synonyms). Посредством связей программируется маршрут доступа к данным: указываются реквизиты пользователя (регистрационное имя и пароль), тип сетевого протокола (например, TCP/IP) и имя БД. К сожалению, все эти параметры приходится описывать в тексте сценариев (scripts). Чтобы засекретить указанную информацию, пароли можно хранить в словаре данных в зашифрованном виде.

Наличие нескольких БД в распределенных системах в некоторой степени усложняет работу пользователей, не имеющих соответствующих полномочий по доступу к данным, ибо код должен преодолевать автономные защиты данных в различных БД.

Защита информации в распределенной среде многоуровневая. Чтобы прочесть пользователю необходимые данные, например, с помощью штатных программ администрирования, ему необходимо сначала попасть в компьютер (уровень защиты рабочей станции), потом в сеть (сетевой уровень защиты), а уже затем на сервер БД. При этом оперировать конкретными данными пользователь сможет лишь при наличии соответствующих прав доступа (уровень защиты БД). Для работы с БД через клиентское приложение придется преодолеть еще один барьер – уровень защиты приложения.

В арсенале администратора системы “клиент – сервер” имеется немало средств обеспечения безопасности, в частности встроенные возможности БД и различные коммерческие продукты третьих фирм.Важность внутренних средств защиты состоит в том, что контроль доступа происходит постоянно, а не только в момент загрузки приложения.

Каждый пользователь системы имеет свои полномочия по работе с данными. В широко известных базах данных Sybase и Microsoft SQL Server, например, тип доступа регулируется операторами GRANT и REVOKE, допускающими или запрещающими операции чтения, модификации, вставки и удаления записей из таблицы, а также вызова хранимых процедур. К сожалению, во многих БД минимальным элементом данных, для которого осуществляется контроль доступа, является таблица. Во многих практических задачах контроль доступа требуется осуществлять даже по отдельным полям или записям. Эта задача может быть реализована либо с помощью табличных фильтров (на уровне приложения), либо путем модификации структуры БД через денормализацию таблиц.


Содержание раздела