2013-01-22 1 views
3

내 데이터베이스가 공유 호스팅에서 호스팅됩니다. Management Studio Express에서 데이터베이스를 원격으로 연결합니다. 언제든지 sqlserver 인스턴스에 연결하려고하면 해당 서버 인스턴스에서 호스팅되는 모든 데이터베이스가 표시됩니다. 이것은 다른 사용자의 400 데이터베이스에서 귀하의 데이터베이스를 항상 찾아내는 것을 성가 시게합니다.관리 스튜디오 개체 탐색기에서 필터 데이터베이스를 표시하는 방법

데이터베이스 목록을 내가 원했거나 권한이있는 사람에게 필터링하는 방법이 있습니까? 나는 내가 가지고 있지 않은 데이터베이스 나 내가 소유하지 않은 데이터베이스를보고 싶지 않습니다.

내 데이터베이스가 공유 호스팅에서 호스팅되고 사용자 권한이 제한됨을 기억하십시오.

+0

[dba] (http://dba.stackexchange.com/q/50493/31340) 및 [** microsoft connect의 4 번 **] (http://funkylab.com/ 관리중인 스튜디오에서 데이터베이스 필터링). MS에서 구현할 계획이없고 보이는 해결 방법이없는 것처럼 보입니다. – KyleMit

답변

1

나는 비슷한 문제를 조사해 왔지만,이 경우 작동하는 것으로 보이는 유일한 방법은 약간 hackish이지만이 경우에는 효과가있을 수 있습니다. 관리자 (또는 공유 호스트의 관리자)가 데이터베이스의 DBO에 로그인 한 다음 DENY VIEW를 로 설정하면 로그인시 데이터베이스가 모두 개가됩니다. 연결할 때 로그인이 소유 한 데이터베이스 만 표시해야합니다 . 따라서 T-SQL은 다음과 같습니다

`사용에서는 AdventureWorks2008R2

ALTER AUTHORIZATION ON의 DATABASE ::에서는 AdventureWorks2008R2 사용 MASTER

TestLogin

보기 ANY DATABASE를 부정하는이

을하지 TestLogin` TO 이 시나리오에 적합한 지 확실하게 말하지 않는 것이 좋습니다.하지만 도움이 될 수 있습니다.