Вимоги: Вебсайт використовує SQL Server як постійне сховище і потребує налаштування адреси бази даних, облікового запису, пароля та конфігурації рядків з'єднанняДля користувачів SA, привілеї трохи занадто великіЯ хочу створити нового користувача, який дозволить усі дозволи лише певній базі даних. У цій статті використовується інструмент SQL Server Management Studio для підключення до бази даних SQL Server 2019 як приклад.
Відкрийте SQL Server Management Studio і увійдіть за допомогою автентифікації Windows (або використовуйте свій обліковий запис SA).
Спочатку створіть нову базу даних TestDB за допомогою наступної команди:
Натисніть ліве меню [Безпека] --- [Вхід], потім правою кнопкою миші "Увійти" і виберіть [Новий вхід], як показано нижче:
У вкладці «Загальне» введіть ім'я входу, пароль, підтверджуйте пароль і виберіть базу даних за замовчуванням, як показано на наступному рисунку:
Перейдіть на карту користувача, перевірте цільову базу даних [TestDB] і надайте публічні db_owner дозволи (щоб новий користувач itsvse міг мати адміністраторські права на базі даних TestDB), як показано на рисунку нижче:
Нарешті, натисніть OK.
Ми намагаємося використовувати новоствореного користувача для входу в базу даних, як показано на наступному рисунку:
Хоча ви можете бачити інші бази даних, при спробі отримати до них доступ ви отримаєте таку помилку:
Назва: Microsoft SQL Server Management Studio ------------------------------
Тест бази даних недоступний. (Об'єктДослідник)
------------------------------ Кнопку:
Ти впевнений ------------------------------
Нарешті, додайте опис дозволів:
'db_owner' — має повні права на доступ до бази даних, включно з дозволами на видалення бази даних 'db_accessadmin' — дає користувачу бази даних лише дозвіл створювати інших користувачів бази, але не дозволяє створювати зареєстрованих користувачів. 'db_securityadmin' — Керувати повними правами, власністю на об'єкти, ролями та членством у ролях 'db_ddladmin' — може видавати всі DDL (Create, Alter і Drop), але не GRANT, REVOKE або DENY 'db_backupoperator' — Дозвіл на резервне копіювання та відновлення бази даних [резервне копіювання та відновлення також можна робити через SQL Sever Management Studio] 'db_datareader' — може вибрати всі дані з будь-якої таблиці користувачів у базі даних 'db_datawriter' — може змінювати всі дані в будь-якій таблиці користувачів у базі даних 'db_denydatareader' — не може запитувати жодні дані в жодній таблиці користувачів у базі даних 'db_denydatawriter' — не може змінювати жодних даних у жодній користувацькій таблиці бази даних
(Кінець)
|