DokuWiki

It's better when it's simple

User Tools

Site Tools


plugin:authmantis

MantisBT Authentication Plugin

Compatible with DokuWiki

  • rc2020-06-01 "Hogfather" yes
  • 2018-04-22 "Greebo" yes
  • 2017-02-19 "Frusterick Manners" yes
  • 2016-06-26 "Elenor Of Tsort" yes

plugin Enables single sign-on to DokuWiki using MantisBT as authentication back-end.

Last updated on
2020-06-14
Provides
Auth
Repository
Source

Description

This authentication plugin enables single sign-on to DokuWiki, using an external trust mechanism to authenticate users against MantisBT.

It is based upon the original authentication back-end written by Victor Boctor back in 2006.

More information about integrating MantisBT with DokuWiki can be found on the MantisBT Wiki.

License

This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

Installation

Prerequisites

This plugin requires access to a MantisBT instance located on the same server as DokuWiki.

DokuWiki compatibility

The plugin is compatible with DokuWiki release 2013-05-10 “Weatherwax” and later.

Older releases used authentication back-ends instead of plugins. This code is no longer supported, but still available in for use with DokuWiki releases before 2013-05-10 “Weatherwax”.

MantisBT compatibility

MantisBT releases 1.2.x or later and 2.x are fully supported. The plugin may work with earlier releases as well, but this has not been tested.

The MantisBT wiki relies on this plugin since 2013.

Setup

Install the plugin following the standard process, then proceed with the next 3 sections.

Access Control List Configuration

Setup ACL rules for groups as appropriate for your environment, by defining entries in acl.auth.php for each access level defined in your MantisBT instance.

For example, with default MantisBT access levels your setup could be:

acl.auth.php
# MantisBT access levels
*  @VIEWER         1
*  @REPORTER       2
*  @UPDATER        4
*  @DEVELOPER      8
*  @MANAGER        16
*  @ADMINISTRATOR  16

MantisBT Core Initialization

Add the following lines to your local.protected.php file, adjusting the path to the MantisBT root as appropriate:

local.protected.php
# Path to the MantisBT root directory on the server
define( 'MANTIS_ROOT', '/path/to/mantisbt/' );
require_once( MANTIS_ROOT . 'core.php' );

Note that this can't be done in the plugin (i.e. with a configuration option), due to conflicts with the declaration of utf8 compatibility functions between MantisBT core and DokuWiki, so the only option for now is to initialize the MantisBT core from the DokuWiki config file.

Set the Authentication Back-End

Now the authmantis back-end can be enabled in the DokuWiki configuration:

  1. Open the DokuWiki Configuration Manager
  2. In the Authentication section:
    • Check Use access control lists
    • Select authmantis as Authentication backend
    • Add @ADMINISTRATOR in the Superuser field

4. Save the changes.

Alternatively, you can manually edit the local.php (or local.protected.php) file:

$conf['useacl']      = 1;
$conf['authtype']    = 'authmantis';
$conf['superuser']   = '@ADMINISTRATOR';
$conf['plugin']['authmantis']['mantis_root'] = '/path/to/mantisbt/';

Development

Revision history (Github releases)

Recent commits

Full Git log.

Known Bugs and Issues

Please refer to the plugin's Issue tracker on Github.

Credits

This plugin is based on the Authentication back-end written by Victor Boctor, published in the MantisBT Wiki back in 2006.

In August 2013, Ventzy Kunev first published another version of this plugin here. His variant was based on the same original source code from the MantisBT Wiki, but considering that it was unmaintained since 2013 (with just a version bump in 2015), the MantisBT team decided to replace Ventzy's original plugin with the one used for the official MantisBT wiki, which differs slightly. At this occasion, this page was almost entirely rewritten.

FAQ

I locked myself out, what do I do now?

  1. Edit your local configuration file ./conf/local.php
  2. Reset authentication to authplain
    $conf['authtype'] = 'authplain';
  3. Save the file
plugin/authmantis.txt · Last modified: 2020-06-14 18:54 by dregad