Announcing support for Multi-Factor Authentication (MFA) with Supabase

A sneak peek to our coming feature for Multi-Factor Authentication (MFA) with Supabase.

3 min read
Cover Image for Announcing support for Multi-Factor Authentication (MFA) with Supabase

I'm excited to announce that Makerkit is adding support for Multi-Factor Authentication (MFA) the Supabase kits. This is a sneak peek to our coming feature.

What is MFA?

Multi-Factor Authentication (MFA) is a method of authentication that requires more than one piece of evidence to verify the user's identity. It is a way to add an extra layer of security for your users' accounts.

Should you add MFA to your app?

If you're building an app that requires a high level of security, then you should definitely consider adding MFA to your app. For example, if you're building an app that requires users to manage their finances, then you should definitely add MFA to your app.

Your users will feel more secure knowing that their accounts are protected by MFA, and it can be a potential differentiator for your app. I don't see a reason not to offer this functionality to your users.

How does MFA work?

Supabase allows us to use TOPT (Time-based One-time Password) to generate a one-time password (OTP) that the user can use to login to their account using their second authentication factor.

Supabase MFA in Practice

Step 1. Users will enroll an authentication factor (e.g. Google Authenticator)

The first step for your users is to enroll a new authentication factor using an Authenticator app (such as Google Authenticator or Authy).

  1. The first thing they are required to do is to specify a name for their new authentication factor: Supabase supports up to 10 factors (more than enough for sure!). This name will be used to identify the authentication factor in the Authenticator app, and will help users remember which factor they are using.
  2. Then, they're required to scan the QR code with the authenticator app. This will generate a secret key that will be used to generate the OTP.
  3. After confirming the one-time code generated by the authenticator app, the user will be able to use their new authentication factor to login to their account.

Loading video...

Step 2. Users will login to their account using their email and password

After logging in, we will check if users have enrolled any MFA factor. According to Supabase, this rarely uses the network and it's a very fast check. After logging in using the first authentication factor, the users' assurance level is aal1.

If users are required to use MFA, then we will redirect them to the MFA page. This page will prompt them to select a factor: for example, a factor enrolled using a work smartphone. If only one factor is enrolled, then it will be automatically selected.

Then, they will be required to enter the OTP generated by the authenticator app for that factor. If the OTP is correct, then the user will be logged in to their account. Their assurance level is upgraded to aal2.

Loading video...

Conclusion

I'm excited to add this feature to our kits. I think it's a great way to add an extra layer of security to your app. I hope you enjoyed this sneak peek to our coming feature. If you have any questions, feel free to reach out on our Discord server.



Read more about Changelog

Cover Image for Introducing Makerkit Turbo: faster, simpler and more powerful SaaS Boilerplate

Introducing Makerkit Turbo: faster, simpler and more powerful SaaS Boilerplate

4 min read
I am excited to announce Makerkit Turbo - the next generation of our SaaS boilerplate. It's a tremendous upgrade over the previous version, with a focus on speed, simplicity, and power.
Cover Image for Announcing the AI Blog Writer SaaS Template

Announcing the AI Blog Writer SaaS Template

3 min read
We're excited to announce the launch of our latest SaaS template, the AI Blog Writer app template. This template is a great starting point for building a product to write SEO optimized blog posts using AI.
Cover Image for Announcing the AI Chat with PDF SaaS Template

Announcing the AI Chat with PDF SaaS Template

3 min read
We're excited to announce the launch of our latest SaaS template, the Chat with PDF app template. This template is a great starting point for building a product that allows your customers to create chatbots that can answer questions and search through PDF documents.
Cover Image for Announcing the AI Chatbot SaaS Template

Announcing the AI Chatbot SaaS Template

3 min read
We're excited to announce the launch of our latest SaaS template, the AI Chatbot SaaS Template. This template is a great starting point for building a customer support chatbot SaaS product.
Cover Image for Announcing Premium Codebase Access

Announcing Premium Codebase Access

4 min read
We are excited to announce that we are now offering Premium Codebase Access to all our users on the Teams Plan.
Cover Image for Announcing the new Onboarding Flow!

Announcing the new Onboarding Flow!

2 min read
The latest update to the SaaS Starter Kits is here! This update includes changes to the Onboarding Flow after sign-up.