Make the get-oauth-keys API available over D-Bus and replaceable

Bug #509695 reported by Stuart Langridge
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
desktopcouch
Confirmed
Undecided
Ubuntu One Client Engineering team

Bug Description

Currently, desktopcouch's OAuth keys are stored (a) in the ini file and (b) in gnome-keyring. Some work has gone on to replace gnome-keyring storage with the python-keyring module so that keys will be stored in an appropriate local key store (KWallet on KDE, the Keychain on Mac OS X, etc). Using this makes it difficult for desktopcouch access libraries in languages other than Python (such as couchdb-glib) to retrieve these keys. So:

1. finish the migration of desktopcouch core to store the OAuth keys in an appropriate local keystore, by using python-keyring
2. Provide a D-Bus API to retrieve the OAuth access keys, which uses python-keyring to retrieve them. This means that any desktopcouch access library should call the D-Bus method to get the key, rather than working out itself which keyring to fetch the key from (which is good because other languages don't have an equivalent of python-keyring).
3. Make the D-Bus API provider replaceable with a platform-appropriate-IPC-provider, so that desktopcouch on other platforms (Windows, Mac) advertises the get-the-key method using that platform's equivalent of D-Bus
4. Change desktopcouch access libraries so that they call the get-the-key method using platform-appropriate IPC. Access libraries will already need this branching to use platform-appropriate IPC, in order to call get-the-desktopcouch-port, so this should not be a significant additional burden.

Tags: desktop+
Changed in desktopcouch:
status: New → Confirmed
importance: Undecided → Medium
Changed in desktopcouch:
importance: Medium → Undecided
assignee: nobody → Ubuntu One Desktop+ team (uone-desktop)
tags: added: desktop+
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.