Funções de nível de servidor
O SQL Server fornece funções em nível de servidor que o ajudam a gerenciar as permissões em um servidor. Essas funções são entidades de segurança que agrupam outras entidades. Essas funções abrangem todo o servidor em seus escopos de permissões. (As funções são como grupos no sistema operacional Windows.)
As funções de servidor fixas são fornecidas para conveniência e compatibilidade com versões anteriores. Atribua mais permissões específicas sempre que possível.
O SQL Server fornece nove funções de servidor fixas. A permissões que são concedidas às funções de servidor fixas não podem ser alteradas. A partir do SQL Server 2012, você pode criar funções de servidor definidas pelo usuário e adicionar permissões do nível de servidor às funções de servidor definidas pelo usuário.
Você pode adicionar entidades de segurança no nível do servidor (logons do SQL Server, contas do Windows e grupos do Windows) em funções de nível de servidor. Cada membro de uma função de servidor fixa pode adicionar outros logons a essa mesma função. Os membros de funções de servidor definidas pelo usuário não podem acrescentar outras entidades de segurança de servidor à função.
Funções fixas de nível de servidor
A tabela a seguir mostra as funções fixas de nível de servidor e seus recursos.
Função fixa de nível de servidor |
Descrição |
||
---|---|---|---|
sysadmin |
Os membros da função de servidor fixa sysadmin podem executar qualquer atividade no servidor. |
||
serveradmin |
Os membros da função de servidor fixa serveradmin podem alterar as opções de configuração de todo o servidor e desligar o servidor. |
||
securityadmin |
Os membros da função de servidor fixa securityadmin gerenciam logons e suas propriedades. Eles podem CONCEDER, NEGAR e REVOGAR permissões de nível de servidor. Também podem executar as permissões de nível de banco de dados GRANT, DENY e REVOKE se tiverem acesso ao banco de dados. Além disso, eles podem redefinir senhas para logons do SQL Server.
|
||
processadmin |
Os membros da função de servidor fixa processadmin podem encerrar os processos em execução em uma instância do SQL Server. |
||
setupadmin |
Os membros da função de servidor fixa setupadmin podem adicionar e remover servidores vinculados usando instruções Transact-SQL. (A associação sysadmin é necessária ao usar o Management Studio.) |
||
bulkadmin |
Os membros da função de servidor fixa bulkadmin podem executar a instrução BULK INSERT. |
||
diskadmin |
A função de servidor fixa diskadmin é usada para gerenciar arquivos em disco. |
||
dbcreator |
Os membros da função de servidor fixa dbcreator podem criar, alterar, descartar e restaurar qualquer banco de dados. |
||
public |
Todo logon do SQL Server pertence à função de servidor public. Quando permissões específicas não são concedidas ou são negadas a uma entidade de servidor em um objeto seguro, o usuário herda as permissões concedidas como public nesse objeto. Só atribua permissões públicas em qualquer objeto quando desejar que o objeto esteja disponível para todos os usuários. Você não pode alterar associação no public.
|
Permissão em nível de servidor
Somente podem ser acrescentadas permissões do nível de servidor a funções de servidor definidas pelo usuário. Para listar as permissões em nível de servidor, execute a instrução a seguir. As permissões em nível de servidor são:
SELECT * FROM sys.fn_builtin_permissions('SERVER') ORDER BY permission_name;
Para obter mais informações sobre permissões, consulte Permissões (Mecanismo de Banco de Dados) e sys.fn_builtin_permissions (Transact-SQL).
Trabalhando com funções de nível de servidor
A tabela a seguir explica os comandos, exibições e funções que você pode usar para trabalhar com funções de nível de servidor.
Recurso |
Tipo |
Descrição |
---|---|---|
Metadados |
Retorna uma lista de funções de nível de servidor. |
|
Metadados |
Retorna informações sobre os membros de uma função de nível de servidor. |
|
Metadados |
Exibe as permissões de uma função de nível de servidor. |
|
Metadados |
Indica se um logon do SQL Server é membro da função de nível de servidor especificada. |
|
Metadados |
Retorna uma linha para cada membro de cada função de nível de servidor. |
|
Command |
Adiciona um logon como um membro de uma função de nível de servidor. Preterido. Use ALTER SERVER ROLE em vez disso. |
|
Command |
Remove um logon do SQL Server ou um usuário ou grupo do Windows de uma função de nível de servidor. Preterido. Use ALTER SERVER ROLE em vez disso. |
|
Command |
Cria uma função de servidor definida pelo usuário. |
|
Command |
Altera a associação de uma função de servidor ou altera nome de uma função de servidor definida pelo usuário. |
|
Command |
Remove uma função de servidor definida pelo usuário. |
|
Função |
Determina associação de função de servidor. |
Consulte também
Referência
Funções de nível de banco de dados
Exibições do catálogo de segurança (Transact-SQL)
Funções de segurança (Transact-SQL)
Permissões de entidade de segurança do servidor GRANT (Transact-SQL)
Permissões do principal do servidor REVOKE (Transact-SQL)
Permissões de principal do servidor DENY (Transact-SQL)