View Issue Details
ID | Project | Category | View Status | Date Submitted | Last Update |
---|---|---|---|---|---|
0011084 | mantisbt | authentication | public | 2009-10-27 03:59 | 2013-08-16 06:33 |
Reporter | Assigned To | ||||
Priority | normal | Severity | minor | Reproducibility | always |
Status | acknowledged | Resolution | fixed | ||
Product Version | 1.1.8 | ||||
Summary | 0011084: Login Dialog keeps popping up when using HTTP_AUTH | ||||
Description | Using HTTP_AUTH to enable users to login with their System-Password doesn't work. The function auth_does_password_match doesn't handle HTTP_AUTH and therefor one cannot log in. Instead the Login Dialog keeps popping up. | ||||
Tags | No tags attached. | ||||
related to | 0012458 | new | Problem with HTTP_AUTH and Web Services |
problem still present in v 1.2.15. can be solved by adding the lines in bold in the file core/authentication_api.php |
|
This isn't actually the correct fix for this issue - HTTP_AUTH was designed for situation where username+password were set in server headers - therefore adding a bypass here introduces a security risk. |
|
Ok, I'll revert the commit. Thx for your input. |
|
I did some tests case 1, mantis source 1.2.15 without changes : case 2, mantis source 1.2.15 without changes : case 3, mantis source 1.2.15 with changes in note 0011084:0036858 : case 4, mantis source 1.2.15 with changes in note 0011084:0036858 : I conclude that if the login method is set to HTTP_AUTH and you don't configure your web server to ask the user for credentials, Mantis is protected as it tries to authenticate the user against the database. I don't understand where the security risk is. Am I right? Gerald |
|
There are a few issues within the core of Mantis: 1) it assumes that each user requires a valid e-mail address. If not, create_user fails. I fixed that by commenting out email_ensure_valid( $p_email ); within the function user_create() which is in core/user_api.php:447 (Mantis 1.2.11) 2) Auto-creating users is not enabled for HTTP_AUTH Within function auth_attempt_login(), create a new elseif block for HTTP auth: } else if ( HTTP_AUTH == $t_login_method) { This made mantis work with HTTP AUTH. |
|
MantisBT: master-1.2.x 4775bff7 2013-05-15 01:50 Details Diff |
Do not display login dialog when using HTTP_AUTH Fixes 0011084 |
Affected Issues 0011084 |
|
mod - core/authentication_api.php | Diff File | ||
MantisBT: master 90633ab8 2013-05-15 01:50 Details Diff |
Do not display login dialog when using HTTP_AUTH Fixes 0011084 |
Affected Issues 0011084 |
|
mod - core/authentication_api.php | Diff File |