- 追加された行はこの色です。
- 削除された行はこの色です。
#author("2016-08-20T21:43:13+09:00","","")
**[[質問箱5/231]] [#bd3a61c3]
#author("2018-03-11T22:09:49+09:00;2017-01-30T11:45:50+09:00","","")
**[[質問箱/5231]] [#bd3a61c3]
|RIGHT:70|LEFT:410|c
|~カテゴリ|サイト管理・運営|
|~サマリ|「ページの一覧」ページヘの認証要求の設定|
|~バージョン|1.5.1|
|~投稿者|[[ine]]|
|~状態|質問|
|~状態|完了|
|~投稿日|&new{2016-08-20 (土) 21:41:41};|
***質問 [#qf216428]
-PukiWikiのバージョン:
--1.5.1
-PukiWikiが稼働しているOS種類、バージョン:
--ubuntu server 16.04
-PukiWikiを稼働させているWEBサーバー種類、バージョン:
--apache 2.4.18
-PukiWikiが使用するPHPバージョン:
--PHP 7.0.8
-自分が行なった手順、使用したソフト
--[[PukiWiki/Authenntication]]に基づく認証設定。
--[[PukiWiki/Authentication]]に基づく認証設定。
--Form認証, 非LDAP
-何を実現したいか
--「ページの一覧」ページヘの認証要求の設定
閲覧、編集、検索に対して認証設定を有効とし、それぞれ正しく動作することを確認しています。
しかし、ログイン画面上に表示される[一覧]をクリックすると、ログインしていないユーザであってもページ名の一覧が確認できます。
[一覧]についても認証要求を行う方法があれば教えてください。
***回答 [#f2f6457d]
- どのレベルで認証を行いたいのかにもよりますが、とりあえず一覧機能の利用そのものに制限をかけたいという過去の質問を。[[質問箱/2643]] -- &new{2016-08-21 (日) 23:50:26};
- もしも単語検索と似たようなフィルターのほうが希望に近いのなら。plugin/list.inc.php か、そこから呼び出されるlib/func.php のpage_list 関数で、lib/func.php のdo_search 関数の
// Search auth for page contents
if ($search_auth && ! check_readable($page, false, false)) {
unset($pages[$page]);
--$count;
}
という部分を真似て、認証窓を出さない(=現状の認証状態を維持)&認証失敗でエラー終了しない(フラグで認証結果を返す)と追加指定したcheck_readable 関数でページ一覧が入っている変数から地道に対象外を除外していく、という方法になると思います。(もしかすると、もっとお手軽な方法があるかもしれませんが) -- &new{2016-08-22 (月) 00:11:32};
#comment