1
이러한 데이터베이스에 대한 액세스 권한이없는 사용자에 대해 MS SQL Server 목록 데이터베이스를 중지 할 수있는 방법이 있습니까? 현재 데이터베이스 A에 사용자를 설정하면 사용 권한이 없어도 데이터베이스 B, C, D, E 등을 볼 수 있습니다.액세스 권한이없는 사용자의 데이터베이스를 나열하는 SQL Server 2008 R2 중지
이러한 데이터베이스에 대한 액세스 권한이없는 사용자에 대해 MS SQL Server 목록 데이터베이스를 중지 할 수있는 방법이 있습니까? 현재 데이터베이스 A에 사용자를 설정하면 사용 권한이 없어도 데이터베이스 B, C, D, E 등을 볼 수 있습니다.액세스 권한이없는 사용자의 데이터베이스를 나열하는 SQL Server 2008 R2 중지
모든 SQL 로그인은 '공개'서버 수준 역할의 구성원이며 기본적으로 VIEW ANY DATABASE 권한이 있습니다. 이렇게하면 해당 권한이 취소됩니다.
REVOKE VIEW ANY DATABASE FROM public
이렇게하면 필요한 로그인에서보기 데이터베이스도 제거됩니다. 거기에 사용자가 적어도 거기에 자신의 데이터베이스를 볼 수있는 방법이 있나요? – iziizi
"데이터베이스 메타 데이터에 대한 가시성을 제한하려면 VIEW ANY DATABASE 권한을 로그인을 거부하십시오.이 권한이 거부 된 후 로그인은 로그인이 소유 한 master, tempdb 및 데이터베이스에 대한 메타 데이터 만 볼 수 있습니다." 할당 된 로그인에 대해 사용자가 db_owner이므로 데이터베이스를 볼 수 있어야한다는 것을 의미합니다. 내가 잘못하고있는 다른 것이 있습니까? – iziizi
문제의 로그인이 데이터베이스의 실제 소유자 또는 db_owner의 구성원입니까? 데이터베이스에 대한 ALTER AUTHORIZATION :: TO 은 명시 적으로 소유자로 지정해야합니다. 실제 소유자가 아니라면 SSMS에서 볼 수 없습니다. 이는 다음과 같이 알려진 제한 사항입니다. http://social.msdn.microsoft.com/Forums/en-US/sqldatabaseengine/thread/bac3cf1f-65bc-4340-84ac-5fdd4b9d71cd –
MartW