Defect #5592

Better error page on LDAP Authentication error

Added by Brandon Bonds about 12 years ago. Updated 7 months ago.

Status:ClosedStart date:2010-05-25
Priority:NormalDue date:
Assignee:-% Done:

0%

Category:LDAP
Target version:-
Resolution:Cant reproduce Affected version:0.9.3

Description

Logging in as a non-LDAP user, and testing the LDAP connection, I get Unable to connect (LdapError: no connection to server). But logging in as an LDAP user at the same time results in a 500 error, instead of a "nice" error page.

This is in the server log:

RuntimeError (LdapError: no connection to server):
  app/models/auth_source_ldap.rb:61:in `authenticate'
  app/models/user.rb:105:in `try_to_login'
  app/controllers/account_controller.rb:139:in `password_authentication'
  app/controllers/account_controller.rb:35:in `login'

Rendering C:/Program Files/BitNami RubyStack/apps/redmine/public/500.html (500 Internal Server Error)

Related issues

Related to Redmine - Patch #21137: Rescue network level errors with LDAP auth Closed
Duplicated by Redmine - Defect #23120: 'Internal error' when LDAP server name not resolved Closed

Associated revisions

Revision 3819
Added by Eric Davis about 12 years ago

Add some tests for User#try_to_login with LDAP. #5592

History

#1 Updated by Felix Schäfer about 12 years ago

  • Subject changed from LDAP Unavailable/500 Internal Server Error to Better error page on LDAP Authentication error
  • Target version set to 1.0.0 (RC)

We should be able to catch errors on authentication and display a more meaningful error page than an http/500. I've set this to 1.0.0 even though we are in feature freeze, might only get fixed in a subsequent minor though.

#2 Updated by Eric Davis about 12 years ago

  • Assignee set to Eric Davis
  • Target version deleted (1.0.0 (RC))
  • Resolution set to Cant reproduce

Can someone verify this bug exists on trunk? I added some tests in r3819 but I can't reproduce it. The LDAP code has recently been refactored so it might have fixed this bug at that time.

#3 Updated by Brandon Bonds about 12 years ago

I just tested this again on trunk build r3826. The problem still shows up.

The easiest way for me to test was to set up good and working LDAP authentication, and then replace the server with something bogus. That reproduced the situation identically to what I mentioned before, except the log error has changed a bit:

RuntimeError (LdapError: no connection to server):
  app/models/auth_source_ldap.rb:43:in `authenticate'
  app/models/user.rb:105:in `try_to_login'
  app/controllers/account_controller.rb:147:in `password_authentication'
  app/controllers/account_controller.rb:142:in `authenticate_user'
  app/controllers/account_controller.rb:30:in `login'

Rendering C:/Program Files/BitNami RubyStack/apps/redmine/public/500.html (500 Internal Server Error)

#4 Updated by Eric Davis almost 12 years ago

  • Assignee deleted (Eric Davis)

#5 Updated by Yannick Warnier over 9 years ago

Same problem here. We get 500 errors with no details much quickly than the 20s timeout defined. No way to catch it with debug on, either.

#6 Updated by Toshi MARUYAMA about 6 years ago

  • Duplicated by Defect #23120: 'Internal error' when LDAP server name not resolved added

#7 Updated by Go MAEDA 7 months ago

  • Status changed from New to Closed

The issue should have already been fixed in r14808 (#21137).

#8 Updated by Go MAEDA 7 months ago

  • Related to Patch #21137: Rescue network level errors with LDAP auth added

Also available in: Atom PDF