RoRセキュリティガイドには、セッション固定に対抗するためにreset_sessionメソッドを使用して、「新しいセッションIDを発行し、ログインが成功した後に古いIDを無効と宣言する」必要があると記載されています。
Authlogicを使用しているときにreset_sessionを呼び出すためのガイダンスを見つけることができませんでした。それは単にコントローラーメソッドにメソッドを含める場合ですか(以下のように)?
reset_sessionを呼び出す前に、セッションハッシュにuser_credentialsとuser_credentials_idの両方のキーと値が表示されるため、Authlogicで問題が発生することを懸念しています。
class UserSessionsController < ApplicationController
def create
@user_session = current_client.user_sessions.new(params[:user_session])
if @user_session.save
reset_session
flash[:success] = I18n.t(:msg_login_success)
redirect_back_or_default application_root_path
else
render :action => :new
end
end