http://redmine.openpne.jp/
http://redmine.openpne.jp/favicon.ico
2013-10-04T06:03:01Z
OpenPNE Issue Tracking System
OpenPNE 3 - Bug(バグ) #3416: 自動ログインCookieを有効にしてログインしているブラウザで新規登録を実行すると member/registerInput で404エラーとなる
http://redmine.openpne.jp/issues/3416?journal_id=16793
2013-10-04T06:03:01Z
Youichi Kimura
kim.upsilon@bucyou.net
<ul><li><strong>説明</strong> を更新 (<a title="差分を表示" href="/journals/16793/diff?detail_id=21993">diff</a>)</li></ul>
OpenPNE 3 - Bug(バグ) #3416: 自動ログインCookieを有効にしてログインしているブラウザで新規登録を実行すると member/registerInput で404エラーとなる
http://redmine.openpne.jp/issues/3416?journal_id=16794
2013-10-04T06:10:05Z
Youichi Kimura
kim.upsilon@bucyou.net
<ul><li><strong>ステータス</strong> を <i>Accepted(着手)</i> から <i>Pending Review(レビュー待ち)</i> に変更</li><li><strong>進捗率</strong> を <i>0</i> から <i>50</i> に変更</li></ul><p>更新履歴 <a class="changeset" title="revoke automatic login cookie before registration (fixes #3416)" href="http://redmine.openpne.jp/projects/op3/repository/revisions/2cac338f0edd68b57d534413e54d4b4380237a83">2cac338f0edd68b57d534413e54d4b4380237a83</a> で適用されました。</p>
OpenPNE 3 - Bug(バグ) #3416: 自動ログインCookieを有効にしてログインしているブラウザで新規登録を実行すると member/registerInput で404エラーとなる
http://redmine.openpne.jp/issues/3416?journal_id=17086
2013-11-25T01:57:18Z
Mutsumi Imamura
imamura@openpne.jp
<ul><li><strong>3.6 で発生するか</strong> を <i>Unknown (未調査)</i> から <i>Yes (はい)</i> に変更</li><li><strong>3.8 で発生するか</strong> を <i>Unknown (未調査)</i> から <i>Yes (はい)</i> に変更</li></ul>
OpenPNE 3 - Bug(バグ) #3416: 自動ログインCookieを有効にしてログインしているブラウザで新規登録を実行すると member/registerInput で404エラーとなる
http://redmine.openpne.jp/issues/3416?journal_id=17104
2013-12-05T05:34:46Z
Yuya Watanabe
watanabe@openpne.jp
<ul><li><strong>ファイル</strong> <i>auto_login.png</i> を追加</li><li><strong>ステータス</strong> を <i>Pending Review(レビュー待ち)</i> から <i>Rejected(差し戻し)</i> に変更</li></ul><a name="フィードバック内容"></a>
<h3 >フィードバック内容<a href="#フィードバック内容" class="wiki-anchor">¶</a></h3>
<p>$this->serializedMember の上書きに関して, 84 行目のように if の条件式で false になればよいですが,既存の実装ではキャッシュが空であることを空文字列で表しているようであり文字列のみを扱えば良い状態ですがここで扱われるべきデータに null が追加されるのが気になるため空文字列で初期化してください.</p>
<pre>
lib/user/opSecurityUser.class.php
84: if ($this->serializedMember)
</pre>
<pre>
lib/user/opSecurityUser.class.php
23: $serializedMember = '';
42: $this->serializedMember = '';
99: $this->serializedMember = serialize($member);
</pre>
<a name="レビューメモ"></a>
<h3 >レビューメモ<a href="#レビューメモ" class="wiki-anchor">¶</a></h3>
<p>opSecurityUser#setMemberId() が呼ばれる段階</p>
<ul>
<li>sfContext の初期化時</li>
<li>executeRegister() および executeRegisterInput() 実行時</li>
</ul>
<p>opSecurityUser#getMember() で opSecurityUser にメンバ情報がメモリにキャッシュされる. sfContext 初期化時には opSecurityUser がインスタンス化される段階で setMemberId() された上で getMember() を呼んでいるためこの段階でキャッシュされる. setMemberId() でこのキャッシュを削除しない状態だと getMember() は sfContext 初期化時にキャッシュされたメンバが取得されるため(また,このメンバは is_remember_me の Cookie があることから is_active=1 であるはずであり opAuthAdapterMailAddress の) isRegisterBegin() が false となり 404 に遷移する.</p>
<p>期待される内容としては</p>
<ul>
<li>opSecurityUser の getMember() が現在のメンバIDに対応するメンバ情報を取得する</li>
<li>セッションの member_id が現在のメンバIDを表している</li>
</ul>
<p>という前提だと問題としては opSecurityUser から取得されるメンバ ID がキャッシュの ID とセッションにある ID で一致しないということであることになる.</p>
対応方法としては下記のものが考えられる.
<ul>
<li>getMember() を行う際にメンバ情報をキャッシュしない</li>
<li>sfContext の初期化時に正しく setMemberId() を行うようにする</li>
<li>executeRegister() および executeRegisterInput() 実行時に呼ばれる setMemberId() でキャッシュを削除する</li>
</ul>
<p>この内 getMember() でキャッシュしないようにすることは getMember() の呼ばれる頻度から正しい対応とは言えない.また setMemberId() でキャッシュである serialiedMember を上書きすることが 3 番目の対応となり, executeRegister() で logout() に変更することが executeRegisterInput() 時における 2 番目の対応ということになるはず.setMemberId() を行うかは URL やパラメータなどによって決定されるため sfContext の初期化時点ではセットされる member_id が正しく決定できないと思うため修正内容としては妥当ではあるがリクエスト時に一瞬でも以前のメンバでログイン状態となるところは気になる.(ユーザが明示的な操作を行わない限りはメンバのステートは次のリクエストの sfContext 初期化時までを含むという考え方を持ってないと気になる)</p>
<a name="参考"></a>
<h3 >参考<a href="#参考" class="wiki-anchor">¶</a></h3>
<p>sfContext 初期化時における setMemberId までの流れ</p>
<p><img src="https://redmine.openpne.jp/attachments/download/503/autologin.png" style="width:900px;" alt="" /></p>
<p>getRememberedMemberId() の中で Cookie を見て対応する member_id を DB から取得してくる. 得られた member_id を帰って来た initializeUserStatus() でセッションに保存する.</p>
OpenPNE 3 - Bug(バグ) #3416: 自動ログインCookieを有効にしてログインしているブラウザで新規登録を実行すると member/registerInput で404エラーとなる
http://redmine.openpne.jp/issues/3416?journal_id=17105
2013-12-05T05:45:57Z
Yuya Watanabe
watanabe@openpne.jp
<ul><li><strong>ファイル</strong> <a href="/attachments/download/503/autologin.png">autologin.png</a> <a class="icon-only icon-magnifier" title="表示" href="/attachments/503/autologin.png">表示</a> を追加</li></ul>
OpenPNE 3 - Bug(バグ) #3416: 自動ログインCookieを有効にしてログインしているブラウザで新規登録を実行すると member/registerInput で404エラーとなる
http://redmine.openpne.jp/issues/3416?journal_id=17106
2013-12-05T05:46:03Z
Yuya Watanabe
watanabe@openpne.jp
<ul><li><strong>ファイル</strong> を削除 (<del><i>auto_login.png</i></del>)</li></ul>
OpenPNE 3 - Bug(バグ) #3416: 自動ログインCookieを有効にしてログインしているブラウザで新規登録を実行すると member/registerInput で404エラーとなる
http://redmine.openpne.jp/issues/3416?journal_id=17124
2013-12-10T06:08:00Z
Youichi Kimura
kim.upsilon@bucyou.net
<ul><li><strong>ステータス</strong> を <i>Rejected(差し戻し)</i> から <i>Pending Review(レビュー待ち)</i> に変更</li></ul><p>更新履歴 <a class="changeset" title="use empty string to clear member cache (fixes #3416)" href="http://redmine.openpne.jp/projects/op3/repository/revisions/eb5fe39f5619e7bcac973ca61bd32a94bfa28090">eb5fe39f5619e7bcac973ca61bd32a94bfa28090</a> で適用されました。</p>
OpenPNE 3 - Bug(バグ) #3416: 自動ログインCookieを有効にしてログインしているブラウザで新規登録を実行すると member/registerInput で404エラーとなる
http://redmine.openpne.jp/issues/3416?journal_id=17128
2013-12-10T06:18:27Z
Yuya Watanabe
watanabe@openpne.jp
<ul><li><strong>ステータス</strong> を <i>Pending Review(レビュー待ち)</i> から <i>Pending Testing(テスト待ち)</i> に変更</li><li><strong>進捗率</strong> を <i>50</i> から <i>70</i> に変更</li></ul>
OpenPNE 3 - Bug(バグ) #3416: 自動ログインCookieを有効にしてログインしているブラウザで新規登録を実行すると member/registerInput で404エラーとなる
http://redmine.openpne.jp/issues/3416?journal_id=17136
2013-12-11T02:16:25Z
Mutsumi Imamura
imamura@openpne.jp
<ul><li><strong>ステータス</strong> を <i>Pending Testing(テスト待ち)</i> から <i>Rejected(差し戻し)</i> に変更</li><li><strong>進捗率</strong> を <i>70</i> から <i>50</i> に変更</li></ul><p>招待からの登録の場合と異なり、新規登録(ログイン画面の新規登録をクリック)で登録フローを行うと招待メールに記載されているURLをクリックすると /member/registerInput にリダイレクトされます。<br />(招待された場合は「プロフィールを入力する」の/member/register/ の画面に遷移します。)<br />この場合、今回追加したログアウト処理をスキップしてしまうため、登録完了させると自動ログインでログイン済みのユーザーになってしまいます。<br />招待の場合とフローを合わせる、選択肢もありますが、ユーザーが履歴などから直接 /member/registerInput にアクセスする可能性もありますので、<br />/member/registerInput にアクセス時もログアウト処理を追加するようにしてください。</p>
OpenPNE 3 - Bug(バグ) #3416: 自動ログインCookieを有効にしてログインしているブラウザで新規登録を実行すると member/registerInput で404エラーとなる
http://redmine.openpne.jp/issues/3416?journal_id=17162
2013-12-12T05:57:15Z
Youichi Kimura
kim.upsilon@bucyou.net
<ul><li><strong>ステータス</strong> を <i>Rejected(差し戻し)</i> から <i>Pending Review(レビュー待ち)</i> に変更</li></ul><p>更新履歴 <a class="changeset" title="revoke automatic login cookie on registration pages using register_token (fixes #3416)" href="http://redmine.openpne.jp/projects/op3/repository/revisions/8fbdf778cd6133103bbf08a261928893a8c2eb0d">8fbdf778cd6133103bbf08a261928893a8c2eb0d</a> で適用されました。</p>
OpenPNE 3 - Bug(バグ) #3416: 自動ログインCookieを有効にしてログインしているブラウザで新規登録を実行すると member/registerInput で404エラーとなる
http://redmine.openpne.jp/issues/3416?journal_id=17166
2013-12-12T06:04:02Z
Youichi Kimura
kim.upsilon@bucyou.net
<ul></ul><p>/member/register 以外の /member/registerInput, /opAuthMailAddress/registerEnd 等に直接遷移した場合であってもセッションを失効させるために、各アクションで使用する opSecurityUser::setRegisterToken() 内で logout() を呼び出すよう修正しました。</p>
OpenPNE 3 - Bug(バグ) #3416: 自動ログインCookieを有効にしてログインしているブラウザで新規登録を実行すると member/registerInput で404エラーとなる
http://redmine.openpne.jp/issues/3416?journal_id=17168
2013-12-12T07:04:02Z
Yuya Watanabe
watanabe@openpne.jp
<ul><li><strong>ファイル</strong> <a href="/attachments/download/507/flow.png">flow.png</a> <a class="icon-only icon-magnifier" title="表示" href="/attachments/507/flow.png">表示</a> を追加</li></ul><p>図に含まれてないものとして, member/login 時に registerBegin であれば member/registerInput に遷移する可能性がありますが基本的には registerInput でやれば問題無さそうですね.</p>
<p><img src="https://redmine.openpne.jp/attachments/download/507/flow.png" style="width:900px;" alt="" /></p>
OpenPNE 3 - Bug(バグ) #3416: 自動ログインCookieを有効にしてログインしているブラウザで新規登録を実行すると member/registerInput で404エラーとなる
http://redmine.openpne.jp/issues/3416?journal_id=17174
2013-12-12T08:32:36Z
Yuya Watanabe
watanabe@openpne.jp
<ul><li><strong>ステータス</strong> を <i>Pending Review(レビュー待ち)</i> から <i>Pending Testing(テスト待ち)</i> に変更</li><li><strong>進捗率</strong> を <i>50</i> から <i>70</i> に変更</li></ul>
OpenPNE 3 - Bug(バグ) #3416: 自動ログインCookieを有効にしてログインしているブラウザで新規登録を実行すると member/registerInput で404エラーとなる
http://redmine.openpne.jp/issues/3416?journal_id=22155
2017-04-03T06:38:41Z
isao sano
sano@tejimaya.com
<ul><li><strong>ステータス</strong> を <i>Pending Testing(テスト待ち)</i> から <i>Won't fix(対応せず)</i> に変更</li><li><strong>進捗率</strong> を <i>70</i> から <i>0</i> に変更</li></ul><p>OpenPNE 3.8.10 にて対応済みであったため、対応せずとします。</p>