Why I chose Auth0 for my startup
Tags: security, webdev, startup, programming
Published: 2022-06-30 07:10:04

More or less one year ago I started to work with two other persons on a startup called "Oscar".
Basically, it's a web application (at the moment) but in the future there may also be native applications for smartphones and smartwatches.
At the beginning, I chose to use the ASP.NET Core built-in authentication and authorization engine.
I knew that and I used it since many years, but after a while I started to ask me if this is the right choice.
I try to explain why I chose Auth0 and I am happy about this choice.

## What is Auth0?
Auth0 is a platform that provides authentication and authorization services for applications and websites. In addition with Auth0 it's very easy to add social networks authentication from the platform, without changing any line of codes.
It scales automatically and has a lot of built-in features that you have to develop by yourself if you need them.

Some features:
- Token-based authentication
- Social network authentication
- Multi-factor authentication
- change and forgot password flows
- passwordless login

and much more.

![Auth0](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/2el5bemug5u4ik8wdigg.png)

## Auth0 Benefits
Auth0 offers a lot of benefits for the developers but for business as well.
Especially for a startup is important to know how users are growing on your platform or switching very fast from several environments.

#### UI Options
Auth0 provides the ability to have a custom UI or a built-UI.
It means that you can choose for an application if you want to follow the native login flow or the browser-based flow.
And you can change it just with a setting on the Auth0 portal.

You can also customize the UI of the universal login pages.
It means that you can personalize the pages with your colors, texts, logos and translations.

![Universal Login](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/lbyqibxvhgs8o7xzkgi3.png) 

#### Auth0 Analytics
In addition to the technical part, there a lot of features that you can use to analyze the traffic on your website, from the authentication point of you.
As I mentioned before this is very important for a startup and it's not easy to implement this feature by yourself in a product or in a SaaS.

For instance, it can provides to you the following data:
- number of existing users
- new users on the application
- login activities
- filter the new users registered in a specific time frame
- what identity providers are used for a specific application

![Analytics](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/v002d9o0g5o6pvjaerjq.png)

## Documentation
The documentation is one of the best documentations that I ever found in my career.
There a lot of "getting started" sections but at the same time you can also find a lot of specific use cases directly in the documentation or on their blogs.
You can access the documentation without an account to understand better how it works: [https://auth0.com/docs](https://auth0.com/docs)

![Learn Auth0](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/x0ahkza1rj2vyc9zs532.png)
 
What I really love as a developer, it's the QuickStarts section where you can find examples of the most popular frameworks.
I just put the screenshots below for the frontend section and for the backend/native applications.

![Frontend](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/k6o6c0hjbn59aiods6wr.png) 

![Backend](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/le269yzcpj2gh80b3tho.png) 

## My favorite features
I think I have two favorite features that I like the most.
The first one is the "**Attack Protection**" services.
In this section of Auth0 portal, you can configure the most common protection to protect users from automated attacks like a bot detection or a brute force attack.

![Attack Protection](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/ba0v1xvzybldltvp3z9g.png) 

But my favorite one is the "**Breached Password Detection**". If you enable this feature, you can notice the users if their accounts are using credentials included in the majority public security breach.

![Breached Password Detection](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/gb236hwkz8rdltqdvroz.png) 

My second one favorite feature of Auth0 is the Univeral Login Customization because from this section you can customize very easily the Login UI for your current environment and domain.

![Univeral Login Customization](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/ngpedxnexyr18p0byasf.png) 


## Why Auth0?
If I didn't convince you to give a try to Auth0, you can see this short video to have a good overview of a lot of out-of-the-box features.

<p><a href="https://auth0.com/why-auth0?wvideo=r45scb2b8k"><img src="https://embed-ssl.wistia.com/deliveries/52bd62a80bf9aef0ec832cc0720dd8fc.jpg?image_play_button_size=2x&amp;image_crop_resized=960x540&amp;image_play_button=1&amp;image_play_button_color=1e212ae0" width="400" height="225" style="width: 400px; height: 225px;"></a></p>

## Do you want to try Auth0?
If you want to try Auth0, you can create an account and use the free tier of the service to test your application, make some experiments and try all the features by yourself.
You can follow this link to create your new account: [https://a0.to/signup-for-auth0](https://a0.to/signup-for-auth0)