2012-11-01 91 views
1

我在Windows 8企業版中將SQL Server 2012作爲獨立實例安裝。它在混合模式下運行。當前登錄的帳戶是本地MACHINE \ Administrators的成員,本地BUILTIN \ Administrators組在sysadmin角色中。爲了更好的衡量,當前用戶還在MACHINE \ SQLAdmins組中,該組也處於sysadmin角色。如何在不使用RunAs的情況下使用Windows身份驗證和SSMS?

當我從快捷方式啓動SQL Server Management Studio(SSMS)時,我無法使用Windows身份驗證。我得到以下錯誤:

TITLE: Connect to Server 
Cannot connect to INSTANCENAME. 
ADDITIONAL INFORMATION: 
Login failed for user 'MACHINE\user'. (Microsoft SQL Server, Error: 18456) 
For help, click: http://go.microsoft.com/fwlink?ProdName=Microsoft%20SQL%20Server&EvtSrc=MSSQLServer&EvtID=18456&LinkId=20476 

事實上,如果我從一個快捷方式啓動LinqPad,我無法連接到使用依賴於Windows身份驗證連接字符串的服務器。

但是,如果我使用RunAs Administrator以提升的特權運行SSMS或LinqPad,則可以使用Windows身份驗證,並且體驗如預期。

或者,我可以將RunAs命令包含到SSMS快捷方式中,如下所示。

C:\Windows\System32\runas.exe /USER:MACHINE\user "C:\Program Files (x86)\Microsoft SQL Server\110\Tools\Binn\ManagementStudio\Ssms.exe" 

令人驚訝的是,雙擊該快捷方式會提示我輸入當前用戶的密碼。但是,一旦發生重新認證,SSMS將允許當前用戶的Windows身份驗證。

問題是,當我雙擊快捷方式並最終運行LinqPad或SSMS或其他任何通過Windows身份驗證連接到數據庫的應用程序時,如何在不提升我的權限的情況下運行SSMS?

+0

您是否已將用戶帳戶添加到「sysadmin」角色或「machine \ administrators'組中?如果是後者,當你升高時,你只是該組的成員。 – Andomar

回答

2

當您使用Run as時,您是否有機會提供安裝SQL Server的用戶的憑據?

參見this SO question第二個答案:

In previous versions of SQL the BUILTIN\Administrators group was given the sysadmin role. Local administrators are not given login privileges by default in SQL 2008. Only the user performing the install is defaulted sa privileges. During install you have the option to add additional users, but you apparently did not.

You will need to login as sa and configure whatever windows logins are required (such as the local administrator account).

我有同樣的事情發生,我的用戶帳戶是本地管理員,卻無法登錄,直到誰安裝SQL Server的人加入我的Windows帳戶到SQL Server登錄手動。

+0

在我發佈此問題之前,我在安裝過程中重新安裝並添加了MACHINE \ Administrators。是RunAs用戶進行了安裝,但我也創建了MACHINE \ SQLAdmins後安裝並添加了具有sysadmin角色的組。安裝用戶位於MACHINE \ SQLAdmins中,但仍需要RunAs才能使用Windows身份驗證。 – jedatu

+0

錯誤日誌中是否有任何內容可能會給您提供線索? – SchmitzIT

+0

用戶'MACHINE \ User'登錄失敗。原因:基於令牌的服務器訪問驗證因基礎結構錯誤而失敗。檢查以前的錯誤。 [客戶端:<本地計算機>]我沒有看到相關的以前的錯誤。 (僅供參考:我在VMware中運行) – jedatu

0

在以前的SQL版本中,BUILTIN \ Administrators組具有sysadmin角色。默認情況下,本地管理員沒有在SQL 2008中授予登錄權限。只有執行安裝的用戶才具有默認權限。在安裝過程中,您可以選擇添加額外的用戶,但顯然沒有。

相關問題