Migrowanie z istniejącego konta Uruchom jako do tożsamości zarządzanych

Ważne

Konta Uruchom jako usługi Azure Automation, w tym klasyczne konta Uruchom jako, zostały wycofane 30 września 2023 r. i zastąpione tożsamościami zarządzanymi. Nie będzie już można tworzyć ani odnawiać kont Uruchom jako za pośrednictwem witryny Azure Portal.

Aby uzyskać więcej informacji na temat cykli migracji i osi czasu pomocy technicznej dotyczącej tworzenia konta Uruchom jako i odnawiania certyfikatów, zobacz często zadawane pytania.

Konta Uruchom jako w usłudze Azure Automation zapewniają uwierzytelnianie na potrzeby zarządzania zasobami wdrożonymi za pośrednictwem usługi Azure Resource Manager lub klasycznego modelu wdrażania. Za każdym razem, gdy zostanie utworzone konto Uruchom jako, zostanie zarejestrowana aplikacja Firmy Microsoft Entra i zostanie wygenerowany certyfikat z podpisem własnym. Certyfikat jest ważny przez jeden miesiąc. Odnawianie certyfikatu co miesiąc przed wygaśnięciem powoduje, że konto usługi Automation działa, ale zwiększa obciążenie.

Możesz teraz skonfigurować dla kont usługi Automation używanie tożsamości zarządzanej, która jest opcją domyślną podczas tworzenia konta usługi Automation. Dzięki tej funkcji konto usługi Automation może uwierzytelniać się w zasobach platformy Azure bez konieczności wymiany poświadczeń. Tożsamość zarządzana usuwa nadmierne obciążenie związane z odnawianiem certyfikatu lub zarządzaniem jednostką usługi.

Tożsamość zarządzana może być przypisana przez system lub przypisana przez użytkownika. Po utworzeniu nowego konta usługi Automation zostanie włączona tożsamość zarządzana przypisana przez system.

Wymagania wstępne

Przed przeprowadzeniem migracji z konta Uruchom jako lub klasycznego konta Uruchom jako do tożsamości zarządzanej:

  1. Utwórz tożsamość zarządzaną przypisaną przez system lub użytkownika albo utwórz oba typy. Aby dowiedzieć się więcej o różnicach między nimi, zobacz Typy tożsamości zarządzanych.

    Uwaga

    • Tożsamości przypisane przez użytkownika są obsługiwane tylko w przypadku zadań w chmurze. Nie można używać tożsamości zarządzanej przez użytkownika konta usługi Automation w hybrydowym procesie roboczym elementu Runbook. Aby używać zadań hybrydowych, należy utworzyć tożsamości przypisane przez system.
    • Istnieją dwa sposoby używania tożsamości zarządzanych w hybrydowych skryptach procesu roboczego elementu Runbook: tożsamość zarządzana przypisana przez system dla konta usługi Automation lub tożsamość zarządzana maszyny wirtualnej platformy Azure uruchomiona jako hybrydowy proces roboczy elementu Runbook.
    • Tożsamość zarządzana przypisana przez użytkownika maszyny wirtualnej i tożsamość zarządzana przypisana przez system maszyny wirtualnej nie będzie działać na koncie usługi Automation skonfigurowanym przy użyciu tożsamości zarządzanej konta usługi Automation. Po włączeniu tożsamości zarządzanej konta usługi Automation można użyć tylko przypisanej przez system tożsamości zarządzanej konta usługi Automation, a nie tożsamości zarządzanej maszyny wirtualnej. Aby uzyskać więcej informacji, zobacz Używanie uwierzytelniania elementu Runbook z tożsamościami zarządzanymi.
  2. Przypisz tę samą rolę do tożsamości zarządzanej, aby uzyskać dostęp do zasobów platformy Azure pasujących do konta Uruchom jako. Użyj tego skryptu , aby włączyć tożsamość przypisaną przez system na koncie usługi Automation i przypisać ten sam zestaw uprawnień znajdujących się w usłudze Azure Automation Uruchom jako konto do tożsamości przypisanej przez system konta usługi Automation.

    Jeśli na przykład konto usługi Automation jest wymagane tylko do uruchamiania lub zatrzymywania maszyny wirtualnej platformy Azure, uprawnienia przypisane do konta Uruchom jako powinny być ograniczone tylko do uruchamiania lub zatrzymywania maszyny wirtualnej. Podobnie jeśli element runbook odczytuje z usługi Azure Blob Storage, przypisz uprawnienia tylko do odczytu. Aby uzyskać więcej informacji, zobacz wytyczne dotyczące zabezpieczeń w usłudze Azure Automation.

  3. Jeśli używasz klasycznych kont Uruchom jako, upewnij się, że przeprowadzono migrację zasobów wdrożonych za pomocą klasycznego modelu wdrażania do usługi Azure Resource Manager.

  4. Użyj tego skryptu , aby dowiedzieć się, które konta usługi Automation używają konta Uruchom jako. Jeśli konta usługi Azure Automation zawierają konto Uruchom jako, ma domyślnie przypisaną do niego wbudowaną rolę współautora. Możesz użyć skryptu, aby sprawdzić konta Uruchom jako usługi Azure Automation i określić, czy ich przypisanie roli jest domyślne lub czy zostało zmienione na inną definicję roli.

  5. Użyj tego skryptu , aby dowiedzieć się, czy wszystkie elementy Runbook na koncie usługi Automation korzystają z konta Uruchom jako.

Migrowanie z konta Uruchom jako usługi Automation do tożsamości zarządzanej

Aby przeprowadzić migrację z konta Uruchom jako usługi Automation lub klasycznego konta Uruchom jako do tożsamości zarządzanej na potrzeby uwierzytelniania elementu Runbook, wykonaj następujące kroki:

  1. Zmień kod elementu Runbook, aby użyć tożsamości zarządzanej.

    Zalecamy przetestowanie tożsamości zarządzanej w celu sprawdzenia, czy element runbook działa zgodnie z oczekiwaniami, przez utworzenie kopii produkcyjnego elementu runbook. Zaktualizuj kod testowego elementu Runbook, aby uwierzytelnić się przy użyciu tożsamości zarządzanej. Ta metoda gwarantuje, że nie zastąpisz AzureRunAsConnection produkcyjnego elementu Runbook i nie przerwisz istniejącego wystąpienia usługi Automation. Po upewnieniu się, że kod elementu runbook działa zgodnie z oczekiwaniami za pośrednictwem tożsamości zarządzanej, zaktualizuj produkcyjny element runbook, aby używał tożsamości zarządzanej.

    W przypadku obsługi tożsamości zarządzanej użyj polecenia cmdlet Connect-AzAccount. Aby dowiedzieć się więcej o tym poleceniu cmdlet, zobacz Connect-AzAccount w dokumentacji programu PowerShell.

    • Jeśli używasz Az modułów, przeprowadź aktualizację do najnowszej wersji, wykonując kroki opisane w artykule Aktualizowanie modułów programu Azure PowerShell.
    • Jeśli używasz modułów AzureRM, zaktualizuj AzureRM.Profile do najnowszej wersji i zastąp ją za pomocą polecenia cmdlet Add-AzureRMAccount z Connect-AzureRMAccount –Identity.

    Aby zrozumieć zmiany w kodzie elementu Runbook, które są wymagane przed użyciem tożsamości zarządzanych, użyj przykładowych skryptów.

  2. Jeśli masz pewność, że element Runbook działa pomyślnie przy użyciu tożsamości zarządzanych, możesz bezpiecznie usunąć konto Uruchom jako, jeśli żaden inny element Runbook nie korzysta z tego konta.

Przykładowe skrypty

Poniższe przykłady skryptów elementu Runbook pobierają zasoby usługi Resource Manager przy użyciu konta Uruchom jako (jednostki usługi) i tożsamości zarządzanej. Zauważysz różnicę w kodzie elementu Runbook na początku elementu Runbook, w którym uwierzytelnia się względem zasobu.

Uwaga

Włącz odpowiednie uprawnienia kontroli dostępu opartej na rolach dla tożsamości systemowej tego konta usługi Automation. W przeciwnym razie element Runbook może zakończyć się niepowodzeniem.

try
{
    "Logging in to Azure..."
    Connect-AzAccount -Identity
}
catch {
    Write-Error -Message $_.Exception
    throw $_.Exception
}

#Get all Resource Manager resources from all resource groups
$ResourceGroups = Get-AzResourceGroup

foreach ($ResourceGroup in $ResourceGroups)
{    
    Write-Output ("Showing resources in resource group " + $ResourceGroup.ResourceGroupName)
    $Resources = Get-AzResource -ResourceGroupName $ResourceGroup.ResourceGroupName
    foreach ($Resource in $Resources)
    {
        Write-Output ($Resource.Name + " of type " +  $Resource.ResourceType)
    }
    Write-Output ("")
}

Wyświetlanie identyfikatora klienta tożsamości przypisanej przez użytkownika

  1. Na koncie usługi Automation w obszarze Konto Ustawienia wybierz pozycję Tożsamość.

  2. Na karcie Przypisane przez użytkownika wybierz pozycję Tożsamość przypisana przez użytkownika.

    Screenshot that shows the navigation path to view client ID.

  3. Przejdź do sekcji Przegląd>Podstawy, aby wyświetlić identyfikator klienta.

    Screenshot that shows how to view a client ID.

Graficzne elementy runbook

Sprawdzanie, czy konto Uruchom jako jest używane w graficznych elementach Runbook

  1. Sprawdź poszczególne działania w elemercie Runbook, aby sprawdzić, czy używa konta Uruchom jako podczas wywoływania dowolnych poleceń cmdlet logowania lub aliasów, takich jak Add-AzRmAccount/Connect-AzRmAccount/Add-AzAccount/Connect-AzAccount.

    Screenshot that illustrates checking if a graphical runbook uses a Run As account.

  2. Sprawdź parametry używane przez polecenie cmdlet.

    Screenshot that shows examining the parameters used by a cmdlet.

    Do użycia z kontem Uruchom jako polecenie cmdlet używa parametru ustawionego ServicePrinicipalCertificate na ApplicationId. CertificateThumbprint będzie pochodzić z RunAsAccountConnection.

    Screenshot that shows parameter sets.

Edytowanie graficznego elementu Runbook w celu korzystania z tożsamości zarządzanej

Należy przetestować tożsamość zarządzaną, aby sprawdzić, czy graficzny element Runbook działa zgodnie z oczekiwaniami. Utwórz kopię produkcyjnego elementu Runbook, aby używać tożsamości zarządzanej, a następnie zaktualizuj testowy graficzny kod elementu Runbook w celu uwierzytelnienia przy użyciu tożsamości zarządzanej. Tę funkcję można dodać do graficznego elementu Runbook, dodając Connect-AzAccount polecenie cmdlet .

Poniższe kroki obejmują przykład pokazujący, jak graficzny element Runbook korzystający z konta Uruchom jako może używać tożsamości zarządzanych:

  1. Zaloguj się w witrynie Azure Portal.

  2. Otwórz konto usługi Automation, a następnie wybierz pozycję Elementy Runbook automatyzacji>procesów.

  3. Wybierz element Runbook. Na przykład wybierz element Runbook Start Azure V2 V2 VMs z listy, a następnie wybierz pozycję Edytuj lub przejdź do galerii przeglądania, a następnie wybierz pozycję Uruchom maszyny wirtualne platformy Azure v2.

    Screenshot of editing a graphical runbook.

  4. Zastąp połączenie Uruchom jako, które używa AzureRunAsConnection i element zawartości połączenia, który wewnętrznie używa polecenia cmdlet programu PowerShell Get-AutomationConnection za pomocą Connect-AzAccount polecenia cmdlet .

  5. Wybierz pozycję Usuń , aby usunąć Get Run As Connection działania i Connect to Azure .

    Screenshot to connect to the Azure activities.

  6. W panelu po lewej stronie w obszarze RUNBOOK CONTROL wybierz pozycję Kod , a następnie wybierz pozycję Dodaj do kanwy.

    Screenshot to select code and add it to the canvas.

  7. Edytuj działanie kodu, przypisz dowolną odpowiednią nazwę etykiety, a następnie wybierz pozycję Utwórz logikę działania.

    Screenshot to edit code activity.

  8. Na stronie Edytor kodu wprowadź następujący kod programu PowerShell i wybierz przycisk OK.

    try 
    { 
       Write-Output ("Logging in to Azure...") 
       Connect-AzAccount -Identity 
    } 
    catch { 
       Write-Error -Message $_.Exception 
       throw $_.Exception 
    } 
    
  9. Połączenie nowe działanie do działań, które zostały połączone przez Połączenie z platformą Azure wcześniej i zapisz element Runbook.

    Screenshot to connect new activity to activities.

Na przykład w elemencie Runbook Start Azure V2 V2 VMs w galerii elementów Runbook należy zastąpić Get Run As Connection działania i Connect to Azure działaniem kodu, które używa Connect-AzAccount polecenia cmdlet zgodnie z powyższym opisem. Aby uzyskać więcej informacji, zobacz przykładową nazwę elementu runbook AzureAutomationTutorialWithIdentityGraphical utworzoną przy użyciu konta usługi Automation.

Uwaga

Moduły azureRM PowerShell są wycofywalne 29 lutego 2024 r. Jeśli używasz modułów programu AzureRM PowerShell w graficznych elementach Runbook, musisz je uaktualnić, aby używać modułów Az programu PowerShell. Dowiedz się więcej.

Następne kroki