Академия Специальных Курсов по Компьютерным Технологиям
    Главная страница Послать письмо
 
AskIt.ru  
   
   
   
   
   
   
 
 
  Главная / Заказные курсы / Microsoft SQL Server 2005 для администраторов
 
 

Получить учебные материалы по этому курсу


<-- Назад Читать дальше -->

5.6.3. Принципы шифрования информации в базах данных SQL Server 2005

Шифрование данных SQL Server 2005, сертификаты, асимметричные ключи, симметричные ключи, пароли

Еще одна большая проблема, связанная с безопасностью SQL Server, заключается в том, что информация хранится в базах данных в незащищенном виде. Фактически единственный рубеж защиты — это разрешения самого SQL Server. Как только они перестают действовать, становится возможным получение доступа к любой информации в базе данных. Приведем несколько обычных ситуаций, когда может произойти нарушение системы безопасности SQL Server:

q      администратор сети недосмотрел за безопасностью учетных записей в домене. В результате злоумышленник смог подключиться к SQL Server при помощи учетной записи, от имени которой работают службы SQL Server (эта учетная запись обладает правами встроенной серверной роли SYSADMIN);

q      злоумышленник смог получить физический доступ к компьютеру, на котором работает SQL Server, и скопировал файлы базы данных (это можно сделать разными способами, например, загрузившись с компакт-диска или подключив RAID-массив сервера к другому компьютеру). Затем злоумышленник сможет присоединить эти файлы к другому серверу SQL Server, на котором он обладает правами системного администратора;

q      в чужие руки попал носитель с резервной копией базы данных. Злоумышленник также сможет восстановить эту резервную копию на другом сервере, на котором он обладает правами системного администратора, и получить таким образом доступ ко всем данным.

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

Для шифрования данных в SQL Server 2005 предусмотрено четыре способа:

q      шифрование при помощи сертификатов. Сертификат при этом должен присутствовать в виде объекта в базе данных (в SQL Server Management Studio можно просмотреть имеющиеся сертификаты в контейнере Databases | Имя_базы_данных | Security | Certificates);

q      шифрование при помощи ассиметричных ключей. Алгоритм здесь такой же, как и при использовании сертификатов. От сертификата асимметричный ключ отличается тем, что в нем не предусмотрено дополнительных полей с информацией о том, кому он выдан, для каких целей, до какого времени действителен и т. п. Имеющиеся асимметричные ключи можно просмотреть в контейнере Asymmetric Keys, который находится там же, где и контейнер Certificates;

q      шифрование при помощи симметричных ключей. Используются намного более быстрые алгоритмы, по сравнению с асимметричными ключами. Сами симметричные ключи также создаются в виде объектов базы данных и могут быть защищены сертификатом, другим симметричным ключом, ассиметричным ключом или просто паролем. Просмотреть их можно при помощи контейнера Symmetric Keys;

q      простое шифрование при помощи паролей.

Отметим также, что вам совсем необязательно ограничиваться только встроенными средствами SQL Server 2005. Он также позволяет использовать в коде Transact-SQL вызовы к сборкам .NET. Поэтому для шифрования данных можно использовать классы из пространства имен System.Security.Cryptography в .NET Framework или свои собственные сборки.

 

   
   
   
   
   
   
   
   
   
   
 
<-- Назад Читать дальше -->

Получить учебные материалы по этому курсу


 
© 2004-2008, Академия Специальных Курсов
по Информационным Технологиям
.
Все права защищены.

Разработка NevaStudio
г. Санкт-Петербург, Васильевский остров,
20-я линия, д. 7
Офис 101, 2-й этаж
Телефон: 8(812)922-47-60
E-mail: info@askit.ru