DokuWiki

It's better when it's simple

ユーザ用ツール

サイト用ツール


ja:tips:commonlogin

同じサーバ上の Wiki 間で認証データを共有する

こういうシナリオを想定します。 同じサーバー上に複数のウィキを設置して、ユーザーは一度だけログインする。 このシングルサインオンのシナリオのためには、次のことを行う必要があります。

  1. inc/init.php の中の DOKU_COOKIE の定義を、例えば md5('commoncookie') のような、全て同じインスタンスに変更します。 DOKU_COOKIE は、ログイン済のユーザーが格納される cookie の名前です。Dokuwiki 標準的なインストール状態では、それは(パスを含む)完全な URL のハッシュになっています。
  2. inc/auth.php内で呼ばれる二箇所の setcookie 内で、 DOKU_REL'/' に変更します。 これにより、唯一の cookie がサーバー上の全てのインスタンスに送られることが保証されます。
  3. data/meta/_htcookiesalt ファイルの内容は、すべてのインスタンスで同じでなければなりません。ファイルはユーザーが最初にログインした時に作成され、その後、同じ内容のままです。
  4. ユーザー情報を共有するために、一つのウィキを「主」ウィキと宣言します。「従」ウィキ内の conf/users.auth.php ファイルは、「主」ウィキ内のこのファイルへのシンボリックリンクする必要があります。もし、似たような名前空間の構造な場合や複雑なアクセス制御リストの設定を必要としない場合、conf/acl.auth.php ファイルを共有することも可能です。
ja/tips/commonlogin.txt · 最終更新: 2010-11-03 04:16 by 124.210.68.116

特に明示されていない限り、本Wikiの内容は次のライセンスに従います: CC Attribution-Share Alike 4.0 International
CC Attribution-Share Alike 4.0 International Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki