Auth0: het platform voor betere beveiliging?

5 min.

Auth0 is één van de meest gebruikte platformen voor authenticatie en autorisatie. Maar eerst even een stapje terug... Wat is authenticatie en autorisatie eigenlijk? Wel, authenticatie zorgt voor de verificatie van de identiteit van een gebruiker. Dit gebeurt meestal aan de hand van een gebruikersnaam en wachtwoord. Dankzij autorisatie krijgt de gebruiker vervolgens toegang tot de applicatie. De twee componenten worden dag in dag uit gebruikt om applicaties grondig te beveiligen. Het is echter erg complex om ze zelf te implementeren. Zeker als je dit goed wilt doen!

Hiervoor is Auth0 in het leven geroepen. Auth0 is een cloud oplossing die herbruikbaar, betaalbaar en eenvoudig te implementeren is voor elke online applicatie. Het is zeker niet de enige speler, dat bewijst het lijstje met alternatieven als OKTA, LoginRadius en FusionAuth. Vandaag willen we je echter laten kennis maken met Auth0. Laten we daarom beginnen met even kort toe te lichten wat Auth0 is en wat je er zoal mee kan bereiken.

AuthWat?

Auth0, uitgesproken als "Auth Zero". Ja, een beetje zoals Coca-Cola Zero, maar in dit geval duidt de zero niet op 'zonder suiker', maar eerder op de eenvoud waarmee het kan worden geïmplementeerd. Auth0 is een cloud based identity platform, speciaal gericht op het gebruik door developers. Het biedt je de mogelijkheid om op een snelle en efficiënte manier autorisatie en authenticatie te integreren binnen je eigen oplossingen zoals SPA (Single Page Applications), webapps (Web Applications), mobiele applicaties en API's.

Auth0
Auth0 vs OAuth/OAuth2.0

Wie Auth0 zegt, denkt mogelijk automatisch aan "OAuth". De benamingen mogen dan wel sterk op elkaar lijken, er is weldegelijk een verschil! 

Kort gezegd kunnen we stellen dat OAuth of OAuth2.0 niets meer of minder is dan een standaard (of protocol) voor de autorisatie van web-enabled applicaties en API's. Het is met andere woorden een beschrijving van hoe autorisatie dient te gebeuren binnen een applicatie. Om OAuth/OAuth2.0 te implementeren kan je beroep doen op verschillende libraries en frameworks die hierin ondersteuning bieden. Je moet het hele mechanisme dan nog wel steeds zelf bouwen.

Auth0 daarentegen, zoals hierboven beschreven werd, is een cloud based identity platform. Het mechanisme en de flows die voorzien zijn in Auth0, zijn gebouwd op de standaarden van OAuth/OAuth2.0. Auth0 gebruikt met andere woorden het OAuth protocol om de beveiliging te realiseren.

Waarom Auth0?

Bespaar tijd, moeite en resources

De bedoeling van Auth0 is om de complexiteit rond authenticatie en autorisatie van je eigen implementaties weg te nemen. Met Auth0 kan je tijd, moeite en resources besparen want je hoeft het warm water niet opnieuw uit te vinden. Een eenvoudige implementatie volstaat om je applicatie te voorzien van een loginscherm, alsook om de verschillende APIs te beveiligen. Eén van de slogans van AuthO luidt dan ook als volgt:

Save time. Be happy. Focus on what really matters.

Je hoeft maar 4 stappen te doorlopen om Auth0 te implementeren binnen je applicatie, en daar pakt Auth0 dan ook graag mee uit: 

  1. Maak een gratis (developer) account
  2. Maak de keuze uit de vele Identity providers (Gebruikersdatabank, social logins, …)
  3. Kies de SDK die je wenst
  4. Bouw de implementatie!

Als sidenote willen we hierbij nog graag meegeven dat het enkel om de basics gaat! Auth0 komt ook met een reeks uitgebreide functionaliteiten en uitbreidingen. Als je al deze mogelijkheden wilt leren kennen of gebruiken, raden we je aan de documentatie goed door te nemen.

Computer keyboard
Documentatie

De documentatie van Auth0 is uitstekend - dat mag ook gezegd worden. Naast de vele technology stacks waar support voor aangeboden wordt, vind je altijd voldoende documentatie en voorbeelden terug. Ook om deze reden kunnen we Auth0 zeker aanraden! 

Pricing

Auth0 biedt een flexibele prijszetting aan. Iedereen kan snel en gemakkelijk starten en een gratis account aanmaken. Het gratis account biedt het volgende:

  • 7000 gratis, actieve gebruikers
  • Een ongelimiteerd aantal logins
  • Passwordless logins
  • Lock (loginscherm) voor Web, iOS & Android
  • Tot 2 social identity providers
  • ...

Daarnaast zijn er ook betalende accounts beschikbaar:

  • Developer (vanaf $13/maand)
  • Developer Pro (vanaf $45/maand)
  • Enterprise

Voor elk van deze pakketten is er extra functionaliteit beschikbaar. Alsook zijn de prijzen flexibel naargelang het gewenste aantal (actieve) gebruikers.

Features

Ontdek hieronder enkele van de unieke features die Auth0 te bieden heeft: 

  • Simple APIs
  • Standard protocols (OAuth / OAuth2.0; SAML; OpenID Connect; JWT; ...)
  • SDKs (ASP.NET; Java; Spring Security; Node.js; Go; PHP; Python; ... ) 
  • Reporting & Analytics (inzicht in gebruikersactiviteit)
  • Multifactor Authentication (MFA)
  • Scalable & reliable
  • Single Sign On (SSO)
  • Social Login (Facebook, Twitter, Google, Microsoft, ...)
  • Enterprise Login (AD/LDAP, Office 365, ...)
Conclusie

Wat je zelf doet, doe je meestal beter. Maar waarom nog tijd en moeite steken in het voorzien van een authenticatie en autorisatie oplossing als er ook goede en betrouwbare cloudoplossingen bestaan? Tenzij je niet anders kan natuurlijk!

Wij raden alleszins aan om ook eens naar een cloudoplossing zoals Auth0 te kijken. Voldoet Auth0 niet aan jouw verwachtingen? Dan zijn er nog enkele andere spelers op de markt die hetzelfde kunnen en misschien wel aan jouw noden voldoen. Het is dus absoluut de moeite om deze oplossingen te onderzoeken!

Bovendien kan de integratie vrij gemakkelijk doorgevoerd worden. Met enkele eenvoudige stappen heb je op 1, 2, 3 (of toch bijna) authenticatie en autorisatie toegepast voor je applicatie. Op de hoogte blijven van meer nieuws? Hou dan zeker onze Facebook- en LinkedInpagina in de gaten!

Michiel Lucas

"Op zoek naar goede en betrouwbare cloudoplossingen?Wij zijn er voor je"

Michiel Lucas
Technical lead Mediasoft & Drupal developer

Op de hoogte blijven van meer nieuws?