2011-08-02 3 views
1

아래 코드를 실행 한 후 특정 데이터베이스에 대한보기 권한을 부여하기위한 해결 방법이 있습니까?, MS SQL 2008 RC2를 사용 중입니다.GRANT VIEW on 1 databases

REVOKE VIEW ANY DATABASE FROM <login>; 

덕분에 내가 아는 지금까지로

답변

3

, REVOKE 승리, 당신은 VIEW ANY을 부여하고 개별적으로 다른 모든 데이터베이스에 거부 할 수도 있도록. 이것은 당연히 덜 재미 있지만, 하나 하나 수행하지 않고도 자동화 할 수 있습니다.

+0

답장을 보내 주셔서 감사합니다. 단일 데이터베이스의 뷰를 부여/거부하는 데 사용할 SQL 문을 알고 있습니까? 실제로는 찾고자하는 것이기 때문입니다. –

+0

사용자가 접근하고자하는 데이터베이스에서'CREATE USER FOR LOGIN ;'이어야하고 데이터베이스가 생성 된 데이터베이스에서'DROP USER ;'이어야하지만 지금은 거부하려고합니다. 자체 스키마가 있거나 오브젝트를 작성한 경우). 물론 일단 데이터베이스에 있으면 사용 권한을 실제로 처리하지는 않지만 시작해야합니다. 제한된 테스트에서 DB 수준의 사용자가'REVOKE ANY'를 무시할 것으로 보이지만 (특정 DB에서는 부재를 넘어서는 'GRANT ANY'), 시스템에서 테스트하려고 할 것입니다. –

+0

내 시나리오는 다음과 같습니다. 2 데이터베이스 및 TestUser 서버 수준에서 있습니다. 나는'TestUser로부터 어떤 데이터베이스라도 보았습니다 .'를 실행했습니다. 그리고 이제 사용자가 managment studio를 사용하여 로그인 할 때 데이터베이스가 보이지 않습니다 (어느 것이 좋습니다). 이 사용자를 내 데이터베이스 아래에 추가하고 해당 데이터베이스를 사용자가 볼 수있게하려면 SQL 관리 Studio에 연결할 때 단일 데이터베이스를 비주얼하게 만드는 명령을 찾을 수 없기 때문에 여기에 있습니다. –