『Rails入門4: deviseでユーザー認証してみよう (全6回)』
メモ
#01:ユーザー認証機能を理解しよう
- ユーザー認証:相手を確認してアクセスを許可する仕組み
- 認証:Authentication 本人かどうか確認する
- 許可:Authorization 認証の結果をあたえ、利用許可
- deviseの主な機能
deviseは、ユーザー認証の仕組みをRailsに提供するライブラリ- サインアップ:ユーザー情報と暗号化したパスワードをデータベースに保存
- メールによるユーザー確認
- ログイン:メールとパスワードによる認証
- クッキーによるセッション管理
- ユーザー追跡:ログイン回数、日時、IPアドレスなど
- パスワードリセット
- ユーザーのロック
- OmniAuth対応:TwitterやFacebookなどによるSNS認証
#02:ログインフォームの動作確認
- 既に用意されているログインフォームを確認しただけ
#03:deviseを導入する
- プロジェクトと静的ページの作成$ rails new bbs_users
$ cd bbs_users
$ rails g controller welcome index - deviseライブラリを追加してインストールする
- Gemfileに以下を追記gem 'devise'
- $ bundle install
- $ rails g devise:install
- 手動設定1.デフォルトURLを追加する
config/environments/development.rb - 手動設定2.root_urlを指定する
config/routes.rb - 手動設定3.フラッシュメッセージの表示場所を作る
app/views/layouts/application.html.erb - 手動設定4.ユーザー認証用のviewを生成する
$ rails g devise:views
#04:ユーザー認証用のUserモデルを作成
- Userモデルを作成する$ rails g devise User
$ rails db:migrate - Deviseに初期ユーザを一括登録
- db/seeds.rbに記述
- {モデル名}.create(email: 'admin@xxx.jp', password: 'password')
- $ rails db:seed
- ユーザー認証
#05:アクセスを制限する
- ログインナビゲーションを追加
app/views/welcome/index.html.erb - ログインページに強制移動
app/controllers/welcome_controller.rb
※ なんだかこのチャプターの演習課題が難しかった!?😣
#06:セッションとパスワードを理解する
- 暗号化されたパスワードの確認手順$ rails console
user = User.find(2)
user.email
user.encrypted_password
※ このチャプターの演習課題もなかなか難しかった!?😩
認定証
学習ステータス
ようやく進化したな!😄
※コメント投稿者のブログIDはブログ作成者のみに通知されます