sp_enum_login_for_proxy (Transact-SQL)
适用于:SQL Server
列出安全主体服务器和代理服务器之间的关联。
语法
sp_enum_login_for_proxy
[ @name = ] 'name'
[ @proxy_id = ] id,
[ @proxy_name = ] 'proxy_name'
参数
[ @name = ] 'name'
要列出代理的SQL Server主体、登录名、服务器角色或 msdb 数据库角色的名称。 名称为 nvarchar (256) ,默认值为 NULL。
[ @proxy_id = ] id
要列出其信息的代理的代理标识号。 proxy_id为 int,默认值为 NULL。 可以指定 ID 或 proxy_name 。
[ @proxy_name = ] 'proxy_name'
要列出其信息的代理的名称。 proxy_name为 sysname,默认值为 NULL。 可以指定 ID 或 proxy_name 。
返回代码值
0 (成功) 或 1 (失败)
结果集
列名称 | 数据类型 | 说明 |
---|---|---|
proxy_id | int | 代理服务器标识号。 |
proxy_name | nvarchar(128) | 代理服务器的名称。 |
flag | int | 安全主体服务器的类型。 0 = SQL Server登录 1 = 固定系统角色 2 = msdb 中的数据库角色 |
name | nvarchar(128) | 关联的安全主体服务器的名称。 |
希 | varbinary(85) | 关联的安全主体的 SID。 |
principal_id | int | 关联的安全主体的主体 ID。 |
注解
如果未提供任何参数, sp_enum_login_for_proxy 会列出有关实例中每个代理的所有登录名的信息。
提供代理 ID 或代理名称时, sp_enum_login_for_proxy 列出有权访问代理的登录名。 提供登录名后, sp_enum_login_for_proxy 列出登录名有权访问的代理。
当同时提供代理信息和登录名时,如果指定的登录有权访问指定的代理,则结果集将返回一行。
此存储过程位于 msdb 中。
权限
此过程的执行权限默认为 sysadmin 固定服务器角色的成员。
示例
A. 列出所有关联
以下示例列出了在当前实例的登录和代理之间建立的所有权限。
USE msdb ;
GO
EXEC dbo.sp_enum_login_for_proxy ;
GO
B. 列出特定登录的代理
以下示例列出了登录 terrid
有权访问的代理。
USE msdb ;
GO
EXEC dbo.sp_enum_login_for_proxy
@name = 'terrid' ;
GO
另请参阅
sp_help_proxy (Transact-SQL)
sp_grant_login_to_proxy (Transact-SQL)
sp_revoke_login_from_proxy (Transact-SQL)
反馈
https://aka.ms/ContentUserFeedback。
即将发布:在整个 2024 年,我们将逐步淘汰作为内容反馈机制的“GitHub 问题”,并将其取代为新的反馈系统。 有关详细信息,请参阅:提交和查看相关反馈