Por padrão, o SQL concede permissão de execução em armazenado para público e também seleciona algumas tabelas e exibições no Master para público... Não tenho 100% de certeza sobre isso... Qual é a implicação se tivermos que remover os privilégios de seleção nesses objetos do Public on Master?
Obrigado...
Contanto que você tenha fornecido qualquer conta que precise de permissões explícitas para esses objetos (visualizações/procedimentos), você não deverá ter problemas. O problema que geralmente vejo depois de alterar as permissões de função PUBLIC são os aplicativos que assumem que as permissões estão lá, em vez de apenas fornecer permissões explícitas a eles.
Você descobrirá que algumas documentações da Microsoft declaram não alterar as permissões da função PÚBLICA. Eu trabalho com a lista de verificação do banco de dados IASE e as permissões dadas à função PUBLIC são uma das primeiras coisas que precisamos remover/revogar. Sempre mantenho o script à mão para restaurar as permissões, se necessário.
Consulta EDIT para encontrar permissões públicas que eu uso às vezes:
Eu não faria isso por tudo.
A maioria dos scripts de bloqueio remove ou nega a seletividade de direitos . O SQL Server 2005+ também é melhor que as versões mais antigas (o script é para SQL Server 2000)
Basta executar o SQL Profiler e ver o que é executado quando um usuário padrão abre um banco de dados usando o SSMS. Por exemplo, spt_values é muito usado, mas não documentado . Dizendo isso, isso afetará apenas desenvolvedores ou algo assim (db_owner no máximo, nunca sysadmin) de qualquer maneira. Os usuários finais não devem usar o SSMS