Extension:CentralAuth
From MediaWiki.org
CentralAuth extension allows global/shared accounts between projects. This extension adds six new special pages — Special:AutoLogin (unlisted special page), Special:CentralAuth, Special:GlobalGroupMembership, Special:GlobalGroupPermissions, Special:GlobalUsers and Special:MergeAccount.
Warning: CentralAuth was designed specifically for Wikimedia projects. It is much easier — though less cool — to set up global accounts using $wgSharedDB. ([1], [2])
Contents |
[edit] Installation
- Download the latest snapshot and extract it to your extensions directory.
- Run central-auth.sql
- Add require_once ("$IP/extensions/CentralAuth/CentralAuth.php"); to LocalSettings.php
- The extension should be now active.
[edit] Setup
First, you'll need to configure your wiki family using $wgConf, or CentralAuth can't be used for your wiki family. This includes setting $wgLocalDatabases and assigning it to $wgConf->wikis. Follow the examples carefully.
After installing the extension, you have to gather some data in the CentralAuth database. In order to retroactively set up global accounts, you will have to run the migratePass0.php and migratePass1.php scripts. The first one stores information about your wikis in the CentralAuth database, while the second one uses automatic migration heuristics to generate global accounts. A user can merge their accounts manually via Special:MergeAccount. Dry runs can be used for testing purposes.
There are various settings you may wish to modify (e.g. whether to provide single sign-on across a whole domain) listed in CentralAuth.php.
[edit] Cache issues
Setting up CentralAuth will require all your wikis to use the same cache server. If they all use memcached it shouldn't be a problem, however if they are configured with the default setting (CACHE_NONE) and use different databases (or prefixes) it won't work.
You need to configure the following:
$wgSharedDB = 'centralauth'; // or whatever database you use for central data $wgSharedTables = array( 'objectcache' ); // remember to copy the table structure's to the central database first $wgMainCacheType = CACHE_DB; // Tell mediawiki to use objectcache database instead of nothing
[edit] Use
Allows for a single-user login (SUL) system in place using MediaWiki's AuthPlugin system. User creation and login is done globally using one central user table across all wikis. Note that local user accounts are automatically created on account creation/login however.
[edit] Licensing and downloads
The extension is available under the GNU General Public License 2.0 or later, and can be downloaded from Subversion, or accessed via the web-based viewer.
The software is provided as-is. Updates will be made according to the needs of Wikimedia wikis; or where critical vulnerabilities are discovered.
[edit] Hooks
This extension adds one new hook:
[edit] See also
This extension is being used on one or more of Wikimedia's wikis. It means that the extension is stable and works well enough to be used by such high traffic websites. A full list of the extensions installed on a particular wiki is produced by Special:Version on that wiki.