sp_grant_proxy_to_subsystem (Transact-SQL)

授权代理访问子系统。

主题链接图标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_id 的数据类型为 int,默认值为 NULL。必须指定 proxy_id 或 proxy_name,但不能两个都指定。

  • [ @proxy_name = ] 'proxy_name'
    要授予访问权限的代理的名称。proxy_name 的数据类型为 sysname,默认值为 NULL。必须指定 proxy_id 或 proxy_name,但不能两个都指定。

  • [ @subsystem_id = ] id
    授予访问权限的子系统的 ID 号。subsystem_id 的数据类型为 int,默认值为 NULL。必须指定 subsystem_id 或 subsystem_name,但不能两个都指定。下表列出了每个子系统的值。

    说明

    2

    Microsoft ActiveX 脚本

    重要说明重要提示
    在未来版本的 Microsoft SQL Server 中,将从 SQL Server 代理中删除 ActiveX 脚本编写子系统。请避免在新的开发工作中使用该功能,并着手修改当前还在使用该功能的应用程序。

    3

    操作系统 (CmdExec)

    4

    复制快照代理

    5

    复制日志读取器代理

    6

    复制分发代理

    7

    复制合并代理

    8

    复制队列读取器代理

    9

    Analysis Services 查询

    10

    Analysis Services 命令

    11

    SSIS 包执行

    12

    PowerShell 脚本

  • [ @subsystem_name = ] 'subsystem_name'
    授予访问权限的子系统的名称。subsystem_name 的数据类型为 sysname,默认值为 NULL。必须指定 subsystem_id 或 subsystem_name,但不能两个都指定。下表列出了每个子系统的值。

    说明

    ActiveScripting

    ActiveX 脚本

    CmdExec

    操作系统 (CmdExec)

    Snapshot

    复制快照代理

    LogReader

    复制日志读取器代理

    Distribution

    复制分发代理

    Merge

    复制合并代理

    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