通过


Azure扩展为SQL Server安装创建的角色

applies to:SQL Server

本文列出了为SQL Server创建的Azure扩展安装的服务器和数据库角色和映射。

角色

为SQL Server安装 Azure 扩展时,安装:

  1. 创建一个服务器级别的角色:SQLArcExtensionServerRole

  2. 创建一个数据库级别的角色:SQLArcExtensionUserRole

  3. 将 NT AUTHORITY\SYSTEM* 帐户添加到每个角色

  4. 在每个数据库的数据库级别映射 NT AUTHORITY\SYSTEM*

  5. 为启用的功能授予最低权限

    *Alternatively,可以通过Azure Arc配置为在最低特权模式下运行(在预览版中可用)启用SQL Server。 有关详细信息,请查看使用最低特权(预览版)0 启用Azure Arc启用的operate SQL Server。

此外,SQL Server的Azure扩展在不再需要特定功能时撤销这些角色的权限。

SqlServerExtensionPermissionProvider是一项Windows任务。 它会在检测到SQL Server中授予或撤销权限:

  • 主机上安装了新的SQL Server实例
  • 从主机卸载SQL Server实例
  • 启用或禁用了实例级功能,或者更新了设置
  • 扩展服务已重启

注意

在 2024 年 7 月发布之前,SqlServerExtensionPermissionProvider 是一项计划任务。 每小时运行一次。

有关详细信息,请查看 配置Windows服务帐户以及 SQL Server Azure 扩展的权限。

如果卸载SQL Server Azure扩展,则会删除服务器和数据库级角色。

权限

功能 权限 Level 角色
默认 VIEW SERVER STATE 服务器级别 SQLArcExtensionServerRole
CONNECT SQL 服务器级别 SQLArcExtensionServerRole
VIEW ANY DEFINITION 服务器级别 SQLArcExtensionServerRole
VIEW ANY DATABASE 服务器级别 SQLArcExtensionServerRole
CONNECT ANY DATABASE 服务器级别 SQLArcExtensionServerRole
SELECT dbo.sysjobactivity msdb SQLArcExtensionUserRole
SELECT dbo.sysjobs msdb SQLArcExtensionUserRole
SELECT dbo.syssessions msdb SQLArcExtensionUserRole
SELECT dbo.sysjobHistory msdb SQLArcExtensionUserRole
SELECT dbo.sysjobSteps msdb SQLArcExtensionUserRole
SELECT dbo.syscategories msdb SQLArcExtensionUserRole
SELECT dbo.sysoperators msdb SQLArcExtensionUserRole
SELECT dbo.suspectpages msdb SQLArcExtensionUserRole
SELECT dbo.backupset msdb SQLArcExtensionUserRole
SELECT dbo.backupmediaset msdb SQLArcExtensionUserRole
SELECT dbo.backupmediafamily msdb SQLArcExtensionUserRole
SELECT dbo.backupfile msdb SQLArcExtensionUserRole
备份 CREATE ANY DATABASE 服务器级别 SQLArcExtensionServerRole
db_backupoperator 角色 “所有数据库” SQLArcExtensionUserRole
dbcreator 服务器级别 SQLArcExtensionServerRole
Azure控制平面 CREATE TABLE msdb SQLArcExtensionUserRole
ALTER ANY SCHEMA msdb SQLArcExtensionUserRole
CREATE TYPE msdb SQLArcExtensionUserRole
EXECUTE msdb SQLArcExtensionUserRole
db_datawriter 角色 msdb SQLArcExtensionUserRole
db_datareader 角色 msdb SQLArcExtensionUserRole
可用性组发现 VIEW ANY DEFINITION 服务器级别 SQLArcExtensionServerRole
可用性组故障转移 ALTER ANY AVAILABILITY GROUP 服务器级别 SQLArcExtensionServerRole
Purview SELECT “所有数据库” SQLArcExtensionUserRole
EXECUTE “所有数据库” SQLArcExtensionUserRole
迁移评估 EXECUTE dbo.agent_datetime msdb SQLArcExtensionUserRole
SELECT dbo.sysjobs msdb SQLArcExtensionUserRole
SELECT dbo.sysmail_account msdb SQLArcExtensionUserRole
SELECT dbo.sysmail_profile msdb SQLArcExtensionUserRole
SELECT dbo.sysmail_profileaccount msdb SQLArcExtensionUserRole
SELECT dbo.syssubsystems msdb SQLArcExtensionUserRole
SELECT sys.sql_expression_dependencies “所有数据库” SQLArcExtensionUserRole

使用最小特权运行

若要运行具有最低特权的SQL Server的Azure扩展,请按照 Operate SQL Server 启用的Azure Arc最低特权的说明进行操作。

目前,最低特权配置不是默认值。