Compartilhar via


sys.server_permissions (Transact-SQL)

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

Nome da coluna

Tipo de dados

Descrição

classe

tinyint

Identifica a classe na qual a permissão existe.

100 = Servidor

101 = Principal de servidor

105 = Ponto de extremidade

class_desc

nvarchar(60)

Descrição de classe na qual a permissão existe.

  • SERVER

  • SERVER_PRINCIPAL

  • ENDPOINT

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 = Opção Concessão com Concessão

state_desc

nvarchar(60)

Descrição do estado da permissão:

DENY

REVOKE

GRANT

GRANT_WITH_GRANT_OPTION

Tipo de permissão

Nome de permissão

Aplica-se a protegíveis

ADBO

ADMINISTER BULK OPERATIONS

SERVER

AL

ALTER

ENDPOINT, LOGIN

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

ALSS

ALTER SERVER STATE

SERVER

ALST

ALTER SETTINGS

SERVER

ALTR

ALTER TRACE

SERVER

AUTH

AUTHENTICATE SERVER

SERVER

CL

CONTROL

ENDPOINT, LOGIN

CL

CONTROL SERVER

SERVER

CO

CONNECT

ENDPOINT

COSQ

CONNECT SQL

SERVER

CRDB

CREATE ANY DATABASE

SERVER

CRDE

CREATE DDL EVENT NOTIFICATION

SERVER

CRHE

CREATE ENDPOINT

SERVER

CRTE

CREATE TRACE EVENT NOTIFICATION

SERVER

IM

IMPERSONATE

LOGIN

SHDN

SHUTDOWN

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

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 Configuração de visibilidade de metadados.

Exemplos

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

Observação importanteImportante

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;

Consulte também

Referência

Exibições do catálogo de segurança (Transact-SQL)

Exibições de catálogo (Transact-SQL)

Conceitos

Protegíveis

Permissões (Mecanismo de Banco de Dados)

Hierarquia de permissões (Mecanismo de Banco de Dados)