Você sabe o que é um sysadmin?

Atualizado: 20 de Fev de 2020

Olá pessoal, o assunto de hoje é um tema muito importante e que é negligenciado por muita gente. Sysadmin, qual a função dessa role ? Quando deve ser usado? Por quem? Quais as melhores práticas? É o que tratarei nesse post.

Role é uma função que contem um grupo de permissões específicas na instância SQL Server (As funções são como grupos no sistema operacional Windows.)

O sysadmin no banco de dados SQL Server tem a mesma função do administrador do windows (seja servidor ou máquina local). Os membros da função de servidor fixa sysadmin podem executar qualquer atividade na instância.


Para começar, quando estamos realizando a instalação de uma nova instância SQL dois logons sysadmin são criados:

1 - Logon do modelo windows, que é um usuário de windows que você escolhe atribuir a essa função (de forma mais aprofundada você pode atribuir um grupo de windows onde todos os usuários dentro desse grupo tenham a permissão).


2 - Logon do tipo SQL logon, esse usuário sempre é criado com o nome SA (se escolher a opção de autenticação na instalação Windows Authentication o SA é criado já desabilitado, caso escolha o formato Mixed mode, os campos de senha serão habilitados para serem preenchidos)


Devido a alta permissão desses logons (podem executar qualquer ação na instância) o uso deles deve ser restrito aos administradores do ambiente. Aplicativos de usuários, BIs e outros dispositivos devem acessar os bancos com logons específicos e com permissões específicas em cada banco de dados. Infelizmente é comum encontrarmos aplicações que rodam com logon sysadmin, isso é uma prática muito ruim e perigosa.


É possível também criarmos novos logons e atribuirmos essa mesma permissão, podemos ter quantos forem necessários.

Isso pode ser feito de duas formas


1 - Pelo Management Studio

Logon do tipo Windows

Logon do tipo SQL

Atribuição da role sysadmin para os dois tipos de logon é igual


2 - Por T-SQL

Logon do tipo windows / Logon do tipo SQL


Mas afinal, precisamos ter muitos logons com essa permissão?

Recomendo que não! Essa função de servidor deve ser restringida ao máximo, toda a sua segurança depende dela.

É como a senha do seu cartão de credito, quanto mais pessoas tiverem acesso a ela, maior é a chance de você se dar mal.


Após longos anos de experiência lidando com ambientes cada vez mais críticos e complexos montei um check list de boas práticas para garantir ao máximo a continuidade do ambiente e a segurança dos dados e que compartilho com você agora.


1 - Desabilite o logon SA

Sim, não devemos usar esse logon, ele é o alvo principal em tentativas de invasão.

2 - Altere a senha do logon SA

Alterar a senha desse logon para garantir que apenas pessoas restritas possam ter a informação (o minimo possível).

3 - Altere o nome do logon

Isso mesmo, ao passo que invasores buscarão inicialmente pelo logon padrão criado pelo SQL, podemos alterar o seu nome.

* O SQL necessita de um logon com nome SA (funcionamento interno), portanto devemos criar um novo com o minimo de permissão e desabilitá-lo, assim, se alguma pessoa conseguir habilitá-lo de alguma forma não terá a permissão de sysadmin como imaginava.

4 - Crie um novo logon sysadmin (antes dos passos anteriores, claro)

Sempre que possível trabalhe com logons windows authentication para a equipe de manutenção do ambiente, isso garante logons nominais, com restrições do grupo do windows (como política de senhas por exemplo), podemos usar todo o recurso que o windows nos oferece dentro do SQL Server. Caso seja realmente necessário a criação de logon SQL sysadmin, selecione as opções para impor política de senhas e trocar no primeiro login (garantindo que apenas

aquele colaborador tenha a senha do logon).

5 - Utilize senhas longas

Lembre-se a segurança é muito importante, não podemos facilitar.

6 - Habilite a auditoria de logon

É fácil e eficaz, irá gerar um log no event viewer e/ou no errorlog do SQL Server.

7 - Monitore os acessos frequentemente

Acompanhar o ambiente é de extrema importância, parte do nosso trabalho é estar atento a tudo, analise os logs com frequência.

8 - Revise as permissões periodicamente

Troca de colaboradores, projetos que finalizaram, muitas são as situações onde a permissão de sysadmin pode ser retirada, devemos garantir que só tenham o acesso quem realmente precisa.


Cada detalhe é muito importante e isso faz parte da vida do DBA. Busque soluções, precisamos estar sempre um passo a frente, afinal, cuidamos de dados!


Até a próxima!

#CG_Administrator


184 visualizações0 comentário