
Criei um usuário com direitos de leitura em todo o banco de dados criado por uma aplicação para executar relatórios. O problema é que esta aplicação cria um novo banco de dados para cada novo projeto.
Existe uma maneira para este usuário obter automaticamente direitos de leitura para cada novo banco de dados criado neste servidor?
Obrigado
Responder1
Supondo que a instância do SQL Server seja usada apenas para este aplicativo, você poderá adicionar o usuário ao banco de dados modelo com as mesmas permissões. Model é usado como... modelo para todos os novos bancos de dados.
Responder2
Use um gatilho DDL em CREATE_DATABASE, consultehttp://technet.microsoft.com/en-us/library/ms186406.aspxpara registrar uma linha em uma tabela em um banco de dados que permanecerá constante. Em seguida, crie um trabalho do SQL Agent que procure novas linhas nesta tabela e execute uma instrução GRANT para conceder direitos. Uma vez feito isso, sinalize a linha como 'acionada'.
Com esta solução você ainda pode filtrar os bancos de dados nos quais deseja que a ação seja aplicada.