Vad är hanterade identiteter för Azure-resurser?

En vanlig utmaning för utvecklare är hanteringen av hemligheter, autentiseringsuppgifter, certifikat och nycklar som används för att skydda kommunikationen mellan tjänster. Hanterade identiteter eliminerar behovet av att utvecklare hanterar dessa autentiseringsuppgifter.

Även om utvecklare på ett säkert sätt kan lagra hemligheterna i Azure Key Vault behöver tjänsterna ett sätt att komma åt Azure Key Vault. Hanterade identiteter ger en automatiskt hanterad identitet i Azure Active Directory (Azure AD) som program kan använda vid anslutning till resurser som stöder autentisering med Azure AD. Program kan använda hanterade identiteter för att hämta Azure AD-token utan att behöva hantera några autentiseringsuppgifter.

Följande video visar hur du kan använda hanterade identiteter:

Här är några av fördelarna med att använda hanterade identiteter:

  • Du behöver inte hantera autentiseringsuppgifter. Autentiseringsuppgifter är inte ens tillgängliga för dig.
  • Du kan använda hanterade identiteter för att autentisera till alla resurser som stöder Azure AD autentisering, inklusive dina egna program.
  • Hanterade identiteter kan användas utan extra kostnad.

Anteckning

Hanterade identiteter för Azure-resurser är det nya namnet på tjänsten som tidigare hade namnet Hanterad tjänstidentitet (MSI).

Hanterade identitetstyper

Det finns två typer av hanterade identiteter:

  • Systemtilldelad. Med vissa Azure-resurser, till exempel virtuella datorer, kan du aktivera en hanterad identitet direkt på resursen. När du aktiverar en systemtilldelad hanterad identitet:

    • Ett tjänsthuvudnamn av en särskild typ skapas i Azure AD för identiteten. Tjänstens huvudnamn är kopplat till livscykeln för den Azure-resursen. När Azure-resursen tas bort tar Azure automatiskt bort tjänstens huvudnamn åt dig.
    • Det är bara den Azure-resursen som kan använda den här identiteten för att begära token från Azure AD.
    • Du tillåter att den hanterade identiteten har åtkomst till en eller flera tjänster.
    • Namnet på det systemtilldelade tjänstens huvudnamn är alltid samma som namnet på den Azure-resurs som den skapas för. För ett distributionsfack är <app-name>/slots/<slot-name>namnet på dess systemtilldelade identitet .
  • Användartilldelad. Du kan också skapa en hanterad identitet som en fristående Azure-resurs. Du kan skapa en användartilldelad hanterad identitet och tilldela den till en eller flera Azure-resurser. När du aktiverar en användartilldelad hanterad identitet:

    • Ett tjänsthuvudnamn av en särskild typ skapas i Azure AD för identiteten. Tjänstens huvudnamn hanteras separat från de resurser som använder det.
    • Användartilldelade identiteter kan användas av flera resurser.
    • Du tillåter att den hanterade identiteten har åtkomst till en eller flera tjänster.

I följande tabell visas skillnaderna mellan de två typerna av hanterade identiteter:

Egenskap Systemtilldelad hanterad identitet Användartilldelad hanterad identitet
Skapa Skapades som en del av en Azure-resurs (till exempel Azure Virtual Machines eller Azure App Service). Skapad som en fristående Azure-resurs.
Livscykel Delad livscykel med Azure-resursen som den hanterade identiteten skapas med.
När den överordnade resursen tas bort tas även den hanterade identiteten bort.
Oberoende livscykel.
Måste tas bort uttryckligen.
Dela mellan Azure-resurser Det går inte att dela.
Den kan bara associeras med en enda Azure-resurs.
Kan delas.
Samma användartilldelade hanterade identitet kan associeras med mer än en Azure-resurs.
Vanliga användarsituationer Arbetsbelastningar som finns i en enda Azure-resurs.
Arbetsbelastningar som behöver oberoende identiteter.
Till exempel ett program som körs på en enda virtuell dator.
Arbetsbelastningar som körs på flera resurser och kan dela en enda identitet.
Arbetsbelastningar som behöver förauktorisering till en säker resurs som en del av ett etableringsflöde.
Arbetsbelastningar där resurser återanvänds ofta, men behörigheter bör förbli konsekventa.
Till exempel en arbetsbelastning där flera virtuella datorer behöver åtkomst till samma resurs.

Hur använder jag hanterade identiteter för Azure-resurser?

Du kan använda hanterade identiteter genom att följa stegen nedan:

  1. Skapa en hanterad identitet i Azure. Du kan välja mellan systemtilldelad hanterad identitet eller användartilldelad hanterad identitet.
    1. När du använder en användartilldelad hanterad identitet tilldelar du den hanterade identiteten till Azure-källresursen, till exempel en virtuell dator, Azure Logic App eller en Azure-webbapp.
  2. Auktorisera den hanterade identiteten så att den har åtkomst till "måltjänsten".
  3. Använd den hanterade identiteten för att komma åt en resurs. I det här steget kan du använda Azure SDK med Azure.Identity-biblioteket. Vissa "källresurser" erbjuder anslutningsappar som vet hur du använder hanterade identiteter för anslutningarna. I så fall använder du identiteten som en funktion i den "källresursen".

Vilka Azure-tjänster stöder funktionen?

Hanterade identiteter för Azure-resurser kan användas för att autentisera till tjänster som stöder Azure AD-autentisering. En lista över Azure-tjänster som stöds finns i tjänster som stöder hanterade identiteter för Azure-resurser.

Vilka åtgärder kan jag utföra med hanterade identiteter?

Med resurser som stöder systemtilldelade hanterade identiteter kan du:

Om du väljer en användartilldelad hanterad identitet i stället:

Åtgärder för hanterade identiteter kan utföras med hjälp av en Azure Resource Manager-mall, Azure Portal, Azure CLI, PowerShell och REST-API:er.

Nästa steg