Sql-Server

使用 Windows 組身份驗證連接到 SQL Server

  • May 9, 2011

我有這個 SQL Server 2005 Express 安裝,它有一個我試圖通過一個軟體連接到的數據庫,它給我一個錯誤“無法使用使用者 ‘mydomain\myuser’ 進行連接。意思是,它正在嘗試使用我的域進行連接使用者作為預設值。沒關係。這實際上是我想要的。但我希望能夠將使用者添加到組中並將該組權限授予數據庫,而不是指定每個使用者。

因此,我繼續創建了一個我已將自己添加到的廣告組。然後我在 Microsoft SQL Server Management Studio 中的安全/登錄下添加了這個 AD 組,只使用了一段 SQL 查詢程式碼:

USE [myDatabase]
GO
CREATE LOGIN [myDomain\Groupname] FROM WINDOWS 
WITH 
  DEFAULT_DATABASE=[MYSQLDatabase];

這在“安全”選項卡下添加了組。但是在嘗試使用客戶端的軟體進行連接時,我仍然會收到此錯誤。我還需要設置什麼?我什至嘗試點擊執行上述查詢片段後出現的新添加的組,並添加了每個伺服器角色。使用者已被授予對數據庫引擎的訪問權限(預設完成)並在登錄下啟用(預設完成)。

我在這裡想念什麼?

你已經創建了登錄,它告訴伺服器你是誰。現在,您需要告訴各個數據庫您是誰以及您應該獲得什麼權利。您將通過將使用者添加到各個數據庫然後向使用者添加權限來完成此操作。就像是:

use [db]
go
create user [myDomain\Groupname] for login [myDomain\Groupname]
go
grant select on schema::dbo to [myDomain\Groupname]
go

這會將使用者添加到數據庫“db”,並授予它對 dbo 模式中所有對象的讀取權限。

引用自:https://serverfault.com/questions/267619