MigraTI - Soluções em banco de dados

sábado, 8 de outubro de 2016

Grant para usuário visualizar apenas databases especificas. (SQL-Server)

Bom dia, sempre me preocupei muito em escrever posts sobre Oracle, porem como o meu foco hoje em dia não é apenas Oracle e sim, Banco de dados em Geral, começarei a postar dicas de outros bancos de dados também, dito isso vamos dar uma dica bem bacana de SQL-Server.

Sabe quando você possui um usuário e não quer que ele consiga nem mesmo visualizar os databases que a instancia possui? Então, no SQL-Server é meio "chato" de fazer essa configuração na mão, então la vai os comandos que efetuam esse Grant.

Conecte com algum usuário que possua permissão sysadmin e efetue o processo abaixo:

USE <database_destino>

ALTER AUTHORIZATION ON DATABASE::<database_destino>to <usuário_destino>;


USE MASTER

DENY VIEW ANY DATABASE TO <database_destino>;

Caso o primeiro comando dê erro, verifique se o mesmo já não possui acesso ao database, é importante que ele ainda não possua acesso ao database.

Para você ver como ficaria o usuário seria assim...
Na aba "Mapeamento de Usuário":



Na aba "Protegíveis", vá para "Efetivas":




Boa diversão.