
Uwierzytelnianie i autoryzacja
Devise (sesje webowe), has_secure_password, cookies, JWT (uwierzytelnianie API), Pundit, CanCanCan
1Czym jest Devise w ekosystemie Rails?
Czym jest Devise w ekosystemie Rails?
Odpowiedź
Devise to elastyczny i kompletny gem uwierzytelniania dla Rails, zbudowany na Wardenie. Zapewnia wstępnie skonfigurowane moduły do obsługi rejestracji, logowania, odzyskiwania hasła, potwierdzania adresu email, blokowania konta i nie tylko. Devise jest najpopularniejszym rozwiązaniem uwierzytelniania w ekosystemie Rails dzięki łatwości integracji i modularności.
2Jakie moduły Devise są najczęściej używane w standardowej aplikacji Rails?
Jakie moduły Devise są najczęściej używane w standardowej aplikacji Rails?
Odpowiedź
Devise oferuje architekturę modularną, w której każda funkcja jest osobnym modułem. Najczęściej używane moduły to database_authenticatable (uwierzytelnianie hasłem), registerable (rejestracja), recoverable (odzyskiwanie hasła), rememberable (ciasteczko 'zapamiętaj mnie'), validatable (walidacje email i hasła), confirmable (potwierdzenie email) oraz lockable (blokowanie po nieudanych próbach).
3Jak zabezpieczyć akcję kontrolera, aby była dostępna tylko dla zalogowanych użytkowników z Devise?
Jak zabezpieczyć akcję kontrolera, aby była dostępna tylko dla zalogowanych użytkowników z Devise?
Odpowiedź
Devise udostępnia helper authenticate_user!, którego można użyć jako before_action w kontrolerach. Ten filtr sprawdza, czy użytkownik jest zalogowany, i przekierowuje na stronę logowania, jeśli nie jest. Można go zastosować do wszystkich akcji lub ograniczyć za pomocą only lub except. Nazwa helpera zależy od modelu (authenticate_admin! dla modelu Admin).
Który helper Devise umożliwia dostęp do aktualnie zalogowanego użytkownika w widoku lub kontrolerze?
Jak dostosować widoki Devise (formularze logowania, rejestracji itp.) w aplikacji Rails?
+19 pytań z rozmów
Inne tematy rekrutacyjne Ruby on Rails
Podstawy Ruby
Programowanie obiektowe w Ruby
Podstawy Rails
Routing & Controllers
Podstawy ActiveRecord
Widoki i szablony ERB
Asocjacje ActiveRecord
Zaawansowane zapytania ActiveRecord
Formularze Rails
Nowoczesny Asset Pipeline i frontend
Tryb API Rails
Testowanie z RSpec
ActiveJob & Background Jobs
ActionCable & WebSockets
ActionMailer
ActiveStorage
Strategie cachowania
Zaawansowane migracje
Rails Engines i aplikacje modułowe
Optymalizacja wydajności
Wzorce projektowe w Rails
Metaprogramowanie w Ruby
Bezpieczeństwo Rails
GraphQL z Rails
Wdrażanie i Produkcja
Monitoring & Logging
Strategie aktualizacji Rails
Opanuj Ruby on Rails na następną rozmowę
Uzyskaj dostęp do wszystkich pytań, flashcards, testów technicznych, ćwiczeń code review i symulatorów rozmów.
Zacznij za darmo