Question
디비를 여러게 사용하고 있는데요  
Microsoft SQL Server Management Studio로 접속하면 권한이 없어도 해당 디비명이 다 보입니다.  
기존 MSSQL2000에서는 sp_MSdbuseraccess를 변경해서 자기 디비만 보이도록 설정을 했었는데  
MSSQL2005에서는 설정하는 방법이 없나요?

 

 

다음과 같은 방식으로 SSMS에서 자신의 데이터베이스만 SSMS에 나타나도록 설정할 수 있습니다.

 

-- 테스트용 사용자 데이터베이스 생성

CREATE DATABASE User1DB

GO

CREATE DATABASE User2DB

GO

 

-- 데이터베이스에 해당하는 사용자 계정 생성

CREATE LOGIN User1 WITH PASSWORD='AAA', DEFAULT_DATABASE=User1DB

GO

CREATE LOGIN User2 WITH PASSWORD='AAA', DEFAULT_DATABASE=User2DB

GO

 

--public 대해 DATABASE VIEW 권한 취소

REVOKE VIEW ANY DATABASE FROM public

GO

 

-- DB 대해 Owner 설정

USE USER1DB

GO

sp_changedbowner 'User1'

GO

 

USE USER2DB

GO

sp_changedbowner 'User2'

GO

 

 

 

 

, 위의 방법은 해당 DB에 대한 dbowner를 변경하는 방식이기 때문에 데이터베이스 당 하나의 로그인만 지정할 수 있습니다.

(혹시 다른 방법이 있을까요??)

출처 :  http://www.sqlleader.com/mboard.asp?exec=view&strBoardID=SS2005Admin&intPage=1&intCategory=0&strSearchCategory=|s_name|s_subject|&strSearchWord=&intSeq=1319


Posted by 시스템매니아
,