sp_enum_proxy_for_subsystem (Transact-SQL)

适用范围:SQL Server

列出SQL Server 代理代理访问子系统的权限。

Transact-SQL 语法约定

语法

sp_enum_proxy_for_subsystem
    [ [ @proxy_id = ] proxy_id ]
    [ , [ @proxy_name = ] N'proxy_name' ]
    [ , [ @subsystem_id = ] subsystem_id ]
    [ , [ @subsystem_name = ] N'subsystem_name' ]
[ ; ]

参数

[ @proxy_id = ] proxy_id

要列出信息的代理的标识号。 @proxy_id为 int,默认值为 NULL.

可以指定@proxy_id@proxy_name

[ @proxy_name = ] N'proxy_name'

要列出信息的代理的名称。 @proxy_name为 sysname,默认值为 NULL.

可以指定@proxy_id@proxy_name

[ @subsystem_id = ] subsystem_id

要列出信息的子系统的标识号。 @subsystem_id为 int,默认值为 NULL.

可以指定@subsystem_id@subsystem_name

[ @subsystem_name = ] N'subsystem_name'

要列出信息的子系统的名称。 @subsystem_name为 sysname,默认值为 NULL.

可以指定@subsystem_id@subsystem_name

返回代码值

0(成功)或 1(失败)。

结果集

列名称 数据类型 说明
subsystem_id int 子系统标识号。
subsystem_name sysname 子系统的名称。
proxy_id int 代理服务器标识号。
proxy_name sysname 代理服务器的名称。

注解

如果未提供任何参数, sp_enum_proxy_for_subsystem 则列出有关每个子系统实例中所有代理的信息。

提供@proxy_id@proxy_name时,sp_enum_proxy_for_subsystem列出代理有权访问的子系统。 提供@subsystem_id@subsystem_name时,sp_enum_proxy_for_subsystem列出有权访问该子系统的代理。

提供代理和子系统的信息时,如果指定的代理有权访问指定的子系统,则结果集将返回一行。

此存储过程位于 msdb.

权限

此过程的执行权限默认为 sysadmin 固定服务器角色的成员

示例

A. 列出所有关联

以下示例列出了在当前实例的代理和子系统之间建立的所有权限。

USE msdb;
GO

EXEC dbo.sp_enum_proxy_for_subsystem;
GO

B. 确定代理是否有权访问特定子系统

如果代理 Catalog application proxy 有权访问 ActiveScripting 子系统,则以下示例将返回一行。 否则,该示例将返回空结果集。

USE msdb;
GO

EXEC dbo.sp_enum_proxy_for_subsystem
    @subsystem_name = 'ActiveScripting',
    @proxy_name = 'Catalog application proxy';
GO