我有一个.net应用程序使用Windows身份验证连接到SQL Server。如何在SQL Server中添加Active Directory用户组作为登录
我们不能在应用程序中使用SQL Server身份验证。我们的项目中有很多Active Directory用户。因此,我们必须为每个Active Directory用户在SQL Server中创建单独的登录帐户,而不是为每个AD用户创建单独的登录帐户,有什么方法可以在SQL Server中使用活动目录用户组?
我有一个.net应用程序使用Windows身份验证连接到SQL Server。如何在SQL Server中添加Active Directory用户组作为登录
我们不能在应用程序中使用SQL Server身份验证。我们的项目中有很多Active Directory用户。因此,我们必须为每个Active Directory用户在SQL Server中创建单独的登录帐户,而不是为每个AD用户创建单独的登录帐户,有什么方法可以在SQL Server中使用活动目录用户组?
在SQL Server Management Studio中,去Object Explorer > (your server) > Security > Logins
并右键单击New Login
:
在弹出的对话框中
然后,挑选类型你想看到的对象(Groups
被禁用默认情况下 - 检查它!)并选择你想查找对象的位置(例如使用Entire Directory
),然后找到你的AD组。
您现在有一个常规的SQL Server登录名 - 当你创建一个单一的AD用户只喜欢。为新的登录提供所需数据库的权限,然后离开!
该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
您将需要使用的服务的本地化名称德国或法国Windows的情况下,请参阅How to create a SQL Server login for a service account on a non-English Windows?
谢谢对此,理想。 – Derek 2012-07-13 11:37:01
有没有像上面那样在mysql中创建组的机会? – uzay95 2012-07-17 11:14:07