2010-08-04 2 views
1

Я хочу, чтобы иметь возможность создавать пользователей с прямым паролем SHA-1. Нет Blowfish, ничего особенного, просто старый ваниль SHA-1. Единственный способ, которым я был в состоянии сделать это до сих пор было расширить DefaultUserProvider и переопределить CreateUser, произведя следующие изменения:OpenFire: пароли SHA-1 без шифрования blowfish

if (!usePlainPassword) { 
    try { 
     encryptedPassword = StringUtils.hash(password.getBytes(),"SHA-1"); 
     // encryptedPassword = AuthFactory.encryptPassword(password); 
     // Set password to null so that it's inserted that way. 
     password = null; 
    } catch (UnsupportedOperationException uoe) { 
     // Encrypting the password may have failed if in setup mode. 
     // Therefore, use the plain password. 
    } 
} 

Есть ли лучший способ сделать это? Мысли? Предложения?

(Причина этого «требование» является то, что я пытаюсь получить доступ ofUser таблицу, так что я могу иметь «единый вход» решение для всех различных областей моего проекта, таких как Subversion через mod_auth_mysql.)

ответ

0

Оказывается, мое первоначальное решение (предоставленное в вопросе) - единственный способ выполнить эту функцию. Я беседовал с другими на форуме поддержки openfire, и они согласны.

+0

Кажется, немного поздно спросить об этом, но я дам ему выстрел. Не могли бы вы дать более тщательные шаги по выполнению этого? вы перестроили openfire из источника или ...? – Jeremy

+0

Прошло немало времени с тех пор, как я работал над этим ... но если я правильно помню, я в конечном итоге сделал что-то вроде этого http://www.igniterealtime.org/builds/openfire/docs/latest/documentation/ db-integration-guide.html В то время я не считаю, что этот уровень интеграции был возможен из коробки ... может быть, теперь ... было бы интересно узнать, работает ли это для вас. – abrightwell

+0

даже если у меня проблема с этим. С прошлой недели мне не повезло. – Jeremy

 Смежные вопросы

  • Нет связанных вопросов^_^