- 更新日: 2016年11月25日
- Devise
RailsのDevise認証機能での実装チェックリストまとめ
Rails 5 + Devise 4.2 の環境でユーザー認証機能を実装する機会があったのですけど、細かい部分で色々と実装すべき項目や必要な知識が沢山あったので、復習を兼ねてブログ過去記事を参考にしつつチェックリスト的にまとめてみました。
— 環境 —
rails 5.0.0.1
devise 4.2.0
なお、Rails4 から Rails5 への変更においては、Devise を使った認証機能の実装では特にはまる箇所はありませんでした。Devise 3 から Devise 4 への変更において、Strong Parameters 設定の API に変更があります。
https://github.com/plataformatec/devise
詳しくは上記 Devise GitHub ページ公式の README を参考。
では、以降 Devise を使った認証機能で実装すべき項目と詳細記事リンクのまとめです。
基本的な認証機能の実装
Devise でEメール入力などサインアップ・フォームを使った認証機能の実装
RailsでDeviseによるユーザー登録・ログイン認証・認可の機能追加
Devise + OmniAuth による OAuth 認証機能の実装
RailsでDeviseとOmniAuthによるTwitter/FacebookのOAuth認証、および通常フォーム認証を併用して実装
RailsでDeviseとOmniAuth を使い、通常フォームのユーザー登録・サインインとOAuth認証を併用する仕様を考えた
Devise のカスタマイズ
Devise 用の日本語翻訳ファイル
Rails で Devise 用の日本語辞書ファイル(devise.ja.yml)
Devise のコントローラーをカスタマイズ
Rails で Devise のコントローラーをカスタマイズ
Devise のビューをカスタマイズ
Rails で Devise のビューを作成してカスタマイズ
Devise での Strong Parameters について
Rails の認証プラグイン Devise での Strong Parameters について
Devise 4 では、Strong Parameters の Parameter Sanitizer API が Devise 3 から変更されています。詳細は上記リンクの記事に書いています。
ユーザーページのカスタマイズ
ユーザー登録・編集フォームに独自フィールドを追加
Rails Deviseでサインアップ用のユーザー登録フォームに、独自の入力フィールドを追加する
RailsのDevise 認証でのユーザー情報更新ページ(users/edit)で、独自に追加した name フィールドを更新する
ユーザーがパスワードなしでアカウント情報を更新できるようにする
Devise でユーザーがパスワードなしでアカウント情報を変更するのを許可
Rails Devise でユーザーがプロフィール情報を更新後に元のページにリダイレクトさせる
ユーザー・モデルのアクション・ビューを追加
Devise で作成した User モデル用のコントローラーの index, show アクションを追加
フレンドリーフォワード、メール送信、管理者ユーザー認証など
ログイン直後のフレンドリーフォワード機能
Rails の Devise でログイン後にログインする直前のページにリダイレクトさせる
Rails + Devise 環境でのフレンドリーフォワーディング機能を修正
Devise によるメール送信
Deviseでユーザー登録完了時にウェルカムメールを送信する
Rails Devise でパスワードリセットなどのメールテンプレート(Mailer ビュー)をカスタマイズ
Deviseで送信されるメールのfrom(送信者メールアドレス)を変更
管理者ユーザーの認証、管理画面の作成
ActiveAdminでRails管理画面を作成
Devise 周りの上記のような機能は、比較的どんなアプリケーションでも実装する必要がある共通の機能かと思いますので、以上チェックリストとしてまとめました。
- Devise の関連記事
- Deviseで送信されるメールのfrom(送信者メールアドレス)を変更
- Facebook の OAuth 認証で OAuthException(191)エラー
- Rails Devise でパスワードリセットなどのメールテンプレート(Mailer ビュー)をカスタマイズ
- Rails + Devise 環境でのフレンドリーフォワーディング機能を修正
- Deviseでユーザー登録完了時にウェルカムメールを送信する
- Rails Devise でユーザーがプロフィール情報を更新後に元のページにリダイレクトさせる
- Devise でユーザーがパスワードなしでアカウント情報を変更するのを許可
- Rails Deviseの日本語化辞書ファイル(devise.ja.yml)
- Rails + Devise で admin ユーザー(管理者)を削除できないようにする
- Devise3.2.2 のデフォルト設定では、Rememberable の remember_token のカラムがないのでソースを解読してみた
- 初回公開日: 2016年11月22日
Leave Your Message!