Zelfstudie: een door het Windows-VM-systeem toegewezen beheerde identiteit gebruiken voor toegang tot Azure Key Vault
Beheerde identiteiten voor Azure-resources is een functie van Microsoft Entra ID. Voor alle Azure-services die beheerde identiteiten voor Azure-resources ondersteunen, geldt een eigen tijdlijn. Controleer de beschikbaarheidsstatus van beheerde identiteiten voor uw resource en eventuele bekende problemen voordat u begint.
Deze zelfstudie laat zien hoe een virtuele Windows-machine (VM) een door het systeem toegewezen beheerde identiteit kan gebruiken om toegang tot Azure Key Vault te krijgen. Key Vault maakt het mogelijk voor uw clienttoepassing om een geheim te gebruiken voor toegang tot resources die niet zijn beveiligd door Microsoft Entra-id. Beheerde identiteiten worden automatisch beheerd door Azure. Hiermee kunt u zich verifiëren bij services die Ondersteuning bieden voor Microsoft Entra-verificatie, zonder verificatiegegevens in uw code op te slaan.
U leert het volgende:
- Uw virtuele machine toegang verlenen tot een geheim dat is opgeslagen in een sleutelkluis
- Een toegangstoken ophalen met behulp van de identiteit van de virtuele machine en daarmee het geheim uit Key Vault ophalen
Vereisten
- Inzicht in beheerde identiteiten. Als u niet bekend bent met de functie voor beheerde identiteiten voor Azure-resources, raadpleegt u dit overzicht.
- Een Azure-account, meld u aan voor een gratis account.
- 'Eigenaar'-machtigingen voor het juiste bereik (uw abonnement of resourcegroep) om de vereiste stappen voor resource-aanmaak en rolbeheer uit te voeren. Voor hulp bij roltoewijzing gaat u naar Azure-rollen toewijzen om de toegang te beheren tot de resources van uw Azure-abonnement.
- U hebt ook een virtuele Windows-machine nodig waarvoor door het systeem toegewezen beheerde identiteiten zijn ingeschakeld.
- Als u voor deze zelfstudie een virtuele machine moet maken, kunt u dat doen met behulp van het artikel Een virtuele machine maken waarvoor door het systeem toegewezen identiteiten ingeschakeld zijn
Een sleutelkluis maken
Tip
Stappen in dit artikel kunnen enigszins variëren op basis van de portal waaruit u begint.
In deze sectie wordt uitgelegd hoe u uw VM toegang verleent tot een geheim dat is opgeslagen in een sleutelkluis. Wanneer u beheerde identiteiten gebruikt voor Azure-resources, kan uw code toegangstokens ophalen om te verifiëren bij resources die ondersteuning bieden voor Microsoft Entra-verificatie. Niet alle Azure-services ondersteunen Microsoft Entra-verificatie. Als u bij deze services beheerde identiteiten voor Azure-resources wilt gebruiken, slaat u de servicereferenties op in Azure Key Vault en gebruikt u de beheerde identiteit van de VM om toegang te krijgen tot Key Vault en de referenties op te halen.
Eerst moeten we een sleutelkluis maken en de door het systeem toegewezen beheerde identiteit van onze VM toegang tot de sleutelkluis verlenen.
Meld u aan bij [Azure Portal]portal](https://portal.azure.com/).
Selecteer bovenaan de linkernavigatiebalk de optie Een resource maken.
In het vak Marketplace doorzoeken typt u Key Vault en drukt u op Enter.
Selecteer Key Vault in de resultaten.
Selecteer Maken.
Geef een naam op voor de nieuwe sleutelkluis.
Vul alle vereiste gegevens in. Zorg ervoor dat u het abonnement en de resourcegroep kiest die u voor deze zelfstudie gebruikt.
Selecteer Controleren en maken
Selecteer Maken.
Een geheim maken
Voeg vervolgens een geheim toe aan de sleutelkluis, zodat u het later kunt ophalen met behulp van code die wordt uitgevoerd op uw virtuele machine. In deze zelfstudie gebruiken we PowerShell, maar dezelfde concepten zijn van toepassing op code die wordt uitgevoerd op deze virtuele machine.
Ga naar uw zojuist gemaakte sleutelkluis.
Selecteer Geheimen en selecteer Toevoegen.
Selecteer Genereren/importeren
In het scherm Een geheim maken, laat u bij Uploadopties Handmatig geselecteerd.
Voer een naam en een waarde in voor de geheime sleutel. De waarde mag elke gewenste waarde zijn.
Laat de activeringsdatum en vervaldatum leeg en laat Ingeschakeld ingesteld staan op Ja.
Selecteer Maken om het geheim te maken.
Toegang verlenen
De beheerde identiteit die door de virtuele machine wordt gebruikt, moet toegang krijgen tot het lezen van het geheim dat we opslaan in de Key Vault.
Ga naar uw zojuist aangemaakte sleutelkluis
Selecteer Toegangsbeleid in het menu aan de linkerkant.
Selecteer Toegangsbeleid toevoegen
Kies in de sectie Toegangsbeleid toevoegen onder Configureren vanuit sjabloon (optioneel) de optie Geheimbeheer in de vervolgkeuzelijst.
Kies Principal selecteren, en voer in het zoekveld de naam in van de virtuele machine die u eerder hebt gemaakt. Selecteer de virtuele machine in de lijst met resultaten en kies Selecteren.
Selecteer Toevoegen
Selecteer Opslaan.
Toegang tot gegevens
In deze sectie wordt uitgelegd hoe u een toegangstoken verkrijgt met behulp van de identiteit van de virtuele machine en daarmee het geheim uit de sleutelkluis ophaalt. Als PowerShell 4.3.1 of hoger niet is geïnstalleerd, moet u de meest recente versie downloaden en installeren.
Eerst gebruiken we de door het systeem toegewezen beheerde identiteit van de VIRTUELE machine om een toegangstoken op te halen voor verificatie bij Key Vault:
- Navigeer in de portal naar Virtuele machines en ga naar uw virtuele Windows-machine en selecteer in het overzicht Verbinding maken.
- Voer uw referenties (gebruikersnaam en wachtwoord) in die u hebt toegevoegd bij het maken van de virtuele Windows-machine.
- Nu u een extern bureaublad-Verbinding maken hebt gemaakt met de virtuele machine, opent u PowerShell in de externe sessie.
- Voer in PowerShell een Invoke-WebRequest-opdracht uit op de tenant om het token voor de lokale host in de specifieke poort voor de virtuele machine op te halen.
De PowerShell-aanvraag:
$Response = Invoke-RestMethod -Uri 'http://169.254.169.254/metadata/identity/oauth2/token?api-version=2018-02-01&resource=https%3A%2F%2Fvault.azure.net' -Method GET -Headers @{Metadata="true"}
U ziet dat het antwoord er als volgt uitziet:
Extraheer vervolgens het toegangstoken uit het antwoord.
$KeyVaultToken = $Response.access_token
Gebruik ten slotte de Invoke-WebRequest-opdracht van Powershell om het geheim op te halen dat u eerder in de sleutelkluis hebt gemaakt, waarbij u het toegangstoken doorgeeft in de autorisatie-header. U hebt de URL van uw sleutelkluis nodig. Deze vindt u in de sectie Essentials van de pagina Overzicht van de sleutelkluis.
Invoke-RestMethod -Uri https://<your-key-vault-URL>/secrets/<secret-name>?api-version=2016-10-01 -Method GET -Headers @{Authorization="Bearer $KeyVaultToken"}
Het antwoord ziet er als volgt uit:
value id attributes
----- -- ----------
'My Secret' https://mi-lab-vault.vault.azure.net/secrets/mi-test/50644e90b13249b584c44b9f712f2e51 @{enabled=True; created=16…
Zodra u het geheim hebt opgehaald uit de sleutelkluis, kunt u deze gebruiken om te verifiëren bij een service die een gebruikersnaam en wachtwoord vereist.
Resources opschonen
Wanneer u de resources wilt opschonen, meldt u zich aan bij Azure Portal, selecteert u Resourcegroepen, zoekt en selecteert u de resourcegroep die in het proces van deze zelfstudie is gemaakt (zoals mi-test
) en gebruikt u vervolgens de opdracht Resourcegroep verwijderen.
U kunt ook resources opschonen via PowerShell of de CLI
Volgende stappen
In deze zelfstudie hebt u geleerd hoe u een door het Windows-VM-systeem toegewezen beheerde identiteit kunt gebruiken voor toegang tot Azure Key Vault. Zie voor meer informatie over Azure Key Vault: