#author("2019-08-16T01:34:42+09:00","","")
#author("2019-08-16T01:53:45+09:00","","")
* 3回ログインしないとAUTH_TYPE_FORM認証でログインできない [#h7b01d35]

- ページ: [[BugTrack]]
- 投稿者: [[umorigu]]
- 優先順位: 重要
- 状態: 完了
- カテゴリー: 本体バグ
- 投稿日: 2019-08-15 (木) 23:48:31
- バージョン: 1.5.2
- リリース予定バージョン: 1.5.3

** メッセージ [#tacc5a6e]
pukiwiki-1.5.2_utf8.zipを展開してDocumentRootに配置しました。ファイルは以下しか変更していません。

 --- pukiwiki.ini.php.org	2019-01-12 00:49:49.000000000 +0900
 +++ pukiwiki.ini.php	2019-07-25 12:26:05.624044676 +0900
 @@ -221,7 +221,7 @@
  /////////////////////////////////////////////////
  // Authentication type
  // AUTH_TYPE_NONE, AUTH_TYPE_FORM, AUTH_TYPE_BASIC, AUTH_TYPE_EXTERNAL, ...
 -// $auth_type = AUTH_TYPE_FORM;
 +$auth_type = AUTH_TYPE_FORM;
  // $auth_external_login_url_base = './exlogin.php';
 
  /////////////////////////////////////////////////
 @@ -264,10 +264,11 @@
 
  /////////////////////////////////////////////////
  // Read auth (0:Disable, 1:Enable)
 -$read_auth = 0;
 +$read_auth = 1;
 
  $read_auth_pages = array(
  	// Regex		   Groupname or Username
 +	'##'	=> 'foo',
  	'#PageForAllValidUsers#'	=> 'valid-user',
  	'#HogeHoge#'		=> 'hoge',
  	'#(NETABARE|NetaBare)#'	=> 'foo,bar,hoge',

- この状態で、未ログインのままFrontPageやヘルプページにアクセスするとログイン画面が表示されます(1)。
- ここで、pukiwiki.ini.phpに元々設定されているfooユーザでログインすると、またログイン画面が表示されます(2)。
- もう一度fooユーザでログインすると、またまたログイン画面が表示されます(3)。
- さらにfooユーザでログインすると、ようやく目的のページが表示されます。

AUTH_TYPE_FORM認証で、一度のログイン処理で目的のページを表示させるにはどうすればいいでしょうか。

ちなみに、ヘルプページにアクセスした際の(1)(2)(3)のURL引数は以下のように遷移していました。

- (1) ?plugin=loginform&page=Help&url_after_login=./?Help
- (2) ?plugin=loginform&page=FrontPage&url_after_login=./?plugin=loginform&page=Help&url_after_login=.%2F%3FHelp&page_after_login=Help
- (3) ?plugin=loginform&page=Help&url_after_login=./?Help&page_after_login=Help

----

[[official:質問箱/5341]],[[official:質問箱/5334]] より

--------
- ユーザー名/パスワードを確認してsessionを更新した後で、最新のsessionから情報取得せずにauth_checkを再び行っていました。 form_auth() に成功した後は再び認証確認せず redirect するようにしました commit:27b75bfe62 -- [[umorigu]] &new{2019-08-16 (金) 01:33:20};
- ユーザー名/パスワードを確認してsessionを更新した後で、最新のsessionから情報取得せずにauth_checkを再び行っていました。 form_auth() に成功した後は再び認証確認せず redirect するようにしました commit:85b519a91c -- [[umorigu]] &new{2019-08-16 (金) 01:33:20};

#comment

トップ   編集 差分 履歴 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Site admin: PukiWiki Development Team

PukiWiki 1.5.4+ © 2001-2022 PukiWiki Development Team. Powered by PHP 8.2.12. HTML convert time: 0.046 sec.

SourceForge