A alteração da senha "sa" requer uma reinicialização do SQL (no modo misto)?

13

Descobrimos que uma conta "sa" do SQL está sendo usada de uma maneira que não deveria ter sido; portanto, estamos alterando as senhas do sa em todas as nossas instâncias do SQL.

(Temos servidores SQL 2005 a 2017 em execução no modo de autenticação mista. Todos os usuários e aplicativos devem usar contas de domínio ou contas SQL que não sejam sa para se conectar. Eu monitorava, mas não encontrei nenhum outro aplicativo, usuário ou não spids internos usando a conta sa.)

Algumas questões:

T1: alterar a senha sa requer uma reinicialização do SQL?

Encontrei algumas referências que dizem que é necessário reiniciar o serviço SQL depois de alterar a senha da conta sa:

Isso é verdade? Ou apenas se eu estiver alterando o modo de autenticação? Ou apenas se eu fizer logon rotineiramente como sa?

Esse encadeamento do SQL Server Central ainda sugere que alterá-lo, podendo afetar os trabalhos existentes do agente SQL e outras coisas; isso é uma preocupação? Ou apenas se alguém tiver codificado a conta SA em um pacote SSIS ou algo assim?

(Caso isso importe, usamos contas de domínio para o serviço SQL e o serviço do agente SQL e contas proxy de domínio para tarefas que chamam pacotes SSIS ou scripts do PowerShell.)

P2: Posso alterar a senha sa da maneira "normal"?

Posso redefini-lo como faria com qualquer outra conta? Usando SSMS, ou mais provavelmente via:

ALTER LOGIN sa WITH PASSWORD = 'newpass';

Ou precisaria entrar no modo de usuário único ou algo que exigiria tempo de inatividade planejado? (Observe que eu estaria executando isso em uma conta de domínio, não enquanto estiver conectado como "sa".)

Q3: devemos tentar fazer essa rotação de senha regularmente? Ou apenas quando encontramos um problema?

Essa é uma "prática recomendada"?

BradC
fonte

Respostas:

15

T1: alterar a senha sa requer uma reinicialização do SQL?

Não, mas alterar o modo de autenticação sim. Como você está apenas alterando a senha e o modo de autenticação já está definido como misto, é melhor mudar apenas a senha.

P2: Posso alterar a senha sa da maneira "normal"?

Sim, é apenas outra conta de logon do SQL.

Q3: devemos tentar fazer essa rotação de senha regularmente? Ou apenas quando encontramos um problema?

Para ser sincero, eu desativaria e renomearia o login do SA. Dessa forma, ele não será usado, e se você precisar de um login altamente privilegiado, poderá fazer um conforme necessário.

Sean diz remover Sara Chipps
fonte
Não renomeie-o, mas desativá-lo é uma boa ideia.
19379 Joshua
2
@ Joshuaua Renomear é uma boa ideia, especialmente se você estiver sendo auditado ou como parte de outras práticas de segurança que possam ser necessárias como parte de um esforço de conformidade.
Sean diz remover Sara Chipps em 21/02/19
2
Passei muito tempo rastreando coisas quebradas porque alguém renomeou uma conta interna depois que ela foi usada.
Joshua
@ Josué, se você o renomeou e o desativou ao construí-lo, isso não seria um problema. Claro que esta é apenas uma solução daqui para frente. Renomear meses ou anos depois pode ser problemático.
James Jenkins
@JamesJenkins: Ah, bom, você está entendendo.
21719 Joshua
7

Isso é fechar a porta do celeiro depois que os cavalos já fugiram da pergunta.

Você deveria ter renomeado e desativado a conta sa ao criar a instância.

Sempre que você tiver uma conta conhecida, como administrador em um sistema Windows ou sa para SQL Server, você deve executar algumas etapas para protegê-la. Vejamos especificamente o que você deve fazer com sa:

Defina uma senha difícil de adivinhar.

Renomeie para.

Desativar sa.

Verifique se não existem outras contas nomeadas sa.

Fonte

Se você estiver mantendo a conta 'sa' como uma maneira emergencial de obter acesso ao SQL, existem maneiras mais seguras, consulte: Conectar-se ao SQL Server quando os administradores de sistema estão bloqueados Se você não tiver acesso à conta de rede, terá problemas maiores e não estará sendo capaz de se conectar ao SQL.

James Jenkins
fonte
1
Posso ver a renomeação de sa, mas não desabilitá-la totalmente me impediria de conectar se a autenticação de domínio se tornasse indisponível em uma emergência? (Não que eu me lembro de alguma vez a necessidade de fazê-lo, mas eu estou tentando antecipar todas as contingências.)
BradC
@BradC editada na atualização de endereçamento de seu comentário
James Jenkins
Obrigado, consideraremos isso para uma solução de longo prazo.
BradC 20/02/19
1
É difícil, se não impossível, que a Autenticação Integrada pare de funcionar completamente, pois o serviço SQL Server não será executado a menos que possa efetuar login. Você não precisa ter um domínio do Active Directory presente para usar a Autenticação Integrada do Windows; O SQL Server pode autenticá-lo contra a autoridade de segurança local.
Max Vernon