Summary | Lightning<->RPC; Authentication doesn't work |
Queue | Kronolith |
Queue Version | 3.0 |
Type | Bug |
State | Resolved |
Priority | 2. Medium |
Owners | |
Requester | michael.groene (at) zel (dot) uni-hannover (dot) de |
Created | 04/13/2011 (5196 days ago) |
Due | |
Updated | 06/24/2011 (5124 days ago) |
Assigned | 04/19/2011 (5190 days ago) |
Resolved | 06/24/2011 (5124 days ago) |
Github Issue Link | |
Github Pull Request | |
Milestone | |
Patch | No |
With a Kronlith 3.0.3 installed, my Lightning sync was working with
Horde 3 and not with Horde 4.
I get a "HORDE [horde] Horde_Imap_Client requires a username and
password. [pid 8146 on line 144 of
"/var/www/horde/pear/php/Horde/Imap/Client/Base.php"]"
The HTTP authentication is never prompted.
Looking at the stack trace it goes to Horde_Rpc_Webdav->_check_auth()
that checks for an internal function check_auth() that is always true
(!) and then goes on Horde_Rpc_Webdav->check_auth() (without
underscore) that calls other IMAP auth classes.
In Webdav.php (Horde_Rpc_Webdav) I have added a try / catch
(InvalidArgumentException $e) block around the return
$this->check_auth($auth_type, $auth_user, $auth_pw);
in else if (method_exists($this, "check_auth")) statement
that returns false in the catch block
Then the Auth Basic header is sent at first request and then Basic
Auth is asked to the client and it works again.
If you need this on a patch format feel free to ask me (since I don't
know if it breaks other things)
What I find strange is that the _check_auth func checks for a
check_auth method in the same class, always returning true...
I'm testing now with SQL-authentication-backend with two users (one
with @ in username, one without).
The problem of not being asked for credentials is only for the user
with the @-sign in its username and thereby in the calendar's url.
http://horde4.dev.zew.local/rpc.php/kronolith/michael@localsql/lfwSRwXxcxFN3gVPSXowrdA.ics (not
working)
vs
http://horde4.dev.zew.local/rpc.php/kronolith/michael_localsql/wR6FRQXxcxFN3gRx2Veg9yA.ics
(works)
I don't really know how to get this solved, have you any hints? We
can't use other usernames, because we use mailaddresses.
bug #9733?http://git.horde.org/horde-git/-/commit/a65072badbcb509690ca009bb0770ca1c641e393
This changes nothing, horde logs this error:
2011-05-24T14:45:28+02:00 ERR: HORDE [horde] Calendar does not exist
or no permission to edit [pid 7125 on line 295 of
"/var/www/horde4/kronolith/lib/Api.php"]
The permission is not granted, because Lightning doesn't ask for credentials.
bug #9733?New Attachment: not logged in.png
have PATH_INFO disabled (or not enabled) by chance?
$_SERVER["PATH_INFO"]="/test"
download the calendars iCal file. When not logged in, Horde is not
asking for credentials, as it did in horde3.
you have PATH_INFO disabled (or not enabled) by chance?
$_SERVER["PATH_INFO"]="/test"
State ⇒ Feedback
have PATH_INFO disabled (or not enabled) by chance?
Patch ⇒ No
State ⇒ Unconfirmed
Milestone ⇒
Queue ⇒ Kronolith
Summary ⇒ Lightning<->RPC; Authentication doesn't work
Type ⇒ Bug
Priority ⇒ 2. Medium