Ruby on Rails

認証と認可

Devise(Webセッション)、has_secure_password、cookies、JWT(API認証)、Pundit、CanCanCan

22 面接問題·
Mid-Level
1

Rails エコシステムにおける Devise とは何ですか?

回答

Devise は Warden をベースにした、Rails 向けの柔軟で完全な認証 gem です。登録、ログイン、パスワード回復、メール確認、アカウントロックなどを処理する事前設定済みモジュールを提供します。Devise は統合の容易さとモジュール性により、Rails エコシステムで最も人気のある認証ソリューションです。

2

標準的な Rails アプリケーションで最もよく使われる Devise モジュールは何ですか?

回答

Devise は各機能が分離可能なモジュールとなるモジュラーアーキテクチャを提供します。最も一般的なモジュールは、database_authenticatable(パスワード認証)、registerable(登録)、recoverable(パスワード回復)、rememberable('remember me' クッキー)、validatable(メールとパスワードの検証)、confirmable(メール確認)、lockable(失敗後のロック)です。

3

Devise を使って、ログイン済みユーザーのみがアクセスできるようにコントローラーのアクションを保護するにはどうしますか?

回答

Devise はコントローラーで before_action として使える authenticate_user! ヘルパーを提供します。このフィルターはユーザーがログインしているか確認し、していなければログインページにリダイレクトします。すべてのアクションに適用することも、only や except で限定することもできます。ヘルパー名はモデルに依存します(Admin モデルの場合は authenticate_admin!)。

4

ビューやコントローラーで現在ログインしているユーザーにアクセスできる Devise ヘルパーはどれですか?

5

Rails アプリケーションで Devise のビュー(ログインフォーム、登録など)をカスタマイズするにはどうしますか?

+19 面接問題

次の面接に向けてRuby on Railsをマスター

すべての問題、flashcards、技術テスト、コードレビュー演習、面接シミュレーターにアクセス。

無料で始める