|
Программирование >> Программирование баз данных
сказанное, модель DMO вполне можно рассматривать как предшествующую модели SMO. Эти модели имеют весьма существенные различия, но предназначены для достижения одной и той же основной цели. Интерфейс WMI. Интерфейс WMI (Windows Management Instrumentation) представляет собой реализацию протокола управления Web, утвержденного промышленным стандартом. Как было указано выше, сразу после выпуска версии SQL Server 2000 считалось, что модель на основе WMI возьмет на себя функции основного средства автоматизации управления СУБД SQL Server. Но в конечном итоге оказалось, что не существует никакой модели, основанной на интерфейсе WMI, которая позволяла бы достаточно продуктивно решать задачи доступа ко всем необходимым объектам СУБД SQL Server, поэтому можно считать, что усилия, потраченные на создание интерфейса WMI, в основном оказались непродуктивными. Описание интерфейса WMI, как и модели DMO, выходит за рамки настоящей книги, но следует помнить, что средства поддержки этого интерфейса не исключены и остаются доступными на тот случай, если с их помощью потребуется организовать управление более старыми версиями SQL Server. Краткое описание хранимой процедуры sp addlogin Как уже отмечалось выше, хранимая процедура sp addlogin предназначалась для создания учетных записей в предьщущих версиях SQL Server, а в современной версии заменена оператором CREATE LOGIN. В вызове этой процедуры обязательным является только один параметр, но чаще всего приходится использовать два или три параметра (табл. 22.3). Предусмотрен также целый ряд дополнительных параметров, но практика показывает, что их приходится использовать гораздо реже. Для вызова процедуры sp addlogin применяется следующий синтаксис: ЕХЕС sp addlogin [©loginame =] <login> [©passwd =] <password>] [@defdb =] < database>] [@de f1anguage =] <1anguage>] [@sid =] sid] [, [©encryptopt =] <encryption option>] Таблица 22.3. Некоторые параметры хранимой процедуры spaddlogin Параметр Описание ©loginame Устанавливает идентификатор создаваемой учетной записи ©passwd Задает пароль, используемый при регистрации с помощью создаваемой учетной записи ©def db Задает базу данных, используемую по умолчанию. С помощью этого пара- метра можно определить, какая база данных сразу становится текущей после регистрации пользователя. При обычных условиях таковой должна быть основная база данных, применяемая в приложении. Если этот параметр остается незаданным, то по умолчанию используется база данных master (обычно такой вариант является неприемлемым, поэтому рекомендуется всегда задавать указанный параметр) ©def language Задает национальный язык, применяемый по умолчанию данным пользователем. Если задано определенное значение параметра локализации, то этот параметр позволяет переопределить значение, предусмотренное в системе по умолчанию Окончание табл. 23.2 Параметр Описание @sid ©encryptopt Задает двоичное число, которое становится системным идентификатором (System IDentifJer - SID) для создаваемой учетной записи. Если значение sid не установлено, то СУБД SQL Server генерирует такое значение автоматически. Значения sid должны быть уникальными, поэтому, определяя параметр @sid, необходимо следить за тем, чтобы его значение не было уже задано в системе. Возможность применения конкретного значения siD может оказаться удобной, если требуется восстановить базу данных на другом сервере или перенести информацию учетной записи в связи с какой-то другой причиной Информация об идентификаторе и пароле, относящаяся к учетной записи пользователя, хранится в таблице sysusers базы данных master. Параметр ©encryptopt определяет, должен ли быть зашифрован пароль, хранящийся в базе данных master, или нет. По умолчанию (или в случае задания NULL-значения этого параметра) пароль зашифрован. В качестве друтх опций этого параметра может применяться значение skip encryption, которое указывает, что пароль не зашифрован, и значение skip encryption old, которое предусмотрено лишь для обеспечения обратной совместимости и не должно использоваться Вполне очевидно, что большинство параметров хранимой процедуры sp addlogin непосредственно соответствует параметрам оператора CREATE LOGIN, поэтому автор рекомендует задавать ее параметры в соответствии с приведенным выше описанием, если только хранимая процедура sp addlogin не используется для обеспечения обратной совместимости. Хранимая процедура sp password Коль скоро решено воспользоваться хранимой процедурой sp addlogin, необходимо прибегнуть и к использованию хранимой процедуры sp password. Дело в том, что оператор ALTER LOGIN позволяет обеспечить сопровождение не только учетной записи, но и пароля, а в хранимой процедуре sp addlogin такая возможность не предусмотрена, поэтому для данной цели применяется хранимая процедура sp pas sword. Синтаксис вызова этой хранимой процедуры является довольно несложным: sp password [[©old =] <old password>,] [©new =] <new password> [, [©loginame =] <login>] Как и следует ожидать, параметры @new и @old позволяют задать новый и старый пароли. Если задача смены пароля возложена на администратора, то он должен получить старый и новый пароли от пользователя и передать их в хранимую процедуру. Но следует отметить, что параметр ©loginame является необязательным. Если этот параметр не задан, то подразумевается, что должна быть произведена смена пароля, относящегося к учетной записи, которая применялась для создания текущего соединения. Необходимо учитывать, что хранимая процедура sp pas sword не может вызываться на выполнение в составе транзакции. В большинстве систш, предусмотрено, что при смене пароля новый пароль должен быть введен дважды. Это необходимо для проверки правильности ввода нового пароля. Но в хранимой процедуре sp password не предусмотрено задание нового пароля дважды. Это означает, что при создании интерфейса, с помощью которого пользователь мог бы сменить свой пароль в СУБД SQL Server, на основе хранимой процедуры sp password разработчик должен сам предусмотреть проверку правильности ввода нового пароля. Средства проверки нового пароля в клиентском приложении, которые требуют повторного ввода пароля, должны вступать в действие еще до того, как в этюм приложении будет вызвана процедура sppassword. То же самое относится и к оператору ALTER LOGIN. Хранимая процедура sp grantlogin Хранимая процедура sp grantlogin позволяет реализовать функциональные возможности оператора CREATE LOGIN. . . FROM, относящиеся к учетным записям Windows (при этом сертификаты и асимметричные ключи не поддерживаются, поскольку их применение не было предусмотрено до выхода версии SQL Server 2005). Синтаксис вызова хранимой процедуры sp grant login является несложным: sp grantlogin [©loginname = ]<Domain Name>\<Windows User Name> Интегрированные средства обеспечения безопасности Windows Средства обеспечения безопасности Windows предоставляют возможность связывать учетные записи, которые определены в заслуживающих доверия доменах Windows, с учетными записями SQL Server. Эта модель обеспечения безопасности позволяет исходить из существующих учетных записей пользователей или групп домена Windows и предоставлять им непосредственно права доступа к объектам СУБД SQL Server, не требуя от пользователей поддерживать отдельные пароли и отдельно проводить регистрацию. Средства обеспечения безопасности Windows предоставляют следующие преимущества. Управление всеми правами досттта пользователей из единого приложения. Предоставление пользователям прав доступа к объектам СУБД SQL Server путем простого добавления пользователя к группе Windows (благодаря этому часто обнаруживается, что администратору даже не требуется подключаться к СУБД SQL Server для предоставления прав доступа какому-то пользователю). Пользователям не требуется запоминать больше одного идентификатора учетной записи и пароля. В следующем разделе приведена информация о том, как можно предоставить определенные права конкретным пользователям. Права пользователя Проще всего можно определить понятие прав пользователя как набор разрешений и запретов, связанных с выполнением указанных действий. Причем даже это простое определение является вполне приемлемым.
|
© 2006 - 2024 pmbk.ru. Генерация страницы: 0
При копировании материалов приветствуются ссылки. |