同一ドメインでMoodleと他システムのログインまわりを使い回す。

Moodle

【やりたいこと】
Moodleに一度ログイン。
そのログイン情報を使って、外部システムにアクセスする。
外部システムはMoodleにログインをしていない限り、使えない。

【Moodle側の設定を変更する】

1.クッキーの持っているディレクトリを設定する
Home / ▶ サイト管理 / ▶ サーバ / ▶ セッションハンドリング
でクッキーのパスを
/
にする。

2.セッションをデータベースで管理する

セッション情報にデータベースを使用するにチェックする
ちなみに、セッションの情報はmdl_sessionsに入っている

3.簡単なテスト
Moodleにログイン後、同一ドメインにある、test.phpにアクセスする。

if($_COOKIE["MoodleSessionm28"] != ""){
echo "OK";
}else{
echo "NG";
}

Moodleにログイン後すぐにアクセスするとOK。それ以外はNGとなる。COOKIEは書き換えられてしまう可能性があるので、逐一、DB側のセッション情報(mdl_sessions)を見に行けばOK。

コメント

タイトルとURLをコピーしました