Как добавить группу пользователей Active Directory в качестве входа в SQL Server

У меня есть приложение .net, которое подключается к SQL Server с помощью проверки подлинности windows.

мы не можем использовать проверку подлинности SQL Server в приложении. У нас есть много пользователей Active Directory для нашего проекта. Поэтому мы должны создать отдельную учетную запись входа для каждого пользователя Active Directory в SQL Server, а не создавать отдельную учетную запись входа для каждого пользователя AD, есть ли способ использовать группу пользователей active directory в SQL Server?

2 ответов


в среде SQL Server Management Studio перейдите в Object Explorer > (your server) > Security > Logins и щелкните правой кнопкой мыши New Login:

enter image description here

затем в появившемся диалоговом окне выберите типы объектов, которые вы хотите увидеть (Groups по умолчанию отключено-проверьте это!) и выберите место, где вы хотите искать объекты (например, использование Entire Directory), а затем найдите свою группу объявлений.

enter image description here

теперь у вас есть обычный логин SQL Server - так же, как при создании одного объявления пользователь. Дайте этому новому логину разрешения на базы данных, которые ему нужны, и вы идете!

любой член этой группы AD теперь может войти в SQL Server и использовать вашу базу данных.


вы можете использовать T-SQL:

use master
GO
CREATE LOGIN [NT AUTHORITY\LOCALSERVICE] FROM WINDOWS WITH
DEFAULT_DATABASE=yourDbName
GO
CREATE LOGIN [NT AUTHORITY\NETWORKSERVICE] FROM WINDOWS WITH
DEFAULT_DATABASE=yourDbName

Я использую это как часть восстановления с рабочего сервера на испытательной машине:

USE master
GO
ALTER DATABASE yourDbName SET OFFLINE WITH ROLLBACK IMMEDIATE
RESTORE DATABASE yourDbName FROM DISK = 'd:\DropBox\backup\myDB.bak'
ALTER DATABASE yourDbName SET ONLINE
GO
CREATE LOGIN [NT AUTHORITY\LOCALSERVICE] FROM WINDOWS WITH
DEFAULT_DATABASE=yourDbName
GO
CREATE LOGIN [NT AUTHORITY\NETWORKSERVICE] FROM WINDOWS WITH
DEFAULT_DATABASE=yourDbName
GO

вам нужно будет использовать локализованное имя служб в случае немецких или французских окон, см. как создать имя Входа SQL Server для учетной записи службы в неанглийской Windows?