Red Hat Bugzilla – Bug 579766
Installer UI inability to handle unicode means passwords can be incorrectly obfuscated.
Last modified: 2014-05-02 13:59:30 EDT
Description of problem:
User can enter unicode entities in the forms on the Installer UI, but these are not handled correctly. The resulting mangled text is what gets obfuscated, versus the unicode entities.
Version-Release number of selected component (if applicable):
Steps to Reproduce:
1. Unpack and start server.
2. "$JBOSSON_HOME/bin/generate-db-password.sh 你好"; observe results
3. In the password field, enter the characters '你好' and initiate install
4. After installer commences -- and possibly failed -- view results in rhq-server.properties
[root@core-01 bin]# ./generate-db-password.sh 你好
Encoded password: 68f725778bb36d3b
[root@core-01 bin]# grep "rhq.server.database.password" rhq-server.properties
Password should match
I think what is happening is that the unicode characters, upon submit, are getting translated into their html entities -- so "你好" becomes "你好", which is in turn obfuscated.
We need to fix the UI to allow unicode input (preferable but intensive) and/or document whether we'll allow unicode characters in passwords. As it stands, I suspect Oracle and perhaps Postgresql do both support it.
Corey, can you check how we handle unicode passwords in 2.3.1? From your analysis if the installer really is converting these to html entities before storing them in rhq-server.properties, then unicode passwords will never have worked.
If thats the case, then I'm fine with making this an RFE and doc'ing this restriction for 2.4
I don't suspect this is a regression - in that sense, I agree that it's not necessarily something we need to 'fix' this release... however the new obfuscation tool introduces disparity. As users previously hadn't been provided a clean route to enter unicode passwords, it was not as much an issue. generate-db-password.sh, however, does allow it, so we're need to manage this in some way or another.
I am fine with a doc note. I can mark this FutureFeature and get a docs issue written up.