Компьютерные вирусы и способы борьбы с ними
Рефераты >> Информатика >> Компьютерные вирусы и способы борьбы с ними

В SQL-бочке меда есть своя ложка дегтя. Для всех SQL-серверов использующих журнальный режим регистрации транзакций существует проблема, так называемых "длинных" транзакций. Это транзакции, которые затрагивают очень большой объем данных (сопоставимый с количеством свободного места на дисках) и в этом случае журналы регистрации транзакций могут переполниться. Если их рост ничем неограничен, то они могут израсходовать у ОС всю доступную дисковую память, что не есть хорошо, т.к. операционная система и сервер СУБД в этом случае остаются в непредсказуемом состоянии. Если их рост ограничен, то при переполнении журналов СУБД выдает соответствующую ошибку и операция откатывается. Чтобы избежать таких ситуаций программист должен разделить длинную транзакцию на короткие транзакции.

Блокировки.

Для того чтобы пользователи не искажали взаимно используемые данные, сервер СУБД, при многопользовательской работе, использует механизм блокировок. Блокировки по аналогии с базами данных на основе файлов могут быть как разделяемые, так и исключительные. Блокировки могут устанавливаться как на таблицу целиком, так и на строку в таблице. Аналогично в xBase-технологиях: блокировки могут устанавливаться как на xBase-файл, так и на запись в xBase-файле.

Блокировки связаны с транзакциями. Если выполняется отмена транзакции, то снимаются все связанные с этой транзакцией блокировки.

Многие блокировки выполняются неявно для пользователя, они выставляются, например, операторами UPDATE, INSERT. Существуют явные операторы задания блокировок, например, LOCK TABLE или операторы, имеющие клаузы блокировки, например SELECT : FOR UPDATE. Соответственно есть операторы и для снятия блокировок.

Многие SQL-серверы имеют специальные способы обнаружения и предотвращения взаимных блокировок (deadlocks), которые могут занимать ресурсы СУБД на неопределенное время.

Способы, которыми обеспечиваются блокировки, зависят от реализации сервера, и описываются в его документации. Виды блокировок также зависят от используемого сервера. В Informix существуют, т.н. promotional locks, это означает, что если клиентский процесс не может блокировать в исключительном режиме ресурс, то такая блокировка ставится в очередь и ей предоставляется ресурс после снятия текущей исключительной блокировки другого процесса. Oracle7 так не делает, если он не может установить исключительную блокировку в течение указанного сервером времени, то клиент извещается об ошибке.

35. Безопасность данных и защита от несанкционированного доступа: способы организации. Категории пользователей базы данных. Администратор базы данных.

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

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

Итак, второй шаг в обеспечении безопасного хранения данных - шифрование ценной информации. Однако часто конфиденциальная информация постоянно необходима в повседневной работе. При этом если процесс шифрования медленный и связан с большими сложностями (пользователю необходимо предпринимать множество дополнительных действий, вызывать и закрывать специальные программы), он, скорее всего, просто не будет использоваться. Следовательно, применяемые криптографические методы должны позволять осуществлять шифрование "на лету" ("прозрачное" шифрование). В этом случае данные зашифровываются при записи на диск и расшифровываются при считывании. Участие пользователя в этом процессе сводится к следующему: вызывая информацию на экран, он получает ее уже в расшифрованном виде и работает с ней как с обычными, незашифрованными данными.

По используемому алгоритму шифрования различают системы, использующие какой-либо известный алгоритм шифрования, и системы, использующие алгоритм шифрования собственной разработки.

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

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


Страница: