Если вы используете FIX 4.3 или более позднюю версию, сообщение Logon может иметь тег Password . Если вы используете предыдущую версию, сделайте ее пользовательским тегом и добавьте его в словари.
В обработчике fromAdmin
проверьте правильность пароля (из таблицы поиска или где-либо еще). Если это не так, выведите исключение RejectLogon
. Если это исключение не выдается, QuickFix будет считать, что все в порядке, и зарегистрирует пользователя.
Пример (требуется больше проверок работоспособности):
public void fromAdmin(Message message, SessionID id)
{
var logon = message as QuickFix44.Logon;
if (logon != null)
{
string userName = logon.getUserName().getValue();
string expectedPassword = PasswordsByUser[userName];
string suppliedPassword = logon.getPassword().getValue();
if(expectedPassword != suppliedPassword)
throw new RejectLogon();
}
}