Alex Rudyy created QPID-7414:
--------------------------------

             Summary: [Java Broker] File based authentication providers 
PlainPasswordFile and Base64MD5PasswordFile should allow semi-colons in 
usernames and passwords
                 Key: QPID-7414
                 URL: https://issues.apache.org/jira/browse/QPID-7414
             Project: Qpid
          Issue Type: Bug
          Components: Java Broker
    Affects Versions: qpid-java-6.0.4, qpid-java-6.0.3, qpid-java-6.0.2, 
qpid-java-6.0.1, qpid-java-6.0, 0.32, 0.30, 0.28, 0.26, 0.24, 0.22, 0.20, 0.18
            Reporter: Alex Rudyy


Semi-colons in user name for authentication providers of types 
PlainPasswordFile and Base64MD5PasswordFile cause failures on opening of such 
authentication providers on broker startup. As result,  authentication fails 
for any user account belonging to the impacted authentication provider. The 
user names with semi-colons would need to be removed manually from the 
configuration files in order to recover from the issue.
Semi-colons in user password for PlainPasswordFile results in the same issue.

The exception similar to the one below is reported for the above:
{noformat}
ERROR [Broker-Config] (o.a.q.s.m.AbstractConfiguredObject) - Failed to open 
object with name 'passwordFile'.  Object will be put into ERROR state.
java.lang.IllegalArgumentException: User Data should be length 2, username, 
password
        at 
org.apache.qpid.server.security.auth.database.PlainUser.<init>(PlainUser.java:37)
 ~[classes/:na]
        at 
org.apache.qpid.server.security.auth.database.PlainPasswordFilePrincipalDatabase.createUserFromFileData(PlainPasswordFilePrincipalDatabase.java:132)
 ~[classes/:na]
        at 
org.apache.qpid.server.security.auth.database.PlainPasswordFilePrincipalDatabase.createUserFromFileData(PlainPasswordFilePrincipalDatabase.java:56)
 ~[classes/:na]
        at 
org.apache.qpid.server.security.auth.database.AbstractPasswordFilePrincipalDatabase.loadPasswordFile(AbstractPasswordFilePrincipalDatabase.java:213)
 ~[classes/:na]
        at 
org.apache.qpid.server.security.auth.database.AbstractPasswordFilePrincipalDatabase.open(AbstractPasswordFilePrincipalDatabase.java:82)
 ~[classes/:na]
        at 
org.apache.qpid.server.security.auth.manager.PrincipalDatabaseAuthenticationManager.initialise(PrincipalDatabaseAuthenticationManager.java:143)
 ~[classes/:na]
        at 
org.apache.qpid.server.security.auth.manager.PrincipalDatabaseAuthenticationManager.onOpen(PrincipalDatabaseAuthenticationManager.java:120)
 ~[classes/:na]
        at 
org.apache.qpid.server.model.AbstractConfiguredObject.doOpening(AbstractConfiguredObject.java:1095)
 [classes/:na]
        at 
org.apache.qpid.server.model.AbstractConfiguredObject$9.performAction(AbstractConfiguredObject.java:1110)
 [classes/:na]
        at 
org.apache.qpid.server.model.AbstractConfiguredObject$9.performAction(AbstractConfiguredObject.java:1098)
 [classes/:na]
        at 
org.apache.qpid.server.model.AbstractConfiguredObject.applyToChildren(AbstractConfiguredObject.java:1269)
 [classes/:na]
        at 
org.apache.qpid.server.model.AbstractConfiguredObject.doOpening(AbstractConfiguredObject.java:1097)
 [classes/:na]
        at 
org.apache.qpid.server.model.AbstractConfiguredObject$1.execute(AbstractConfiguredObject.java:583)
 [classes/:na]
        at 
org.apache.qpid.server.model.AbstractConfiguredObject$1.execute(AbstractConfiguredObject.java:571)
 [classes/:na]
        at 
org.apache.qpid.server.model.AbstractConfiguredObject$2.execute(AbstractConfiguredObject.java:632)
 [classes/:na]
        at 
org.apache.qpid.server.model.AbstractConfiguredObject$2.execute(AbstractConfiguredObject.java:625)
 [classes/:na]
        at 
org.apache.qpid.server.configuration.updater.TaskExecutorImpl$TaskLoggingWrapper.execute(TaskExecutorImpl.java:240)
 [classes/:na]
        at 
org.apache.qpid.server.configuration.updater.TaskExecutorImpl.submitWrappedTask(TaskExecutorImpl.java:157)
 [classes/:na]
        at 
org.apache.qpid.server.configuration.updater.TaskExecutorImpl.submit(TaskExecutorImpl.java:145)
 [classes/:na]
        at 
org.apache.qpid.server.model.AbstractConfiguredObject.doOnConfigThread(AbstractConfiguredObject.java:624)
 [classes/:na]
        at 
org.apache.qpid.server.model.AbstractConfiguredObject.openAsync(AbstractConfiguredObject.java:570)
 [classes/:na]
        at 
org.apache.qpid.server.model.AbstractSystemConfig.activate(AbstractSystemConfig.java:237)
 [classes/:na]
{noformat}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@qpid.apache.org
For additional commands, e-mail: dev-h...@qpid.apache.org

Reply via email to