Självstudie: Använda en systemtilldelad hanterad identitet för en virtuell Windows-dator för åtkomst till Azure Key Vault

Hanterade identiteter för Azure-resurser är en funktion i Microsoft Entra-ID. Alla Azure-tjänster som stöder hanterade identiteter för Azure-resurser har sin egen tidslinje. Var noga med att kontrollera tillgänglighetsstatus för hanterade identiteter för din resurs och kända problem innan du börjar.

Den här självstudien visar hur en virtuell Windows-dator (VM) kan använda en systemtilldelad hanterad identitet för att få åtkomst till Azure Key Vault. Key Vault gör det möjligt för klientprogrammet att använda en hemlighet för att komma åt resurser som inte skyddas av Microsoft Entra-ID. Hanterade identiteter hanteras automatiskt av Azure. De gör att du kan autentisera till tjänster som stöder Microsoft Entra-autentisering, utan att inkludera autentiseringsinformation i koden.

Du lär dig att:

  • Ge din virtuella dator åtkomst till en hemlighet som lagras i Key Vault
  • Få ett åtkomsttoken med hjälp av den virtuella datorns identitet och använd den när du hämtar hemligheten från Key Vault

Förutsättningar

Skapa ett Nyckelvalv

Dricks

Stegen i den här artikeln kan variera något beroende på vilken portal du börjar från.

Det här avsnittet visar hur du beviljar den virtuella datorn åtkomst till en hemlighet som lagras i ett Key Vault. När du använder hanterade identiteter för Azure-resurser kan koden få åtkomsttoken för att autentisera mot resurser som stöder Microsoft Entra-autentisering.  Alla Azure-tjänster stöder dock inte Microsoft Entra-autentisering. Om du vill använda hanterade identiteter för Azure-resurser med dessa tjänster lagrar du autentiseringsuppgifterna för tjänsten i Azure Key Vault och får åtkomst till Key Vault och hämtar autentiseringsuppgifterna med hjälp av den virtuella datorns hanterade identitet.

Börja med att skapa ett Key Vault och bevilja den virtuella datorns systemtilldelade hanterade identitet åtkomst till Key Vault.

  1. Logga in på Azure-portalen.

  2. Längst upp i det vänstra navigeringsfältet väljer du Skapa en resurs.

  3. I rutan Sök på Marketplace skriver du in Key Vault och trycker på Retur.

  4. Välj Key Vault i resultatet.

  5. Välj Skapa.

  6. Ange ett namn för det nya nyckelvalvet.

    Skapa en Nyckelvalvsskärm.

  7. Fyll i all nödvändig information. Se till att du väljer den prenumeration och resursgrupp som du använder för den här självstudien.

  8. Välj Granska+ skapa

  9. Välj Skapa

Skapa en hemlighet

Lägg sedan till en hemlighet i Key Vault så att du kan hämta den senare med hjälp av kod som körs på den virtuella datorn. I den här självstudien använder vi PowerShell, men samma begrepp gäller för all kod som körs på den här virtuella datorn.

  1. Navigera till ditt nyligen skapade Key Vault.

  2. Välj Hemligheter och välj Lägg till.

  3. Välj Generera/importera

  4. På skärmen Skapa en hemlighet från Uppladdningsalternativ låter du Manuell vara markerad.

  5. Ange ett namn och värde för hemligheten.  Värdet kan vara vad du vill. 

  6. Låt aktiveringsdatum och förfallodatum vara tomt och sätt Aktiverad som Ja

  7. Välj Skapa för att skapa hemligheten.

    Skärmbild som visar hur du skapar en hemlighet.

Bevilja åtkomst

Den hanterade identitet som används av den virtuella datorn måste beviljas åtkomst för att kunna läsa hemligheten som vi ska lagra i Key Vault.

  1. Navigera till ditt nyligen skapade Key Vault

  2. Välj Åtkomstprincip på menyn till vänster.

  3. Välj Lägg till åtkomstprincip

    Skärmbild som visar skärmen Åtkomstprincip för Nyckelvalv.

  4. I avsnittet Lägg till åtkomstprincip går du till Konfigurera från mall (valfritt) och väljer Hemlig hantering på den nedrullningsbara menyn.

  5. Välj Välj huvudkonto och ange namnet på den virtuella dator som du skapade tidigare i sökfältet.  Välj den virtuella datorn i resultatlistan och välj Välj.

  6. Markera Lägga till

  7. Välj Spara.

Komma åt data

Det här avsnittet visar hur du hämtar en åtkomsttoken med hjälp av den virtuella datoridentiteten och använder den för att hämta hemligheten från Key Vault. Om du inte har PowerShell 4.3.1 eller senaste installerat måste du ladda ned och installera den senaste versionen.

Först använder vi den virtuella datorns systemtilldelade hanterade identitet för att hämta en åtkomsttoken för att autentisera till Key Vault:

  1. I portalen går du till Virtuella datorer och går till din virtuella Windows-dator och i Översikt väljer du Anslut.
  2. Ange ditt användarnamn och lösenord som du lade till när du skapade den virtuella Windows-datorn.  
  3. Nu när du har skapat en Anslut ion för fjärrskrivbord med den virtuella datorn öppnar du PowerShell i fjärrsessionen.  
  4. I PowerShell anropar du webbegäran för klientorganisationen om du vill få en token för den lokala värden i porten för den virtuella datorn.  

PowerShell-begäran:

$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"} 

Du kan se hur svaret ser ut nedan:

Skärmbild som visar en begäran med tokensvar.

Extrahera sedan åtkomsttoken från svaret.  

   $KeyVaultToken = $Response.access_token

Slutligen använder du PowerShell-kommandot Invoke-WebRequest och hämtar hemligheten som du skapade tidigare i Key Vault, och skickar ditt åtkomsttoken i auktoriseringsrubriken.  Du behöver URL:en till ditt Key Vault, som finns i avsnittet Essentials på Key Vault-sidan Översikt.  

Invoke-RestMethod -Uri https://<your-key-vault-URL>/secrets/<secret-name>?api-version=2016-10-01 -Method GET -Headers @{Authorization="Bearer $KeyVaultToken"}

Svaret ser ut så här:

  value       id                                                                                    attributes
  -----       --                                                                                    ----------
  'My Secret' https://mi-lab-vault.vault.azure.net/secrets/mi-test/50644e90b13249b584c44b9f712f2e51 @{enabled=True; created=16…

När du har hämtat hemligheten från Key Vault kan du använda den och autentisera mot en tjänst som kräver ett namn och lösenord.

Rensa resurser

När du vill rensa resurserna loggar du in på Azure-portalen, väljer Resursgrupper, letar upp och väljer den resursgrupp som skapades i den här självstudien (till exempel mi-test) och använder sedan kommandot Ta bort resursgrupp .

Du kan också rensa resurser via PowerShell eller CLI

Nästa steg

I den här självstudien har du lärt dig hur du använder en systemtilldelad hanterad identitet för en virtuell Windows-dator för att få åtkomst till Azure Key Vault. Mer information om Azure Key Vault finns i: