Não existe uma ferramenta que possa analisar um log de consulta e informar o que será executado agora e para todo o tempo com base nele, simplesmente porque não há como saber se o log de consulta é uma lista exaustiva de todas as consultas que pode ser gerado pelo software.
Você precisa olhar para o código real fazendo a consulta para fazer essa determinação.
Se você não tiver acesso ao código real, a melhor coisa a fazer na sua situação é criar contas por aplicativo que tenham acesso somente ao (s) banco (s) de dados necessários para o aplicativo específico e não possam executar qualquer declarações DDL - isso eliminará pelo menos o Little Bobby Tables problema (e, francamente, qualquer sistema no qual o código está executando instruções DDL é provavelmente fundamentalmente quebrado e precisa ser cuidadosamente reavaliado para as permissões adequadas de esgrima).
Faça isso em seu ambiente de desenvolvimento (você tem um, certo?) e teste para ter certeza de que seus aplicativos funcionam corretamente. Esteja especialmente atento a nomes de usuário / senhas codificados que talvez você não consiga entender. Se você não tiver a sorte de ter um teste de ambiente de desenvolvimento fora do horário comercial, com acesso aos aplicativos afetados desativados para todos os usuários, exceto para a equipe interna de desenvolvimento / teste.
Depois disso, você pode decidir se faz sentido colocar restrições adicionais em algumas partes do aplicativo (por exemplo, contas somente leitura, contas que podem apenas INSERT
ou UPDATE
, mas não DELETE
, etc.)