[OpenID] All-in-One package to install your own server

Par défaut

We are going to use our own openid server for various projects, it was fairly easy to install at then end.

Because sources are diffused on the net, here is a all-in-one package you’ll just need to put on your webhost to start your server:

Download package

Update: OpenId-Server now on Github.com

Configuration

In the package, you need to edit some configuration in web/config.php:

/**
 * The administrator's email address.  You may leave this empty if you
 * wish.  If empty, the "Contact (email address)" message will not
 * appear on every page footer.
 */
define('SITE_ADMIN_EMAIL', "admin@example.com");

/**
 * Set these values for administrative access.  This account will be
 * able to create and remove accounts from the auth backend.  This
 * username will not be permitted to use an OpenID.  The password MUST
 * be an MD5 hexadecimal hash of the password you want to use.
 * Example:
 *
 * define('ADMIN_PASSWORD_MD5', '21232f297a57a5a743894a0e4a801fc3');
 *
 */
define('ADMIN_USERNAME', 'admin');
define('ADMIN_PASSWORD_MD5', '');

Visit this page to transform your password in MD5 hash

/**
 * Storage backend to use.  Currently the only choice is "MYSQL".  See
 * storage.php for storage backend implementations.  Parameters for
 * connecting to the storage backend.  See storage.php if you want to
 * create your own backend.
 */
define('STORAGE_BACKEND', 'MYSQL');
global $storage_parameters;
$storage_parameters = array('username' => 'openid',
                            'password' => '',
                            'database' => 'php_openid_server',
                            'hostspec' => 'localhost');

There are more options you can change in config.php, feel free to experiment 🙂

Link to HTTP server

You need to tell to your server to access OpenID server in the ‘web‘ directory.
Here is how it works on my webhost:

ln -sf ~/openid/web/ ~/public_html/openid/

Now you can access my OpenID server on http://openid.alexgirard.com