sp_grant_proxy_to_subsystem (Transact-SQL)

授权代理访问子系统。

适用范围:SQL Server(SQL Server 2008 到当前版本)。

主题链接图标 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
    

    请参阅

    参考

    sp_revoke_proxy_from_subsystem (Transact-SQL)

    sp_add_proxy (Transact-SQL)

    sp_delete_proxy (Transact-SQL)

    sp_update_proxy (Transact-SQL)

    概念

    实现 SQL Server 代理安全性