Ruby on Rails

Authenticatie & autorisatie

Devise (websessies), has_secure_password, cookies, JWT (API-authenticatie), Pundit, CanCanCan

22 gespreksvragen·
Mid-Level
1

Wat is Devise in het Rails-ecosysteem?

Antwoord

Devise is een flexibele en volledige authenticatie-gem voor Rails, gebouwd op Warden. Het biedt voorgeconfigureerde modules voor het afhandelen van registratie, inloggen, wachtwoordherstel, e-mailbevestiging, accountvergrendeling en meer. Devise is de populairste authenticatieoplossing in het Rails-ecosysteem dankzij het gemak van integratie en de modulariteit.

2

Wat zijn de meest gebruikte Devise-modules in een standaard Rails-applicatie?

Antwoord

Devise biedt een modulaire architectuur waarbij elke functie een afzonderlijke module is. De meest voorkomende modules zijn database_authenticatable (wachtwoordauthenticatie), registerable (registratie), recoverable (wachtwoordherstel), rememberable ('onthoud mij'-cookie), validatable (e-mail- en wachtwoordvalidaties), confirmable (e-mailbevestiging) en lockable (vergrendeling na mislukkingen).

3

Hoe bescherm je een controlleractie zodat deze met Devise alleen toegankelijk is voor ingelogde gebruikers?

Antwoord

Devise biedt de helper authenticate_user! die als before_action in controllers kan worden gebruikt. Dit filter controleert of een gebruiker is ingelogd en stuurt anders door naar de loginpagina. Het kan op alle acties worden toegepast of worden beperkt met only of except. De helpernaam hangt af van het model (authenticate_admin! voor een Admin-model).

4

Welke Devise-helper geeft toegang tot de momenteel ingelogde gebruiker in een view of controller?

5

Hoe pas je Devise-views (loginformulieren, registratie, enz.) aan in een Rails-applicatie?

+19 gespreksvragen

Beheers Ruby on Rails voor je volgende gesprek

Krijg toegang tot alle vragen, flashcards, technische tests, code review-oefeningen en gespreksimulatoren.

Begin gratis