
Authentification & Autorisation
Devise (sessions web), has_secure_password, cookies, JWT (API authentication), Pundit, CanCanCan
1Qu'est-ce que Devise dans l'ecosysteme Rails ?
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.
2Quels sont les modules Devise les plus couramment utilises dans une application Rails standard ?
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).
3Comment proteger une action de controller pour qu'elle ne soit accessible qu'aux utilisateurs connectes avec Devise ?
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).
Quel helper Devise permet d'acceder a l'utilisateur actuellement connecte dans une vue ou un controller ?
Comment personnaliser les vues Devise (formulaires de connexion, inscription, etc.) dans une application Rails ?
+19 questions d'entretien
Autres sujets d'entretien Ruby on Rails
Les bases de Ruby
Programmation orientée objet en Ruby
Fondamentaux Rails
Routing & Controllers
Les bases d'ActiveRecord
Views & Templates ERB
Associations ActiveRecord
Requêtes ActiveRecord avancées
Formulaires Rails
Asset Pipeline & Frontend moderne
Rails en mode API
Tests avec RSpec
ActiveJob & Background Jobs
ActionCable & WebSockets
ActionMailer
ActiveStorage
Stratégies de caching
Migrations avancées
Rails Engines & Apps modulaires
Optimisation des performances
Design Patterns Rails
Métaprogrammation Ruby
Sécurité Rails
GraphQL avec Rails
Déploiement & Production
Monitoring & Logging
Stratégies d'upgrade Rails
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