User Authentication

There are many ways to provide authentication for users in your application. Often, sites require a username and password, but others allow you to login with another account, such as Facebook or Google. Sometimes websites include two-factor authentication, such as with an extra application like Duo or a physical device like a YubiKey.

There is also a lot of bad advice on the web about authentication. Getting authentication right is hard and many people make mistakes.

This tutorial will cover a few of the basics so that you have a solid foundation for authenticating users in a web application.