Feb 242007
 

DokuWikiTips and Tricksを眺めていて”Integrating DokuWiki with Mantis“というのを見かけました。ざっと読むと両者の認証を統合したりすることができるようです。

  • DokuWikiの認証をMantisベースに統合
  • DokuWikiの認可をMantisのアクセスレベルで制御
  • Mantis Issueに詳細を記述するためのWikiページリンクを設定
    http://www.mantisbugtracker.com/bugs/view.php?id=7075 と
    http://www.mantisbt.org/wiki/doku.php/mantisbt:issue:7075
    のような関係です。
  • Wikiページ側にもIssueへのリンクを簡単な方法で挿入

WikiやIssue Trackerが統合された環境としてTracなどが有名かと思いますが、同様のことができるのではないかと思い試してみました。
(TracではSubversionのソースブラウジングもできるのですが、それはあとで考えるとして)

ACLの設定等はサンプルのままにやっていますので、やってみようという方はご注意を。

インストール

DokuWikiは現時点でのStableリリースであるdokuwiki-2006-11-06.tgz、Mantisは開発版の1.1.0a2をそれぞれインストールします。

DokuWikiの設定

Integrating DokuWiki with Mantisのとおりにおこなっていきます。

Configutration

dokuwiki/conf/dokuwiki.phpに追加するように書かれていますが、dokuwiki/conf/local.phpを用意して設定。
MANTIS_ROOTとMANTIS_URLの値は環境に合わせて変更。

Authentication (Single Sign-On)

dokuwiki/inc/auth/mantis.class.phpを作成してページ記載のコードをそのままコピペ。

とりあえずここまでやるとシングルサインオンは実現しますが、他のDokuWiki側設定もやってしまいます。

Authorisation Configuration

dokuwiki/conf/acl.auth.phpを作成して、こちらもページ記載のコードをそのままコピペ。

Mantis Syntax Plug-in

dokuwiki/lib/plugins/mantis/syntax.phpを作成して、こちらもページ記載のコードをそのままコピペ。

認証テスト

どんな動きになるのか試してみます。

  • DocuWikiにアクセス
    アクセス拒否されます。
  • DocuWikiでログインを試行
    ログインできません。アクセスも拒否されたままです。
  • Mantisでログインを試行
    ログインできます。
  • Mantisでログイン状態を維持したままDokuWikiにアクセス
    アクセス許可されます。
  • DokuWikiでログアウトを試行
    ログアウトした旨表示されますが、アクセス許可されます。Mantis側もログイン状態のままです。

というわけで認証が統合されるといっても「Mantis側でのログイン状態」が引き継がれているだけであって、DokuWikiのログイン画面にMantisのアカウントを入力しても認証されるわけではないようです。
ちょっとややこしいんですが、Mantisでログイン済みであればDokuWikiのログインはスルーされますが、MantisでログインしていないとDokuWiki側はアクセス拒否される、という動きになるようです。

認証情報自体を統合するにはLDAPやBASIC認証をバックエンドに使う方法があります。ログインの動きとしてはそちらのほうがしっくりくるかも知れません。
ですが、ユーザ管理やパスワードリマインダーといった運用上必要になってくるであろう機能をMantisだけで実現できるので、割り切って使えるなら結構便利だと思います。

残りのMantis側設定はこちらをどうぞ。

 Posted by at 11:57 pm  Tagged with:

Sorry, the comment form is closed at this time.