Тази статия е огледална статия за машинен превод, моля, кликнете тук, за да преминете към оригиналната статия.

Изглед: 7117|Отговор: 2

[Източник] Новите потребители на SQL Server имат право да имат достъп само до определени бази данни

[Копирай линк]
Публикувано в 22.05.2022 г. 12:26:37 ч. | | | |
Изисквания: Уебсайтът използва 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
------------------------------

Базата данни Test не е достъпна. (ОбектИзследовател)

------------------------------
Копче:

Сигурни ли сте
------------------------------


Накрая, прикачете описание на разрешенията:

'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' - не може да променя никакви данни в която и да е потребителска таблица в базата данни

(Край)





Предишен:Плъгинът за интернационализация на jQuery Datatables
Следващ:Практическо използване на GitHub Actions за компилиране на OpenWRT фърмуер
Публикувано в 22.05.2022 г. 15:21:07 ч. |
Ела и учи отново
 Хазяин| Публикувано в 11.02.2025 г. 17:03:54 ч. |
SQL скриптът е следният:


Отричане:
Целият софтуер, програмни материали или статии, публикувани от Code Farmer Network, са само за учебни и изследователски цели; Горното съдържание не трябва да се използва за търговски или незаконни цели, в противен случай потребителите ще понесат всички последствия. Информацията на този сайт идва от интернет, а споровете за авторски права нямат нищо общо с този сайт. Трябва напълно да изтриете горното съдържание от компютъра си в рамките на 24 часа след изтеглянето. Ако ви харесва програмата, моля, подкрепете оригинален софтуер, купете регистрация и получете по-добри услуги. Ако има нарушение, моля, свържете се с нас по имейл.

Mail To:help@itsvse.com