web-dev-qa-db-ja.com

SQL ServerでログインとしてActive Directoryユーザーグループを追加する方法

Windows認証を使用してSQL Serverに接続している.netアプリケーションがあります。

アプリケーションでSQL Server認証を使用することはできません。私たちのプロジェクトには多くのActive Directoryユーザーがいます。したがって、ADユーザーごとに個別のログインアカウントを作成するのではなく、SQL ServerのActive Directoryユーザーごとに個別のログインアカウントを作成する必要があります。SQLServerでActive Directoryユーザーグループを使用する方法はありますか?

98
Jibu P C_Adoor

SQL Server Management Studioで、Object Explorer > (your server) > Security > Loginsに移動し、New Loginを右クリックします。

enter image description here

次に、ポップアップするダイアログボックスで、表示するオブジェクトの種類を選択し(Groupsはデフォルトで無効になっています-チェックしてください!)、オブジェクトを検索する場所を選択し(たとえば、Entire Directoryを使用して)、 ADグループ。

enter image description here

これで、通常のSQL Serverログインができました-単一のADユーザー用にログインを作成するときと同じです。その新しいログインに、必要なデータベースのアクセス許可を与えてください。

そのADグループのメンバーは、SQL Serverにログインしてデータベースを使用できるようになりました。

147
marc_s

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の場合は、サービスのローカライズされた名前を使用する必要があります。 英語以外のWindowsでサービスアカウントのSQL Serverログインを作成する方法?

20
Tomas Kubes