mmPasswords

Overview

I originally started work on mmPasswords back in 2007 while using the MoinMoin Wiki as a Server/Network Device CMDB. I got as far as creating a simple action to insert a password into a MySQL database using the AES encrypt function before returning a Macro that you can insert into a Wiki page to view later.

The concept was simple and does work, but I was always concerned about the security aspects and wanted to get away from storing the secret key within the Python code. Because of my concerns I decided to leave mmPasswords where it was and progress another method of storing the passwords. That method is AuthStor.

I have left the code for this project on the server for anyone that is interested in improving upon it (there's loads that could be added) or using it purely for internal storage. My intention will be modify the code at a later date to work with AuthStor and store/retrieve passwords via the RESTlike interface. Enjoy!.

Requirements

Installation

  1. Create the MySQL database and user required to store the passwords. You can find a mysql.sql script within the repository that will help you with this.
  2. Download and install the MySQLdb module.

  3. Download and install script.aculo.us into your MoinMoin theme directory. You will need to update your wikiconfig.py to include the scripts, the simplest way of doing this would be to use the html_head parameter.

  4. Copy the action and macro files into your MoinMoin installation (remember to edit database connection and AES encryption parameters).

Usage

Once installed you should be able to select New Password from the actions menu on any page (you need to be logged in). You can then enter your password and click save to be presented with the macro that you can insert into any page - basic huh.

Source Code