Categorías
Software

Mediawiki y LDAP …

… al final con paciencia lo consigues.

Y sí, en la empresa tengo un wiki desde hace mucho tiempo. Un wiki que funciona bajo Mediawiki y que contiene mucho contenido útil aún. No actualizado, eso no, pero lo bastante valioso para no desecharlo.

Según veo el creciente uso del nuevo ERP (odoo) más necesario veo el poder aprovecharlo para anotar de forma sencilla pequeñas informaciones que pueden venirme muy bien. Lo he puesto al día y, bueno, lo recordaba mejor.

  1. Está escrito en PHP. La configuración es PHP. Es un lío.
  2. Es áspero para ser una aplicación web (por ejemplo, hecho de menos la facilidad que tiene WordPress para añadir imágenes).
  3. Hay muchísima información de bajo nivel sobre él pero no es sencillo encontrarla, y es que como es de esperar dicha información está en también bajo Mediawiki.

En cualquier caso he tenido que activar un complemento para que las cuentas de usuario pudiesen identificarse con el directorio común de la red. Un directorio LDAP que no tiene apenas complejidad pero que aún así me ha llevado más tiempo del que pensaba. A ver, que sigue siendo tocar código PHP el que hay que escribir para conectarlos.

También es cierto que he tenido mala suerte. En Debian Mediawiki está bastante desactualizado. Tanto que he tenido que usar la versión de repositorio backports y aún así no es la última de la última. Pero me ha servido bien.

En cualquier caso anotar que la configuración mínima que permite crear cuentas de usuario en Mediawiki que sólo existen en el directorio LDAP es la siguiente:

// Implicit group for all visitors
$wgGroupPermissions['*']['createaccount']       = true;

// Carga de la extensión
require_once( "$IP/extensions/LdapAuthentication/LdapAuthentication.php" );
require_once ('includes/AuthPlugin.php');
$wgAuth = new LdapAuthenticationPlugin();
$wgLDAPDomainNames = array(
  'empresa',
);
$wgLDAPServerNames = array(
  'empresa' => 'ldap.empresa.net',
);
// ... varias líneas más
$wgLDAPDisableAutoCreate = array(
  'empresa' => false
);

También se me ocurrió modernizarlo por completo e instalar un editor especial llamado VisualEditor que es verdaderamente impresionante por lo que se puede probar aquí.

Y digo impresionante comparado con lo que hay hasta ahora pero dado lo poco que voy a usar sus capacidades, los requerimientos de instalación (componentes Node.js por ejemplo) son demasiado como esfuerzo. Quizás lo haga en el mío.