sp_grant_proxy_to_subsystem (Transact-SQL)

适用于:SQL Server

授权代理访问子系统。

Transact-SQL 语法约定

语法

sp_grant_proxy_to_subsystem  
     { [ @proxy_id = ] proxy_id | [ @proxy_name = ] 'proxy_name' },  
     { [ @subsystem_id = ] subsystem_id | [ @subsystem_name = ] 'subsystem_name' }  

参数

[ @proxy_id = ] id 要向其授予访问权限的代理的代理标识号。 proxy_idint,默认值为 NULL。 必须指定 proxy_idproxy_name ,但不能同时指定两者。

[ @proxy_name = ] 'proxy_name' 要为其授予访问权限的代理的名称。 proxy_namesysname,默认值为 NULL。 必须指定 proxy_idproxy_name ,但不能同时指定两者。

[ @subsystem_id = ] id 要授予访问权限的子系统的 ID 号。 subsystem_idint,默认值为 NULL。 必须指定 subsystem_idsubsystem_name ,但不能同时指定两者。 下表列出了每个子系统的值。

描述
2 Microsoft ActiveX 脚本

**重要**ActiveX 脚本子系统将从将来版本的 Microsoft SQL Server 中删除SQL Server 代理。 请避免在新的开发工作中使用该功能,并着手修改当前还在使用该功能的应用程序。
3 操作系统 (CmdExec)
4 复制快照代理
5 复制日志读取器代理
6 复制分发代理
7 Replication Merge Agent
8 复制队列读取器代理
9 Analysis Services 查询
10 Analysis Services 命令
11 SSIS 包执行
12 PowerShell 脚本

[ @subsystem_name = ] 'subsystem_name' 要授予访问权限的子系统的名称。 subsystem_namesysname,默认值为 NULL。 必须指定 subsystem_idsubsystem_name ,但不能同时指定两者。 下表列出了每个子系统的值。

说明
ActiveScripting ActiveX 脚本
CmdExec 操作系统 (CmdExec)
快照 复制快照代理
LogReader 复制日志读取器代理
Distribution 复制分发代理
合并 Replication Merge Agent
QueueReader 复制队列读取器代理
ANALYSISQUERY Analysis Services 查询
ANALYSISCOMMAND Analysis Services 命令
Dts SSIS 包执行
PowerShell PowerShell 脚本

备注

授权代理访问子系统将不更改代理中指定的主体服务器的权限。

权限

只有 sysadmin 固定服务器角色的成员才能执行 sp_grant_proxy_to_subsystem

示例

A. 按 ID 授权访问子系统

以下示例授权代理 Catalog application proxy 访问 ActiveX Scripting 子系统。

USE msdb ;  
GO  
  
EXEC dbo.sp_grant_proxy_to_subsystem  
    @proxy_name = 'Catalog application proxy',  
    @subsystem_id = 2;  
GO  

B. 按名称授权访问子系统。

以下示例授权代理 Catalog application proxy 访问 SSIS 包执行子系统。

USE msdb ;  
GO  
  
EXEC dbo.sp_grant_proxy_to_subsystem  
    @proxy_name = N'Catalog application proxy',  
    @subsystem_name = N'Dts' ;  
GO  

另请参阅

实现 SQL Server 代理安全性
sp_revoke_proxy_from_subsystem (Transact-SQL)
sp_add_proxy (Transact-SQL)
sp_delete_proxy (Transact-SQL)
sp_update_proxy (Transact-SQL)