
Autenticazione e autorizzazione
Devise (sessioni web), has_secure_password, cookies, JWT (autenticazione API), Pundit, CanCanCan
1Cos'è Devise nell'ecosistema Rails?
Cos'è Devise nell'ecosistema Rails?
Risposta
Devise è una gem di autenticazione flessibile e completa per Rails, costruita su Warden. Fornisce moduli preconfigurati per gestire registrazione, login, recupero password, conferma via email, blocco dell'account e altro ancora. Devise è la soluzione di autenticazione più popolare nell'ecosistema Rails grazie alla sua facilità di integrazione e modularità.
2Quali sono i moduli Devise più comunemente utilizzati in un'applicazione Rails standard?
Quali sono i moduli Devise più comunemente utilizzati in un'applicazione Rails standard?
Risposta
Devise offre un'architettura modulare in cui ogni funzionalità è un modulo separabile. I moduli più comuni sono database_authenticatable (autenticazione con password), registerable (registrazione), recoverable (recupero password), rememberable (cookie 'ricordami'), validatable (validazioni di email e password), confirmable (conferma via email) e lockable (blocco dopo i fallimenti).
3Come proteggere un'azione del controller in modo che sia accessibile solo agli utenti loggati con Devise?
Come proteggere un'azione del controller in modo che sia accessibile solo agli utenti loggati con Devise?
Risposta
Devise fornisce l'helper authenticate_user! che può essere usato come before_action nei controller. Questo filtro verifica se un utente è loggato e reindirizza alla pagina di login in caso contrario. Può essere applicato a tutte le azioni o limitato con only o except. Il nome dell'helper dipende dal modello (authenticate_admin! per un modello Admin).
Quale helper di Devise consente di accedere all'utente attualmente loggato in una view o in un controller?
Come personalizzare le view di Devise (moduli di login, registrazione, ecc.) in un'applicazione Rails?
+19 domande da colloquio
Altri argomenti di colloquio Ruby on Rails
Fondamenti di Ruby
Programmazione orientata agli oggetti in Ruby
Fondamenti di Rails
Routing & Controllers
Fondamenti di ActiveRecord
Views e template ERB
Associazioni ActiveRecord
Query ActiveRecord avanzate
Form Rails
Asset Pipeline moderno e frontend
Modalità API di Rails
Test con RSpec
ActiveJob & Background Jobs
ActionCable & WebSockets
ActionMailer
ActiveStorage
Strategie di caching
Migrazioni avanzate
Rails Engines e app modulari
Ottimizzazione delle prestazioni
Design Pattern in Rails
Metaprogrammazione in Ruby
Sicurezza in Rails
GraphQL con Rails
Deployment e Produzione
Monitoring & Logging
Strategie di upgrade di Rails
Padroneggia Ruby on Rails per il tuo prossimo colloquio
Accedi a tutte le domande, flashcards, test tecnici, esercizi di code review e simulatori di colloquio.
Inizia gratis