sys.server_permissions (Transact-SQL)
适用于: SQL Server Azure SQL 托管实例 分析平台系统 (PDW)
为每个服务器级权限返回一行。
列名称 | 数据类型 | 说明 |
---|---|---|
class | tinyint | 标识存在权限的对象的类。 100 = 服务器 101 = 服务器主体 105 = 端点 108 = 可用性组 |
class_desc | nvarchar(60) | 权限所针对的类的说明。 以下值之一: SERVER SERVER_PRINCIPAL ENDPOINT AVAILABILITY GROUP |
major_id | int | 存在权限的安全对象的 ID,根据类解释。 通常情况下,这只是一种应用于类表示的内容的 ID。 非标准的解释如下: 100 = 始终为 0 |
minor_id | int | 存在权限的对象的辅助 ID,根据类进行解释。 |
grantee_principal_id | int | 向其授予权限的服务器主体 ID。 |
grantor_principal_id | int | 这些权限的授权者的服务器主体 ID。 |
type | char(4) | 服务器权限类型。 有关权限类型的列表,请参阅下一个表。 |
permission_name | nvarchar(128) | 权限名称。 |
state | char(1) | 权限状态: D = 拒绝 R = 撤消 G = 授予 W = 授予授予选项 |
state_desc | nvarchar(60) | 权限状态的说明: DENY REVOKE GRANT GRANT_WITH_GRANT_OPTION |
权限类型 | 权限名称 | 适用于安全对象 |
---|---|---|
AAES | ALTER ANY EVENT SESSION | SERVER |
ADBO | ADMINISTER BULK OPERATIONS | SERVER |
AL | ALTER | ENDPOINT、LOGIN |
ALAA | ALTER ANY SERVER AUDIT | SERVER |
ALAG | ALTER ANY AVAILABILITY GROUP | SERVER |
ALCD | ALTER ANY CREDENTIAL | SERVER |
ALCO | ALTER ANY CONNECTION | SERVER |
ALDB | ALTER ANY DATABASE | SERVER |
ALES | ALTER ANY EVENT NOTIFICATION | SERVER |
ALHE | ALTER ANY ENDPOINT | SERVER |
ALLG | ALTER ANY LOGIN | SERVER |
ALLS | ALTER ANY LINKED SERVER | SERVER |
ALRS | ALTER RESOURCES | SERVER |
ALSR | ALTER ANY SERVER ROLE | SERVER |
ALSS | ALTER SERVER STATE | SERVER |
ALST | ALTER SETTINGS | SERVER |
ALTR | ALTER TRACE | SERVER |
AUTH | AUTHENTICATE SERVER | SERVER |
CADB | CONNECT ANY DATABASE | SERVER |
CL | CONTROL | ENDPOINT、LOGIN |
CL | CONTROL SERVER | SERVER |
CO | CONNECT | ENDPOINT |
COSQ | CONNECT SQL | SERVER |
CRAC | CREATE AVAILABILITY GROUP | SERVER |
CRDB | CREATE ANY DATABASE | SERVER |
CRDE | CREATE DDL EVENT NOTIFICATION | SERVER |
CRHE | CREATE ENDPOINT | SERVER |
CRSR | CREATE SERVER ROLE | SERVER |
CRTE | CREATE TRACE EVENT NOTIFICATION | SERVER |
IAL | IMPERSONATE ANY LOGIN | SERVER |
IM | IMPERSONATE | LOGIN |
SHDN | SHUTDOWN | SERVER |
SUS | SELECT ALL USER SECURABLES | SERVER |
TO | TAKE OWNERSHIP | ENDPOINT |
VW | VIEW DEFINITION | ENDPOINT、LOGIN |
VWAD | VIEW ANY DEFINITION | SERVER |
VWDB | VIEW ANY DATABASE | SERVER |
VWSS | VIEW SERVER STATE | SERVER |
XA | EXTERNAL ACCESS | SERVER |
XU | UNSAFE ASSEMBLY | SERVER |
权限
任何用户都可以查看自己的权限。 要查看其他登录权限,需要获取 VIEW DEFINITION、ALTER ANY LOGIN 或任何相关的登录权限。 要查看用户定义的服务器角色,需要获取 ALTER ANY SERVER ROLE 或相关的角色成员身份。
目录视图中仅显示用户拥有的安全对象的元数据,或用户对其拥有某些权限的安全对象的元数据。 有关详细信息,请参阅 Metadata Visibility Configuration。
示例
以下查询将列出明确对服务器主体授予或拒绝的权限。
重要
固定服务器角色的权限不会出现在 sys.server_permissions 中。 因此,服务器主体可能具有此处未列出的其他权限。
SELECT pr.principal_id, pr.name, pr.type_desc,
pe.state_desc, pe.permission_name
FROM sys.server_principals AS pr
JOIN sys.server_permissions AS pe
ON pe.grantee_principal_id = pr.principal_id;
另请参阅
安全性目录视图 (Transact-SQL)
安全对象
目录视图 (Transact-SQL)
权限(数据库引擎)
权限层次结构(数据库引擎)