SQL Server: como evitar direitos de administrador de sistema, mas conceder direitos adequados

9

Eu tenho um colega que deseja obter acesso a uma instância do SQL Server 2008. Vou ter que dar direitos a ele nesta instância. Ele deveria ter direitos para fazer é, por exemplo,

  • Adicionar e modificar logins do servidor
  • Adicione e modifique planos de manutenção (por exemplo, crie backups a partir dos bancos de dados)
  • Agendar trabalhos do agente

Não quero dar a ele direitos de administrador de sistemas, que direitos devem ser concedidos?

jrara
fonte

Respostas:

10

Para logins do servidor, você pode conceder "securityadmin" . A maneira "mais recente" é executar

GRANT ALTER ANY LOGIN TO AColleague

Edit: Securityadmin permite que alguém se inicialize no sysadmin. Não é bom. Não sei como solucionar isso no nível do servidor

Para tarefas, consulte as "Funções de banco de dados fixas do SQL Server Agent"

Para planos de manutenção, parece apenas "sysadmin"

gbn
fonte
Obrigado, diz na BOL: msdn.microsoft.com/en-us/library/ms188659.aspx?ppud=4 que securityadmin deve ser tratado como função de servidor sysadmin. Existe uma maneira de restringir direitos de administrador de segurança para logins? Ou será que "CONCEDE ALTERAR QUALQUER LOGIN no AColleagu" fará isso?
Jrara #
@jrara: securityadmin é suficiente ou o GRANT
gbn
2
Ele deve ser tratado como sysadmin porque conceder direitos securityadmin permite ao usuário conceder a si próprio permissões de função sysadmin.
@jrara: nesse caso, você não pode usar o securityadmin. Nas funções db%, entidades e permissões são separadas. É comum não conceder nenhuma função de servidor, exceto talvez bulkadmin
gbn
5

Só para você ter algo pelo que esperar, no SQL Server Denali isso será ainda mais flexível. Em vez de conceder direitos individuais um por um, você poderá definir funções de servidor personalizadas , atribuir todas essas permissões à função e adicionar membros à função. Algumas pessoas blogaram sobre isso:

http://www.sqlsoldier.com/wp/sqlserver/customserverrolesindenali

http://www.straightpathsql.com/archives/2010/11/create-your-own-sql-server-server-roles/

Aaron Bertrand
fonte