Безопасность Microsoft SQL Server 2000 / 6. Обновление SQL Server 6.5 до 2000 |
5. « » 7. |
6.1. Общие
замечания по
обновлению
6. Обновление SQL Server 6.5 до 2000 Модель безопасности SQL Server 6.5 претерпела изменения относительно SQL Server 6.0, и была изменена снова в SQL Server 2000. Эти изменения были необходимы для обеспечения нужд практических задач в среде SQL Server. Из-за этих изменений, система разрешений должна быть тщательно пересмотрена при выполнении обновления. 6.1. Общие замечания по обновлению Представленная в этом разделе информация, охватывает только вопросы обновления версии SQL Server 6.5 с интегрированным или смешанным режимом аутентификации. Если обновление выполняется для SQL Server 6.5 в стандартном режиме аутентификации, никаких проблем с безопасностью не должно быть. Однако, Microsoft рекомендует в этом случае задействовать новые функциональные возможности безопасности, доступные при выборе Windows Authentication Mode и внедрить их в обновлённой среде. Лучшим методом настройки безопасности SQL Server 6.x является модернизация до наиболее сильного уровня безопасности, тщательное планирование обновления и безопасности системы в целом. Процесс обновления может быть выполнен непосредственно на
сервере или с одного компьютера на другой. По логике,
обновление непосредственно на сервере выполняется так же, как
обновление с одного компьютера на другой, где исходный и
целевой компьютер один и тот же. Эти два компьютера будем
называть исходным и целевым серверами. Исходным сервером будет
SQL Server 6.0 или 6.5, а целевым - SQL Server 2000. 6.2.1. Анализ результатов обновления Большинство связанных с безопасностью трудностей при
обновлении обусловлены тем, что интегрированная модель
безопасности SQL Server 6.5 основывалась на ключах системного
реестра и только те, кто имел доступ к этим ключам, могли
подключится к серверу. Разрешения на ключи системного реестра
были связаны с учетными записями пользовательских логинов,
которые хранились в таблице syslogins.
Содержание этой таблицы объясняется в ниже следующих разделах. 6.2.2. Пользователи, которые были удалены Строки 1 и 2 в этой таблице получаются, когда пользователи не найдены в Windows User Directory. Если системная хранимая процедура xp_logininfo не возвращает имя пользователя, оно конвертируется в стандартный логин, что и видно в этих двух строках. Символ '*' в строке 2 используется, чтобы заменить пробел, так как SQL Server 6.5 и ранние версии не поддерживал специальные символы. 6.2.3. Учетная запись администратора Локальная группа BUILTIN\Administrators в строке 3 является псевдонимом для пользователя dbo в базе данных master. 6.2.4. Пользователи доверенного домена Строка 4 в таблице относится к группе DOM3\SQLUsers,
являющейся глобальной группой доверенного домена. Членам этой
группы предоставлено право входа в систему. Однако, членам
этой группы также будет предоставлено право входа в систему,
использующее стандартную защиту и их имена, какими они были в
SQL Server 6.5 или ранних версиях. Это делается для того,
чтобы обеспечить обратную совместимость для режима стандартной
безопасности. 6.2.5. Пользователи текущего, заданного по умолчанию домена Пользователи текущего домена (как было установлено в SQL Server 6.x до обновления) после обновления будут иметь вид, как в строках 7 и 8. Обратите внимание на тип учетной записи и на наличие пробела в строке 7. SQL Server 2000 поддерживает специальные символы в именах учетных записей. 6.2.6. Подготовка среды безопасности SQL Server 6.5 Настоятельно рекомендуется до обновления все параметры настройки безопасности полностью отключить. Для работы SQL Security Manager необходимо гарантировать, что бы все учётные записи Windows были синхронизированы с SQL Server. Если среда безопасности в порядке, процесс обновления имеет самые высокие шансы завершиться должным образом. Можно относительно легко контролировать процесс обновления
и определять, как будет идти обновление учетных записей
пользователей и групп. Мастер обновления SQL Server позволяет
останавливать процесс после каждого очередного шага. Если
выбрана опция остановки после каждого шага, может
анализировать промежуточные результаты, созданные на
предыдущей стадии обновления безопасности. Информация для
анализа шагов обновления сохраняется в файлы - loginmap.sid и
loginmap.txt. Если их содержание не является верным, эти
текстовые файлы могут быть отредактированы, и потом работа
может быть продолжена. 6.2.8. Не обновляйте в новый домен При обновлении SQL Server 6.x используется метод, который не поддерживает обновление базы данных из одного домена в другой. При исполнении хранимой процедуры xp_logininfo, она не сможет найти учётные записи, которые существовали в исходном домене (а если даже и найдёт, то это вероятно не правильные учетные записи или с одинаковыми именами). Права такому логину будут предоставлены, как будто эта учётная запись была удалена. Для получения дополнительной информации, см. "Пользователи, которые были удалены". 6.2.9. Не обязательное отображение символов Отображение символов не требуется, т.к. SQL Server 2000
может работать с пробелами и наклонной влево чертой в именах
учетных записей. 6.2.10. Не используйте учётную запись sa В SQL Server 6.5 и более ранних версиях, администраторы
регистрировались на SQL Server используя учетную запись для
системных администраторов (sa), что позволяло им исполнять
задачи администрирования. Часто большому количеству людей
необходимо было предоставлять администраторский доступ. 6.2.11. Не используйте псевдонимы имён SQL Server 2000 поддерживает псевдонимы имён учетных записей пользователей в пределах одной базы данных для поддержания обратной совместимости, но их применение не рекомендуется. Вместо этого, рекомендуется использовать роли. Роли являются более мощным инструментом, и они включают функциональные возможности, подобные псевдонимам имён. |
Перевод: Александра Гладченко 2003г. |
5. « » 7. |