为 SQL Server 的 Azure 扩展配置 Windows 服务帐户和权限
适用范围:SQL Server
本文列出了帐户的 SQL Server 集 NT Service\SQLServerExtension
的 Azure 扩展权限。 使用最低权限运行由 Azure Arc 启用的 SQL Server 时,将使用此帐户。
注意
自 2024 年 11 月版本或更高版本起具有扩展的现有服务器将自动应用最低特权配置。 此应用将逐渐实现。
若要防止自动应用最低特权,请阻止扩展升级到 2024 年 11 月版本。
不支持手动设置代理帐户的权限。
扩展在Azure 门户上启用功能时设置权限。 如果未启用功能,则扩展不会设置该功能的权限。 如果禁用某个功能,扩展会删除权限。
SQL 权限 列出了与扩展启用功能时授予的功能相关的权限。
注意
NT Authority\System
必须有权修改列出的目录和注册表项的权限。 这是必需的,以便 NT Authority\System
可以授予对最低特权模式的帐户所需的访问权限 NT Service\SqlServerExtension
。
目录权限
目录路径 | 所需的权限 | 详细信息 | 功能 |
---|---|---|---|
<SystemDrive>\Packages\Plugins\Microsoft.AzureData.WindowsAgent.SQLServer |
完全控制 | 与扩展相关的 dll 和 exe 文件。 | 默认 |
C:\Packages\Plugins\Microsoft.AzureData.WindowsAgent.SqlServer\<extension_version>\RuntimeSettings |
完全控制 | 扩展设置文件。 | 默认 |
C:\Packages\Plugins\Microsoft.AzureData.WindowsAgent.SqlServer\<extension_version>\status |
完全控制 | 扩展状态文件。 | 默认 |
C:\ProgramData\GuestConfig\extension_logs\Microsoft.AzureData.WindowsAgent.SqlServer |
完全控制 | 扩展日志文件。 | 默认 |
C:\Packages\Plugins\Microsoft.AzureData.WindowsAgent.SqlServer\<extension_version>\status\HeartBeat.Json |
完全控制 | 扩展检测信号文件。 | 默认 |
%ProgramFiles%\Sql Server Extension |
完全控制 | 扩展服务文件。 | 默认 |
<SystemDrive>\Windows\system32\extensionUpload |
完全控制 | 需要写入计费所需的使用情况文件。 | 默认 |
<SystemDrive>\Windows\system32\ExtensionHandler.log |
完全控制 | 扩展创建的预日志文件夹。 | 默认 |
<ProgramData>\AzureConnectedMachineAgent\Config |
读取 | Arc 配置文件目录。 | 默认 |
C:\Windows\System32\config\systemprofile\AppData\Local\Microsoft SQL Server Extension Agent |
完全控制 | 需要编写评估报告和状态。 | 默认 |
SQL 日志目录(如注册表中的设置) 1:C:\Program Files\Microsoft SQL Server\MSSQL<base_version>.<instance_name>\MSSQL\log |
读取 | 从 SQL 日志中提取 SQL vCore 信息所必需的。 | 默认 |
SQL 备份目录(如注册表中的设置) 1:C:\Program Files\Microsoft SQL Server\MSSQL<base_version>.<instance_name>\MSSQL\Backup |
ReadAndExecute/Write /Delete | 备份所需的 | Backup |
1 有关详细信息,请参阅 文件位置和注册表映射。
注册表权限
基键: HKEY_LOCAL_MACHINE
注册表项 | 所需权限 | 详细信息 | 功能 |
---|---|---|---|
SOFTWARE\Microsoft\Microsoft SQL Server |
读取 | 读取 SQL Server 属性,例如 installedInstances 。 |
默认 |
SOFTWARE\Microsoft\Microsoft SQL Server\<InstanceRegistryName>\MSSQLSERVER |
完全控制 | Microsoft Entra ID 和 Purview。 | Microsoft Entra ID Purview |
SOFTWARE\Microsoft\SystemCertificates |
完全控制 | Microsoft Entra ID 是必需的。 | Microsoft Entra ID |
SYSTEM\CurrentControlSet\Services |
读取 | SQL Server 帐户名称。 | 默认 |
SOFTWARE\Microsoft\AzureDefender\SQL |
读取 | Azure Defender 状态和上次更新时间。 | 默认 |
SOFTWARE\Microsoft\SqlServerExtension |
完全控制 | 扩展相关值。 | 默认 |
SOFTWARE\Policies\Microsoft\Windows |
读取和写入 | 通过扩展启用自动 Windows 更新。 | 自动更新 |
组权限
NT Service\SQLServerExtension
已添加到混合代理扩展应用程序。 支持 Azure 实例元数据服务(IMDS)握手。
SQL 权限
NT Service\SQLServerExtension
已添加:
- 作为当前计算机上存在的所有实例的 SQL 登录名
- 作为每个数据库中的用户
扩展还会在启用功能时向实例和数据库对象授予权限。 下表提供了详细信息。
功能 | 权限 | Level | 要求 |
---|---|---|---|
默认值 | VIEW DATABASE STATE |
服务器级别 | Essential |
VIEW SERVER STATE |
服务器级别 | Essential | |
CONNECT SQL |
服务器级别 | Essential | |
数据库作为资源 | 默认公共角色 | 服务器级别(默认授予新添加的登录名) | Essential |
最佳做法评估 | VIEW ANY DEFINITION |
服务器级别 | 依赖于功能的功能 |
VIEW ANY DATABASE |
服务器级别 | 依赖于功能的功能 | |
SELECT |
master |
依赖于功能的功能 | |
SELECT |
msdb |
依赖于功能的功能 | |
EXECUTE ON sys.xp_enumerrorlogs |
master |
依赖于功能的功能 | |
EXECUTE ON sys.xp_readerrorlog |
master |
依赖于功能的功能 | |
备份 | CREATE ANY DATABASE |
服务器级别 | 依赖于功能的功能 |
db_backupoperator角色 | “所有数据库” | 依赖于功能的功能 | |
dbcreator | 服务器角色 | 依赖于功能的功能 | |
Azure 控制平面 | CREATE TABLE |
msdb |
Essential |
ALTER ANY SCHEMA |
msdb |
Essential | |
CREATE TYPE |
msdb |
Essential | |
EXECUTE |
msdb |
Essential | |
db_datawriter角色 | msdb |
依赖于功能的功能 | |
db_datareader 角色 | msdb |
依赖于功能的功能 | |
可用性组发现 | VIEW ANY DEFINITION |
服务器级别 | Essential |
Purview | SELECT |
“所有数据库” | 依赖于功能的功能 |
EXECUTE |
“所有数据库” | 依赖于功能的功能 | |
CONNECT ANY DATABASE |
服务器级别 | 依赖于功能的功能 | |
VIEW ANY DATABASE |
服务器级别 | 依赖于功能的功能 | |
监视 | SELECT dbo.sysjobactivity |
msdb |
Essential |
SELECT dbo.sysjobs |
msdb |
Essential | |
SELECT dbo.syssessions |
msdb |
Essential | |
SELECT dbo.sysjobHistory |
msdb |
Essential | |
SELECT dbo.sysjobSteps |
msdb |
Essential | |
SELECT dbo.syscategories |
msdb |
Essential | |
SELECT dbo.sysoperators |
msdb |
Essential | |
SELECT dbo.suspectpages |
msdb |
Essential | |
SELECT dbo.backupset |
msdb |
Essential | |
SELECT dbo.backupmediaset |
msdb |
Essential | |
SELECT dbo.backupmediafamily |
msdb |
Essential | |
SELECT dbo.backupfile |
msdb |
Essential | |
CONNECT ANY DATABASE |
服务器级别 | Essential | |
VIEW ANY DATABASE |
服务器级别 | Essential | |
VIEW ANY DEFINITION |
服务器级别 | Essential | |
迁移评估 | EXECUTE dbo.agent_datetime |
msdb |
Essential |
SELECT dbo.syscategories |
msdb |
Essential | |
SELECT dbo.sysjobHistory |
msdb |
Essential | |
SELECT dbo.sysjobs |
msdb |
Essential | |
SELECT dbo.sysjobSteps |
msdb |
Essential | |
SELECT dbo.sysmail_account |
msdb |
Essential | |
SELECT dbo.sysmail_profile |
msdb |
Essential | |
SELECT dbo.sysmail_profileaccount |
msdb |
Essential | |
SELECT dbo.syssubsystems |
msdb |
Essential | |
SELECT sys.sql_expression_dependencies |
“所有数据库” | Essential |
注意
最低权限取决于已启用的功能。 不再需要权限时会更新这些权限。 启用功能时,会授予必要的权限。
其他权限
- 服务帐户访问扩展服务的权限,并配置自动恢复。
- 服务帐户的登录即服务权限。