# Uwierzytelnianie i autoryzacja (Ruby on Rails) > Devise (sesje webowe), has_secure_password, cookies, JWT (uwierzytelnianie API), Pundit, CanCanCan - 22 pytań z rozmów - Mid-Level - [Pytania z rozmów: Ruby on Rails](https://sharpskill.dev/pl/technologies/ruby-on-rails/pytania-rekrutacyjne.md) ## 1. 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. ## 2. 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). ## 3. 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). ## Jeszcze 19 dostępnych pytań - 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? Zarejestruj się za darmo: https://sharpskill.dev/pl/login ## Inne tematy rekrutacyjne Ruby on Rails - [Podstawy Ruby](https://sharpskill.dev/pl/technologies/ruby-on-rails/pytania-rekrutacyjne/ruby-basics.md): 25 pytań, Junior - [Programowanie obiektowe w Ruby](https://sharpskill.dev/pl/technologies/ruby-on-rails/pytania-rekrutacyjne/ruby-oop.md): 20 pytań, Junior - [Podstawy Rails](https://sharpskill.dev/pl/technologies/ruby-on-rails/pytania-rekrutacyjne/rails-fundamentals.md): 18 pytań, Junior - [Routing & Controllers](https://sharpskill.dev/pl/technologies/ruby-on-rails/pytania-rekrutacyjne/routing-controllers.md): 22 pytań, Junior - [Podstawy ActiveRecord](https://sharpskill.dev/pl/technologies/ruby-on-rails/pytania-rekrutacyjne/active-record-basics.md): 25 pytań, Junior - [Widoki i szablony ERB](https://sharpskill.dev/pl/technologies/ruby-on-rails/pytania-rekrutacyjne/views-erb-templates.md): 20 pytań, Junior - [Asocjacje ActiveRecord](https://sharpskill.dev/pl/technologies/ruby-on-rails/pytania-rekrutacyjne/active-record-associations.md): 24 pytań, Mid-Level - [Zaawansowane zapytania ActiveRecord](https://sharpskill.dev/pl/technologies/ruby-on-rails/pytania-rekrutacyjne/active-record-queries.md): 28 pytań, Mid-Level - [Formularze Rails](https://sharpskill.dev/pl/technologies/ruby-on-rails/pytania-rekrutacyjne/rails-forms.md): 20 pytań, Mid-Level - [Nowoczesny Asset Pipeline i frontend](https://sharpskill.dev/pl/technologies/ruby-on-rails/pytania-rekrutacyjne/rails-asset-pipeline.md): 18 pytań, Mid-Level - [Tryb API Rails](https://sharpskill.dev/pl/technologies/ruby-on-rails/pytania-rekrutacyjne/rails-api-mode.md): 20 pytań, Mid-Level - [Testowanie z RSpec](https://sharpskill.dev/pl/technologies/ruby-on-rails/pytania-rekrutacyjne/rails-testing-rspec.md): 24 pytań, Mid-Level - [ActiveJob & Background Jobs](https://sharpskill.dev/pl/technologies/ruby-on-rails/pytania-rekrutacyjne/active-job-background-jobs.md): 20 pytań, Mid-Level - [ActionCable & WebSockets](https://sharpskill.dev/pl/technologies/ruby-on-rails/pytania-rekrutacyjne/action-cable-websockets.md): 18 pytań, Mid-Level - [ActionMailer](https://sharpskill.dev/pl/technologies/ruby-on-rails/pytania-rekrutacyjne/action-mailer.md): 18 pytań, Mid-Level - [ActiveStorage](https://sharpskill.dev/pl/technologies/ruby-on-rails/pytania-rekrutacyjne/active-storage.md): 20 pytań, Mid-Level - [Strategie cachowania](https://sharpskill.dev/pl/technologies/ruby-on-rails/pytania-rekrutacyjne/caching-strategies.md): 20 pytań, Mid-Level - [Zaawansowane migracje](https://sharpskill.dev/pl/technologies/ruby-on-rails/pytania-rekrutacyjne/database-migrations-advanced.md): 20 pytań, Mid-Level - [Rails Engines i aplikacje modułowe](https://sharpskill.dev/pl/technologies/ruby-on-rails/pytania-rekrutacyjne/rails-engines-modular-apps.md): 18 pytań, Senior - [Optymalizacja wydajności](https://sharpskill.dev/pl/technologies/ruby-on-rails/pytania-rekrutacyjne/performance-optimization.md): 26 pytań, Senior - [Wzorce projektowe w Rails](https://sharpskill.dev/pl/technologies/ruby-on-rails/pytania-rekrutacyjne/rails-design-patterns.md): 22 pytań, Senior - [Metaprogramowanie w Ruby](https://sharpskill.dev/pl/technologies/ruby-on-rails/pytania-rekrutacyjne/ruby-metaprogramming.md): 20 pytań, Senior - [Bezpieczeństwo Rails](https://sharpskill.dev/pl/technologies/ruby-on-rails/pytania-rekrutacyjne/rails-security.md): 22 pytań, Senior - [GraphQL z Rails](https://sharpskill.dev/pl/technologies/ruby-on-rails/pytania-rekrutacyjne/graphql-rails.md): 20 pytań, Senior - [Wdrażanie i Produkcja](https://sharpskill.dev/pl/technologies/ruby-on-rails/pytania-rekrutacyjne/rails-deployment-production.md): 20 pytań, Senior - [Monitoring & Logging](https://sharpskill.dev/pl/technologies/ruby-on-rails/pytania-rekrutacyjne/monitoring-logging.md): 20 pytań, Senior - [Strategie aktualizacji Rails](https://sharpskill.dev/pl/technologies/ruby-on-rails/pytania-rekrutacyjne/rails-upgrade-strategies.md): 18 pytań, Senior --- Source: SharpSkill (https://sharpskill.dev), tech interview preparation for your real stack. HTML version of this page: https://sharpskill.dev/pl/technologies/ruby-on-rails/pytania-rekrutacyjne/authentication-authorization