[Evolution-hackers] Account management and keyrings

I finished my first pass at converting all the address book and calendar
backends to the new key file API and am now looking at our GNOME Keyring

Once again I'm getting bit by the fact that the URIs we've historically
used to identify data sources is just making things needlessly complex.

All of our keyring items contain attributes that are extracted from the
data source's URI -- user, protocol and server -- and these attributes
are used as search criteria when looking up a password in the keyring.

But here's the thing: those attributes we're storing on the keyring are
redundant.  ESource and EAccount objects already have this information.
What's more, all ESource and EAccount objects have a unique identifier
string.  All we really need to store on the keyring to find a password
for a given data source is that UID string.

Migration issues aside, since that's already a project unto itself, is
there any reason why our keyring items can't be as simple as:

   Description: Evolution data source <<source-uid>>
   Attributes:  source: <<source-uid>>

This would make password management damn near trivial.

Also, while we're on the subject of password storage, pretty please can
we drop support for the old legacy ~/.gnome2_private/Evolution password
file and make keyring integration mandatory for Evolution 3.0?  We are
the only ones still using that directory.

[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]