데이터베이스 목록을 허가 SQL Server가있는 사람으로 제한하십시오
-
03-07-2019 - |
문제
기본적으로 10 개의 데이터베이스 중 하나에 액세스 할 수있는 계정을 통해 원격 SQL 서버에 연결하는 경우. 객체 탐색기에 여전히 다른 모든 데이터베이스에 표시됩니다. 실제로 쿼리 할 수는 없지만 이름을 볼 수 있습니다.
이 동작을 비활성화하는 방법이 있다고 들었지만 답을 찾을 수 없었습니다. 누구 든지이 작업을 수행하는 방법을 알고 있습니까? 예를 들기 위해 MyDbserver라는 SQL Server가 있는데 4 개의 데이터베이스가 있습니다.
- mydatabase
- yourdatabse
- privatedatabase
- 정말로 확신합니다
"YourDatabse"에 대한 권한 만있는 계정을 통해 연결하는 경우에도 여전히 다른 모든 데이터베이스의 목록이 표시되면 쿼리를 시도하면 "선택"권한 거부 또는 유사한 오류가 발생합니다.
보안 리슨의 경우 사용자가 맵핑 된 데이터베이스 이외의 데이터베이스를보고 싶지 않습니다.
해결책
이 블로그 SQL 2000 및 SQL 2005에 대한 DBS를 숨기는 방법에 대해 이야기합니다.
다른 팁
내 고객이 식별 된 리소스로 어려움을 겪은 후 나는 약간의 테스트를 수행하고 만들었습니다. 이 블로그 게시 이 작업을 수행하는 방법에 대한 문맥과 교육이 조금 더 있습니다.
그것의 부족은 다음과 같습니다.
use master
go
deny VIEW any DATABASE to login1
go
여기서 login1은 제한하려는 로그인 계정입니다.
제휴하지 않습니다 StackOverflow