Рассылка закрыта
При закрытии подписчики были переданы в рассылку "Вопросы и ответы по MS SQL Server" на которую и рекомендуем вам подписаться.
Вы можете найти рассылки сходной тематики в Каталоге рассылок.
MS SQL Server - дело тонкое...
Информационный Канал Subscribe.Ru |
#138<< #139 |
СОДЕРЖАНИЕ
Безопасность Microsoft SQL Server 2000 (ПРОДОЛЖЕНИЕ) По материалам статьи Richard Waymire и Ben Thomas: Microsoft SQL Server 2000 Security
1. Введение 3. Реализация безопасности на уровне сервера 3.1. Использование идентификаторов безопасности (SID)
Вначале SQL Server 2000 проверяет идентификатор безопасности пользователя или группы (SID), что бы определить, не
был ли он лишён доступа к серверу. Если это так, доступ пользователю предоставлен не будет. Если доступ не запрещён,
проверяется факт предоставления доступа, как непосредственно пользователю, так и через его членство в группах.
Если доступ предоставлен, осуществляется подключение к SQL Server 2000. После этого, пользователь подключается к
заданной ему по умолчанию базе данных (где он также должен иметь доступ). Будут проверены его права доступа на
любые объекты, к которым он попытается обратиться. Если в доступе было отказано для какого-нибудь набора прав
логина, подключение к серверу будет закончено. 3.2. Отказ от Server User Identification Numbers (SUIDs) Столбца SUID больше нет в SQL Server 2000. В SQL Server 6.5 и ранних версиях, защита была основана на использовании значения идентификационного номера пользователя сервера (SUID), который хранился в системной таблице sysxlogins в базе данных master. Этот столбец также существовал в нескольких системных таблицах SQL Server 7.0 Столбец <name> был удалён из следующих системных таблиц:
· Sysdatabases Также, было полностью удалено представление sysalternates. Функции SUSER_ID() и SUSER_NAME() были выведены из обращения, и теперь всегда возвращают null. 3.3. Генерация GUID для не доверительных подключений пользователей Для не доверительных (Non-Trusted) подключений, например, когда SQL Server 2000 установлен на операционной системе Windows 98, Windows SID - не доступен. В этом случае, SQL Server 2000 генерирует 16 байтный уникальный, глобальный идентификатор (GUID). Сгенерированный GUID может используется таким же образом, как Windows SID используется для пользователей и групп Windows. Таким образом, безопасность может функционировать одинаково хорошо при доверительном и не доверительном подключении. 3.4. Переименование пользователя Windows или учётной записи группы
Когда переименовывается пользователь или группа Windows средствами User Manager for Domains из состава Windows NT
4.0 или с помощью утилиты Active Directory Users, SQL Server 2000 не будет знать ничего об этой операции. SQL Server
2000 поддерживает полностью квалифицированные имена пользователей или групп, которые он хранит таблице sysxlogins
для обеспечения высокой эффективности, и отнюдь не часто делает запросы к контроллеру домена для обновления этой
информации. Это будет так, если выполняется много выборок или контроллер домена доступен по медленному каналу.
Фактические имена пользователей и групп Windows могут отличаться от хранящихся в SQL Server 2000, и это не вызовет
проблем безопасности. Набор разрешений для пользователя или группы будет функционировать правильно, поскольку SQL
Server полагается только на свой внутренний SID. 3.5. Системная таблица sysxlogins
Системная таблица sysxlogins содержит права логина (или отказ в них) для каждого пользователя.
Эта системная таблица существует только в базе данных master.
· Представление syslogins обеспечивает обратную совместимость, хотя анализ значений столбца status даёт более
понятные и лёгкие в использовании результаты. Столбец xstatus хранит параметры состояния, включая членство в серверных ролях. Возможные состояния перечислены в таблице: Назначение Значение Описание ------------------------------------------------------------ Denylogin 1 -- Hasaccess 2 -- Isntname 3 Not "ISN'T", but "IS WINDOWS" :) Isntgroup 3 Only if status bit 4 is not set Isntuser 4 Must also have status bit 3 set Sysadmin 5 Server role Securityadmin 6 Server role Serveradmin 7 Server role Setupadmin 8 Server role Processadmin 9 Server role Diskadmin 10 Server role Dbcreator 11 Server role Bulkadmin 12 Server role
Часто можно встретить неправильное толкование того, как пользователь получает заданную по умолчанию базу данных и
заданные по умолчанию параметры настройки языка. Когда пользователь подсоединяется к SQL Server 2000, сервер ищет
в таблице sysxlogins строку, содержащую конкретный SID пользователя (или GUID в случае не доверительных подключений).
Если идентификатор найден, заданная по умолчанию база данных и заданные по умолчанию параметры настройки языка
берутся из найденной строки. Если идентификатор пользователя не найден, сервер ищет SID, которые принадлежат группам,
членом которых этот пользователь является. Заданная по умолчанию база данных и язык берутся от первой группы,
которая будет найдена. Этот алгоритм применяется для каждого значения по умолчанию.
Колонка состояния hasaccess в системной таблице sysxlogins используется для фиксации параметров по умолчанию,
заданных пользователю, и не предоставляет даже неявно никакого доступа. Как правило, таблица sysxlogins используется
для предоставления прав логинам пользователей или группам. Если состояние hasaccess установлено в ноль, логину
пользователя явно доступ не предоставляется. Однако, если пользователь подключается через предоставленный членством
в группы доступ, значения по умолчанию будут установлены. Состояние denylogin используется для явного лишения доступа к SQL Server 2000 пользователя или группы. Например, если определенному пользователю (или группе) необходимо запретить доступ к SQL Server, может быть выполнена следующая инструкция Transact-SQL: Exec sp_denylogin 'REDMOND\Bob' Это не то же самое, что: Exec sp_revokelogin 'REDMOND\Bob'
Различие между этими двумя инструкциями в том, что первая запрещает доступ к SQL Server, а вторая отменяет
предоставленный доступ. Если пользователь был членом группы MARKETING, которая доступ имеет, исполнение второй
инструкции не отменило бы Бобу возможность обращения к серверу на основании членства в группе MARKETING. Первая
инструкция запрещает доступ независимо от членства в любых группах, которые могут предоставлять доступ. 3.10. Представление sysremotelogins Представление sysremotelogins обеспечивает обратную совместимость с SQL Server 6.5 и более ранними версиями и отображает внешние логины. 3.11. Представление sysoledbuser
Когда пользователь хочет выполнить запрос на удалённом сервере, локальный сервер должен подключится к
прилинкованному серверу от имени какого-нибудь пользователя. ПРОДОЛЖЕНИЕ СЛЕДУЕТ Отечественные статьи
Связи в XML: XLink
Новые технические статьи Microsoft
SQL Server
Support Center
Enabling and disabling all constraints on a table
Самые популярные темы недели
Междумордие
Как
установить дополнительный язык? Материалы семинара: Применение CASE средств в процессе разработки и сопровождения приложений и баз данных
Подпишитесь на новую рассылку: Вопросы и ответы по Microsoft SQL Server
Автор рассылки: Сергей Кошкин
Архив выпусков:
1. Для чего вообще нужен оператор JOIN? (05.03.2003) Подпишитесь на новую рассылку: Уроки по SQL Server
Автор рассылки: Игорь Алексеев
Архив выпусков:
1. Что такое SQL Server? 22.10.2001 Tablet PC для настоящего разработчика Приобретите не менее 6 лицензий на подписку на MSDN уровней Universal, Enterprise или Professional в апреле, мае или июне 2003 года через новую программу корпоративного лицензирования Microsoft® Multi-Year Open License (MYO), и получите в подарок планшетный компьютер Tablet PC. Работа не заканчивается при выходе из офиса. Иногда офисом может стать строящееся здание, лужайка в парке или учебная аудитория, и тогда нужны гибкие решения, способные адаптироваться для максимального соответствия условиям работы. Ультратонкий, легкий и по-настоящему портативный планшетный компьютер Tablet PC объединяет в себе мощь ноутбуков и настольных ПК с преимуществами PDA. Использование самых современных мобильных технологий и полная совместимость с Windows дает уверенность в успешном выполнении бизнес-задач вне зависимости от места работы.
Предложение действует с 1 апреля 2003 года по 30 июня 2003 года. Алгоритм получения подарка
Где получить дополнительную информацию? Задать вопросы о программе, узнать поступила ли ваша заявка в Microsoft, а также получить информацию о статусе рассылки можно в Информационном центре Microsoft по телефонам:
Представление Windows Server 2003 Добро пожаловать в мир высокопроизводительных и надежных серверных технологий! С апреля в продаже новейшая серверная ОС - Microsoft Windows Server 2003! Семейство продуктов Windows Server 2003 - это новый уровень надежности, производительности и управляемости ваших серверных систем. Это инфраструктурная платформа высокой производительности для поддержки связанных приложений, сетей и веб-служб XML в любом масштабе - от рабочей группы до центра обработки и хранения данных. Посетите представление Windows Server 2003 в вашем городе
время представления вы получите детальную информацию о:
Все посетители бесплатно получат ознакомительную версию Windows Server 2003! На представлении Windows Server 2003 выступят ведущие специалисты корпорации Microsoft, которые смогут ответить на интересующие вас вопросы. Зарегистрируйтесь для участия в мероприятии прямо сейчас или задайте вопросы по телефонам:
Описание новых продуктов вы найдете на страницах сайта Microsoft:
|
#138<< #139 |
http://subscribe.ru/
E-mail: ask@subscribe.ru |
Отписаться
Убрать рекламу |
В избранное | ||