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

Откуда:
Сообщений: 74
Всем привет!
Имеется SQL Server 2008 SP3
На сервере несколько баз и регламентные задания по их обслуживанию
Группа пользователей (программистов) должна иметь доступ через консоль только к одной определенной базе и работать только с ней (править таблицы). Можно ли как то при запуске SQL Server Management Studio дать доступ только к одной базе?
Что бы другие базы и закладки типа SQL Server Agent, Security, Management , Server Object, Replication вообще были скрыты из консоли? В консоле была бы только одна доступная база.

Заранее спасибо!
24 июл 13, 16:59    [14612203]     Ответить | Цитировать Сообщить модератору
 Re: Разрешить коннект только к базе  [new]
Crimean
Member

Откуда:
Сообщений: 13148
а не надо всех сисадминами делать. и все у вас будет.
24 июл 13, 17:08    [14612280]     Ответить | Цитировать Сообщить модератору
 Re: Разрешить коннект только к базе  [new]
да ладно
Guest
Crimean,

чего так категорично.
и рядовой юзер видит все папочки и базы,
только сделать нифигошеньки не может,
и дальше названия чужой базы ничего о ней не видит
24 июл 13, 17:31    [14612455]     Ответить | Цитировать Сообщить модератору
 Re: Разрешить коннект только к базе  [new]
Гость333
Member

Откуда:
Сообщений: 3683
да ладно
и рядовой юзер видит все базы

Это не так.
BOL -> 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.
24 июл 13, 17:48    [14612572]     Ответить | Цитировать Сообщить модератору
 Re: Разрешить коннект только к базе  [new]
да ладно
Guest
Гость333,

фу блин, я датаридер в одной базе, а вижу ВСЕ базы на сервере в обджект эксплорере.
стОит по чужой базе хлопнуть -- посылают.
а базы ВСЕ вижу
24 июл 13, 18:12    [14612698]     Ответить | Цитировать Сообщить модератору
 Re: Разрешить коннект только к базе  [new]
да ладно
Guest
хотя да, вот что выдает:

select *
from sys.fn_my_permissions(null, 'server')


entity_name subentity_name permission_name
server CONNECT SQL
server VIEW ANY DATABASE

ну значит, отбирайте VIEW ANY DATABASE
24 июл 13, 18:21    [14612733]     Ответить | Цитировать Сообщить модератору
 Re: Разрешить коннект только к базе  [new]
ACV
Member

Откуда:
Сообщений: 74
Спасибо, насколько я понял видимость объектов в SQL Server Agent, Security, Management , Server Object, Replication никак не убрать.
Есть ещё вариант установить под эту особую базу отдельный SQL (нужен не на долго, могу и триальным обойтись), но как разрешить с консоли этого триального СКЛ подключаться только к нему и запретить подключаться к другим СКЛ серверам в сети?
24 июл 13, 21:59    [14613494]     Ответить | Цитировать Сообщить модератору
 Re: Разрешить коннект только к базе  [new]
alexeyvg
Member

Откуда: Moscow
Сообщений: 31778
ACV
Спасибо, насколько я понял видимость объектов в SQL Server Agent, Security, Management , Server Object, Replication никак не убрать.
Не нужно убирать, они просто не должны быть видны.

Вы вообще пробовали просто создать пользователя и дать ему только права на эту базу? В этом случае ничего лишнего видно не будет.
24 июл 13, 22:08    [14613521]     Ответить | Цитировать Сообщить модератору
 Re: Разрешить коннект только к базе  [new]
alexeyvg
Member

Откуда: Moscow
Сообщений: 31778
ACV
как разрешить с консоли этого триального СКЛ подключаться только к нему и запретить подключаться к другим СКЛ серверам в сети?
Не давать права на эти СКЛ сервера
24 июл 13, 22:09    [14613524]     Ответить | Цитировать Сообщить модератору
 Re: Разрешить коннект только к базе  [new]
ACV
Member

Откуда:
Сообщений: 74
Создал пользователя.
Роль Public, доступ только к одной базе.
При заходе этим пользователем в консоль видны все базы и все остальные пункты
SQL Server Agent, Security, Management , Server Object, Replication
Может ещё как-то ограничивать надо?
25 июл 13, 12:06    [14615382]     Ответить | Цитировать Сообщить модератору
 Re: Разрешить коннект только к базе  [new]
Гость333
Member

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

А у роли public какие разрешения?
25 июл 13, 12:15    [14615429]     Ответить | Цитировать Сообщить модератору
 Re: Разрешить коннект только к базе  [new]
да ладно
Guest
ACV
Создал пользователя.
Роль Public, доступ только к одной базе.
При заходе этим пользователем в консоль видны все базы и все остальные пункты
SQL Server Agent, Security, Management , Server Object, Replication
Может ещё как-то ограничивать надо?


блин, ну вчера же еще было сказано: папки никуда не денутся,
их рядовой юзер видит.
а чтоб чужие базы не видел, конкретно юзеру или всему паблику
отобрать VIEW ANY DATABASE:
deny VIEW ANY DATABASE to public


больше отбирать нечего, вон же наверху все мои разрешения уровня сервера.
если еще и коннект отобрать, то на сервер не попасть
25 июл 13, 12:31    [14615545]     Ответить | Цитировать Сообщить модератору
 Re: Разрешить коннект только к базе  [new]
Гость333
Member

Откуда:
Сообщений: 3683
да ладно
папки никуда не денутся,
их рядовой юзер видит.

Папка SQL Server Agent при неких условиях (не знаю точно, каких) юзеру не видна. Про остальные папки не скажу, не уверен.
25 июл 13, 12:36    [14615571]     Ответить | Цитировать Сообщить модератору
 Re: Разрешить коннект только к базе  [new]
да ладно
Guest
Гость333
да ладно
папки никуда не денутся,
их рядовой юзер видит.

Папка SQL Server Agent при неких условиях (не знаю точно, каких) юзеру не видна. Про остальные папки не скажу, не уверен.


кстати, да.
откуда это у них рядовой юзер агента видит?
у меня на персоналке вижу агент только под админом,
юзер, являющийся овнером одной базы, и то агента не видит.
никаких особых ограничений тому овнеру не делалось.
25 июл 13, 12:46    [14615647]     Ответить | Цитировать Сообщить модератору
 Re: Разрешить коннект только к базе  [new]
alexeyvg
Member

Откуда: Moscow
Сообщений: 31778
ACV
Создал пользователя.
Роль Public, доступ только к одной базе.
Может, логин - виндовый админ?
25 июл 13, 13:47    [14616113]     Ответить | Цитировать Сообщить модератору
 Re: Разрешить коннект только к базе  [new]
alexeyvg
Member

Откуда: Moscow
Сообщений: 31778
ACV
Создал пользователя.
Роль Public, доступ только к одной базе.
Ну и вообще точнее пишите.

Пользователь не может иметь доступ к одной базе, потому что пользователь - атрибут базы, а не сервера.
Так что наверное вы создали логин, а не пользователя.
25 июл 13, 13:51    [14616137]     Ответить | Цитировать Сообщить модератору
 Re: Разрешить коннект только к базе  [new]
ACV
Member

Откуда:
Сообщений: 74
Решил развернуть для программистов другой СКЛ и запретить доступ ко всем остальным серверам в сети (их 2)
В настроках консоли СКЛ убираю галку
Allow Remote connection to this server

перезапускаю службы,
однако с удаленной консоли все равно можно подключиться к серверу.
Подскажите как ограничить подключения к СКЛ только с локальной консоли и запретить с удаленной?

Спасибо!
25 июл 13, 17:26    [14617774]     Ответить | Цитировать Сообщить модератору
 Re: Разрешить коннект только к базе  [new]
да ладно
Guest
ACV
как ограничить подключения к СКЛ только с локальной консоли и запретить с удаленной?


оставить ему в протоколах только Shared Memory
25 июл 13, 17:51    [14617962]     Ответить | Цитировать Сообщить модератору
 Re: Разрешить коннект только к базе  [new]
ACV
Member

Откуда:
Сообщений: 74
Спасибо, а как добраться до настройки протоколов?
25 июл 13, 18:18    [14618100]     Ответить | Цитировать Сообщить модератору
 Re: Разрешить коннект только к базе  [new]
да ладно
Guest
ACV
Спасибо, а как добраться до настройки протоколов?


К сообщению приложен файл. Размер - 11Kb
26 июл 13, 10:49    [14620375]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить