Безопасность Microsoft SQL Server 2000

ПУБЛИКАЦИИ  

По материалам статьи Richard Waymire и Ben Thomas: Microsoft SQL Server 2000 Security

Эта статья описывает способы защиты Microsoft SQL Server 2000, находящегося в домене Windows 2000 и включает примеры реализующего представляемую модель безопасности кода. Кроме того, в статье рассматривается безопасность перехода на SQL Server 2000 с более ранних версий.

СОДЕРЖАНИЕ

1.         Введение

2.         Новшества безопасности SQL Server 2000
2.1.      Безопасная инсталляция
2.2.      Установка Microsoft SQL Server 2000 Desktop Engine
2.3.      Уровень безопасности C2
2.4.      Kerberos и делегирование в среде Windows 2000
2.5.      Аудит безопасности
2.5.1.   SQL trace
2.5.2.   SQL Profiler
2.5.3.   Режим аудита C2
2.6.      Исключение SQLAgentCmdExec Proxy Account
2.7.      Расширение набора серверных ролей
2.7.1.   Bulkadmin
2.7.2.   Securityadmin
2.7.3.   Serveradmin
2.8.      Шифрация
2.8.1.   Шифрация трафика с использованием SSL/TLS
2.8.2.   Login Packet Encryption
2.8.3.   Client-Requested Encryption
2.8.4.   Server-Requested Encryption
2.8.5.   Поддержка Encrypted File System на Windows 2000
2.8.6.   Server-Based Encryption Enhanced
2.8.7.   DTS Package Encryption
2.9.      Пароли
2.9.1.   Резервирование и Backup Media Sets
2.9.2.   SQL Server Enterprise Manager
2.9.3.   Изменение учётной записи сервиса с использованием SQL Server Enterprise Manager
2.9.4.   В системных таблицах убран столбец SUID
2.10.    Модель безопасности SQL Server 2000
2.11.    Режимы аутентификации
2.11.1. Windows Authentication Mode
2.11.2. Смешанный режим
2.12.    Поддержка Security Identification Numbers
2.13.    Роли
2.13.1. Роль public
2.13.2. Предопределенные Роли
2.13.3. Фиксированные серверные роли
2.13.4. Фиксированные роли базы данных
2.13.5. Определяемые пользователем роли
2.13.6. Роли приложений
2.14.    Обеспечение доступа к серверу
2.14.1. Уровень Windows
2.14.2. Уровень SQL Server
2.15.    Обеспечение доступа к базе данных
2.15.1. Обеспечение доступа к объектам базы данных
2.15.2. Определяемые пользователем роли базы данных
2.15.3. Система разрешений
2.15.4. Предоставление и отрицание разрешений для пользователей и ролей
2.15.5. Цепочки владения

3.         Реализация безопасности на уровне сервера
3.1.      Использование идентификаторов безопасности (SID)
3.2.      Отказ от Server User Identification Numbers (SUIDs)
3.3.      Генерация GUID для не доверительных подключений пользователей
3.4.      Переименование пользователя Windows или учётной записи группы
3.5.      Системная таблица sysxlogins
3.6.      Столбец xstatus
3.7.      Столбцы dbid и language
3.8.      Состояние hasaccess
3.9.      Состояние denylogin
3.10.    Представление sysremotelogins
3.11.    Представление sysoledbuser

4.         Реализация безопасности на уровне объектов
4.1.      Как проверяются разрешения
4.2.      Стоимость изменений разрешений
4.3.      Переименование пользователя Windows или учетной записи группы
4.4.      Выведена из обращения системная таблица sysprocedures
4.5.      Опция WITH GRANT
4.6.      Системная таблица sysusers
4.6.1.   Столбец hasdbaccess
4.7.      Системная таблица sysmembers
4.8.      Системная таблица syspermissions
4.9.      Системная таблица sysprotects
4.10.    Безопасность подключения по именованным каналам и по мультипротоколу

5.         Обновление SQL Server 7.0 до 2000

6.         Обновление SQL Server 6.5 до 2000
6.1.      Общие замечания по обновлению
6.2.      Процесс обновления
6.2.1.   Анализ результатов обновления
6.2.2.   Пользователи, которые были удалены
6.2.3.   Учетная запись администратора
6.2.4.   Пользователи доверенного домена
6.2.5.   Пользователи текущего, заданного по умолчанию домена
6.2.6.   Подготовка среды безопасности SQL Server 6.5
6.2.7.   Шаги обновления
6.2.8.   Не обновляйте в новый домен
6.2.9.   Не обязательное отображение символов
6.2.10. Не используйте учётную запись sa
6.2.11. Не используйте псевдонимы имён

7.         Безопасность инсталляции SQL Server 2000
7.1.      Не используйте учетную запись sa
7.2.      Учетные записи для запуска сервисов
7.3.      Учетная запись Local System
7.4.      Учетная запись локального пользователя
7.5.      Учетная запись пользователя домена
7.6.      Файловая система
7.7.      Системный реестр
7.8.      Аудит
7.9.      Аудит средствами SQL Profiler

8.         Backup и Restore
8.1.      Защита файлов резервных копий и их носителей
8.2.      Восстановление на другом сервере
8.2.1.   Mixed Mode
8.2.2.   Windows Authentication (Тот же домен)
8.2.3.   Windows Authentication (Другой домен)
            - Пользователи доверенного домена
            - Пользователи из нового домена
            - Пользователь из любого домена с одинаковым именем и паролем
8.3.      Прикрепление и открепление файлов базы данных
8.4.      Настройка безопасности Windows
8.4.1.   Отключите учётную запись Windows - Гость
8.4.2.   Ограничьте физический доступ

9.         Заключение

10.       Приложения: Дополнительная информация
10.1.    Книги
10.2.    Web-сайты
10.3.    Белые страницы

1. Введение

Многие из разработчиков и администраторов баз данных успешно применяли архитектуру безопасности SQL Server 7.0 и ранних версий; однако, усовершенствования безопасности возможны были только за счёт применения заплат, и не была возможна полная интеграция с безопасностью операционной системы. Безопасность SQL Server 2000 основывается на модели безопасности SQL Server 7.0 и является её развитием. Она использует модель безопасности Microsoft Windows NT 4.0 и Windows 2000; поэтому, для полного понимания этой статьи предполагается хорошее знание модели безопасности и основ администрирования Windows NT 4.0 и Windows 2000. Также ожидается хорошее понимание концепции доменов, глобальных и локальных групп, а также учетных записей пользователей (поскольку они применяются в контексте безопасности Windows NT 4.0) и Microsoft Active Directory.
Те, кто знаком с системными таблицами SQL Server, смогут легко разобраться с нюансами разбора ошибок типа: "Security Internals Error! Reference source not found.", в приводимых примерах кода Microsoft Visual Basic и Structured Query Language (SQL). Кроме того, опыт использования SQL Distributed Management Objects (SQL-DMO) также будет весьма полезен при освоении этого материала.

[В начало]


Перевод: Александра Гладченко  2003г.

ПУБЛИКАЦИИ

Скачать электронную карту Ангарска бесплатно
Сайт управляется системой uCoz