操作
Backport(バックポート) #2043
完了pc_frontend から利用可能な認証プラグインがない状態でメール投稿がおこなえない
開始日:
2010-12-10
期日:
2011-06-24
進捗率:
100%
予定工数:
説明
Overview (現象)¶
pc_frontend から利用可能な認証プラグインがない状態でメール投稿がおこなえない。
再現手順¶
1. 管理画面において、すべての認証プラグインの「PC版有効設定」を「無効にする」に変更する
2. メール投稿をおこなう
3. サーバ側に以下のようなエラーメッセージが記録されることを確認する
PHP Fatal error: Cannot instantiate abstract class opAuthAdapter in /path/to/OpenPNE/lib/user/sfOpenPNESecurityUser.class.php on line 109
Causes (原因)¶
携帯メール経由で OpenPNE へアクセスした際に、 opSecurityUser がそのアクセスを携帯からのものとみなしておらず、 PC の設定を確認しに行くために、 opSecurityUser を初期化した際に利用可能な認証プラグインがないと判断され、エラーとなってしまう。
mobile_mail_frontend のアクションを実行するのだから、携帯として扱うのが自然。また、そもそも mobile_mail_frontend で opSecurityUser を使う意味はないはずなので、 sfBasicSecurityUser に変更するなどの対応も検討する。
Way to fix (修正内容)¶
myUser の親クラスを opSecurityUser から sfBasicSecurityUser に変更する。
操作