Ruby on Rails Crash Course: Authentication and Authorization. In this crash course, we will be covering Ruby on Rails authentication and authorization. We will start by discussing how to create an authentication system with Ruby on Rails. Then, we will move on to discuss how to authorize users and access resources. Finally, we will wrap up the crash course with some tips and tricks for using Ruby on Rails authentication and authorization in your own web applications.
In this crash course, we will be discussing authentication and authorization in Ruby on Rails. Authentication is the process of verifying that a user is who they say they are, and authorization is the process of determining whether a user has the right to perform an action. In most web applications, authentication and authorization are handled by a third-party service. However, in Ruby on Rails, we can handle these tasks ourselves using our own authentication and authorization modules.
- create, edit, invite, ban, unban, delete, inivte users to your app
- add one or many roles to users, restrict access to data based on roles
- gem devise for logging in
- devise confirmable – confirm email to use app
- devise lockable – ban / unban users
- manage user roles
- restrict user access based on roles
- log in with google
- log in with facebook
- log in with twitter
- log in with github
- invite users via email with devise_invitable
- connect Amazon SES email service for sending emails for free
- deploy applications to production like a PRO
- invisible recaptcha
Ruby on Rails Crash Course: Authentication and Authorization Course Requirements
- Modern browser and internet connection
- A basic understanding of programming would be helpful, Basic knowledge of Ruby and Rails will be a plus
- No paid software required
Ruby on Rails Crash Course: Authentication and Authorization Course Description
When creating a Web application, you usually have to start with the two key elements:
- Authentication – User log in, user account management.
- Authorization – User roles, permissions and access to different parts of your app.
Code-Along and build a Web App MVP covering all aspects of Log-In, User Management, and Role-Management functionality.
Core topics covered:
- Basic authorization via email (Devise)
- Social log in via Google
- Social log in via Facebook
- Social log in via Twitter
- Social log in via Github
- Devise confirmable
- Devise trackable
- Devise lockable
- Devise invitable – Inviting users to join the app via email
- Banning users
- Deleting users
- Editing user profile
- Managing user roles (admin, teacher, student) without any gems
- Role-based access to different features (example: only admin can ban a user) without any gems
- Blocking bot registrations
- Sending transactional emails in production (Amazon SES)
By the end of the course you will have created a boilerplate, based on which you can build any business application of your dream.
This course can be interesting for Ruby on Rails developers of all levels: for beginners and for veterans.
As a beginner, you will get the whole experience of thinking and building the core lifesystem of any modern Web Application.
As a veteran, you will get acquainted with some exquisite approaches for problem-solving, and features that you could have not encountered in the past.
We are not going to cover the fundamentals of what Ruby and Rails are: there are other, more basic courses for that.
Instead, we will dive straight into coding along and building our application step-by-step, feature-by-feature.
As well all enrolled students will have access to the source code, support materials and discussion groups.
Looking forward to seeing you inside!
Who this course is for:
- If you want to learn just enough about all aspects of Authentication & Authorization
- If you want to start your own startup by building your own websites and web apps.
- If you are already acquainted with Ruby on Rails and wants to deepen your knowledge
- If you want to learn how to build professional-grade Ruby on Rails applications
- If you want to be a web app developer: This course will introduce you to many in-depth mechanics of Ruby on Rails
Instructor: Yaroslav Shmarov