It depends on what your needs are. If you need simple auth for a single application, most languages have libraries/frameworks that cover most of your needs and are relatively trivial to implement. In .NET land you have Identity[0] for example. You just need to look up what is the most popular option for the tech you're using and if it ticks all your boxes.<p>If you're looking for a full fledged service that offers SSO and that you can self host (or cloud) with SDKs for most of the popular languages out there, then I'd recommend to look at Ory[1].<p>[0] <a href="https://docs.microsoft.com/en-us/aspnet/core/security/authentication/identity?view=aspnetcore-6.0&tabs=visual-studio" rel="nofollow">https://docs.microsoft.com/en-us/aspnet/core/security/authen...</a>
[1] <a href="https://www.ory.sh/" rel="nofollow">https://www.ory.sh/</a>
If you're just building an MVP I think doing "magic link" auth is underrated. It's super easy to set up, relatively secure, doesn't need any of the complexity of passwords/sso, and is easy to migrate to a different system in the future.<p>Auth0 is complete overkill if you don't need their advanced features IMO.
Auth is zero value-add table-stakes requirement with a lot of complexity. I haven't a seen a product with enough built-in. External provider is the way to go.