問題一覧に戻る
上級認証・認可
問題53: パスワード管理 - has_secure_password
Railsの組み込み機能であるhas_secure_passwordを使って安全なパスワード処理を実装する方法を学習します。この機能はbcryptベースのパスワードハッシュ化、認証メソッド、パスワード確認検証を提供し、外部依存なしでセキュリティのベストプラクティスに従います。
# Gemfile
gem ''
# User model
class User < ApplicationRecord
# 安全なパスワードを有効化
end
# ハッシュ化されたパスワードを保存
add_column :users, :, :string
# パスワードを検証
if user&.(params[:password])
session[:user_id] = user.id
end