MediaWikiでNISログイン

MediaWikiのユーザ管理が面倒なので、NISアカウントでログインできないかとググってみると、あっさり発見。

  • NIS authentication

  • ここにあるソースコードをコピーして、INSTALL_DIR/extensions/UnixLoginAuth.phpに保存。その後、INSTALL_DIR/LocalSettings.phpに下記の行を追加。
    require("extensions/UnixLocalAuth.php");
    $wgAuth = new UnixLocalAuth();
    $wgGroupPermissions['*']['createaccount'] = false;

    これで完了。ちなみにこの対応を入れると

  • MediaWiki上では新規にユーザは作成できない
  • MediaWikiのインストールで作成した管理者がNIS上にいない限りログインできなくなる

  • となります。1個目は当然としても、2つめは意外と困るかもしれません。管理者にメアドの設定をしていれば、パスワードの再発行でその場しのぎにログインすることはできますが、毎回やらないといけないので、NIS上の誰かに管理者権限を付与してまった方がいいでしょう。

    ちなみに残念ながら、アカウントの最初の1文字が大文字(capitalizeというらしい)は解消できない。上記のUnixLoginAuth.phpの中にコメントアウトされているgetCanonicalName()で何とかなるかと思ったが、それは甘かった模様。

    う~む、なんとかしたい。
    [PR]
    by gunco | 2009-10-14 20:11