

# Amazon RDS for SQL Server의 데이터베이스 이름 보기 거부 또는 허용
<a name="Appendix.SQLServer.CommonDBATasks.ManageView"></a>

마스터 사용자는 `DENY VIEW ANY DATABASE TO LOGIN`을 설정하여 사용자에게 데이터베이스를 숨길 수 없습니다. 이 권한을 변경하려면 다음 저장 프로시저를 대신 사용합니다.
+ *LOGIN*에 대한 데이터베이스 보기 액세스 거부:

  ```
  EXEC msdb.dbo.rds_manage_view_db_permission @permission=‘DENY’, @server_principal=‘LOGIN’  
  go
  ```
+ *LOGIN*에 대한 데이터베이스 보기 액세스 허용:

  ```
  EXEC msdb.dbo.rds_manage_view_db_permission @permission='GRANT', @server_principal='LOGIN' 
   go
  ```

이 저장 프로시저를 사용할 때는 다음 사항을 고려해야 합니다.
+ 데이터베이스 이름은 SSMS 및 내부 동적 관리 보기(DMV)에서 숨겨집니다. 하지만 데이터베이스 이름은 감사, 로그 및 메타데이터 테이블에서 계속 볼 수 있습니다. 이는 보안이 적용되는 `VIEW ANY DATABASE` 서버 권한입니다. 자세한 내용은 [DENY 서버 권한](https://learn.microsoft.com/en-us/sql/t-sql/statements/deny-server-permissions-transact-sql?view=sql-server-ver16#permissions)을 참조하세요.
+ 권한이 `GRANT`(허용)로 되돌려지면 *LOGIN*은 모든 데이터베이스를 볼 수 있습니다.
+ *LOGIN*을 삭제하고 다시 만들면 LOGIN과 관련된 보기 권한이 `ALLOW`로 재설정됩니다.
+ 다중 AZ 인스턴스의 경우 기본 호스트의 *LOGIN*에만 `DENY` 또는 `GRANT` 권한을 설정합니다. 변경 사항은 보조 호스트에 자동으로 전파됩니다.
+ 이 권한은 로그인이 데이터베이스 이름을 볼 수 있는지만 변경합니다. 그러나 데이터베이스와 내부 객체에 대한 액세스는 별도로 관리됩니다.