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.
|
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.
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;
Consulte também
Referência
Exibições do catálogo de segurança (Transact-SQL)
Exibições de catálogo (Transact-SQL)