CakePHP2.0 Betaを使用して、既存のデータベーススキーマのカスタムログインハンドラーを作成することができました。ログイン時に保存されたセッション変数を出力し、CakeのAuthコンポーネントが行ったことは、セッションの「メンバー」テーブル(ユーザー名とハッシュの取得元)のレコード全体を保存することを除いて、すべて順調です。これは、セッションにまったく関係のないデータフィールドを含む配列を格納しています。たとえば、メンバーが作成された日付、アドレスなどが保存されます。基本的に必要なのはIDとユーザー名、名前、メールアドレスだけなので、私にとってはまったく役に立たない情報です。
私にとって問題のある行は、/ lib / Cake / Controller / Component/AuthComponent.phpの512行にあります。
$this->Session->write(self::$sessionKey, $user);
したがって、私のカスタム認証コンポーネントは$ userを返し、このすべてをセッションにスローします。さて、このプロジェクトは2.0がリリースされたときに間違いなくアップグレードされるので、コアライブラリでの編集には行きたくありません。セッションに保存する情報を減らす方法はありますか?この全体をもっと軽量に保ちたいです。
考えられる解決策:カスタム認証コンポーネントを変更して、必要なフィールドのみを$user変数に返すようにします。どのデータを返す必要があるか、または返す必要がないかについて懸念はありますか?