Sdílet prostřednictvím


Kurz: Použití spravované identity přiřazené uživatelem na virtuálním počítači pro přístup k Azure Resource Manageru

V tomto rychlém startu se dozvíte, jak použít spravovanou identitu přiřazenou systémem jako identitu virtuálního počítače pro přístup k rozhraní API Azure Resource Manageru. Spravované identity pro prostředky Azure automaticky spravuje Azure a umožňují ověřování ve službách, které podporují ověřování Microsoft Entra, aniž byste museli do kódu vkládat přihlašovací údaje.

Spravované identity pro prostředky Azure jsou funkcí ID Microsoft Entra. Každá ze služeb Azure, které podporují spravované identity pro prostředky Azure, se řídí vlastní časovou osou. Než začnete, nezapomeňte zkontrolovat stav dostupnosti spravovaných identit pro váš prostředek a známé problémy.

Získáte následující informace:

  • Udělení přístupu virtuálnímu počítači ke skupině prostředků v Azure Resource Manageru
  • Získání přístupového tokenu pomocí identity virtuálního počítače a jeho použití k volání Azure Resource Manageru

Požadavky

Povolení spravované identity přiřazené systémem

Povolení spravované identity přiřazené systémem je prostředí jedním kliknutím. Můžete ho buď povolit při vytváření virtuálního počítače, nebo ve vlastnostech existujícího virtuálního počítače.

Snímek obrazovky ukazuje kartu Přiřazený systém pro virtuální počítač, kde můžete zapnout stav přiřazeného systému.

Povolení spravované identity přiřazené systémem na novém virtuálním počítači:

  1. Přihlaste se k portálu Azure Portal.

  2. Vytvoření virtuálního počítače s povolenou identitou přiřazenou systémem

Udělení přístupu virtuálnímu počítači ke skupině prostředků v Resource Manageru

Tip

Postup v tomto článku se může mírně lišit v závislosti na portálu, od který začínáte.

Pomocí spravovaných identit pro prostředky Azure může vaše aplikace přistupovat k tokenům pro ověřování prostředků, které podporují ověřování Microsoft Entra. Rozhraní API Azure Resource Manageru podporuje ověřování Microsoft Entra, které uděluje identitě virtuálního počítače přístup k prostředku v Azure Resource Manageru; v tomto případě přístup ke skupině prostředků, kterou virtuální počítač obsahuje. Přiřaďte roli Čtenář spravované identitě v oboru skupiny prostředků.

  1. Přihlaste se k webu Azure Portal pomocí účtu správce.
  2. Přejděte ke kartě Skupiny prostředků.
  3. Vyberte skupinu prostředků, ke které chcete udělit přístup spravované identity virtuálního počítače.
  4. Na levém panelu vyberte Řízení přístupu (IAM).
  5. Vyberte Přidat a pak vyberte Přidat přiřazení role.
  6. Na kartě Role vyberte Čtenář. Tato role umožňuje zobrazit všechny prostředky, ale neumožňuje provádět žádné změny.
  7. Na kartě Členové vyberte u možnosti Přiřadit přístup ke spravované identitě a pak vyberte + Vybrat členy.
  8. Ujistěte se, že je v rozevíracím seznamu Předplatné uvedené správné předplatné. A ve skupině prostředků vyberte Všechny skupiny prostředků.
  9. V rozevíracím seznamu Spravovat identitu vyberte Virtuální počítač.
  10. V rozevíracím seznamu Vyberte virtuální počítač s Windows a pak vyberte Uložit.

Získání přístupového tokenu

Použijte spravovanou identitu přiřazenou systémem virtuálního počítače a použijte ji k volání Azure Resource Manageru, abyste získali přístupový token.

K provedení těchto kroků budete potřebovat přístup k PowerShellu . Pokud PowerShell nemáte nainstalovaný, stáhněte si ho odtud.

  1. Na portálu přejděte na Virtuální počítače a přejděte na virtuální počítač s Windows.
  2. V části Přehled vyberte Připojení.
  3. Zadejte své Uživatelské jméno a Heslo, které jste přidali při vytváření virtuálního počítače s Windows. Tím se vytvoří Připojení vzdálené plochy s virtuálním počítačem.
  4. Otevřete PowerShell ve vzdálené relaci.
  5. Pomocí rutiny Invoke-WebRequest vytvořte požadavek na místní spravovanou identitu koncového bodu prostředků Azure.

Tento kód vygeneruje přístupový token pro Azure Resource Manager.

    $response = Invoke-WebRequest -Uri 'http://169.254.169.254/metadata/identity/oauth2/token?api-version=2018-02-01&resource=https://management.azure.com/' -Method GET -Headers @{Metadata="true"}

Poznámka:

Hodnota parametru prostředku musí být přesná shoda s tím, co očekává ID Microsoft Entra. Při použití ID prostředku Azure Resource Manageru musíte do identifikátoru URI zahrnout koncové lomítko.

Dále extrahujte úplnou odpověď, která je uložena jako řetězec ve formátu JSON (JavaScript Object Notation) v objektu $response .

$content = $response.Content | ConvertFrom-Json

Potom z odpovědi extrahujte přístupový token.

$ArmToken = $content.access_token
\```
    
Finally, call Azure Resource Manager using the access token. This example shows using the `Invoke-WebRequest` cmdlet to make the call to Azure Resource Manager and includes the access token in the Authorization header.
    
```powershell
(Invoke-WebRequest -Uri https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/<RESOURCE GROUP>?api-version=2016-06-01 -Method GET -ContentType "application/json" -Headers @{ Authorization ="Bearer $ArmToken"}).content

Poznámka:

V adrese URL se rozlišují malá a velká písmena, takže při pojmenování skupiny prostředků se ujistěte, že používáte přesné velká a malá písmena. V resourceGroups použijte také velká písmena "G".

Následující příkaz vrátí podrobnosti o skupině prostředků:

{"id":"/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/DevTest","name":"DevTest","location":"westus","properties":{"provisioningState":"Succeeded"}}

Požadavky

Tip

Postup v tomto článku se může mírně lišit v závislosti na portálu, od který začínáte.

Udělení přístupu virtuálnímu počítači ke skupině prostředků v Resource Manageru

Pomocí spravovaných identit pro prostředky Azure může vaše aplikace přistupovat k tokenům pro ověřování prostředků, které podporují ověřování Microsoft Entra. Rozhraní API Azure Resource Manageru podporuje ověřování Microsoft Entra, které uděluje identitě virtuálního počítače přístup k prostředku v Azure Resource Manageru; v tomto případě přístup ke skupině prostředků, kterou virtuální počítač obsahuje.

  1. Přihlaste se k webu Azure Portal pomocí účtu správce.

  2. Přejděte ke kartě Skupiny prostředků.

  3. Vyberte skupinu prostředků, ke které chcete udělit přístup spravované identity virtuálního počítače.

  4. Na levém panelu vyberte Řízení přístupu (IAM).

  5. Vyberte Přidat a pak vyberte Přidat přiřazení role.

  6. Na kartě Role vyberte Čtenář. Tato role umožňuje zobrazit všechny prostředky, ale neumožňuje provádět žádné změny.

  7. Na kartě Členové jako možnost Přiřadit přístup vyberte Spravovaná identita. Pak vyberte + Vybrat členy.

  8. Ujistěte se, že je v rozevíracím seznamu Předplatné uvedené správné předplatné. V případě skupiny prostředků vyberte Všechny skupiny prostředků.

  9. V rozevíracím seznamu Spravovat identitu vyberte Virtuální počítač.

  10. V rozevíracím seznamu vyberte virtuální počítač a pak vyberte Uložit.

    Snímek obrazovky znázorňující přidání role čtenáře do spravované identity

Získání přístupového tokenu

Použijte spravovanou identitu přiřazenou systémem virtuálního počítače a pomocí Resource Manageru získejte přístupový token.

K dokončení tohoto postupu potřebujete klienta SSH. Pokud používáte Windows, můžete použít klienta SSH v Subsystém Windows pro Linux. Pokud potřebujete pomoc při konfiguraci klíčů klienta SSH, přečtěte si, jak na počítači s Windows v Azure používat klíče SSH nebo jak na linuxových virtuálních počítačích v Azure vytvářet a používat pár veřejného a privátního klíče SSH.

  1. Na portálu přejděte na virtuální počítač s Linuxem a v přehledu vyberte Připojení.

  2. Připojte se vybraným klientem SSH k virtuálnímu počítači.

  3. V okně terminálu pomocí nástroje curl< a0/> vytvořte požadavek na místní spravované identity koncového bodu prostředků Azure, abyste získali přístupový token pro Azure Resource Manager.   Požadavek curl na přístupový token je uvedený níže.

curl 'http://169.254.169.254/metadata/identity/oauth2/token?api-version=2018-02-01&resource=https://management.azure.com/' -H Metadata:true

Poznámka:

Hodnota parametru resource musí být přesná shoda s tím, co očekává ID Microsoft Entra. V ID prostředku Resource Manageru musí být v identifikátoru URI koncové lomítko.

V odpovědi je přístupový token, který potřebujete pro přístup k Azure Resource Manageru.

Odpověď:

{
  "access_token":"eyJ0eXAiOi...",
  "refresh_token":"",
  "expires_in":"3599",
  "expires_on":"1504130527",
  "not_before":"1504126627",
  "resource":"https://management.azure.com",
  "token_type":"Bearer"
}

Tento přístupový token použijte pro přístup k Azure Resource Manageru; Pokud chcete například přečíst podrobnosti o skupině prostředků, ke které jste dříve udělili přístup k tomuto virtuálnímu počítači. Nahraďte hodnoty , <SUBSCRIPTION-ID>a <ACCESS-TOKEN> nahraďte hodnotami, <RESOURCE-GROUP>které jste vytvořili dříve.

Poznámka:

V adrese URL se rozlišují malá a velká písmena, proto se ujistěte, že používáte přesný případ, který jste použili dříve při pojmenování skupiny prostředků, a velká písmena "G" v části "resourceGroup".

curl https://management.azure.com/subscriptions/<SUBSCRIPTION-ID>/resourceGroups/<RESOURCE-GROUP>?api-version=2016-09-01 -H "Authorization: Bearer <ACCESS-TOKEN>" 

Odpověď zpět s konkrétními informacemi o skupině prostředků:

{
"id":"/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/DevTest",
"name":"DevTest",
"location":"westus",
"properties":
{
  "provisioningState":"Succeeded"
  }
} 

Další kroky

V tomto rychlém startu jste zjistili, jak pomocí spravované identity přiřazené systémem na virtuálním počítači získat přístup k rozhraní API Azure Resource Manageru. Další informace o Azure Resource Manageru najdete tady: