Verificatie in Azure Key Vault

Verificatie met Key Vault werkt in combinatie met Microsoft Entra-id, die verantwoordelijk is voor het verifiëren van de identiteit van een bepaalde beveiligingsprincipaal.

Een beveiligingsprincipal is een object dat een gebruiker, groep, service of toepassing vertegenwoordigt die toegang tot Azure-resources aanvraagt. Azure wijst een unieke object-id toe aan elke beveiligingsprincipal.

  • Een beveiligingsprincipaal voor gebruikers identificeert een persoon die een profiel in Microsoft Entra-id heeft.

  • Een beveiligingsprincipaal voor groepen identificeert een set gebruikers die zijn gemaakt in Microsoft Entra-id. Elke rol of machtiging die wordt toegewezen aan de groep, geldt voor alle gebruikers in de groep.

  • Een service-principal is een type beveiligingsprincipaal dat een toepassing of service identificeert, bijvoorbeeld een stukje code in plaats van een gebruiker of groep. De object-id van een service-principal fungeert als de gebruikersnaam; het clientgeheim van de service-principal fungeert als het wachtwoord.

Er zijn twee manieren om voor toepassingen een service-principal te verkrijgen:

  • Aanbevolen: een met het systeem toegewezen beheerde identiteit inschakelen voor de toepassing.

    Met een beheerde identiteit wordt in Azure de service-principal van de toepassing intern beheerd en wordt de toepassing automatisch geverifieerd bij andere Azure-services. Beheerde identiteiten zijn beschikbaar voor toepassingen die zijn geïmplementeerd in diverse services.

    Zie Overzicht van beheerde identiteiten voor meer informatie. Zie ook Azure-services die ondersteuning bieden voor beheerde identiteiten, met hierin koppelingen naar artikelen waarin wordt beschreven hoe u een beheerde identiteit kunt inschakelen voor specifieke services (zoals App Service, Azure Functions, Virtual Machines, enzovoort).

  • Als u geen beheerde identiteit kunt gebruiken, registreert u in plaats daarvan de toepassing bij uw Microsoft Entra-tenant, zoals beschreven in quickstart: Een toepassing registreren bij het Azure Identity Platform. Bij de registratie wordt ook een tweede toepassingsobject gemaakt waarmee de app wordt geïdentificeerd bij alle tenants.

Key Vault-firewall configureren

In Key Vault is toegang tot resources via openbare IP-adressen standaard toegestaan. Voor een betere beveiliging kunt u de toegang ook beperken tot specifieke IP-bereiken, service-eindpunten, virtuele netwerken of privé-eindpunten.

Zie Toegang tot Azure Key Vault achter een firewall voor meer informatie.

De key Vault-aanvraagbewerkingsstroom met verificatie

Key Vault-verificatie vindt plaats als onderdeel van elke aanvraagbewerking in Key Vault. Zodra het token is opgehaald, kan het opnieuw worden gebruikt voor volgende aanroepen. Voorbeeld van verificatiestroom:

  1. Een tokenaanvragen voor verificatie met Microsoft Entra-id, bijvoorbeeld:

    • Een Azure-resource zoals een virtuele machine of App Service-toepassing met een beheerde identiteit neemt contact op met het REST-eindpunt om een toegangstoken op te halen.
    • Een gebruiker meldt zich bij de Azure-portal aan met een gebruikersnaam en wachtwoord.
  2. Als verificatie met Microsoft Entra-id is geslaagd, krijgt de beveiligingsprincipaal een OAuth-token.

  3. Een aanroep naar de Key Vault REST API via het eindpunt (URI) van Key Vault.

  4. De Key Vault-firewall controleert de volgende criteria. Als aan een van de criteria wordt voldaan, is de aanroep toegestaan. Anders wordt de aanroep geblokkeerd, en wordt gemeld dat het antwoord verboden is.

    • De firewall wordt uitgeschakeld en het openbare eindpunt van Key Vault is bereikbaar via openbaar internet.
    • De aanroeper is een in Key Vault vertrouwde service, zodat de firewall kan worden omzeild.
    • Het IP-adres, virtuele netwerk of service-eindpunt van de aanroeper wordt vermeld in de firewall.
    • De aanroeper kan Key Vault bereiken via een geconfigureerde Private Link-verbinding.
  5. Als de firewall de aanroep toestaat, roept Key Vault Microsoft Entra-id aan om het toegangstoken van de beveiligingsprincipaal te valideren.

  6. Key Vault controleert of de beveiligingsprincipaal over de benodigde machtiging beschikt voor de aangevraagde bewerking. Als dit niet het geval is, meldt Key Vault dat het antwoord verboden is.

  7. De aangevraagde bewerking wordt uitgevoerd in Key Vault en het resultaat wordt geretourneerd.

In het volgende diagram ziet u het proces waarbij een toepassing een Key Vault API aanroept voor het ophalen van een geheim:

The Azure Key Vault authentication flow

Notitie

Key Vault SDK-clients voor geheimen, certificaten en sleutels doen een extra aanroep naar Key Vault zonder toegangstoken, wat resulteert in 401-reactie om gegevens van de tenant op te halen. Zie Verificatie, aanvragen en antwoorden voor meer informatie

Verificatie voor Key Vault in toepassingscode

Key Vault SDK maakt gebruik van de Azure Identity-clientbibliotheek, waardoor naadloze verificatie met Key Vault mogelijk is in verschillende omgevingen met dezelfde code

Azure Identity-clientbibliotheken

.NET Python Java JavaScript
Azure Identity SDK .NET Azure Identity SDK Python Azure Identity SDK Java Azure Identity SDK JavaScript

Zie Verifiëren bij Key Vault in code voor meer informatie over aanbevolen procedures en voorbeelden van ontwikkelaars

Volgende stappen