powered by simpleCommunicator - 2.0.53     © 2025 Programmizd 02
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / gsec 3.0 без пароля
25 сообщений из 43, страница 1 из 2
gsec 3.0 без пароля
    #39078812
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Это нормально, что, при умолчательных настройках и запущенном сервере, если не задать в
командной строке gsec ключи -user И -pass, то он возвращает такую ошибку:
unable to open database
I/O error during "CreateFile (open)" operation for file "C:\PROGRAM FILES (X86)\
FIREBIRD\AVALERION\SECURITY3.FDB"
Error while trying to open file
The process cannot access the file because it is being used by another process.

То есть, я понимаю, почему так происходит, но почему это не обычное "your user name and
password are not defined" или какое-нибудь "нет прав"?..
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
gsec 3.0 без пароля
    #39078849
hvlad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry Sibiryakov,

ты уже спрашивал и тебе отвечали - y-valve возвращает первую ошибку от провайдеров
...
Рейтинг: 0 / 0
gsec 3.0 без пароля
    #39078850
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hvlady-valve возвращает первую ошибку от провайдеров
Умолчательная последовательность провайдеров - Remote,Engine12,Loopback. При такой
комбинации ключей gsec, первый и последний провайдеры должны ругаться на имя
пользователя/пароль. И только средний - о занятости файла. Он не первый. И не последний. И
вот этого я не понимаю.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
gsec 3.0 без пароля
    #39078851
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry Sibiryakovвот этого я не понимаю.
Единственный вариант, который мне приходит на ум, таков, что ошибка таки возвращается
последняя, а провайдера Loopback нет в природе или он не смог загрузиться.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
gsec 3.0 без пароля
    #39078988
Фотография kdv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry Sibiryakovя понимаю, почему так происходит
а я не понимаю, почему так происходит в последних билдах, пришлось тупо взять security3.fdb от предыдущих билдов с уже прописанным SYSDBA.
Похоже, с SYSDBA геморроя только прибавляется. Раньше я проблему "I/O error during "CreateFile (open)" не наблюдал.
...
Рейтинг: 0 / 0
gsec 3.0 без пароля
    #39079074
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
kdvпришлось тупо взять security3.fdb от предыдущих билдов с уже прописанным SYSDBA.

Достаточно было остановить сервер.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
gsec 3.0 без пароля
    #39079136
Фотография kdv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry Sibiryakov,

кстати, да. это я уже догнал потом. в ФБ 3.0 локальный коннект (включая -se service_mgr) превращается в embedded, поэтому при запущеном сервере в режиме Super естественно возникает конфликт по доступу к файлу.
...
Рейтинг: 0 / 0
gsec 3.0 без пароля
    #39079738
hvlad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry SibiryakovУмолчательная последовательность провайдеров - Remote,Engine12,Loopback. При такой
комбинации ключей gsec, первый и последний провайдеры должны ругаться на имя
пользователя/пароль.Почему ты решил, что Remote вообще в игре при твоей строке коннекта ?
...
Рейтинг: 0 / 0
gsec 3.0 без пароля
    #39079975
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hvladПочему ты решил, что Remote вообще в игре при твоей строке коннекта ?
Потому что у меня вообще нет строки коннекта, а, насколько я помню, gsec теперь работает
через сервисы, соответственно вызов sevice_attach должен Y-valve скармливаться каждому
провайдеру по очереди, пока один из них не выполнит его без ошибки.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
gsec 3.0 без пароля
    #39079996
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry Sibiryakov,

gsec теперь вообще считается устаревшим. И по большому счёту полезен только для инициализации SYSDBA. И даже это можно сделать без него:

Код: plaintext
1.
2.
3.
isql
SQL> connect 'security.db' user sysdba;
SQL> create user sysdba password 'masterkey';
SQL> exit;
...
Рейтинг: 0 / 0
gsec 3.0 без пароля
    #39079999
dimitr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry Sibiryakov,

remote-клиент для строки коннекта без хоста (а gsec именно так и подключается) возвращает isc_unavailable, что считается не ошибкой, а признаком вызова следующего провайдера. Так что серверный remote тут вообще никак не задействован и на логин\пароль ругаться в принципе не может. Работает embedded, он и возвращает ошибку открытия файла. На логин/пароль он ругаться не умеет, ибо не проверяет.
...
Рейтинг: 0 / 0
gsec 3.0 без пароля
    #39080017
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
dimitrremote-клиент для строки коннекта без хоста (а gsec именно так и
подключается) возвращает isc_unavailable
То есть он больше не пробует использовать XNET?
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
gsec 3.0 без пароля
    #39080032
Фотография kdv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry SibiryakovТо есть он больше не пробует использовать XNET?
по моим тестам - да, т.е. и для обычного локального коннекта, и для -se service_mgr используется Embedded.
например, запускаем ФБ супер, делаем коннект к базе через localhost, потом пытаемся сделать gbak -b -se service_mgr этой базе, и получаем отлуп по невозможности CreateFile.
Я так понимаю, на винде стало как было в линуксе в 2.5.

p.s. при дефолтном конфиге.
...
Рейтинг: 0 / 0
gsec 3.0 без пароля
    #39080041
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry Sibiryakov,

на сколько я понял за XNET отвечает Loopback
...
Рейтинг: 0 / 0
gsec 3.0 без пароля
    #39080051
Фотография kdv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Симонов Денис,

то есть, чтобы "вернуть" xnet нужно
#Providers = Remote,Engine12,Loopback
Providers = Remote,Loopback,Engine12

?
...
Рейтинг: 0 / 0
gsec 3.0 без пароля
    #39080057
dimitr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
kdv,

да, но при этом не будет возможности использовать embedded для локальных коннектов
...
Рейтинг: 0 / 0
gsec 3.0 без пароля
    #39080065
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
dimitrда, но при этом не будет возможности использовать embedded для локальных
коннектов
В случае с супером эта возможность всё равно ни к чему, поскольку ошибка занятого файла
блокирует цепочку провайдеров.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
gsec 3.0 без пароля
    #39080072
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry Sibiryakov,

так сделано чтобы можно было хитро добавить sysdba. Поскольку XNET требует настоящей авторизации
...
Рейтинг: 0 / 0
gsec 3.0 без пароля
    #39080116
Фотография kdv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Симонов Денис,

не запуская сервер, дефолтный конфиг.

D:\Firebird3>gbak -b employee.fdb e.fbk -v
gbak: ERROR:Unable to perform operation. You must be either SYSDBA or owner of the database
gbak:Exiting before completion due to errors

gbak -b -se service_mgr employee.fdb e.fbk -v

та же ошибка

после set isc_user=SYSDBA и set isc_password=masterkey работает оба варианта.

локальный коннект из IBE с пустым юзером и паролем - проходит.
чего-то я не догоняю.
То есть, локальный коннект из ИБЕ юзера не требует, а гбак почему-то требует.
...
Рейтинг: 0 / 0
gsec 3.0 без пароля
    #39080119
Фотография kdv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
кстати, и еще только что ibe вдруг убился по AV через несколько секунд после закрытия локального коннекта (при незапущеном сервере). билд ФБ 32067, ИБЕ старый, 2014 года.
...
Рейтинг: 0 / 0
gsec 3.0 без пароля
    #39080134
dimitr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
kdvgbak: ERROR:Unable to perform operation. You must be either SYSDBA or owner of the database
То есть, локальный коннект из ИБЕ юзера не требует, а гбак почему-то требует.
что из текста ошибки тебе непонятно? Бекап проверяет юзера, ибо не каждому разрешено делать бекап. Поэтому дефолтный embedded-юзер (т.е. юзер операционки) ему не прокатывает. Просто для коннекта к базе - пофиг (пока в таблицы не полезешь).
...
Рейтинг: 0 / 0
gsec 3.0 без пароля
    #39080136
dimitr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вдогонку - создай базу в embedded без login/pass и сможешь ее бекапить
...
Рейтинг: 0 / 0
gsec 3.0 без пароля
    #39080154
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
kdv,

IBE так и не зовёт вовремя fb_shutdown
...
Рейтинг: 0 / 0
gsec 3.0 без пароля
    #39080160
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Симонов ДенисIBE так и не зовёт вовремя fb_shutdown
А фоновые потоки в Firebird так и не привыкли к мысли, что они могут быть прибиты в любой
момент без дополнительного предупреждения.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
gsec 3.0 без пароля
    #39080293
hvlad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
kdvто есть, чтобы "вернуть" xnet нужно
#Providers = Remote,Engine12,Loopback
Providers = Remote,Loopback,Engine12Можно явно указать при коннекте, что ты хочешь xnet
...
Рейтинг: 0 / 0
25 сообщений из 43, страница 1 из 2
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / gsec 3.0 без пароля
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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