Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Laby_po_ZI.doc
Скачиваний:
187
Добавлен:
12.05.2015
Размер:
1 Мб
Скачать
☆

Надання доступу іменам входу sql Server

В режимі перевірки автентичності Windows та SQL Server також можна створити імена входу SQL Server і керувати ними. При створені імені входу SQL Server необхідно задати для цього імені входу пароль. Користувачі мають вказувати пароль при з’єднанні з екземпляром SQL Server. При створені імені входу SQL Server можна задати для нього ім’я бази даних і мову за умовчанням.

Доступ до екземпляра SQL Server можна надати, створивши ім’я входу SQL Server або шляхом безпосереднього введення команд SQL, або через інтерфейс SQL Server Management Studio. В наступному прикладі створюємо ім’я входу SQL Server "Mary" і назначаємо для користувача Mary базу даних Adventure Works вякості бази даних за умовчанням.

CREATE LOGIN Mary

WITH PASSWORD = '34TY$$543',

DEFAULT_DATABASE =AdventureWorks;

В процесі інсталяції SQL Server створюється одне ім’я входу SQL Server - sa. Ім’я входу sa створюється у будь-якому випадку, навіть якщо ви вибрали в процесі інсталяції режим перевірки автентичності Windows.

Права доступу до екземпляра sql Server

Для розмежування доступу SQL Server надаються серверні ролі:

  • bulkadmin – може виконувати вираз BULK INSERT

  • dbcreator – може створювати, змінювати, видаляти і відновлювати бази даних

  • diskadmin – може управляти файлами на диску

  • processadmin – може завершати процеси

  • securityadmin – може керувати іменами входу і назначати дозвіл

  • serveradmin – може змінювати параметри сервера і завершати роботу сервера

  • setupadmin – може керувати зв’язаними серверами і виконувати системні збережені процедури

  • sysadmin – може виконувати на сервері будь-які дії

Додавання імені входу до серверної ролі. Додати ім’я входу до існуючої серверної ролі можна за допомогою системної збереженої функції sp_addsrvrolemember. Наступний приклад додає Mary до системної ролі sysadmin:

EXECUTE sp_addsrvrolemember "Mary", "sysadmin";

Надання доступу до баз даних

Всі імена входу, за виключенням серверної ролі sysadmin, мають бути співставленні користувачам баз даних, які, в свою чергу, співставленні базі даних, до якої їм потрібен доступ. Члени ролі sysadmin співставленні користувачу dbo у всіх базах сервера.

Додавання користувача бази даних

Додати користувача бази даних можна за допомогою інструкції CREATE USER. Наступний приклад коду T-SQL створює ім’я входу Peter і співставленого з ним користувача в базі даних Adventure Works:

  • Створюємо ім’я входу Peter

CREATE LOGIN Peter WITH PASSWORD='Tyu87IOR0';

  • Змінюємо контекст з’єднання на базу даних AdventureWorks.

USE AdventureWorks;

GO

  • Додаємо користувача бази даних Peter, який співставлений імені входу Peter в БД AdventureWorks.

CREATE USER Peter FOR LOGIN Peter;

Керування користувачами бази даних

Перевірити чи має поточне ім’я входу доступ до бази даних можна за допомогою наступної інструкції:

SELECT HAS_DBACCESS("AdventureWorks");

Якщо необхідно тимчасово вимкнути доступ користувачу до бази даних, можна відізвати дозвіл CONNECTдля цього користувача. Наступний приклад відзиває дозвіл CONNECT для користувача Peter:

  • Змінюємо контекст з’єднання на базу даних AdventureWorks.

USE AdventureWorks;

GO

  • Відзиваємо дозвіл connect для Peter on the database AdventureWorks.

REVOKE CONNECT TO Peter;

Видалити користувача в базі даних можна за допомогою інструкції DROP USER.

Надання дозволу на базу даних

Створивши користувачів бази даних, необхідно керувати дозволами для цих користувачів. Це можна здійснити шляхом додавання користувачів в ролі бази даних або надавши самим користувачам відповідний дозвіл.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]