グローバルサーチのセキュリティ

Re: ゲストでもグローバルサーチが実行できてしまう

- Tatsuya Shirai の投稿
返信数: 0

 MDL-19575に報告しました.

 確かに,search/query.phpの冒頭で,require_login()がありますが,$CFG->forceloginがtrueの場合だけです.ゲストでもログイン可能なコースを用意している場合は有効にできません.

 search/query.phpの頭に,

     require_once('../config.php');
    require_once("$CFG->dirroot/search/lib.php");
    // include "debugging.php";


    if ($CFG->forcelogin) {
        require_login();
    }
    if (!isloggedin() or isguest()) {
        error('Guest user can not execute Global Search!');
    }
   
    if (empty($CFG->enableglobalsearch)) {
        error(get_string('globalsearchdisabled', 'search'));
    }

赤で示したコードを追加すれば,取り合えずゲストによるグローバルサーチを禁止できます.

 でも,もしかしたらこれはグローバルサーチの思想(仕様)なのかも知れません.