#2866 closed defect (fixed)
ログイン停止やブラックリスト登録などでログインできないメンバーの最終ログイン時間が更新される
Reported by: | imamura623 | Owned by: | masabon |
---|---|---|---|
Priority: | minor | Milestone: | OpenPNE2.12.3 |
Component: | 指定しない | Version: | 2.12.x & 2.14.x |
Keywords: | OpenPNE2.13.2 | Cc: |
Description (last modified by )
■現象
メンバー画面からの「ログイン停止」や携帯個体識別番号によるブラックリスト登録などでログインできないメンバーがログイン処理を行った場合、ログインできていなくても最終ログイン時間が更新される
■原因
ログイン停止状態にあるメンバーもしくは個体識別番号ブラックリストに登録されているメンバーがログインを試みた場合、ログイン処理をおこなうアクション(pc_do_o_login, ktai_do_o_login, ktai_do_o_easy_login)を通過してからおこなわれる認証処理(auth.incにておこなわれる処理)によって、強制的にログアウトがおこなわれる。
ところが最終ログイン時間の更新はログイン処理をおこなうアクションにおいておこなわれるため、ログインさえ試みればログイン停止状態にあるメンバー、個体識別番号ブラックリストに登録されているメンバーであっても最終ログイン時間が更新されてしまっていた。
■修正内容
ログイン停止状態にあるメンバー、個体識別番号ブラックリストに登録されているメンバーであるかどうかをログイン処理をおこなうアクションでもチェックし、最終ログイン時間の更新をおこなう前にログイン失敗とするように修正した。
また、ログイン停止状態にあるメンバー、個体識別番号ブラックリストに登録されているメンバーがログインまたは認証をおこなった場合の処理を以下のように統一した。
- ログイン済みの状態で、ログイン停止またはブラックリストに登録された場合
- エラーメッセージを表示せずにログアウト
- ログイン操作をおこなった場合(PC版)
- pc_page_o_tologin に遷移し、「ログインできませんでした。」というエラーメッセージを表示させる
- 最終ログイン時間は更新しない
- ログイン操作をおこなった場合(携帯版)
- 「ログインできませんでした。」というエラーメッセージが表示された画面に遷移する
- 最終ログイン時間は更新しない
■関連情報
元のDescription
http://sns.openpne.jp/?m=pc&a=page_fh_diary&target_c_diary_id=18118 より転記
バグ、というか要望に近いですが、フィードバックしておきます。 大学で動かしているということもあり、学生のログイン停止という案件が比較的発生します。その際に、ログイン停止中の学生の最終ログイン日時が、ログインできないにもかかわらず、どんどん更新されており、調べました。 どうも、ログイン情報が正しければ、ログイン停止中でも、管理画面の最終ログインの日時は更新される様です。 実際にはログインできていないにもかかわらず、ログイン記録が更新されるのは仕様としてどうかとおもいますので、ご検討いただければ幸いです。 おそらく、IDとパスワードでログイン処理が行われた後に、ログイン停止フラグを見て弾いているためだと思うのですが、、、
Change History (22)
comment:1 Changed 13 years ago by
Owner: | changed from nobody to nakasone |
---|---|
Status: | new → assigned |
comment:2 Changed 13 years ago by
Keywords: | 再現待ち removed |
---|---|
Owner: | changed from nakasone to nobody |
Status: | assigned → new |
以下のような確認を行ったところ再現できました。
■確認ブラウザ
- !FireFox2
■確認バージョン
- 2.10.x(再現せず)
- 2.12.x
- trunk
■手順
- 管理画面→メンバー管理→メンバーリスト
- 最終ログイン時間を確認し、メンバーをログイン停止する
- ログイン停止されたメンバーで正しいログインパスワードでログインを試みる
- ログインできなかったのを確認
- 管理画面→メンバー管理→メンバーリスト
- 最終ログイン時間を確認
- 最終ログイン時間が更新されている
comment:3 Changed 12 years ago by
Keywords: | OpenPNE2.13.2 added |
---|---|
Milestone: | → OpenPNE2.12.3 |
comment:4 Changed 12 years ago by
Owner: | changed from nobody to masabon |
---|---|
Status: | new → assigned |
comment:5 Changed 12 years ago by
Description: | modified (diff) |
---|---|
Keywords: | 確認中 added |
comment:6 Changed 12 years ago by
Version: | 2.10.x & 2.12.x & 2.13.x → 2.12.x & 2.13.x |
---|
nakasone さん
バグが発生しない場合はversionから指定を外しておいてください。
comment:7 Changed 12 years ago by
Keywords: | テスト待ち added; 確認中 removed |
---|
comment:8 Changed 12 years ago by
Keywords: | 差し戻し added; テスト待ち removed |
---|
以下の現象の確認をお願いします。
version
- 2.12.2 (r8046時点)
- 2.13.1 (r8046時点)
※2.10.8では再現せず
内容
ログイン停止されているメンバーで、携帯版ログイン画面(ktai_page_o_login)から「かんたんログイン」を使用してログインしようとすると、ログインはできないが最終ログイン時間は更新される。
手順
- 管理画面のメンバーリスト(admin_page_list_c_member)から、メンバーAの「ログイン停止」ボタンを押下してログイン停止する
- メンバーAで携帯版からログインページ(ktai_page_o_login)にアクセス、「かんたんログイン」ボタンを押下する
- ログインできず、ログインページ(ktai_page_o_login)にリダイレクトされる
- 管理画面のメンバーリスト(admin_page_list_c_member)でメンバーAの最終ログイン時刻を確認すると、2~3を行った時刻に更新されている
comment:9 Changed 12 years ago by
動作テスト中に「ログイン停止されているメンバーがメール投稿できる」というバグを発見しましたが、このチケットの内容に含まれていないため別チケットを作成しました。
#2946 ログイン停止ユーザがメール投稿できる
comment:10 Changed 12 years ago by
Keywords: | 確認中 added; 差し戻し removed |
---|
comment:11 Changed 12 years ago by
Keywords: | 差し戻し added; 確認中 removed |
---|
今回の修正の3ファイル共通ですが、db_member_is_login_rejected() に引っかかった場合には、その時点でログイン失敗の処理に回した方がよいと思います。
comment:12 Changed 12 years ago by
Keywords: | 確認中 added; 差し戻し removed |
---|
comment:13 Changed 12 years ago by
Keywords: | テスト待ち added; 確認中 removed |
---|
comment:14 follow-up: 15 Changed 12 years ago by
Keywords: | 差し戻し added; テスト待ち removed |
---|
「ブラックリスト管理」で個体識別番号を使用したログイン停止を行った場合、以下のような現象が発生しています。確認をお願いします。
1. ログイン処理を行うと最終ログイン時間が更新される
- PCからログイン
- 携帯からログインフォームを使用したログイン
- 携帯から簡単ログインを使用したログイン
2. ログインできなかった場合のエラーメッセージの表示方法が管理画面メンバーリスト(admin_page_list_c_member)からの「ログイン停止」と異なる
PC版
- メンバーリストからのログイン停止
- pc_page_o_tologinにて「ログインに失敗しました。再度、ログイン操作を行ってください。」
- ブラックリストでのログイン停止
- pc_page_o_tologinにて「ログインできませんでした。」
携帯版
- メンバーリストからのログイン停止
- ktai_page_o_loginにて「ログインに失敗しました」
- ブラックリストでのログイン停止
- エラー画面にて「ログインできませんでした。」
comment:15 Changed 12 years ago by
comment:14 補足
2. ログインできなかった場合のエラーメッセージの表示方法が管理画面メンバーリスト(admin_page_list_c_member)からの「ログイン停止」と異なる
今までメンバーリストからの「ログイン停止」を受けたメンバーがログイン処理を行った場合、エラーメッセージが表示されずにo_loginにリダイレクトされていました。それが comment:12 の仕様変更により通常のログイン失敗と同じ流れに変更されたため、エラーメッセージが表示されるようになりました。ブラックリストを使用したログイン停止の方は以前からエラーメッセージが表示される仕様でした。
ブラックリストからのログイン停止もメンバーリストからのログイン停止も、メンバー側から見たら「ログインが停止されている」だけで違いもありません。どちらともエラーメッセージが表示される仕様になったのであれば、ブラックリストとログイン停止で仕様を統一(表示するエラーメッセージを統一)するべきではないでしょうか。
comment:16 Changed 12 years ago by
Description: | modified (diff) |
---|---|
Summary: | ログイン停止しているメンバーの最終ログイン時間が更新される → ログイン停止やブラックリスト登録などでログインできないメンバーの最終ログイン時間が更新される |
修正範囲を広げるためにSummaryとDescription(「■現象」部分)を変更しました。
comment:17 Changed 12 years ago by
Description: | modified (diff) |
---|---|
Keywords: | 確認中 added; 差し戻し removed |
以下のリビジョンで修正しました。
ログイン停止状態にあるかブラックリストに登録されているかにかかわらず、以下の挙動になるように実装を変更しました。
- ログイン済みの状態で、ログイン停止またはブラックリストに登録された場合
- エラーメッセージを表示せずにログアウト
- ログイン操作をおこなった場合(PC版)
- pc_page_o_tologin に遷移し、「ログインできませんでした。」というエラーメッセージを表示させる
- 最終ログイン時間は更新しない
- ログイン操作をおこなった場合(携帯版)
- 「ログインできませんでした。」というエラーメッセージが表示された画面に遷移する
- 最終ログイン時間は更新しない
comment:18 Changed 12 years ago by
Keywords: | 差し戻し added; 確認中 removed |
---|
webapp_biz/modules/ktai_biz/auth.inc が修正されていません。
comment:19 Changed 12 years ago by
Keywords: | 確認中 added; 差し戻し removed |
---|
comment:20 Changed 12 years ago by
Keywords: | テスト待ち added; 確認中 removed |
---|
comment:21 Changed 12 years ago by
Keywords: | テスト待ち removed |
---|---|
Resolution: | → fixed |
Status: | assigned → closed |
確認しました。問題ありません。
comment:22 Changed 12 years ago by
Description: | modified (diff) |
---|
やります。