Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Firebird, Interbase > Восстановление пароля к БД


Автор: Greval 10.8.2006, 08:50
     Народ, здравствуйте!
     Вопрос в следующем: есть программа, которая работает с БД (Firebird 1.5). Что бы расширить ее возможности я решил написать другую программу. Возникла проблема подключения к этой БД. Подскажите пожалуйста, можно ли как-нибудь получить доступ хотябы на чтение данных из новой программы.
     При попытке подключения БД пользователем SYSDBA в IB Expert выводится сообщение:"Unsuccessful execution caused by a system error that precludes successful execution of subsequent statements. Your login SYSDBA is same as one of the SQL role name. Ask your database administrator to set up a valid Firebird login".
     Заранее огромное спасибо!  smile 

Автор: Alex 10.8.2006, 09:30
Сервер случайно не на Linux?

Автор: Greval 10.8.2006, 09:53
Нет, MS Windows 2003 server

Автор: Greval 11.8.2006, 07:18
Может кто про программки для подбора пароля для файликов *.GDB что-нибудь слышал???

Автор: vv3 14.8.2006, 17:41
Ау, друзья! Пароли Interbase/Firebird хранит в отдельном файле ibsecurity.gdb/fbsecurity.fdb, расположенном в корневом каталоге сервера, а вовсе не в базе данных...
Подменой этого файла (при выключенном сервисе fbserver/fbguard/ibserver/ibguard!!!!) можно добиться сброса пароля SYSDBA в masterkey.

В данном конкретном случае, судя по сообщению сервера, дело вовсе не в пароле SYSDBA, а в том, что кто-то очень замечательный прописал в списке ROLES роль с именем SYSDBA. М-дяяя...

Автор: vv3 15.8.2006, 10:18
Вдогонку: известен ли пользовательский пароль в имеющейся программе с наибольшим приоритетом доступа -  какой-нибудь ADMIN, или что там эти разработчики придумали (это же надо было!!!)? Если известен, то можно попробовать с его помощью убить эту корявую роль, или, что еще лучше, просто пользоваться этим паролем для  подключения к БД. 
К копии БД можно подключиться, как я уже говорил выше, подменив базу паролей, подключившись к ней же (к security.gdb) как SYSDBA и завести пользователя с наивысшим приоритетом и своим паролем.

Автор: Akella 19.8.2006, 11:23
попробуй поставить SQL Monitor для FB и посмотри что передаёт программа при подключении к базе

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)