ファイルアップローダー権限でファイルマネージャーが閲覧できない (5.7.5.1 まで)

2015年9月10日 at 9:41

concrete5.7 系で、5.7.5.1 より後のバージョン (恐らく 5.7.5.2 ) では修正されているエラーを報告します。


■ 条件

複数人で管理しているサイトで、
/index.php/dashboard/system/files/permissions
のファイルマネージャーの閲覧権限設定で
「ファイルマネージャーからファイルを検索」オプションで「ファイルアップローダー」を設定しているサイト。

ユーザーを新規作成して、そのユーザーは「テスト」グループに所属。

「テスト」グループはファイルをアップロードできる設定。

その他の権限は「ファイルアップローダー」のみというユーザーを作成します。

( 添付画像を参照してください。)



■ 症状

新規に作成したユーザーは、ファイルマネージャーを開こうとすると「アクセス拒否」の画面が出て、ファイルマネージャーにアクセス出来ない。

そのユーザーに「ファイルマネージャーからファイルを検索」を特別に追加して、ファイルをアップロード。権限を元に戻す。

そのユーザーが「所有者」なファイルが1個でもあると、ファイルマネージャーが正常に表示される。

■ 解決策

5.7.5.1 での解決策はこちらです。

/concrete/controllers/search/files.php
のファイルを

http://gist.github.com/katzueno/a62ca1f06cab271b54ca/revisions

のように35行目の

if (!$cp->canSearchFiles() && !$cp->canAddFile()) {




if (!$cp->canAddFile()) {


と修正してください。

この症状は、GitHub 上の最新開発版では問題は起こっていないことを確認しています。

タグ: