設定 Windows 服務帳戶與權限

SQL Server 中的每項服務代表一個或一組處理序,用以管理 SQL Server 作業對 Windows 的驗證。 本主題描述此 SQL Server 版本的預設服務組態,以及可以在 SQL Server 安裝期間和安裝完成後設定的 SQL Server 服務組態選項。

目錄

本主題分成以下各節:

  • SQL Server 安裝的服務

  • 服務屬性和組態

    • 預設服務帳戶

      • 變更帳戶屬性
    • Windows 7 和 Windows Server 2008 R2 中提供的新帳戶類型

    • 自動啟動

    • 在自動安裝期間設定服務

    • 防火牆通訊埠

  • 服務權限

    • 服務組態和存取控制

    • Windows 權限和權利

    • 授與 SQL Server 個別服務 SID 或本機 Windows 群組的檔案系統權限

    • 授與其他 Windows 使用者帳戶或群組的檔案系統權限

    • 與不常見磁碟位置相關的檔案系統權限

    • 檢閱其他考量

    • 登錄權限

    • WMI

    • 具名管道

  • 提供

    • Database Engine 提供

      • Windows 主體

      • sa 帳戶

      • SQL Server 個別服務 SID 登入和權限

      • SQL Server Agent 登入和權限

      • HADRON 和 SQL 容錯移轉叢集執行個體和權限

      • SQL 寫入器和權限

      • SQL WMI 和權限

    • SSAS 提供

    • SSRS 提供

  • 從舊版升級

  • 附錄

    • 服務帳戶的描述

    • 識別執行個體感知和執行個體非感知服務

    • 當地語系化服務名稱

SQL Server 安裝的服務

依據您決定安裝的元件而定,SQL Server 安裝程式會安裝下列服務:

  • SQL Server Database Services - SQL Server 關聯式 Database Engine 的服務。 可執行檔為 <MSSQLPATH>\MSSQL\Binn\sqlservr.exe。

  • SQL Server Agent - 執行作業、監視 SQL Server、引發警示,以及將某些管理工作自動化。 SQL Server Agent 服務存在,但是在 SQL Server Express 執行個體上停用。 可執行檔為 <MSSQLPATH>\MSSQL\Binn\sqlagent.exe。

  • Analysis Services - 有提供商業智慧應用程式的線上分析處理 (OLAP) 和資料採礦功能。 可執行檔為 <MSSQLPATH>\OLAP\Bin\msmdsrv.exe。

  • Reporting Services - 管理、執行、建立、排程和傳遞報表。 可執行檔為 <MSSQLPATH>\Reporting Services\ReportServer\Bin\ReportingServicesService.exe。

  • Integration Services - 提供 Integration Services 封裝儲存體和執行的管理支援。 可執行檔路徑為 <MSSQLPATH>\110\DTS\Binn\MsDtsSrvr.exe

  • SQL Server Browser - 提供 SQL Server 連接資訊給用戶端電腦的名稱解析服務。 可執行檔路徑為 c:\Program Files (x86)\Microsoft SQL Server\90\Shared\sqlbrowser.exe

  • 全文檢索搜尋 - 可以快速地在結構化和半結構化資料的內容與屬性上建立全文檢索索引,以針對 SQL Server 提供文件篩選和斷詞。

  • SQL 寫入器 - 允許備份與還原應用程式在磁碟區陰影複製服務 (VSS) 架構中操作。

  • SQL Server Distributed Replay Controller - 跨多部 Distributed Replay Client 電腦提供重新執行追蹤 Orchestration。

  • SQL Server Distributed Replay Client - 一部或多部搭配 Distributed Replay controller 運作的分散式重新執行用戶端電腦,以針對 SQL Server Database Engine 執行個體模擬並行工作負載。

回到頁首

服務屬性和組態

用來啟動並執行 SQL Server 的啟動帳戶可以是網域使用者帳戶、本機使用者帳戶、受管理的服務帳戶、虛擬帳戶或內建的系統帳戶。 若要啟動並執行,SQL Server 中的每個服務都必須在安裝期間設定啟動帳戶。

本節描述可設定用來啟動 SQL Server 服務的帳戶、SQL Server 安裝程式使用的預設值、每個服務 SID 的概念、啟動選項,以及設定防火牆。

  • 預設服務帳戶

  • 自動啟動

  • 設定服務啟動類型

  • 防火牆通訊埠

預設服務帳戶

下表列出安裝所有元件時,安裝程式所使用的預設服務帳戶。 列出的預設帳戶就是建議的帳戶 (除非另有附註)。

獨立伺服器或網域控制站

元件

Windows Vista 和Windows Server 2008

Windows 7 和 Windows Server 2008 R2

Database Engine

NETWORK SERVICE

虛擬帳戶*

SQL Server Agent

NETWORK SERVICE

虛擬帳戶*

SSAS

NETWORK SERVICE

虛擬帳戶*

SSIS

NETWORK SERVICE

虛擬帳戶*

SSRS

NETWORK SERVICE

虛擬帳戶*

SQL Server Distributed Replay Controller

NETWORK SERVICE

虛擬帳戶*

SQL Server Distributed Replay Client

NETWORK SERVICE

虛擬帳戶*

FD 啟動器 (全文檢索搜尋)

LOCAL SERVICE

虛擬帳戶

SQL Server Browser

LOCAL SERVICE

LOCAL SERVICE

SQL Server VSS Writer

LOCAL SYSTEM

LOCAL SYSTEM

* 需要 SQL Server 電腦外部的資源時,Microsoft 建議您使用受管理的服務帳戶 (MSA),並且為帳戶設定所需的最低權限。

SQL Server 容錯移轉叢集執行個體

元件

Windows Server 2008

Windows Server 2008 R2

Database Engine

無。 提供網域使用者帳戶。

提供網域使用者帳戶。

SQL Server Agent

無。 提供網域使用者帳戶。

提供網域使用者帳戶。

SSAS

無。 提供網域使用者帳戶。

提供網域使用者帳戶。

SSIS

NETWORK SERVICE

虛擬帳戶

SSRS

NETWORK SERVICE

虛擬帳戶

FD 啟動器 (全文檢索搜尋)

LOCAL SERVICE

虛擬帳戶

SQL Server Browser

LOCAL SERVICE

LOCAL SERVICE

SQL Server VSS Writer

LOCAL SYSTEM

LOCAL SYSTEM

回到頁首

變更帳戶屬性

重要事項重要事項
  • 請一律利用 SQL Server 工具 (如 SQL Server 組態管理員) 來變更 SQL Server Database Engine 或 SQL Server Agent 服務所用的帳戶,或變更帳戶的密碼。 除了變更帳戶名稱之外,SQL Server 組態管理員也會執行其他組態,例如,更新 Windows 本機安全存放區,它會保護 Database Engine 的服務主要金鑰。 其他工具 (例如 Windows 服務控制管理員) 可以變更帳戶名稱,但無法變更所有必要的設定。

  • 對於您在 SharePoint 伺服陣列中部署的 Analysis Services 執行個體,請一律使用 SharePoint 管理中心來變更 PowerPivot 服務 應用程式和 Analysis Services 服務 的伺服器帳戶。 當您使用管理中心時,相關聯的設定和權限都會更新為使用新的帳戶資訊。

  • 若要變更 Reporting Services 選項,請使用 Reporting Services 組態工具。

回到頁首

Windows 7 和 Windows Server 2008 R2 中提供的新帳戶類型

Windows 7 和 Windows Server 2008 R2 有兩種新的服務帳戶類型,分別稱為「受管理的服務帳戶」(Managed Service Account,MSA) 和「虛擬帳戶」(Virtual Account)。受管理的服務帳戶和虛擬帳戶的設計在於提供重要的應用程式 (例如 SQL Server) 並與自己的帳戶隔離,同時不需系統管理員手動管理服務主要名稱 (SPN) 和這些帳戶的認證。 這些帳戶可讓長期管理服務帳戶使用者、密碼和 SPN 的工作更輕鬆。

  • 受管理的服務帳戶

    受管理的服務帳戶 (MSA) 是一種網域帳戶,由網域控制站建立和管理。 這個帳戶會指派給執行服務的單一成員電腦使用。 密碼是由網域控制站自動管理。 您無法使用 MSA 登入電腦,但是電腦可以使用 MSA 啟動 Windows 服務。 MSA 能夠向 Active Directory 註冊服務主要名稱 (SPN)。 MSA 的命名包含 $ 後置詞,例如 DOMAIN\ACCOUNTNAME$。 指定 MSA 時,讓密碼空白。 由於 MSA 是指派給單一電腦,而不能用於 Windows 叢集的不同節點上。

    [!附註]

    網域系統管理員必須先在 Active Directory 中建立 MSA,SQL Server 安裝程式才能將其用於 SQL Server 服務。

    [!附註]

    目前不支援群組受管理的服務帳戶。

  • 虛擬帳戶

    Windows Server 2008 R2 和 Windows 7 中的虛擬帳戶是「受管理的本機帳戶」(Managed Local Account),會提供下列功能來簡化服務管理工作。 虛擬帳戶是自動管理的,而且虛擬帳戶可以在網域環境中存取網路。 如果在 Windows Server 2008 R2 或 Windows 7 上安裝 SQL Server 的期間針對服務帳戶使用預設值,則會使用以執行個體名稱做為服務名稱的虛擬帳戶,其格式為 NT SERVICE\<SERVICENAME>。 以虛擬帳戶執行的服務會使用電腦帳戶的認證存取網路資源,其格式為 <domain_name>\<computer_name>$。 指定虛擬帳戶啟動 SQL Server 時,請讓密碼空白。 如果虛擬帳戶無法註冊服務主要名稱 (SPN),請手動註冊 SPN。 如需手動註冊 SPN 的詳細資訊,請參閱<註冊 Kerberos 連接的服務主體名稱>。

    [!附註]

    虛擬帳戶無法用於 SQL Server 容錯移轉叢集執行個體,因為虛擬帳戶在叢集的每一個節點上不會有相同的 SID。

    下表列出虛擬帳戶名稱的範例。

    服務

    虛擬帳戶名稱

    Database Engine 服務的預設執行個體

    NT SERVICE\MSSQLSERVER

    名為 PAYROLL 之 Database Engine 服務的具名執行個體

    NT SERVICE\MSSQL$PAYROLL

    SQL Server 預設執行個體上的SQL Server

    NT SERVICE\SQLSERVERAGENT

    名為 PAYROLL 之 SQL Server 執行個體上的 SQL Server Agent 服務

    NT SERVICE\SQLAGENT$PAYROLL

如需受管理的服務帳戶和虛擬帳戶的詳細資訊,請參閱服務帳戶的逐步指南受管理的服務帳戶和虛擬帳戶概念區段,以及受管理的服務帳戶常見問題集 (FAQ)

安全性注意事項:  永遠使用可能的最低使用者權限來執行 SQL Server 服務。 如果可能的話,使用 MSA 或虛擬帳戶。 如果無法使用 MSA 或虛擬帳戶,請使用特定低權限的使用者帳戶或網域帳戶,而不要使用 SQL Server 服務的共用帳戶。 針對不同的 SQL Server 服務使用個別的帳戶。 請勿將其他權限授與 SQL Server 服務帳戶或服務群組。 權限將透過群組成員資格授與,或直接授與服務 SID (如果支援服務 SID)。

自動啟動

除了具有使用者帳戶之外,每項服務有三個可能的啟動狀態供使用者控制:

  • 已停用:已安裝服務但目前未執行。

  • 手動:已安裝此服務,但只有另一項服務或應用程式需要它的功能時才會啟動。

  • 自動:服務會由作業系統自動啟動。

啟動狀態會在安裝過程中選取。 安裝具名執行個體時,SQL Server Browser 服務應該設定為自動啟動。

在自動安裝期間設定服務

下表顯示可以在安裝期間設定的 SQL Server 服務。 若為自動安裝,您可以在組態檔案中或從命令提示字元使用這些參數。

SQL Server 服務名稱

自動安裝的參數1

MSSQLSERVER

SQLSVCACCOUNT、SQLSVCPASSWORD、SQLSVCSTARTUPTYPE

SQLServerAgent2

AGTSVCACCOUNT、AGTSVCPASSWORD、AGTSVCSTARTUPTYPE

MSSQLServerOLAPService

ASSVCACCOUNT、ASSVCPASSWORD、ASSVCSTARTUPTYPE

ReportServer

RSSVCACCOUNT、RSSVCPASSWORD、RSSVCSTARTUPTYPE

Integration Services

ISSVCACCOUNT、ISSVCPASSWORD、ISSVCSTARTUPTYPE

SQL Server Distributed Replay Controller

DRU_CTLR、CTLRSVCACCOUNT、CTLRSVCPASSWORD、CTLRSTARTUPTYPE、CTLRUSERS

SQL Server Distributed Replay Client

DRU_CLT、CLTSVCACCOUNT、CLTSVCPASSWORD、CLTSTARTUPTYPE、CLTCTLRNAME、CLTWORKINGDIR、CLTRESULTDIR

1如需自動安裝的詳細資訊和範例語法,請參閱<從命令提示字元安裝 SQL Server 2012>。

2SQL Server Express 和 SQL Server Express with Advanced Services 的執行個體會停用 SQL Server Agent 服務。

防火牆通訊埠

大部分情況下,在初始安裝時,Database Engine 可以藉由像是與 SQL Server 安裝在同一部電腦上的 SQL Server Management Studio 這類工具進行連接。 SQL Server 安裝程式不會在 Windows 防火牆中開啟通訊埠。 除非將 Database Engine 設定為在 TCP 通訊埠上接聽,而且已在 Windows 防火牆中開啟適當的通訊埠進行連接,否則無法從其他電腦連接。 如需詳細資訊,請參閱<設定 Windows 防火牆以允許 SQL Server 存取>。

回到頁首

服務權限

本節描述 SQL Server 安裝程式針對 SQL Server 服務的個別服務 SID 設定的權限。

  • 服務組態和存取控制

  • Windows 權限和權利

  • 授與 SQL Server 個別服務 SID 或 SQL Server 本機 Windows 群組的檔案系統權限

  • 授與其他 Windows 使用者帳戶或群組的檔案系統權限

  • 與不常見磁碟位置相關的檔案系統權限

  • 檢閱其他考量

  • 登錄權限

  • WMI

  • 具名管道

服務組態和存取控制

SQL Server 2012 會對它的每個服務啟用個別服務 SID,以提供深度的服務隔離和防禦。 每個服務 SID 都是衍生自服務名稱,而且是該服務專用的。 例如,Database Engine 服務的服務 SID 名稱可能是 NT Service\MSSQL$<InstanceName>。 服務隔離可讓服務存取特定物件,而不需要以高權限帳戶執行或降低物件的安全性保護。 SQL Server 服務可以透過使用包含服務 SID 的存取控制項目,來限制其資源的存取權。

[!附註]

在 Windows 7 和 Windows Server 2008 R2 上,個別服務 SID 可以是服務所使用的虛擬帳戶。

針對大部分元件,SQL Server 會直接為個別服務帳戶設定 ACL,因此不需重複資源 ACL 程序即可變更服務帳戶。

安裝 SSAS 時,會建立 Analysis Services 的個別服務 SID。 另外還會建立本機 Windows 群組,其命名格式為 **SQLServerMSASUser$computer_name$**instance_name。 個別服務 SID NT SERVICE\MSSQLServerOLAPService 會在本機 Windows 群組中授與成員資格,而本機 Windows 群組則是在 ACL 中授與適當的權限。 如果用來啟動 Analysis Services 服務的帳戶變更,SQL Server 組態管理員就必須變更部分 Windows 授權 (例如,以服務登入的權利),不過指派給本機 Windows 群組的權限仍然可以使用,而且不會有任何更新,因為個別服務 SID 並未變更。 這個方法可讓 Analysis Services 服務在升級期間重新命名。

在安裝 SQL Server 期間,SQL Server 安裝程式會為 SSAS 和 SQL Server Browser 服務建立本機 Windows 群組。 針對這些服務,SQL Server 會為本機 Windows 群組設定 ACL。

根據服務組態,在安裝或升級期間服務帳戶或服務 SID 會加入做為服務群組成員。

Windows 權限和權利

指派為用來啟動服務的帳戶需要有服務的啟動、停止和暫停權限。 SQL Server 安裝程式會自動指派此權限。 請先安裝遠端伺服器管理工具 (RSAT)。 請參閱適用 Windows 7 的遠端伺服器管理工具

下表顯示 SQL Server 安裝程式要求 SQL Server 元件所使用之個別服務 SID 或本機 Windows 群組需要有的權限。

SQL Server 服務

SQL Server 安裝程式授與的權限

SQL Server Database Engine:

(所有權利都會授與個別服務 SID。 預設執行個體:NT SERVICE\MSSQLSERVER. 具名執行個體:NT SERVICE\MSSQL$InstanceName。)

以服務登入 (SeServiceLogonRight)

取代處理序層級 Token (SeAssignPrimaryTokenPrivilege)

略過跨越檢查 (SeChangeNotifyPrivilege)

調整處理序的記憶體配額 (SeIncreaseQuotaPrivilege)

啟動 SQL 寫入器的權限

讀取事件記錄檔服務的權限

讀取遠端程序呼叫服務的權限

SQL Server Agent:1

(所有權利都會授與個別服務 SID。 預設執行個體:NT Service\SQLSERVERAGENT。 具名執行個體:NT Service\SQLAGENT$InstanceName。)

以服務登入 (SeServiceLogonRight)

取代處理序層級 Token (SeAssignPrimaryTokenPrivilege)

略過跨越檢查 (SeChangeNotifyPrivilege)

調整處理序的記憶體配額 (SeIncreaseQuotaPrivilege)

SSAS:

(所有權利都會授與本機 Windows 群組。 預設執行個體:SQLServerMSASUser$ComputerName$MSSQLSERVER。 具名執行個體:SQLServerMSASUser$電腦名稱$執行個體名稱。 PowerPivot for SharePoint 執行個體:SQLServerMSASUser$ComputerName$PowerPivot。)

以服務登入 (SeServiceLogonRight)

僅限使用表格式:

增加處理工作集 (SeIncreaseWorkingSetPrivilege)

調整處理序的記憶體配額 (SeIncreaseQuotaSizePrivilege)

鎖定記憶體分頁 (SeLockMemoryPrivilege) – 僅在頁面完全關閉時才需要此權限。

僅限容錯移轉叢集安裝:

提高排程優先權 (SeIncreaseBasePriorityPrivilege)

SSRS:

(所有權利都會授與個別服務 SID。 預設執行個體:NT SERVICE\ReportServer。 具名執行個體:NT SERVICE\$InstanceName。)

以服務登入 (SeServiceLogonRight)

SSIS:

(所有權利都會授與個別服務 SID。 預設執行個體及具名執行個體:NT SERVICE\MsDtsServer110。 Integration Services 沒有具名執行個體的個別處理序)。

以服務登入 (SeServiceLogonRight)

寫入應用程式事件記錄檔的權限。

略過跨越檢查 (SeChangeNotifyPrivilege)

在驗證之後模擬用戶端 (SeImpersonatePrivilege)

全文檢索搜尋:

(所有權利都會授與個別服務 SID。 預設執行個體:NT Service\MSSQLFDLauncher。 具名執行個體:NT Service\ MSSQLFDLauncher$InstanceName。)

以服務登入 (SeServiceLogonRight)

調整處理序的記憶體配額 (SeIncreaseQuotaPrivilege)

略過跨越檢查 (SeChangeNotifyPrivilege)

SQL Server Browser:

(所有權利都會授與本機 Windows 群組。 預設或具名執行個體:SQLServer2005SQLBrowserUser$ComputerName。 SQL Server Browser 的具名執行個體沒有個別處理序)。

以服務登入 (SeServiceLogonRight)

SQL Server VSS Writer:

(所有權利都會授與個別服務 SID。 預設或具名執行個體:NT Service\SQLWriter。 SQL Server VSS Writer 的具名執行個體沒有個別處理序)。

SQLWriter 服務會以 LOCAL SYSTEM 帳戶執行,該帳戶擁有所有必要的權限。 SQL Server 安裝程式不會檢查或授與此服務的權限。

SQL Server Distributed Replay Controller:

以服務登入 (SeServiceLogonRight)

SQL Server Distributed Replay Client:

以服務登入 (SeServiceLogonRight)

1SQL Server Agent 服務在 SQL Server Express 執行個體上為停用狀態。

回到頁首

授與 SQL Server 個別服務 SID 或本機 Windows 群組的檔案系統權限

SQL Server 服務帳戶必須有資源的存取權。 存取控制清單會針對個別服務 SID 或本機 Windows 群組設定。

重要事項重要事項

若為容錯移轉叢集安裝,則必須對本機帳戶的 ACL 設定共用磁碟上的資源。

下表顯示 SQL Server 安裝程式所設定的 ACL:

服務帳戶

檔案和資料夾

存取

MSSQLServer

Instid\MSSQL\backup

完整控制

 

Instid\MSSQL\binn

讀取、執行

 

Instid\MSSQL\data

完整控制

 

Instid\MSSQL\FTData

完整控制

 

Instid\MSSQL\Install

讀取、執行

 

Instid\MSSQL\Log

完整控制

 

Instid\MSSQL\Repldata

完整控制

 

110\shared

讀取、執行

 

Instid\MSSQL\Template Data (僅限 SQL Server Express)

讀取

SQLServerAgent1

Instid\MSSQL\binn

完整控制

 

Instid\MSSQL\binn

完整控制

 

Instid\MSSQL\Log

讀取、寫入、刪除、執行

 

110\com

讀取、執行

 

110\shared

讀取、執行

 

110\shared\Errordumps

讀取、寫入

ServerName\EventLog

完整控制

FTS

Instid\MSSQL\FTData

完整控制

 

Instid\MSSQL\FTRef

讀取、執行

 

110\shared

讀取、執行

 

110\shared\Errordumps

讀取、寫入

 

Instid\MSSQL\Install

讀取、執行

Instid\MSSQL\jobs

讀取、寫入

MSSQLServerOLAPservice

110\shared\ASConfig

完整控制

 

Instid\OLAP

讀取、執行

 

Instid\Olap\Data

完整控制

 

Instid\Olap\Log

讀取、寫入

 

Instid\OLAP\Backup

讀取、寫入

 

Instid\OLAP\Temp

讀取、寫入

 

110\shared\Errordumps

讀取、寫入

SQLServerReportServerUser

Instid\Reporting Services\Log Files

讀取、寫入、刪除

 

Instid\Reporting Services\ReportServer

讀取、執行

 

Instid\Reportingservices\Reportserver\global.asax

完整控制

 

Instid\Reportingservices\Reportserver\Reportserver.config

讀取

 

Instid\Reporting Services\reportManager

讀取、執行

 

Instid\Reporting Services\RSTempfiles

讀取、寫入、執行、刪除

 

110\shared

讀取、執行

 

110\shared\Errordumps

讀取、寫入

MSDTSServer100

110\dts\binn\MsDtsSrvr.ini.xml

讀取

 

110\dts\binn

讀取、執行

 

110\shared

讀取、執行

 

110\shared\Errordumps

讀取、寫入

SQL Server Browser

110\shared\ASConfig

讀取

 

110\shared

讀取、執行

 

110\shared\Errordumps

讀取、寫入

SQLWriter

N/A (以本機系統執行)

 

使用者

Instid\MSSQL\binn

讀取、執行

 

Instid\Reporting Services\ReportServer

讀取、執行、列出資料夾內容

 

Instid\Reportingservices\Reportserver\global.asax

讀取

 

Instid\Reporting Services\ReportManager

讀取、執行

 

Instid\Reporting Services\ReportManager\pages

讀取

 

Instid\Reporting Services\ReportManager\Styles

讀取

 

110\dts

讀取、執行

 

110\tools

讀取、執行

100\tools

讀取、執行

 

90\tools

讀取、執行

 

80\tools

讀取、執行

 

110\sdk

讀取

 

Microsoft SQL Server\110\Setup Bootstrap

讀取、執行

SQL Server Distributed Replay Controller

<ToolsDir>\DReplayController\Log\ (空目錄)

讀取、執行、列出資料夾內容

<ToolsDir>\DReplayController\DReplayController.exe

讀取、執行、列出資料夾內容

<ToolsDir>\DReplayController\resources\

讀取、執行、列出資料夾內容

<ToolsDir>\DReplayController\{所有 DLL}

讀取、執行、列出資料夾內容

<ToolsDir>\DReplayController\DReplayController.config

讀取、執行、列出資料夾內容

<ToolsDir>\DReplayController\IRTemplate.tdf

讀取、執行、列出資料夾內容

<ToolsDir>\DReplayController\IRDefinition.xml

讀取、執行、列出資料夾內容

SQL Server Distributed Replay Client

<ToolsDir>\DReplayClient\Log\

讀取、執行、列出資料夾內容

<ToolsDir>\DReplayClient\DReplayClient.exe

讀取、執行、列出資料夾內容

<ToolsDir>\DReplayClient\resources\

讀取、執行、列出資料夾內容

<ToolsDir>\DReplayClient\ (所有 DLL)

讀取、執行、列出資料夾內容

<ToolsDir>\DReplayClient\DReplayClient.config

讀取、執行、列出資料夾內容

<ToolsDir>\DReplayClient\IRTemplate.tdf

讀取、執行、列出資料夾內容

<ToolsDir>\DReplayClient\IRDefinition.xml

讀取、執行、列出資料夾內容

1SQL Server Express 和 SQL Server Express with Advanced Services 的執行個體會停用 SQL Server Agent 服務。

當資料庫檔案儲存於使用者定義的位置時,您必須授與個別服務 SID 對該位置的存取權。 如需有關將檔案系統權限授與個別服務 SID 的詳細資訊,請參閱<設定 Database Engine 對檔案系統的存取權限>。

回到頁首

授與其他 Windows 使用者帳戶或群組的檔案系統權限

某些存取控制權限可能必須授與給內建帳戶或其他 SQL Server 服務帳戶。 下表列出 SQL Server 安裝程式所設定的其他 ACL。

要求元件

帳戶

資源

權限

MSSQLServer

效能記錄使用者

Instid\MSSQL\binn

列出資料夾內容

 

Performance Monitor Users

Instid\MSSQL\binn

列出資料夾內容

 

效能記錄使用者、效能監視器使用者

\WINNT\system32\sqlctr110.dll

讀取、執行

 

僅限管理員

\\. \root\Microsoft\SqlServer\ServerEvents\<sql_instance_name>1

完整控制

 

管理員,系統

\tools\binn\schemas\sqlserver\2004\07\showplan

完整控制

 

使用者

\tools\binn\schemas\sqlserver\2004\07\showplan

讀取、執行

Reporting Services

<報表伺服器 Web 服務帳戶>

<install>\Reporting Services\LogFiles

DELETE

READ_CONTROL

SYNCHRONIZE

FILE_GENERIC_READ

FILE_GENERIC_WRITE

FILE_READ_DATA

FILE_WRITE_DATA

FILE_APPEND_DATA

FILE_READ_EA

FILE_WRITE_EA

FILE_READ_ATTRIBUTES

FILE_WRITE_ATTRIBUTES

 

報表管理員應用程式集區識別 ASP.NET 帳戶,Everyone

<install>\Reporting Services\ReportManager、<install>\Reporting Services\ReportManager\Pages\*.*、<install>\Reporting Services\ReportManager\Styles\*.*、<install>\Reporting Services\ReportManager\webctrl_client\1_0\*.*

讀取

 

報表管理員應用程式集區識別

<install>\Reporting Services\ReportManager\Pages\*.*

讀取

 

<報表伺服器 Web 服務帳戶>

<install>\Reporting Services\ReportServer

讀取

 

<報表伺服器 Web 服務帳戶>

<install>\Reporting Services\ReportServer\global.asax

完整

 

Everyone

<install>\Reporting Services\ReportServer\global.asax

READ_CONTROL

FILE_READ_DATA

FILE_READ_EA

FILE_READ_ATTRIBUTES

 

網路服務

<install>\Reporting Services\ReportServer\ReportService.asmx

完整

 

Everyone

<install>\Reporting Services\ReportServer\ReportService.asmx

READ_CONTROL

SYNCHRONIZE FILE_GENERIC_READ

FILE_GENERIC_EXECUTE

FILE_READ_DATA

FILE_READ_EA

FILE_EXECUTE

FILE_READ_ATTRIBUTES

 

報表伺服器 Windows 服務帳戶

<install>\Reporting Services\ReportServer\RSReportServer.config

DELETE

READ_CONTROL

SYNCHRONIZE

FILE_GENERIC_READ

FILE_GENERIC_WRITE

FILE_READ_DATA

FILE_WRITE_DATA

FILE_APPEND_DATA

FILE_READ_EA

FILE_WRITE_EA

FILE_READ_ATTRIBUTES

FILE_WRITE_ATTRIBUTES

 

Everyone

報表伺服器索引鍵 (Instid 登錄區)

查詢值

列舉子機碼

通知

讀取控制

 

終端服務使用者

報表伺服器索引鍵 (Instid 登錄區)

查詢值

設定值

建立子機碼

列舉子機碼

通知

刪除

讀取控制

 

進階使用者

報表伺服器索引鍵 (Instid 登錄區)

查詢值

設定值

建立子機碼

列舉子機碼

通知

刪除

讀取控制

1這是 WMI 提供者命名空間。

回到頁首

與不常見磁碟位置相關的檔案系統權限

安裝位置的預設磁碟機是 systemdrive,通常是磁碟機 C。 已安裝 tempdb 或使用者資料庫時

非預設磁碟機

安裝到非預設磁碟機的本機磁碟機時,個別服務 SID 必須擁有檔案位置的存取權。 SQL Server 安裝程式將提供必要的存取。

網路共用

將資料庫安裝到網路共用時,服務帳戶必須擁有使用者和 tempdb 資料庫之檔案位置的存取權。 SQL Server 安裝程式不會提供網路共用的存取。 在執行安裝程式之前,使用者必須先為服務帳戶提供 tempdb 位置的存取。 使用者在建立資料庫之前,必須先提供使用者資料庫位置的存取。

[!附註]

虛擬帳戶無法對遠端位置驗證。 所有虛擬帳戶都使用電腦帳戶的權限。 使用以下格式提供電腦帳戶:<domain_name>\<computer_name>$

檢閱其他考量

下表是 SQL Server 服務提供其他功能時所需的權限。

服務/應用程式

功能

必要權限

SQL Server (MSSQLSERVER)

使用 xp_sendmail 寫入郵件位置。

網路寫入權限。

SQL Server (MSSQLSERVER)

對 SQL Server 管理員以外的使用者執行 xp_cmdshell。

做為作業系統的一部分並取代處理序層級 Token。

SQL Server Agent (MSSQLSERVER)

使用自動重新啟動功能。

必須是 Administrators 本機群組的成員。

Database Engine Tuning Advisor

調整資料庫以達到最佳查詢效能。

第一次使用時,具有系統管理認證的使用者必須初始化應用程式。 初始化之後,dbo 使用者就可以使用 Database Engine Tuning Advisor 來單獨微調他們擁有的資料表。 如需詳細資訊,請參閱《SQL Server 線上叢書》中的<初始化 Database Engine Tuning Advisor>。

重要事項重要事項

在升級至 SQL Server 前,請先為 SQL Server 代理程式啟用 Windows 驗證,並驗證必要的預設組態:SQL Server 代理程式服務帳戶是 SQL Server sysadmin 群組的成員。

回到頁首

登錄權限

對於執行個體感知元件,會在 HKLM\Software\Microsoft\Microsoft SQL Server\<Instance_ID> 之下建立登錄區。 例如:

  • HKLM\Software\Microsoft\Microsoft SQL Server\MSSQL11.MyInstance

  • HKLM\Software\Microsoft\Microsoft SQL Server\MSASSQL11.MyInstance

  • HKLM\Software\Microsoft\Microsoft SQL Server\MSSQL.110

登錄也會維護執行個體識別碼到執行個體名稱的對應。 執行個體識別碼到執行個體名稱的對應維護如下:

  • [HKEY_LOCAL_MACHINE\Software\Microsoft\Microsoft SQL Server\Instance Names\SQL] "InstanceName"="MSSQL11"

  • [HKEY_LOCAL_MACHINE\Software\Microsoft\Microsoft SQL Server\Instance Names\OLAP] "InstanceName"="MSASSQL11"

  • [HKEY_LOCAL_MACHINE\Software\Microsoft\Microsoft SQL Server\Instance Names\RS] "InstanceName"="MSRSSQL11"

WMI

Windows Management Instrumentation (WMI) 必須能夠連接到 Database Engine。 為支援此功能,會在 Database Engine 中提供 Windows WMI 提供者 (NT SERVICE\winmgmt) 的個別服務 SID。

SQL WMI 提供者需要下列權限:

  • msdb 資料庫中 db_ddladmindb_owner 固定資料庫角色的成員資格。

  • 伺服器中的 CREATE DDL EVENT NOTIFICATION 權限。

  • Database Engine 中的 CREATE TRACE EVENT NOTIFICATION 權限。

  • VIEW ANY DATABASE 伺服器層級權限。

    SQL Server 安裝程式會建立 SQL WMI 命名空間,並且將讀取權限授與 SQL Server Agent 服務 SID。

回到頁首

具名管道

在所有安裝中,SQL Server 安裝程式都會透過共用記憶體通訊協定 (它是本機具名管道) 提供 SQL Server Database Engine 的存取。

回到頁首

提供

本節描述如何在各種 SQL Server 元件內提供帳戶。

  • Database Engine 提供

    • Windows 主體

    • sa 帳戶

    • SQL Server 個別服務 SID 登入和權限

    • SQL Server Agent 登入和權限

    • HADRON 和 SQL 容錯移轉叢集執行個體和權限

    • SQL 寫入器和權限

    • SQL WMI 和權限

  • SSAS 提供

  • SSRS 提供

Database Engine 提供

下列帳戶會在 SQL Server Database Engine 中加入為登入。

Windows 主體

在安裝期間,SQL Server 安裝程式至少需要將一個使用者帳戶命名為 sysadmin 固定伺服器角色的成員。

sa 帳戶

sa 帳戶一律做為 Database Engine 登入存在,而且是 sysadmin (系統管理員) 固定伺服器角色的成員。 僅使用 Windows 驗證安裝 Database Engine (也就是未啟用 SQL Server 驗證) 時,sa 登入仍然存在,但是會停用。 如需有關啟用 sa 帳戶的詳細資訊,請參閱<變更伺服器驗證模式>。

SQL Server 個別服務 SID 登入和權限

SQL Server 服務的個別服務 SID 會做為 Database Engine 登入提供。 個別服務 SID 登入是 sysadmin (系統管理員) 固定伺服器角色的成員。

SQL Server Agent 登入和權限

SQL Server Agent 服務的個別服務 SID 會做為 Database Engine 登入提供。 個別服務 SID 登入是 sysadmin (系統管理員) 固定伺服器角色的成員。

AlwaysOn 可用性群組 和 SQL 容錯移轉叢集執行個體和權限

將 Database Engine 安裝為 AlwaysOn 可用性群組 或 SQL 容錯移轉叢集執行個體 (SQL FCI) 時,會在 Database Engine 中提供 LOCAL SYSTEMLOCAL SYSTEM 登入會獲得授與 ALTER ANY AVAILABILITY GROUP 權限 (適用 AlwaysOn 可用性群組) 和 VIEW SERVER STATE 權限 (適用 SQL FCI)。

SQL 寫入器和權限

SQL Server VSS Writer 服務的個別服務 SID 會做為 Database Engine 登入提供。 個別服務 SID 登入是 sysadmin (系統管理員) 固定伺服器角色的成員。

SQL WMI 和權限

SQL Server 安裝程式會提供 NT SERVICE\Winmgmt 帳戶做為 Database Engine 登入,並且將它加入 sysadmin (系統管理員) 固定伺服器角色中。

SSRS 提供

安裝過程中指定的帳戶會做為 RSExecRole 資料庫角色的成員提供。 如需詳細資訊,請參閱<設定報表伺服器服務帳戶>。

回到頁首

SSAS 提供

SSAS 服務帳戶需求會依據您部署伺服器的方式而有所不同。 如果您要安裝 PowerPivot for SharePoint,SQL Server 安裝程式會要求您將 Analysis Services 服務設定為以網域帳戶執行。 網域帳戶是支援 SharePoint 內建的受管理帳戶設備所需。 基於這個理由,SQL Server 安裝程式不會針對 PowerPivot for SharePoint 安裝提供預設的服務帳戶 (例如虛擬帳戶)。 如需有關提供 PowerPivot for SharePoint 的詳細資訊,請參閱<設定 PowerPivot 服務帳戶>。

針對所有其他獨立 SSAS 安裝,您可以提供以網域帳戶、內建系統帳戶、受管理的帳戶或虛擬帳戶執行的服務。 如需有關帳戶提供的詳細資訊,請參閱<設定服務帳戶 (Analysis Services)>。

針對叢集安裝,您必須指定網域帳戶或內建系統帳戶。 SSAS 容錯移轉叢集不支援受管理的帳戶,也不支援虛擬帳戶。

所有 SSAS 安裝會要求您指定 Analysis Services 執行個體的系統管理員。 系統管理員權限會在 Analysis Services Server 角色中提供。

SSRS 提供

安裝過程中指定的帳戶會在 Database Engine 中做為 RSExecRole 資料庫角色的成員提供。 如需詳細資訊,請參閱<設定報表伺服器服務帳戶>。

回到頁首

從舊版升級

本節描述從舊版 SQL Server 升級時所做的變更。

  • SQL Server 2012 需要 Windows Vista、Windows 7、Windows Server 2008 或 Windows Server 2008 R2。 Windows XP 或 Windows Server 2003 上執行的任何舊版 SQL Server 都必須先將作業系統升級,才能升級 SQL Server。

  • 在將 SQL Server 2005 升級至 SQL Server 2012 期間,SQL Server 安裝程式將以下列方式設定 SQL Server。

    • Database Engine 會以個別服務 SID 的安全性內容執行。 個別服務 SID 會獲得存取 SQL Server 執行個體的檔案資料夾 (例如 DATA) 和 SQL Server 登錄機碼的權限。

    • Database Engine 的個別服務 SID 是在 Database Engine 中做為 sysadmin (系統管理員) 固定伺服器角色的成員提供。

    • 除非 SQL Server 是容錯移轉叢集執行個體,否則個別服務 SID 會加入至本機 SQL Server Windows 群組。

    • SQL Server 資源仍然會提供至本機 SQL Server Windows 群組。

    • 服務的本機 Windows 群組會從 SQLServer2005MSSQLUser$<computer_name>$<instance_name> 重新命名為 SQLServerMSSQLUser$<computer_name>$<instance_name>。 移轉之資料庫的檔案位置將會有本機 Windows 群組的存取控制項目 (ACE)。 新資料庫的位置將會有個別服務 SID 的 ACE。

  • 從 SQL Server 2008 升級的期間,SQL Server 安裝程式將會保留 SQL Server 2008 個別服務 SID 的 ACE。

  • 如果是 SQL Server 容錯移轉叢集執行個體,則會保留為服務設定之網域帳戶的 ACE。

回到頁首

附錄

本節包含有關 SQL Server 服務的其他資訊。

  • 服務帳戶的描述

  • 識別執行個體感知和執行個體非感知服務

  • 當地語系化服務名稱

服務帳戶的描述

服務帳戶是用來啟動 Windows 服務 (例如 SQL Server Database Engine) 的帳戶。

可搭配任何作業系統使用的帳戶

除了前段所描述新的 MSA 和虛擬帳戶之外,以下帳戶都可以使用。

網域使用者帳戶

如果此服務必須與網路服務互動,請存取檔案共用等網域資源。如果它使用執行 SQL Server 之其他電腦的連結的伺服器連接,您可能會使用最低權限的網域帳戶。 許多伺服器對伺服器的活動只能以網域使用者帳戶執行。 這個帳戶應該由環境中的網域管理所預先建立。

[!附註]

如果您將應用程式設定為使用網域帳戶,則可以隔離應用程式的權限,不過必須手動管理密碼或建立自訂解決方案來管理這些密碼。 許多伺服器應用程式都是使用此策略來增強安全性,不過此策略需要額外的管理和複雜性。 在這些部署中,服務管理員會花相當多時間進行維護工作,例如管理 Kerberos 驗證所需的服務密碼和服務主要名稱 (SPN)。 此外,這些維護工作都可能干擾服務。

本機使用者帳戶

如果電腦不屬於網域的一部分,建議您使用不含 Windows 管理員權限的本機使用者帳戶。

本機服務帳戶

本機服務帳戶是一個內建帳戶,它對於資源和物件的存取層級與使用者群組的成員相同。 如果個別服務或處理序受到危害時,這種有限的存取權可協助保護系統的安全。 以本機服務帳戶執行的服務是以不含認證的 Null 工作階段來存取網路資源。 請注意,本機服務帳戶不支援 SQL Server 或 SQL Server Agent 服務。 不支援使用本機服務當做執行這些服務的帳戶,因為它是共用服務而且在本機服務之下執行的任何其他服務將會讓系統管理員存取 SQL Server。 此帳戶的實際名稱是 NT AUTHORITY\LOCAL SERVICE

網路服務帳戶

網路服務帳戶是一個內建帳戶,它對於資源和物件所擁有的存取權高於使用者群組的成員。 以網路服務帳戶執行的服務會使用電腦帳戶的認證存取網路資源,其格式為 <domain_name>\<computer_name>$。 此帳戶的實際名稱是 NT AUTHORITY\NETWORK SERVICE

本機系統帳戶

本機系統是權限非常高的內建帳戶。 它在本機系統上具有延伸的權限,並可當做網路上的電腦運作。 此帳戶的實際名稱是 NT AUTHORITY\SYSTEM

識別執行個體感知和執行個體非感知服務

執行個體感知服務會與特定的 SQL Server 執行個體產生關聯,而且會有自己的登錄區。 您可以針對每一個元件或服務執行 SQL Server 安裝程式,以安裝執行個體感知服務的多個複本。 執行個體非感知服務會在所有安裝的 SQL Server 執行個體之間共用。 它們與特定執行個體沒有關聯,只能安裝一次,且不能並存安裝。

SQL Server 中的執行個體感知服務包含以下項目:

  • SQL Server

  • SQL Server Agent

    請注意,在 SQL Server Express 和 SQL Server Express with Advanced Services 的執行個體上會停用 SQL Server Agent 服務。

  • Analysis Services 1

  • Reporting Services

  • 全文檢索搜尋

SQL Server 中的執行個體非感知服務包含以下項目:

  • Integration Services

  • SQL Server Browser

  • SQL 寫入器

1SharePoint 整合模式中的 Analysis Services 會以單一具名執行個體的形式執行 'PowerPivot'。 執行個體名稱是固定的。 您無法指定不同的名稱。 在每個實體伺服器上,您只能安裝一個當做 'PowerPivot' 執行的 Analysis Services 執行個體。

回到頁首

當地語系化服務名稱

下表將顯示 Windows 當地語系化版本所顯示的服務名稱。

語言

本機服務的名稱

網路服務的名稱

本機系統的名稱

管理群組的名稱

英文

簡體中文

繁體中文

韓文

日文

NT AUTHORITY\LOCAL SERVICE

NT AUTHORITY\NETWORK SERVICE

NT AUTHORITY\SYSTEM

BUILTIN\Administrators

德文

NT-AUTORITÄT\LOKALER DIENST

NT-AUTORITÄT\NETZWERKDIENST

NT-AUTORITÄT\SYSTEM

VORDEFINIERT\Administratoren

法文

AUTORITE NT\SERVICE LOCAL

AUTORITE NT\SERVICE RÉSEAU

AUTORITE NT\SYSTEM

BUILTIN\Administrators

義大利文

NT AUTHORITY\SERVIZIO LOCALE

NT AUTHORITY\SERVIZIO DI RETE

NT AUTHORITY\SYSTEM

BUILTIN\Administrators

西班牙文

NT AUTHORITY\SERVICIO LOC

NT AUTHORITY\SERVICIO DE RED

NT AUTHORITY\SYSTEM

BUILTIN\Administradores

俄文

NT AUTHORITY\LOCAL SERVICE

NT AUTHORITY\NETWORK SERVICE

NT AUTHORITY\SYSTEM

BUILTIN\Администраторы

回到頁首

相關內容

SQL Server 安裝的安全性考量

SQL Server 的預設和具名執行個體的檔案位置

安裝 Master Data Services