Centric connect.engage.succeed

Multi-Factor Authentication: een veilige combi van ‘weten’ en ‘hebben’

Geschreven door Dick van Straaten - 06 april 2017

Dick van Straaten
De meeste mensen hebben tegenwoordig meerdere mobiele apparaten. Als identificatiemechanisme gebruiken zij vaak de combinatie gebruikersnaam/wachtwoord. Maar hoe veilig is dat eigenlijk?

Door standaardcommunicatieprotocollen wisselen toepassingen tegenwoordig naadloos gegevens uit. Hierdoor zijn gebruikers in hun keuze voor toepassingen niet meer beperkt tot één aanbieder. Maar het heeft ook een nadeel, namelijk dat mensen geconfronteerd worden met verschillende gebruikersnamen en wachtwoorden per toepassing. Om die wachtwoorden te onthouden, kiezen ze vaak dezelfde eenvoudige wachtwoorden. Dit zorgt ervoor dat de combinatie van gebruikersnaam en wachtwoord allang geen goed beveiligingsmechanisme meer is.

Multi-Factor Authentication

Multi-Factor Authentication (MFA) is wat dat betreft een veel betere keuze. Naast een combinatie van gebruikersnaam en wachtwoord die iemand ‘weet’, voegt MFA een extra stap toe in het authenticatieproces. Deze extra stap heeft betrekking op iets wat iemand ‘heeft’, namelijk het mobiele apparaat in combinatie met het bijbehorende wachtwoord. Met MFA authentiseren mensen dus met hun gebruikersnaam en wachtwoord en genereren ze met hun mobiele apparaat en wachtwoord een extra code. Deze code voeren zij in tijdens de tweede stap in het authenticatieproces. Is er een lek van gebruikersnamen en wachtwoorden, dan ben je met MFA toch nog beveiligd.

Azure Active Directory

MFA is beschikbaar op Azure via de Azure Active Directory (AAD) en kan eenvoudig in een nieuw of bestaand project geïmplementeerd worden. Hieronder de stappen die ik in minder dan één uur heb ondernomen om een nieuw Visual Studio .NET-project met AAD en MFA te maken. Dit project kun je terugvinden op https://aad.demo.cencept.nl.

Stap 1. Creëer een Azure Active Directory

 

  1. Meld je aan op de Azure Portal.
  2. Klik op de + in het menu.
  3. Zoek op Azure Active Directory.
  4. Selecteer Azure Active Directory.
  5. Klik op het productscherm op de knop Create.
  6. Voer de benodigde gegevens in.
  7. Klik op Create om de AAD aan te maken.

Stap 2. Voeg gebruikers toe

In mijn voorbeeld is de domeinnaam cencept.nl gekoppeld aan de Azure Active Directory. Het koppelen van een eigen domeinnaam is optioneel. Je kunt ook een gratis onmicrosoft.com-domeinnaam gebruiken.

  1. Open de AAD zodra deze is aangemaakt.
  2. Klik op Add en voer een gebruiker op (in het voorbeeld demo@cencept.nl).
  3. Klik op Multi-Factor Authentication om MFA in te stellen.

Stap 3. MFA instellen

  1. Selecteer één of meerdere gebruikers.
  2. Klik op Inschakelen onder de quick steps.
  3. MFA wordt geconfigureerd voor de gebruiker(s).

  4. Selecteer een gebruiker na afronding van de configuratie.
  5. Controleer de nieuwe opties onder quick steps.




  6. Klik op service instellingen.
  7. Controleer de MFA-verificatieopties.

Stap 4. Implementeer AAD in je project

  1. Open Visual Studio.
  2. Open de Cloud Explorer.
  3. Log in op je Microsoft Azure Subscription door op het gebruiksicoon te klikken.

  4. Maak een nieuw project aan.
  5. Kies voor de Web Application Template.
  6. Klik op OK.



  7. Kies de MVC template.
  8. Klik op Change Authentication.



  9. Selecteer in de dialoog Work And School Accounts.
  10. Wacht tot de dropdown met het label Domain gevuld is.
  11. Selecteer het domein dat bij het aanmaken van de Azure Active Directory is opgegeven.
  12. Klik op OK.
  13. Het project wordt aangemaakt.
  14. Publiceer het project.

Stap 5. Installeer APP en Log In

  

  1. Ga naar de App Store (in dit voorbeeld de Apple Store).
  2. Download en installeer de Microsoft Authenticatie App.
  3. Open de app na installatie en registreer je account.
  4. De app genereert authenticatie tokens.
 
  1. De eerste keer moet je mobiele apparaat gekoppeld worden aan Azure Active Directory. Klik op Nu instellen.
  2. Meld je aan met het e-mailadres en wachtwoord uit Azure Active Directory.
  3. Je wordt automatisch omgeleid.
  4. Navigeer na publicatie naar de website.

  5. Kies de gewenste verificatie-optie. In dit geval Mobiele app.


  6. Scan de QR-code met je Microsoft Authentication App om je mobiele apparaat te configureren.

  7. Na registratie wordt de knop Contact opnemen actief. Klik op deze knop.
      
  8. Je ontvangt bovenstaande melding op je mobiele apparaat.
  9. Klik op Goedkeuren.
  10. AAD controleert je inloggegevens, authentiseert en stuurt je naar de website.
  11. De juiste naam wordt getoond.

Conclusie

Met AAD en MFA heb je als ontwikkelaar middelen om je oplossing goed te beveiligen. De wizards in Microsoft Azure en Visual Studio maken de implementatie eenvoudig. Feitelijk hoeft er niets geprogrammeerd te worden en werkt alles out-of-the-box.

Wanneer MFA eenmaal geïmplementeerd is, zal de gebruiker zijn mobiele apparaat altijd beschikbaar moeten hebben voor een tweede authenticatie. Iets wat soms als onhandig en/of tijdrovend ervaren wordt. Wellicht dat er in de toekomst een betere optie beschikbaar komt wanneer alle apparaten ook kunnen controleren wie de gebruiker is op basis van bijvoorbeeld een irisscan, vingerafdruk of infrarood gezichtsherkenning. Deze items kun je namelijk niet vergeten en heb je altijd bij de hand.

Dick van Straaten is Craft Expert van Team Azure Development binnen Craft, hét groeiprogramma voor IT'ers (powered by Centric). Wil je zijn blog volgen? Schrijf je in voor de Craft-update.

     
Schrijf een reactie
  • Captcha image
  • Verzenden