Movable Type CMSプラットフォーム Movable Type
ドキュメントサイト

Movable Type 5 ManualMovable Type 5 マニュアル

LDAP 認証と同期の設定

最終更新日: 2017.11.05

Movable Type Advanced では、通常の Movable Type の認証に加えて、LDAPと連携したユーザー管理の仕組みを利用できます。

MT 認証と LDAP 認証

MT 認証は、ユーザー管理と、サインイン認証を、 Movable Type でおこなう通常の形式です。LDAP 認証では、LDAP に対応したディレクトリ サービスを使って認証をおこないます。以下の環境変数をmt-config.cgiに記述して、認証モジュールを切り替えます。

MT 認証

通常のMovable Typeのユーザー管理、認証です。全てのユーザー情報を Movable Type に保存します。Movable Typeの管理画面でユーザーの情報を登録、管理します。

LDAP 認証 (ユーザー管理とユーザー認証を連携)

LDAP に対応したディレクトリ サービスと連携して、ユーザー管理を一元管理します。LDAP 認証は、標準ではユーザー管理とユーザー認証の双方を連携する設定になります。

LDAP に登録されているユーザーは、誰でも Movable Type にログインすることができます。ログイン時に、Movable Type とLDAPのユーザー情報を同期します。もし、 Movable Type にユーザー情報が無い場合は、LDAP の情報にもとづき Movable Type にユーザー情報が自動作成されます。

このモードでは、全てのユーザー情報、グループ情報はディレクトリ サービスで管理されます。 Movable Type の管理機能はディレクトリ サービス側の情報との不整合を防ぐために、使用できなくなります。もし、Movable Type の管理機能を利用したい場合は、ディレクトリ サービスをユーザー認証のみ連携します。

LDAP 認証 (ユーザー認証のみ連携)

Movable Type にサインインするための、ユーザー名とパスワードの認証を LDAP でおこないます。ただし、Movable Type のユーザー情報と、LDAP のユーザー、グループ情報は同期しません。そのため、Movable Type に手動でユーザー情報を登録する必要があります。LDAP と同じ ユーザー名とパスワードを、Movable Typeに登録しないと、ユーザーは Movable Type にログインできません。

以下の環境変数で設定します。

MT 認証と LDAP 認証の違い

LDAP 認証には、以下のような特徴があります。

  • ディレクトリ サービスで作成した、ユーザー情報、グループ情報が、自動的に Movable Type に追加されます。
  • ディレクトリ サービスで、ユーザー名やグループ名を修正すると、Movable Type に同期されます。
  • ディレクトリ サービスの、ユーザー表示名、メールアドレスは、初回の同期時のみ Movable Type に同期されます。一度同期した後は、Movable Type の管理画面で修正します。
  • ディレクトリ サービスで、ユーザー情報、グループ情報を削除すると、自動的に Movable Type で無効化されます。ユーザー認証のみ連携している場合は、自動で無効化されませんが、ログイン時にエラーとなります (ディレクトリ サービスにユーザー情報が存在しないため)
  • Movable Typeで、ユーザーとグループを削除したが、ディレクトリ サービスでは削除していない場合は、次回の同期時に自動で再作成されます。
  • LDAP 認証では、Movable Type のパスワードリカバリ機能は利用できません。

LDAP 認証での同期

ディレクトリ サービスと Movable Type の間で、ユーザー情報を同期します。同期方法は3種類あります。

手動で同期

Movable Type と、LDAP ディレクトリを手動で同期します。

  1. Movable Type にサインインします。
  2. ナビゲーションから、[システム] を選択します。
  3. サイドメニューから、[ユーザー] > [一覧] あるいは、[設定] > [グループ] を選択します。
  4. ユーザーあるいはグループの一覧画面の、[アクション]から[同期]をクリックします。

[同期] メニューが表示されない場合は、ExternalGroupManagement や ExternalUserManagement などの環境変数が正しく設定されていることを確認してください。

スケジューラによる定期的な同期

スケジュール タスクを利用して、定期的に情報を同期します。mt-config.cgi に以下の項目を追加して、スケジュール タスクを実行します。

LaunchBackgroundTasks 1

同期の頻度については環境変数の ExternalUserSyncFrequency で設定を行います。詳しくは、環境変数リファレンスをご覧ください。

ExternalUserSyncFrequency 60

スケジューラーによる定期的な同期を行うための設定については、Movable Type の ドキュメントを参照ください。

サインイン時の同期

各ユーザーがサインインする時に、サインインしたユーザーに関連する、以下の情報が同期されます。

ユーザーのステータス

ユーザー削除等のステータスを同期します。ディレクトリ サービスで削除されたユーザーはログインできなくなります。

ユーザーが所属するグループ

ユーザーの所属するグループに関する情報の同期が行われます。

ログ フィードによる同期

ログ フィードに対してアクセスされた時に、ユーザー情報を同期します。例えば、RSSフィードリーダーにログ フィードを登録して、定期的にフィードにアクセスします。

ログ フィードの設定については、以下のドキュメントを参照ください。