Question:
Can Mediawiki be configured to work with Centrify DirectControl?
Answer:
MediaWiki is a free software wiki package written in PHP, originally for use on Wikipedia. To learn more about this product, please check the below URL.
Note: The below steps were provided by a user on a blog post. Centrify does not take ANY responsibility if some of the Mediawiki steps do not work for some reason. It was provided as a courtesy only.
Step 1: Set up your server
Build and deploy the required hardware and install a Centrify supported *nix based operating system. In this example, an Ubuntu 10.10 server VM was used.
Step 2: Install and Configure Centrify
To install Centrify, you have to first uncomment the partner repos in /etc/apt/sources.list – then install it via “apt-get install centrifydc“. If downloaded from the Centrify Downloads portal, it can be installed with the install.sh script that is included with the installation package.
To activate Centrify, run “adjoin <domain name> -z <zone name> “, if you need more options, use “man adjoin” to learn more.
Reboot your machine and confirm you can login with your credentials in Active Directory.
Step 3: Install and Configure MediaWiki
Go through the normal process of setting up MediaWiki.. So install Apache2, php5 and whatever database you like.
Once you’ve got the base install of MediaWiki going, add the following lines to your LocalSettings.php
require_once("./extensions/PwAuthPlugin.php");
$wgAuth = new PwAuthPlugin();
$wgGroupPermissions['*']['createaccount'] = false;
$wgGroupPermissions['*']['read'] = true;
$wgGroupPermissions['*']['edit'] = false;
$wgGroupPermissions['*']['createpage'] = false;
$wgGroupPermissions['*']['createtalk'] = false;
$wgShowIPinHeader = false; # For non-logged in users
Then, dump the PwAuthPlugin.php file to ./extentions/PwAuthPlugin.php
The PwAuthPlugin.php is attached to this article. See attachment at the end of the KB article.
Basically all of that plugin is from http://www.mediawiki.org/wiki/Extension:PwAuthPlugin. You have to disable saving of passwords in the function “updateUser()” in order for this to work with Centrify.