Cannot log into Confluence or Crowd Console after restoring admin user rights

Still need help?

The Atlassian Community is here for you.

Ask the community

Symptoms

  1. Cannot log into Confluence or Crowd Console
  2. Restoring Passwords To Recover Admin User Rights via Database does not grant access 

The following may show in the atlassian-confluence.log:

com.atlassian.crowd.exception.PasswordEncoderNotFoundException: The PasswordEncoder 'null' was not found in the Internal Encoders list by the PasswordEncoderFactory
at com.atlassian.crowd.password.factory.PasswordEncoderFactoryImpl.getInternalEncoder(PasswordEncoderFactoryImpl.java:37)
Stack Trace:[hide]
com.atlassian.crowd.exception.PasswordEncoderNotFoundException: The PasswordEncoder 'null' was not found in the Internal Encoders list by the PasswordEncoderFactory
at com.atlassian.crowd.password.factory.PasswordEncoderFactoryImpl.getInternalEncoder(PasswordEncoderFactoryImpl.java:37)
at com.atlassian.crowd.directory.AbstractInternalDirectory.authenticate(AbstractInternalDirectory.java:339)
at com.atlassian.crowd.directory.AbstractInternalDirectory.processAuthentication(AbstractInternalDirectory.java:179)
at com.atlassian.crowd.directory.AbstractInternalDirectory.authenticate(AbstractInternalDirectory.java:147)
at com.atlassian.crowd.manager.directory.DirectoryManagerGeneric.authenticateUser(DirectoryManagerGeneric.java:276)
at com.atlassian.crowd.manager.application.ApplicationServiceGeneric.authenticateUser(ApplicationServiceGeneric.java:102)

Diagnosis

Running query against cwd_directory_attribute shows missing entry for attribute_name user_encryption_method. 

Cause

At this time the root cause is not verified. Please comment below if you've found a potential cause. It's possible that the incorrect license type may have been entered into license field. 

Workaround

As a workaround:

  1. Shut down Confluence.
  2.  Find the directory id of the Confluence Internal Directory

    select id from cwd_directory where directory_name ='Confluence Internal Directory';
  3. Run this query against your database to determine if the encryption method is already set:

    select attribute_value from cwd_directory_attribute where attribute_name like '%encryption_method%';
  4. If the query in Step 3 returns no rows found, run the below query against your database, replacing <your_directory_id> with the id from the previous query.

    insert into cwd_directory_attribute (directory_id, attribute_value, attribute_name) values (<your_directory_id>,'atlassian-security','user_encryption_method');


  5. If query in Step 3 returns a value other than atlassian-security, run this command against the database:

    update cwd_directory_attribute set attribute_value = 'atlassian-security' where attribute_name = 'user_encryption_method';
  6. Restart Confluence.
  7. Recreate LDAP directories if required, and access should be restored to users.

Resolution

See workaround.

Last modified on Mar 30, 2016

Was this helpful?

Yes
No
Provide feedback about this article
Powered by Confluence and Scroll Viewport.