GNOME Bugzilla – Bug 509458
evolution does not remember passwords for web calendars
Last modified: 2009-06-04 13:34:21 UTC
Please describe the problem: I have web calendars accessed via HTTP behind basic authentication. e-d-s stores web calendar passwords in the 'login' keyring ok, but it doesn't seem to find the passwords when it is re-launched and wants to reload the calendars. Steps to reproduce: 1. Add a calendar 'on the web' behind http authentication 2. When prompted, enter authentication details 3. Exit evolution 4. Run evolution again Actual results: I'm prompted for my password Expected results: The password from the keyring should be used Does this happen every time? Yup Other information:
I confirm this bug. I'm running evolution 2.12.3 (on Fedora 8). When running gnome-keyring-manager, it appears that the password is stored but not the username.
Right you are--I can't believe I missed that it wasn't storing the username.
I didn't notice this before--but there is something logged to the console when I enter my password: (evolution:30011): e-data-server-ui-CRITICAL **: ep_keyring_insert_password: assertion `user != NULL' failed
Evolution doesn't appear to be downloading password-protected web calendars at all now (2.22.1).
The open_calendar function in eds uses an ECal's uri as the key for storing data. Unfortunately the URI looks like this: webcal://server/path and not like this: webcal://user@server/path The function that stores passwords in the keyring therefore has no way to access the user name that should be used.
*** Bug 526888 has been marked as a duplicate of this bug. ***
This is odd, I now get these messages instead: (evolution:12452): e-data-server-ui-WARNING **: Unable to find password(s) in keyring (Keyring reports: No matching results) (evolution:12452): calendar-gui-WARNING **: Unable to load the calendar Authentication required I am no longer prompted for my password, so I can no longer view my passwords at all!
(In reply to comment #7) > This is odd, I now get these messages instead: > > (evolution:12452): e-data-server-ui-WARNING **: Unable to find password(s) in > keyring (Keyring reports: No matching results) > > (evolution:12452): calendar-gui-WARNING **: Unable to load the calendar > Authentication required That seems to be caused by being in offline mode, whoops :)
As a workaround, web calendar urls can be entered with a username in the URL. For example: webcal://user@server/path Note that the Username fields must also be filled in, else the user gets an error dialog containing the messages "401 unauthorized".
(In reply to comment #9) > As a workaround, web calendar urls can be entered with a username in the URL. > For example: > > webcal://user@server/path > > Note that the Username fields must also be filled in, else the user gets an > error dialog containing the messages "401 unauthorized". > Doesn't work for Google calendars as here Evolution does not ask for an URL but only for a user name.
I confirm this bug, running 2.22.2 on Ubuntu Hardy.
On my gentoo system, I have a similar problem accessing a password protected caldav-calendar when support for the gnome-keyring-daemon is compiled in. The calendar does not load nor am I asked for a password. The only error message on the console is: (evolution:31941): calendar-gui-WARNING **: Unable to load the calendar Authentication required This happens when using e-d-s 2.22.2 as well as 2.22.3. However, Evolution makes correct use of the keyring for e-mail accounts. I don't know if this issue is related to this bug or if I should file a new bug report?
The workaround (storing the username in the URL) works for me. I am asked if I want to grant access to the keyring, and after confirming, I'm no longer asked for my password when accessing the webcal.
I can confirm that this is still a problem in 2.24.3.
This is still a problem in 2.26. My report should probably be marked as a duplicate. http://bugzilla.gnome.org/show_bug.cgi?id=575762 Has anyone gotten the workaroud to work for google calendar yet? I'm trying: webcal://username@gmail.com@www.google.com/calendar/ical/<path to ics>/basic.ics and webcal://username@www.google.com/calendar/ical/<path to ics>/basic.ics But no luck
A fix that works for me is the following: So for google calendar, URL is: webcal://<username>@www.google.com/calendar/ical/.../.../basic.ics In the username field you enter your password. I got this info from the ubuntu people https://bugs.launchpad.net/ubuntu/+source/evolution-data-server/+bug/237424
*** Bug 575762 has been marked as a duplicate of this bug. ***
The username in the URL workaround just works for web calendars (webcal). If use are using caldav, the username is thrown away and is not present anymore after restart evolution or reopen the dialog.
There is a patch for this in a newer bug, thus marking this one as a duplicate. Not being there a patch I would do it the opposite way. *** This bug has been marked as a duplicate of 581780 ***
This is just too strange. As noted in comment #18, the URL workaround shouldn't work for caldav calendars since the username is just thrown away. For example you enter "caldav://user@server.acme.com/some_parameters" and the system simply changes it to "caldav://server.acme.com/some_parameters". So I was having this exact problem with Evolution 2.26.2 on the Fedora 11 Release Candidate. Before I knew that the URL workaround shouldn't work, I tried to change it, quit, did a force-shutdown of Evolution, and started it up again. Now it doesn't ask for a password! But the URL does not have the user name in it. So go figure. I've since rebooted the system and everything still works like a charm.