はじめに
Mantis BTは、ユーザー認証をLDAPの情報を使って行なえるようになっている。 とある事情でActive DirectoryのLDAPの情報を使ってユーザー認証をしたい機会があったので、その設定を書いておく。 しかし、Admin Guideには、一般的なLDAPについて書かれているので、ちゃんと読まないとActive Directoryで使えるようにならない。
残念ながら、私はLDAPにもMantis BTにもさほど詳しい訳ではないので、最適解ではないかもしれないが、動く例として記載しておく。
Mantis BTは、pkgsrc/devel/mantisから導入したMantis BT 1.3.1であり、/usr/pkg/share/mantis 以下に配置されている。LDAP機能を使うため、pkgsrc/databases/php-ldapも追加でインストールしている。
Active Directoryでの認証の有効化方法
まず最初にやらないといけないのは、Active Directory認証に移行した後に使う管理者ユーザーの追加である。 Mantis BTのインストールをしたばかりの状態では、ユーザーID/パスワード = administrator/root でログインできる。ここで、Active Directoryに登録されているユーザーを管理者として登録しておく。 Active Directory認証を有効化した後には、administratorユーザーでログインすることはできないので、先に管理者ユーザーを作っておく必要がある。
Active Directoryについては、以下のような情報が与えられている。
- Active Directoryサーバー
- tetera-ad.tetera.org
- ブラウジングするユーザーID/パスワード
- aduser/aduser_password
これらに対して、/usr/pkg/share/mantis/config/config_inc.php の末尾に、以下のように追加する。
$g_login_method = LDAP;
$g_ldap_server = 'tetera-ad.tetera.org';
$g_ldap_port = '3268';
$g_ldap_root_dn = 'dc=tetera,dc=org';
$g_ldap_organization = '';
$g_ldap_uid_field = 'sAMAccountName';
$g_ldap_bind_dn = 'aduser@tetera.org';
$g_ldap_bind_passwd = 'aduser_password';
$g_use_ldap_email = OFF;
$g_use_ldap_realname = OFF;
$g_show_realname = OFF;
$g_ldap_protocol_version = 3;
$g_allow_signup = OFF;
$g_lost_password_feature = OFF;
$g_ldap_follow_referrals = OFF;
$g_use_ldap_realname = ON;
にすることで、cnをユーザーの名称として使うことができるはずである。
しかし、今回の環境では、sAMAccountNameとcnは一緒なので、OFFにして各ユーザーが設定するようにした。
0 件のコメント:
コメントを投稿
注: コメントを投稿できるのは、このブログのメンバーだけです。