[dev] Horde "wallet" idea

Kevin Myer kevin_myer at iu13.org
Fri Jul 1 15:51:56 PDT 2005


Quoting Chuck Hagenbuch <chuck at horde.org>:

> Quoting Kevin Myer <kevin_myer at iu13.org>:
>
>> Has the idea of developing a Horde "wallet" ever been kicked around?
>> The idea
>> would be to allow a user (and/or an admin) to manage credentials for 
>> the many
>> different services they can access online.
>
> http://bugs.horde.org/ticket/?id=811
>
> It was posted and then apparently abandoned.

I'd like to flesh this out a bit more and gather feedback.  The need 
for such a
module, or at least a set of utility functions and preferences, is becoming
more apparent.  There are a number of situations this solves:

Authentication to mail servers where login/password != hordeauth.  Gone is the
need for hooks to do this.  Set auth='wallet' and have the wallet return the
credentials, using the name of the servers.php mail server name key.
All fetchmail authentication - currently stored unencrypted in the fm_accounts
preference
Authentication to external web services that may be loaded as custom portal
blocks (in our case, this would be to an external website that provides online
training materials, as well as sites that track staff development, electronic
procurement, grants sites, etc.)
A logical (maybe) place to store things like the weather.com partner id and
license key
A logical (maybe) place to store something like a Google maps API license key
for a site.

I'd envision multiple levels of wallets.  One level would be system wide and
would provide credentials to all users transparently to log into services the
host site contracts with.  These would be configurable by an admin, but not
viewable or changeable by users.  Wrap Horde Permissions on top of these sets
of credentials and you can also specify which users can use which services.

The second level would be for user-supplied credentials.  These would be for
services that a user is specifically configuring for themselves.

As much as we try to use a single-sign-on for our authentication internally,
some systems only provide an 8-character limit on usernames (and passwords, in
the case of some crypt-based hashes).  So even internally, its not possible to
do this, and interfacing with external systems, its impossible to make 
this all
work with a single-sign-on.

This system would be designed in such a manner that nothing is stored
unencrypted, but obviously users would need to supply a key to unlock their
passwords and decrypt their passwords.  This could be their initial 
horde login
password, or if more security was desired, the user could configure groups of
credentials and password protect them with different passwords.  Having
multiple passwords to unlock passwords kind of defeats the whole purpose of a
wallet, but would also satisify those concerned that one password unlocks the
keys to the kingdom.

Thoughts?

Kevin

-- 
Kevin M. Myer
Senior Systems Administrator
Lancaster-Lebanon Intermediate Unit 13  http://www.iu13.org




More information about the dev mailing list