Microsoft identity platform

Azure-beveiliging implementeren voor developers

Anushika Agarwal

Cloud Data Engineer

Wat is het Microsoft identity platform?

  • Beheert app-aanmeldingen en toegang
    • Gebouwd op Microsoft Entra ID
      • Entra ID = kernidentiteitsservice
      • Identity Platform = ontwikkellaag voor apps

Relatie tussen Entra ID en Microsoft Identity Platform

Azure-beveiliging implementeren voor developers

Hoe werkt het?

  • Authenteert:
    • Standaarden:
      1. OAuth 2.0: beperkt wat apps mogen
      2. OpenID Connect: bevestigt wie je bent
    • Accounttypes
      • Bedrijfs-/schoolaccounts
      • Persoonlijke Microsoft-accounts
      • Sociale/lokale accounts

Microsoft Identity Platform

Azure-beveiliging implementeren voor developers

Belangrijkste tools van het Microsoft identity platform

  • MSAL:
    • vraagt tokens aan voor apps

MSAL

  • App-registratie:
    • stel app-identiteit in op Azure

App-registratie

  • Microsoft Graph API:
    • toegang tot gebruikers, groepen en resources

Microsoft Graph API

Azure-beveiliging implementeren voor developers

App-registratie

  • Apps registreren koppelt ze aan Entra ID

  • Kies:

    • Single-tenant: app werkt alleen in je organisatie
    • Multi-tenant: app werkt over organisaties heen
  • Maakt automatisch:

    • Application object
    • Service principal
  • Voeg secrets, certificaten, scopes en branding toe

App-registratie

Azure-beveiliging implementeren voor developers

Application-object

  • Blauwdruk van de app
  • Staat in je hometenant
  • Definieert authenticatie en toegangsregels

Application-object

Azure-beveiliging implementeren voor developers

Voorbeeld: application-object bij PeopleSphere

  • PeopleSphere maakt een HR-app in de eigen tenant

Application-object van PeopleSphere (voorbeeld)

Azure-beveiliging implementeren voor developers

Service principal

  • Instantie van de app in elke tenant
  • Werkversie van de oorspronkelijke sleutel
  • Elke klant krijgt een eigen service principal in de eigen tenant

Service principal

Azure-beveiliging implementeren voor developers

Voorbeeld: service principal bij DataCamp

  • Service principal aangemaakt in DataCamps tenant

Voorbeeld service principal in DataCamp

Azure-beveiliging implementeren voor developers

Types service principal

  • Application:
    • Standaard app-instantie

Application

  • Managed Identity:
    • toegang zonder secrets

Managed Identity

  • Legacy:
    • oudere apps

Legacy

Azure-beveiliging implementeren voor developers

Machtigingen

  • Apps vragen toegang via OAuth 2.0 en permissionscopes

  • graph.microsoft.com/Calendars.Read

Voorbeeldscope Calendars.Read.

Hoe apps toegang vragen en krijgen via Microsoft Identity Platform

Azure-beveiliging implementeren voor developers

Gedelegeerde machtigingen

  • App handelt namens de gebruiker

  • Vereist een ingelogde gebruiker

  • Voorbeeld: PeopleSphere plant meetings voor DataCamp-gebruikers

Voorbeeld gedelegeerde machtiging van PeopleSphere

Azure-beveiliging implementeren voor developers

App-only machtigingen

  • App handelt als zichzelf
  • Geen gebruiker betrokken
  • Voorbeeld: PeopleSphere synchroniseert ’s nachts HR-data

Voorbeeld app-only machtiging van PeopleSphere

Azure-beveiliging implementeren voor developers

Toestemming

  • Apps hebben toestemming nodig om scopes te activeren

  • Types toestemming:

    • Statisch: machtigingen bij registratie
    • Incrementeel: voeg toe indien nodig
    • Beheerder: vereist voor hoge rechten

Toestemming

Azure-beveiliging implementeren voor developers

Laten we oefenen!

Azure-beveiliging implementeren voor developers

Preparing Video For Download...