Negue ou permita a visualização de nomes de banco de dados no Amazon RDS para SQL Server
O usuário principal não pode definir DENY VIEW ANY DATABASE TO para ocultar bancos de dados de um usuário.
Para alterar essa permissão, use o seguinte procedimento armazenado:LOGIN
-
Negar acesso de visualização do banco de dados ao
LOGIN:EXEC msdb.dbo.rds_manage_view_db_permission @permission=‘DENY’, @server_principal=‘LOGIN’go -
Permitir acesso de visualização do banco de dados ao
LOGIN:EXEC msdb.dbo.rds_manage_view_db_permission @permission='GRANT', @server_principal='LOGIN'go
Pense no seguinte ao usar esse procedimento armazenado:
-
Os nomes dos bancos de dados estão ocultos do SSMS e do DMV interno (visualizações de gerenciamento dinâmico). No entanto, os nomes dos bancos de dados ainda são visíveis nas tabelas de auditoria, de logs e de metadados. Essas são permissões protegidas
VIEW ANY DATABASEdo servidor. Para ter mais informações, consulte Permissões do servidor DENY. -
Depois que a permissão for revertida para
GRANT(permitido), oLOGINpoderá visualizar todos os bancos de dados. -
Se você excluir e recriar
LOGIN, a permissão de visualização relacionada ao LOGIN será redefinida comoALLOW. -
Para instâncias multi-AZ, defina a permissão
DENYouGRANTsomente para oLOGINno host primário. As alterações são propagadas automaticamente para o host secundário. -
Essa permissão só altera se um login pode visualizar os nomes do banco de dados. No entanto, o acesso aos bancos de dados e objetos internos é gerenciado separadamente.