Executando o SQLServer 2008.
Portanto, preciso remover uma conta de usuário antigo, mas estou preocupado que apenas desativá-la ou excluí-la imediatamente possa fazer com que algumas coisas parem de funcionar corretamente se forem configuradas nessa conta e/ou dependerem dela de alguma forma .
Existe um script que eu possa executar que me diga se há algo que pode quebrar se eu me livrar de uma conta de usuário específica?
Não acho que exista um método infalível para encontrar tudo . Afinal, eles poderiam ter acesso a coisas simplesmente por estarem em um servidor específico ou função de banco de dados, ou até mesmo em um grupo Windows AD (você não especificou se este é um login de autenticação SQL ou um login do Windows). Também não há uma maneira infalível de identificar o que pode quebrar se isso for alterado - por exemplo, se eles forem o proprietário de um trabalho ou banco de dados, mudar isso para um proprietário diferente causará algum problema? Talvez talvez não. Posso pensar em algumas coisas que são fáceis de encontrar, mas não é realmente uma maneira de verificar se elas não vão quebrar sem realmente alterá-las e ver o que quebra .
Para a descoberta inicial, e isso não é de forma alguma exaustiva (apenas um começo para as coisas mais comuns da minha cabeça). Observe que eu os dividi em pedaços para facilitar a leitura, mas você vai querer dispará-los todos de uma vez para reutilizar as variáveis declaradas no início.
-- logins de servidores vinculados
-- bancos de dados com direitos de autorização
-- empregos pertencentes a este login
-- jobs com este login tendo uma execução como etapa
-- funções de servidor das quais são membros ou proprietários
-- permissões de servidor que foram concedidas ou revogadas
-- funções no banco de dados
-- permissões no banco de dados
-- módulos no banco de dados com EXECUTE AS
-- objetos no banco de dados que o login "possui" (ALTER AUTHORIZATION)
-- esquemas no banco de dados que o login "possui"
Tenho certeza de que há outros que poderiam ser adicionados à lista - não tenho nenhum problema em ajudar a descobrir a consulta se você me disser quais são essas coisas.