powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / Backup SECURITY3.FDB
25 сообщений из 35, страница 1 из 2
Backup SECURITY3.FDB
    #39909030
iR7
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
iR7
Гость
Привет!

Нужна помощь сообщества с резервным копированием парольной базы FB3.

Дано:
Есть несколько WINDOWS SERVER 2012R2 с Firebird 3.0.5 (x64) или HQBird 2020 (x64). На каждом сервере что-то одно, и все в архитектуре SuperServer.
Пользователи и их пароли хранятся в security3.fdb.
Есть потребность вместе с бэкапом баз приложений делать бэкап парольной базы security3.fdb.
Бэкап парольной базы выполняется локально на каждом сервере с помощью GBAK, затем копируется на бэкапный сервер и уже там ресторится для проверки.

Проблема:
Если восстановить парольную базу на другом сервере - список пользователей в ней присутствует, но пароли не совпадают и фактически эта база становится бесполезна в случае сбоя основной парольной базы.
Т.е. если, например, случился сбой на основном сервере и требуется развернуть бэкапную базу приложения на резервном сервере, подключить там же ее security базу (чтобы пользователи могли работать под своими паролями) - то ни SYSDBA, ни любой другой пользователь к базе приложения подключиться не могут т.к. пароль не принимается. Ни через IBExpert, ни через приложение.

Мысли:
Есть подозрение, что бэкап или восстановление security3.fdb надо делать с какими-то дополнительными параметрами GBAK, но какими?
Либо вообще не GBAK'ом, а как-то иначе (простое копирование, например, вызывает резкое падение производительности под нагрузкой)

Сейчас бэкап происходит так:
Код: powershell
1.
gbak.exe -b -g -z -v -user sysdba -pas masterkey SECURITY3.fdb SECURITY3.fbk -y SECURITY3_backup.log


Рестор так:
Код: powershell
1.
gbak.exe -r -v -z -rep -user sysdba -pas masterkey SECURITY3.fbk SECURITY3_RESTORED.fdb -y SECURITY3_restore.log
...
Рейтинг: 0 / 0
Backup SECURITY3.FDB
    #39909039
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
iR7,

nbackup?
...
Рейтинг: 0 / 0
Backup SECURITY3.FDB
    #39909048
iR7
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
iR7
Гость
Симонов Денис,

Он же не верифицированный, толку от него?
...
Рейтинг: 0 / 0
Backup SECURITY3.FDB
    #39909051
Мимопроходящий
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
27.12.2019 14:35, iR7 пишет:
> Он же не верифицированный

кто?
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Backup SECURITY3.FDB
    #39909053
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
iR7Если восстановить парольную базу на другом сервере - список пользователей в ней
присутствует, но пароли не совпадают

Значит вы восстанавливаете не ту базу. Чудес не бывает.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Backup SECURITY3.FDB
    #39909057
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
iR7,

вы security3.fdb что-то руками пишете? Меняете структуру БД?

Думаешь восстановление с помощью GBAK является гарантией что всё в порядке и ничего не пропало? Это не так
...
Рейтинг: 0 / 0
Backup SECURITY3.FDB
    #39909070
iR7
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
iR7
Гость
Dimitry Sibiryakov

iR7Если восстановить парольную базу на другом сервере - список пользователей в ней
присутствует, но пароли не совпадают

Значит вы восстанавливаете не ту базу. Чудес не бывает.


Я тоже так думал. Но нет. Сделал бэкап security.fdb на одном сервере, на другом сервере сделал рестор, остановил там FB, подменил местную security.fdb отресторенной, запустил FB, проверяю подключение к местной базе приложения под SYSDBA - пароль не принят.
Вернул местную security.fdb - все работает.

PS: На всякий случай - параметры подключения и пароль везде один и тот же, сохраненный в IBExpert. Так что вариант опечаток отпадает на 100%
...
Рейтинг: 0 / 0
Backup SECURITY3.FDB
    #39909074
iR7
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
iR7
Гость
Симонов Денис
iR7,

вы security3.fdb что-то руками пишете? Меняете структуру БД?

Думаешь восстановление с помощью GBAK является гарантией что всё в порядке и ничего не пропало? Это не так

Нет, единственное изменение по сравнению с базой по-умолчанию это список пользователей с их паролями
...
Рейтинг: 0 / 0
Backup SECURITY3.FDB
    #39909088
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
iR7Сделал бэкап security.fdb на одном сервере

Стоп. Давай начнём с вопроса как ты умудрился это сделать.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Backup SECURITY3.FDB
    #39909103
iR7
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
iR7
Гость
Dimitry Sibiryakov

iR7Сделал бэкап security.fdb на одном сервере

Стоп. Давай начнём с вопроса как ты умудрился это сделать.

О, это легко.

1. Сначала сделал бэкап на SERVER1 под SYSDBA/masterkey
Код: powershell
1.
gbak.exe -b -g -z -v -user sysdba -pas masterkey SECURITY3.fdb SECURITY3.fbk -y SECURITY3_backup.log


2. Затем скопировал SECURITY3.fbk на SERVER2 и там сделал рестор под SYSDBA/masterkey
Код: powershell
1.
gbak.exe -r -v -z -rep -user sysdba -pas masterkey SECURITY3.fbk SECURITY3_RESTORED.fdb -y SECURITY3_restore.log


3. После этого остановил Firebird на SERVER2, удалил там SECURITY3.fdb и вставил вместо него SECURITY3_RESTORED.fdb (с переименованием в SECURITY3.fdb, конечно).

4. После этого попытался подключиться к базе приложения на SERVER2 под учеткой SYSDBA/masterkey - не получилось, пароль не принят.

5. Вернул старый SECURITY3.fdb (вместо SECURITY3_RESTORED.fdb) и тогда под SYSDBA/masterkey подключиться удалось.

PS: Как видишь пароли SYSDBA на обоих серверах и базах одинаковые, значит подмена парольной базы не должна была повлиять на подключение. Но нет, отрестореная база не приняла тот же пароль.
...
Рейтинг: 0 / 0
Backup SECURITY3.FDB
    #39909125
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
iR7Сначала сделал бэкап на SERVER1 под SYSDBA/masterkey

На этом этапе ты должен был получить ошибку доступа к базе. Её отсутствие намекает, что ты
забэкапил не ту базу.

iR7 После этого попытался подключиться к базе приложения на SERVER2 под учеткой
SYSDBA/masterkey - не получилось, пароль не принят.

Это известное следствие любой ошибки при работе с БД паролей. В firebird.log ты заглянул
после этого?
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Backup SECURITY3.FDB
    #39909139
Basil A. Sidorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
iR7
1. Сначала сделал бэкап на SERVER1 под SYSDBA/masterkey
Код: powershell
1.
gbak.exe -b -g -z -v -user sysdba -pas masterkey SECURITY3.fdb SECURITY3.fbk -y SECURITY3_backup.log

Если не меняли режим доступа в databases.conf, то бэкапить так можно только в embedded-режиме. Тогда и пароль не нужен.2. Затем скопировал SECURITY3.fbk на SERVER2 и там сделал рестор под SYSDBA/masterkey
Код: powershell
1.
gbak.exe -r -v -z -rep -user sysdba -pas masterkey SECURITY3.fbk SECURITY3_RESTORED.fdb -y SECURITY3_restore.log


3. После этого остановил Firebird на SERVER2Восстановление базы пользователей можно делать только при остановленном сервере, а значит - в embedded-режиме, а значит скрипач пароль не нужен.

P.S.
Я не помню, приходилось ли мне делать восстановление между серверами и, хотя (по общим соображениям), этого не требовалось, всё-таки, провёл корректный эксперимент.
Чудес не бывает
Код: plaintext
 gbak -user sysdba -pass ДругойПароль -b xnet://security.db файл.fbk
Скопировал файл.fbk на другой хост, остановил (тестовый) экземпляр, удалил security3.fdb и восстановил бэкап:
Код: plaintext
 gbak -user sysdba -c файл.fbk security.db
Запустил тестовый экземпляр FB и подключился нестандартным пользователем:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
WI-V3.0.4.33054 Firebird 3.0
WI-V3.0.4.33054 Firebird 3.0/XNet (ТестовыйХост)/P14
WI-V3.0.4.33054 Firebird 3.0/XNet (ТестовыйХост)/P14
Database: 'xnet://security.db',  User: OWNER 
SQL> show database;
Database: xnet://security.db
        Owner: SYSDBA
PAGE_SIZE 8192
Number of DB pages allocated = 212
Number of DB pages used = 206
Number of DB pages free = 6
Sweep interval = 0
Forced Writes are OFF
Transaction - oldest = 26
Transaction - oldest active = 27
Transaction - oldest snapshot = 27
Transaction - Next = 8
ODS = 12.0
Database not encrypted
Default Character set: NONE
Linger: 60 seconds
Есть пропадающие гранты ( CORE-6208 ), но "плавающие" пароли - это ваши недоработки.
...
Рейтинг: 0 / 0
Backup SECURITY3.FDB
    #39909180
iR7
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
iR7
Гость
Dimitry Sibiryakov

iR7Сначала сделал бэкап на SERVER1 под SYSDBA/masterkey

На этом этапе ты должен был получить ошибку доступа к базе. Её отсутствие намекает, что ты
забэкапил не ту базу.
Если бы делал удаленный бэкап, например так, как командой ниже, то да возникает ошибка т.к. удаленные бэкапы запрещены. Но когда делаю локальный - ошибок нет.
Код: powershell
1.
gbak.exe -b -g -z -v -user sysdba -pas masterkey localhost:C:\FB3\SECURITY3.fdb SECURITY3.fbk -y SECURITY3_backup.log



iR7 После этого попытался подключиться к базе приложения на SERVER2 под учеткой
SYSDBA/masterkey - не получилось, пароль не принят.

Это известное следствие любой ошибки при работе с БД паролей. В firebird.log ты заглянул
после этого?
[/quot]


Я выяснил в чем оказалось дело.
Формат паролей или структура данных в парольных базах HQBird (Firebird 3.0) отличается от самого Firebird 3.0.
Поэтому когда я подменял парольной базой SERVER1 (с HQBird'ом) парольную базу SERVER2 (с FB3 без HQBird) - то пароль не принимался.
Когда подменил парольной базой SERVER3 (с FB3 без HQBird) парольную базу SERVER2 (с FB3 без HQBird) - то пароль принялся и все пользователи с их паролями тоже.

С Новым Годом :-)
...
Рейтинг: 0 / 0
Backup SECURITY3.FDB
    #39909260
Фотография kdv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
iR7то пароль не принимался.
какой пароль? один или SYSDBA? в hqbird он "предустановленный".
Кроме того, надо смотреть, может у вас там разная последовательность плагинов аутентификации, и на одном сервере пароли в legacy, а на другом - в Srp.
select * from sec$users.
...
Рейтинг: 0 / 0
Backup SECURITY3.FDB
    #39909373
Basil A. Sidorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
iR7
Я выяснил в чем оказалось дело.
Формат паролей или структура данных в парольных базах HQBird (Firebird 3.0) отличается от самого Firebird 3.0.
Чудес не бываетПоследовательность действий.

Подключаемся к security.db Firebird 3.0 HQBird, где есть Srp-пользователь owner, но нет его легаси-варианта.
Пытаемся ISQL-ем FB 2.5 подключиться к employee базе Firebird HQBird. Облом.
Создаём легаси-пользователя owner в security.db Firebird 3.0 HQBird.
Cнова пытаемся подключиться ISQL-ем FB 2.5 к employee Firebird HQBird. Успешно.

В третьей комстроке "запускаем процесс миграции пользователей":
Удаляем security.db "ванильного" Firebird 3.0 и "на конвейере" переносим security.db Firebird 3.0 HQBird в "ванильный" Firebird 3.0. Вывод gbak-ов получается в перемешку, но видно, что "работу работают" две разные версии gbak.

Запускаем службу "ванильного" Firebird 3.0 и подключаемся к его employee базе ISQL-ем FB 2.5. Успешно.

Если "формат разный", то как пользователь "переехал" и пароль не "сломался"?
...
Рейтинг: 0 / 0
Backup SECURITY3.FDB
    #39912364
iR7
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
iR7
Гость
kdv
iR7то пароль не принимался.

какой пароль? один или SYSDBA? в hqbird он "предустановленный".
Кроме того, надо смотреть, может у вас там разная последовательность плагинов аутентификации, и на одном сервере пароли в legacy, а на другом - в Srp.
select * from sec$users.
Ни один не принимался, ни SYSDBA ни пользовательский.
Плагины везде Srp (и в FB3 и в HQB)
...
Рейтинг: 0 / 0
Backup SECURITY3.FDB
    #39912380
iR7
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
iR7
Гость
Basil A. Sidorov
iR7
Я выяснил в чем оказалось дело.
Формат паролей или структура данных в парольных базах HQBird (Firebird 3.0) отличается от самого Firebird 3.0.

Чудес не бывает.
Последовательность действий.

Подключаемся к security.db Firebird 3.0 HQBird, где есть Srp-пользователь owner, но нет его легаси-варианта.
Пытаемся ISQL-ем FB 2.5 подключиться к employee базе Firebird HQBird. Облом.
Создаём легаси-пользователя owner в security.db Firebird 3.0 HQBird.
Cнова пытаемся подключиться ISQL-ем FB 2.5 к employee Firebird HQBird. Успешно.

Не вполне понимаю для чего нужен FB2.5 Legacy если везде используется FB3 без Legacy (только Srp)?
Точнее не совсем так. Сейчас проверил, единственный пользователь Legacy это SYSDBA в HQBird. Все остальные пользователи Srp (как в HQBird так и в FB3)

Basil A. Sidorov
В третьей комстроке "запускаем процесс миграции пользователей":

У меня нет задачи мигрировать пользователей с FB2.5 на FB3, есть задача развернуть на другом сервере копию парольной базы из бэкапа

Basil A. Sidorov
Удаляем security.db "ванильного" Firebird 3.0 и "на конвейере" переносим security.db Firebird 3.0

И что такое "ванильный" и "на конвейере"?

Basil A. Sidorov
Если "формат разный", то как пользователь "переехал" и пароль не "сломался"?

При миграции с FB2.5 на FB3.0 пользователи не переезжали, их создали заново с временными паролями.
Я имел ввиду что если подложить парольную базу HQB в FB3 (или наоборот), то пользователи в базе есть, но их пароли не работают.
...
Рейтинг: 0 / 0
Backup SECURITY3.FDB
    #39912382
iR7
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
iR7
Гость
iR7
kdv
пропущено...

какой пароль? один или SYSDBA? в hqbird он "предустановленный".
Кроме того, надо смотреть, может у вас там разная последовательность плагинов аутентификации, и на одном сервере пароли в legacy, а на другом - в Srp.
select * from sec$users.

Ни один не принимался, ни SYSDBA ни пользовательский.
Плагины везде Srp (и в FB3 и в HQB)

Поправка. Сейчас проверил, единственный пользователь Legacy это SYSDBA в HQBird. Все остальные пользователи Srp (как в HQBird так и в FB3)
...
Рейтинг: 0 / 0
Backup SECURITY3.FDB
    #39912406
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
iR7,

А точно плагины одинаковые используются? А то там есть Srp и Srp256
...
Рейтинг: 0 / 0
Backup SECURITY3.FDB
    #39912416
iR7
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
iR7
Гость
Симонов Денис
А точно плагины одинаковые используются? А то там есть Srp и Srp256

Да, только SYSDBA в HQBird использует Legacy плагин, все остальные Srp
...
Рейтинг: 0 / 0
Backup SECURITY3.FDB
    #39912422
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
iR7
только SYSDBA в HQBird использует Legacy плагин

Ну вот загадка полностью разрешилась. Legacy плагин в ванильной Firebird по умолчанию выключен. Поэтому, естественно, ты не мог залогиниться под своим legacy SYSDBA после рестора.
...
Рейтинг: 0 / 0
Backup SECURITY3.FDB
    #39912449
iR7
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
iR7
Гость
Dimitry Sibiryakov
iR7
только SYSDBA в HQBird использует Legacy плагин

Ну вот загадка полностью разрешилась. Legacy плагин в ванильной Firebird по умолчанию выключен. Поэтому, естественно, ты не мог залогиниться под своим legacy SYSDBA после рестора.

Что такое Ванильный Firebird?
И почему тогда я не мог залогиниться под другими пользователями с Srp?
...
Рейтинг: 0 / 0
Backup SECURITY3.FDB
    #39912457
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
iR7И почему тогда я не мог залогиниться под другими пользователями с Srp?

Очевидно потому, что даже не пробовал. В стартовом посте упоминается исключительно SYSDBA.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Backup SECURITY3.FDB
    #39912471
iR7
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
iR7
Гость
Dimitry Sibiryakov
iR7И почему тогда я не мог залогиниться под другими пользователями с Srp?

Очевидно потому, что даже не пробовал. В стартовом посте упоминается исключительно SYSDBA.
Спасибо, улыбнул


iR7
то ни SYSDBA, ни любой другой пользователь к базе приложения подключиться не могут т.к. пароль не принимается. Ни через IBExpert, ни через приложение.
...
Рейтинг: 0 / 0
Backup SECURITY3.FDB
    #39912528
Фотография kdv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
iR7Что такое Ванильный Firebird?
Vanilla software. From Wikipedia, the free encyclopedia. Computer software, and sometimes also other computing-related systems like computer hardware or algorithms, are called vanilla when not customized from their original form, meaning that they are used without any customizations or updates applied to them .
iR7Спасибо, улыбнул
да негде тут улыбаться. "или ФБ, или hqbird", "или legacy, или srp", "или SYSDBA, или не SYSDBA"... И неизвестно еще про конфиги этих ФБ, насколько они отличаются.
...
Рейтинг: 0 / 0
25 сообщений из 35, страница 1 из 2
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / Backup SECURITY3.FDB
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]