Как запретить пользователю создавать базы данных?

Администирование клиентской и серверной части InterBase, Firebird, Yaffil. Настройка файла конфигурации и т.п.

Модераторы: kdv, Alexey Kovyazin

Ответить
MuirsheenDurkin
Сообщения: 44
Зарегистрирован: 21 янв 2005, 10:18

Как запретить пользователю создавать базы данных?

Сообщение MuirsheenDurkin » 21 мар 2005, 13:28

Собственно, subj.
Имеется сервер Firebird 1.5.1 SuperServer, Windows 2003 server. На сервере есть Очень Важная База, к ней коннектится в том числе и пользователь GUEST с широко известным паролем и правами в базе "только для чтения". Но это не гарантирует от того, что пользователь зайдет с общедоступной машины под пользователем GUEST, создаст базу и начнет ее "накачивать", пока место на диске не кончится, что приводит к падению Очень Важной Базы, естетственно. Как можно это предотвратить, хоть средствами FireBird, хоть Windows? И еще они могут создать в своей гестовской БД что-то такое, что приведет к падению сервера с непредсказуемыми последствиями (правда, до этого они пока не додумались, но всё-таки...).

Dnico
Сообщения: 12
Зарегистрирован: 18 фев 2005, 16:44

Сообщение Dnico » 21 мар 2005, 14:08

А Вам не кажется что БД может создать только пользователь SYSDBA?

MuirsheenDurkin
Сообщения: 44
Зарегистрирован: 21 янв 2005, 10:18

Сообщение MuirsheenDurkin » 21 мар 2005, 14:12

Dnico писал(а):А Вам не кажется что БД может создать только пользователь SYSDBA?
Я не думаю, я знаю(с).
Может, лучше вообще не отвечать, чем так?...

Merlin
Динозавр IB/FB
Сообщения: 1502
Зарегистрирован: 27 окт 2004, 11:44

Сообщение Merlin » 21 мар 2005, 14:25

Ознакомься с Release Notes. На предмет Filesystem-related parameters в fbconfig. Имхо там есть всё что тебе нужно. Но в этот раз я думаю, поскольку сам этим не озабочен и соотвественно не тряс на предмет соответствия доке ;)

MuirsheenDurkin
Сообщения: 44
Зарегистрирован: 21 янв 2005, 10:18

Сообщение MuirsheenDurkin » 21 мар 2005, 14:36

Merlin писал(а):Ознакомься с Release Notes. На предмет Filesystem-related parameters в fbconfig.
Спасибо, ознакомился. Не помогло :(

Merlin
Динозавр IB/FB
Сообщения: 1502
Зарегистрирован: 27 окт 2004, 11:44

Сообщение Merlin » 21 мар 2005, 15:12

DatabaseAccess None, следуя доке, позволяет работать только с уже сделанными алиасами. Устанавливал - значок # убирал - алиасы делал - сервер перезапускал - не помогло? Тогда похоже на багу то ли в доке то ли в сервере.

MuirsheenDurkin
Сообщения: 44
Зарегистрирован: 21 янв 2005, 10:18

Сообщение MuirsheenDurkin » 21 мар 2005, 15:22

Merlin писал(а):DatabaseAccess None, следуя доке, позволяет работать только с уже сделанными алиасами
Нет, это как раз работает. Только тогда я сам (SYSDBA) не могу создать базу....
Выход, конечно, но не очень-то прямой. То есть я сначала прописываю алиас к несуществующей БД, перестартовываю сервис, быстро и первым создаю БД по этому алиасу (пока ее не создал кто-то другой) и работаю с ней. Как-то не того...
И сервер перестартовывать, и можно не успеть...

kdv
Forum Admin
Сообщения: 6595
Зарегистрирован: 25 окт 2004, 18:07

Сообщение kdv » 21 мар 2005, 16:50

это все паранойя. хотя бы потому, что базы создает не юзер, и не sysdba, а СЕРВЕР. соответственно под тем эккаунтом, который ему назначен. Отсюда морал: базы на сервере создавать ЗАПРЕТИТЬ, либо правами доступа эккаунта сервера, либо через конфиг. А когда надо базу СОЗДАТЬ, то создавай ее У СЕБЯ на компе, потом просто копируй в нужный каталог на сервере, и меняй права на доступ, достаточный для доступа сервера.

Запрещать создавать объекты юзерам - это уже другой вопрос, это надо менять права на системные таблицы. Об этом есть документ на сайте. но только пробовать надо на кошках, а потом на рабочей БД.

MuirsheenDurkin
Сообщения: 44
Зарегистрирован: 21 янв 2005, 10:18

Сообщение MuirsheenDurkin » 21 мар 2005, 17:04

kdv писал(а):А когда надо базу СОЗДАТЬ, то создавай ее У СЕБЯ на компе, потом просто копируй в нужный каталог на сервере, и меняй права на доступ, достаточный для доступа сервера.
Нет в жизни простого админского счастья. Нет бы сказали "параметр такой поставь в ноль и будет тебе всё". Эх.
Спасибо всем ответишим, кроме первого. :?

Ответить