

# Negue ou permita a visualização de nomes de banco de dados no Amazon RDS para SQL Server
<a name="Appendix.SQLServer.CommonDBATasks.ManageView"></a>

O usuário principal não pode definir `DENY VIEW ANY DATABASE TO LOGIN` para ocultar bancos de dados de um usuário.   Para alterar essa permissão, use o seguinte procedimento armazenado:
+ 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 DATABASE` do servidor. Para ter mais informações, consulte [Permissões do servidor DENY](https://learn.microsoft.com/en-us/sql/t-sql/statements/deny-server-permissions-transact-sql?view=sql-server-ver16#permissions).
+ Depois que a permissão for revertida para `GRANT` (permitido), o *LOGIN* poderá visualizar todos os bancos de dados.
+ Se você excluir e recriar *LOGIN*, a permissão de visualização relacionada ao LOGIN será redefinida como `ALLOW`.
+ Para instâncias multi-AZ, defina a permissão `DENY` ou `GRANT` somente para o *LOGIN* no 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.