Ruby on Rails

Authentification & Autorisation

Devise (sessions web), has_secure_password, cookies, JWT (API authentication), Pundit, CanCanCan

22 questions d'entretien·
Confirmé
1

Qu'est-ce que Devise dans l'ecosysteme Rails ?

Réponse

Devise est une gem d'authentification flexible et complete pour Rails, basee sur Warden. Elle fournit des modules preconfigures pour gerer l'inscription, la connexion, la recuperation de mot de passe, la confirmation par email, le verrouillage de compte et plus encore. Devise est la solution d'authentification la plus populaire dans l'ecosysteme Rails grace a sa facilite d'integration et sa modularite.

2

Quels sont les modules Devise les plus couramment utilises dans une application Rails standard ?

Réponse

Devise propose une architecture modulaire ou chaque fonctionnalite est un module separable. Les modules les plus courants sont database_authenticatable (authentification par mot de passe), registerable (inscription), recoverable (recuperation de mot de passe), rememberable (cookie 'se souvenir de moi'), validatable (validations d'email et mot de passe), confirmable (confirmation par email) et lockable (verrouillage apres echecs).

3

Comment proteger une action de controller pour qu'elle ne soit accessible qu'aux utilisateurs connectes avec Devise ?

Réponse

Devise fournit le helper authenticate_user! qui peut etre utilise comme before_action dans les controllers. Ce filtre verifie si un utilisateur est connecte et redirige vers la page de connexion si ce n'est pas le cas. Il est possible de l'appliquer a toutes les actions ou de le limiter avec only ou except. Le nom du helper depend du modele (authenticate_admin! pour un modele Admin).

4

Quel helper Devise permet d'acceder a l'utilisateur actuellement connecte dans une vue ou un controller ?

5

Comment personnaliser les vues Devise (formulaires de connexion, inscription, etc.) dans une application Rails ?

+19 questions d'entretien

Maîtrise Ruby on Rails pour ton prochain entretien

Accède à toutes les questions, flashcards, tests techniques, exercices de code review et simulateurs d'entretien.

Commencer gratuitement