Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 SQL Server 2005 Management studio DB list  [new]
oracloid
Member

Откуда:
Сообщений: 56
dears,

can you help me to find one answer,

how i can hide Database list in Management studio for other users which havent any privilages for this databases.

thank you in advance.
2 июл 09, 10:11    [7366907]     Ответить | Цитировать Сообщить модератору
 Re: SQL Server 2005 Management studio DB list  [new]
pkarklin
Member

Откуда: Москва (Муром)
Сообщений: 74927
Этот список строится на основе каталожной вьюхи sys.databases.

If the caller of sys.databases is not the owner of the database and the database is not master or tempdb, the minimum permissions required to see the corresponding row are ALTER ANY DATABASE or VIEW ANY DATABASE server-level permission, or CREATE DATABASE permission in the master database. The database to which the caller is connected can always be viewed in sys.databases.

Так что, не давайте лишних полномочий серверного уровня.
2 июл 09, 10:19    [7366934]     Ответить | Цитировать Сообщить модератору
 Re: SQL Server 2005 Management studio DB list  [new]
oracloid
Member

Откуда:
Сообщений: 56
thank you for your answer.

just now i've tried to create new login and test.

this login havent any privilages and not granted any db roles.

just hame one defauld DB TEST_DB (not system db's )and thats all.

but when i connect to server i see all DB's.
2 июл 09, 10:26    [7366964]     Ответить | Цитировать Сообщить модератору
 Re: SQL Server 2005 Management studio DB list  [new]
daw
Member

Откуда: Муром -> Москва
Сообщений: 7381

> just now i've tried to create new login and test.
> this login havent any privilages and not granted any db roles.
> just hame one defauld DB TEST_DB (not system db's )and thats all.
> but when i connect to server i see all DB's.

проверьте разрешения у серверной роли public.

Posted via ActualForum NNTP Server 1.4

2 июл 09, 10:30    [7366978]     Ответить | Цитировать Сообщить модератору
 Re: SQL Server 2005 Management studio DB list  [new]
oracloid
Member

Откуда:
Сообщений: 56
there arent any priv.'s granted for public. :)
2 июл 09, 12:36    [7367750]     Ответить | Цитировать Сообщить модератору
 Re: SQL Server 2005 Management studio DB list  [new]
daw
Member

Откуда: Муром -> Москва
Сообщений: 7381

такой запрос вообще что-нибудь возвращает?

select
   *
from sys.server_permissions perm
   inner join sys.server_principals pr on
     perm.grantee_principal_id = pr.principal_id
where
   pr.name in ('public', 'yourNewLogin')


Posted via ActualForum NNTP Server 1.4

2 июл 09, 13:08    [7368004]     Ответить | Цитировать Сообщить модератору
 Re: SQL Server 2005 Management studio DB list  [new]
oracloid
Member

Откуда:
Сообщений: 56
100	SERVER	0	0	368	1	COSQ	CONNECT SQL	G	GRANT	pub	368	0x5FF1FDBD9831174EB95C18949094BE1A	S	SQL_LOGIN	0	2009-07-02 11:19:46.867	2009-07-02 11:20:16.050	MYDB_2009	us_english	NULL
2 июл 09, 13:37    [7368223]     Ответить | Цитировать Сообщить модератору
 Re: SQL Server 2005 Management studio DB list  [new]
Makiaveli
Member

Откуда:
Сообщений: 1
Разрешение VIEW ANY DATABASE

VIEW ANY DATABASE — это новое разрешение уровня сервера. Имя входа, которому предоставлено это разрешение, может просматривать метаданные, описывающие все базы данных, независимо от того, кому они принадлежат, и имеет ли имя входа доступ к этим базам данных.

Разрешение VIEW ANY DATABASE регулирует возможность просмотра метаданных в представлениях sys.databases и sysdatabases и с помощью системной хранимой процедуры sp_helpdb.


revoke VIEW ANY DATABASE from public
2 июл 09, 14:02    [7368359]     Ответить | Цитировать Сообщить модератору
 Re: SQL Server 2005 Management studio DB list  [new]
oracloid
Member

Откуда:
Сообщений: 56
dear Makiaveli

you are so kind.

thanky you.

problem solved.
2 июл 09, 14:04    [7368374]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить