Partilhar via


sys.server_permissions (Transact-SQL)

Aplica-se a: SQL Server PDW (Sistema de Plataforma de Análise) da Instância Gerenciada de SQL do Azure

Retorna uma linha para cada permissão em nível de servidor.

Nome da coluna Tipo de dados Descrição
class tinyint Identifica a classe na qual a permissão existe.

100 = Servidor

101 = Principal de servidor

105 = Ponto de extremidade

108 = Grupo de Disponibilidade
class_desc nvarchar(60) Descrição de classe na qual a permissão existe. Um dos seguintes valores:

SERVER

SERVER_PRINCIPAL

ENDPOINT

AVAILABILITY GROUP
major_id int ID do protegível no qual a permissão existe, interpretada de acordo com a classe. Em geral, é o tipo de ID que se aplica àquilo que a classe representa. A interpretação para sem-padrão é a seguinte:

100 = Sempre 0
minor_id int ID secundária na qual a permissão existe, interpretada de acordo com a classe.
grantee_principal_id int ID do principal de servidor para a qual as permissões são concedidas.
grantor_principal_id int ID do principal de servidor do concessor dessas permissões.
tipo char(4) Tipo de permissão de servidor. Para obter uma lista de tipos de permissão, consulte a próxima tabela.
permission_name nvarchar(128) Nome de permissão.
state char(1) Estado de permissão:

D = Negar

R = Revogar

G = Conceder

W = Conceder com a opção Conceder
state_desc nvarchar(60) Descrição do estado da permissão:

NEGAR

REVOKE

GRANT

GRANT_WITH_GRANT_OPTION
Tipo de permissão Nome de permissão Aplica-se a protegíveis
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 CONECTAR ENDPOINT
COSQ CONNECT SQL SERVER
CRAC CRIAR GRUPO DE DISPONIBILIDADE 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

Permissões

Qualquer usuário pode ver suas próprias permissões. Para ver as permissões de outros logons, requer VIEW DEFINITION, ALTER ANY LOGIN ou qualquer permissão em um logon. Ver funções de servidor definidas pelo usuário requer ALTER ANY SERVER ROLE ou associação na função.

A visibilidade dos metadados em exibições do catálogo está limitada aos protegíveis que pertencem a um usuário ou para os quais o usuário recebeu permissão. Para obter mais informações, consulte Metadata Visibility Configuration.

Exemplos

A consulta a seguir lista as permissões concedidas ou negadas explicitamente a entidades de segurança do servidor.

Importante

As permissões de funções de servidor fixas não aparecem em sys.server_permissions. Portanto, entidades de segurança do servidor podem ter permissões adicionais não listadas aqui.

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;  

Confira também

Exibições do catálogo de segurança (Transact-SQL)
Protegíveis
Exibições do Catálogo (Transact-SQL)
Permissões (Mecanismo de Banco de Dados)
Hierarquia de permissões (Mecanismo de Banco de Dados)