Migrieren eines vorhandenen ausführenden Kontos zu einer verwalteten Identität
Wichtig
Ausführende Azure Automation-Konten, einschließlich der klassischen ausführenden Konten, wurden am 30. September 2023 eingestellt und durch Managed Identities ersetzt. Sie können keine ausführenden Konten mehr über das Azure-Portal erstellen oder verlängern.
Weitere Informationen zum Migrationsrhythmus und zur Supportzeitachse für die Erstellung von ausführenden Konten und für die Verlängerung von Zertifikaten finden Sie in den häufig gestellten Fragen.
Ausführende Konten in Azure Automation bieten Authentifizierung für die Verwaltung von Ressourcen, die über Azure Resource Manager oder im klassischen Bereitstellungsmodell bereitgestellt wurden. Bei der Erstellung eines ausführenden Kontos wird eine Microsoft Entra-Anwendung registriert und ein selbstsigniertes Zertifikat generiert. Das Zertifikat ist ein Monat lang gültig. Die monatliche Verlängerung des Zertifikats vor Ablauf der Gültigkeitsdauer hält das Automation-Konto funktionsfähig, verursacht aber zusätzlichen Aufwand.
Sie können Automation-Konten jetzt so konfigurieren, dass sie eine verwaltete Identität verwenden (die Standardoption beim Erstellen eines Automation-Kontos). Mit diesem Feature kann sich ein Automation-Konto bei Azure-Ressourcen authentifizieren, ohne dass Anmeldeinformationen ausgetauscht werden müssen. Bei einer verwalteten Identität entfällt der Mehraufwand der Verlängerung des Zertifikats oder der Verwaltung des Dienstprinzipals.
Eine verwaltete Identität kann systemseitig oder benutzerseitig zugewiesen werden. Wenn ein neues Automation-Konto erstellt wird, wird eine systemseitig zugewiesene verwaltete Identität aktiviert.
Voraussetzungen
Bevor Sie von einem Run As-Konto oder einem klassischen Run As-Konto zu einer verwalteten Identität migrieren:
Erstellen Sie eine systemseitig zugewiesene oder eine benutzerseitig zugewiesene verwaltete Identität, oder erstellen Sie beide Typen. Weitere Informationen zu den Unterschieden finden Sie unter Typen verwalteter Identitäten.
Hinweis
- Benutzerseitig zugewiesene Identitäten werden nur für Cloudaufträge unterstützt. Es ist nicht möglich, die benutzerseitig verwaltete Identität des Automation-Kontos für einen Hybrid-Runbook Worker zu verwenden. Um Hybridaufträge zu verwenden, müssen Sie systemseitig zugewiesene Identitäten erstellen.
- Es gibt zwei Möglichkeiten, verwaltete Identitäten in Hybrid Runbook Worker-Skripts zu verwenden: entweder die systemseitig zugewiesene verwaltete Identität für das Automation-Konto oder die verwaltete Identität eines virtuellen Azure-Computers für einen als Hybrid Runbook Worker ausgeführten virtuellen Azure-Computer.
- Benutzerseitig zugewiesene verwaltete Identitäten und systemseitig zugewiesene verwaltete Identitäten von virtuellen Computern können nicht in einem Automation-Konto verwendet werden, das mit der verwalteten Identität eines Automation-Kontos konfiguriert ist. Wenn Sie die verwaltete Identität des Automation-Kontos aktivieren, können Sie nur die systemseitig zugewiesene verwaltete Identität des Automation-Kontos und nicht die verwaltete Identität des virtuellen Computers verwenden. Weitere Informationen finden Sie unter Verwenden der Runbookauthentifizierung mit verwalteten Identitäten.
Weisen Sie der verwalteten Identität für den Zugriff auf die Azure-Ressourcen dieselbe Rolle zu, über die das ausführende Konto verfügt. Verwenden Sie dieses Skript, um die vom System zugewiesene Identität in einem Automatisierungskonto zu aktivieren und den gleichen Satz von Berechtigungen zuzuweisen, die in Azure Automation Run As-Konto der vom System zugewiesenen Identität des Automatisierungskontos vorhanden sind.
Beispiel: Wenn das Automation-Konto nur zum Starten oder Beenden eines virtuellen Azure-Computers erforderlich ist, dann müssen die dem ausführenden Konto zugewiesenen Berechtigungen nur zum Starten oder Beenden des virtuellen Azure-Computers bestimmt sein. Weisen Sie ebenso reine Lesezugriffsberechtigungen zu, wenn ein Runbook aus Azure Blob Storage liest. Weitere Informationen finden Sie unter Azure Automation-Sicherheitsrichtlinien.
Wenn Sie Classic Run As-Konten verwenden, stellen Sie sicher, dass Sie Ressourcen migriert haben, die über das klassische Bereitstellungsmodell zu Azure Resource Manager bereitgestellt wurden.
Verwenden Sie dieses Skript, um herauszufinden, welche Automation-Konten ein ausführendes Konto verwenden. Wenn Ihre Azure Automation-Konten ein ausführendes Konto enthalten, ist diesem standardmäßig die integrierte Rolle „Mitwirkender“ zugewiesen. Sie können das Skript verwenden, um die ausführenden Azure Automation-Konten zu überprüfen und festzustellen, ob ihre Rollenzuweisung der Standardeinstellung entspricht oder ob eine andere Rollendefinition verwendet wird.
Verwenden Sie dieses Skript, um herauszufinden, ob alle Runbooks in Ihrem Automatisierungskonto das Run As-Konto verwenden.
Migrieren eines ausführenden Automation-Kontos zu einer verwalteten Identität
Führen Sie die folgenden Schritte aus, um von einem ausführenden Automation-Run As-Konto oder Classic Run As-Konto zu einer verwalteten Identität für Ihre Runbookauthentifizierung zu migrieren:
Ändern Sie den Runbookcode so, dass eine verwaltete Identität verwendet wird.
Es wird empfohlen, die verwaltete Identität zu testen, um zu überprüfen, ob das Runbook wie erwartet funktioniert. Erstellen Sie dazu eine Kopie Ihres Produktionsrunbooks. Aktualisieren Sie Code Ihres Testrunbooks, um sich mithilfe der verwalteten Identität zu authentifizieren. Diese Methode stellt sicher, dass Sie in Ihrem Produktionsrunbook
AzureRunAsConnection
nicht außer Kraft setzen und die vorhandene Azure Automation-Instanz beschädigen. Nachdem Sie sicher sind, dass der Runbookcode wie erwartet über die verwaltete Identität ausgeführt wird, aktualisieren Sie Ihr Produktionsrunbook so, dass die verwaltete Identität verwendet wird.Verwenden Sie für die Unterstützung der verwalteten Identität das Cmdlet
Connect-AzAccount
. Weitere Informationen zu diesem Cmdlet finden Sie in der PowerShell-Referenz unter Connect-AzAccount.- Wenn Sie
Az
-Module verwenden, aktualisieren Sie auf die neueste Version, indem Sie die Schritte im Artikel Aktualisieren von Azure PowerShell-Modulen ausführen. - Wenn Sie AzureRM-Module verwenden, aktualisieren Sie
AzureRM.Profile
auf die neueste Version, und ersetzen Sie es durch dasAdd-AzureRMAccount
-Cmdlet mitConnect-AzureRMAccount –Identity
.
Verwenden Sie die Beispielskripts, um die vor der Verwendung von verwalteten Identitäten erforderlichen Änderungen am Runbookcode zu verstehen.
- Wenn Sie
Wenn Sie sicher sind, dass das Runbook mit verwalteten Identitäten erfolgreich ausgeführt wird, können Sie das ausführende Konto problemlos löschen, sofern kein anderes Runbook dieses Konto verwendet.
Beispielskripts
Die folgenden Beispiele für Runbookskripts rufen die Resource Manager-Ressourcen mithilfe des ausführenden Kontos (Dienstprinzipals) und der verwalteten Identität ab. Sie würden den Unterschied im Runbook-Code am Anfang des Runbook feststellen, wo er sich für die Ressource authentifiziert.
- Systemseitig zugewiesene verwaltete Identität
- Benutzerseitig zugewiesene verwaltete Identität
- Run As-Konto
Hinweis
Aktivieren Sie entsprechende RBAC-Berechtigungen für die Systemidentität dieses Automation-Kontos. Andernfalls kann das Runbook fehlschlagen.
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 ("")
}
Client-ID der benutzerseitig zugewiesenen Identität ansehen
Wählen Sie auf der Seite Ihres Automation-Kontos unter Kontoeinstellungen die Option Identität aus.
Wählen Sie auf der Registerkarte Vom Benutzer zugewiesen die Identität des Benutzers aus.
Wechseln Sie zu Übersicht>Essentials, um die Client-ID anzuzeigen.
Grafische Runbooks
Überprüfen, ob ein ausführendes Konto in grafischen Runbooks verwendet wird
Überprüfen Sie alle Aktivitäten im Runbook, um festzustellen, ob sie beim Aufrufen von Anmelde-Cmdlets oder Aliasen das ausführende Konto verwenden, z. B.
Add-AzRmAccount/Connect-AzRmAccount/Add-AzAccount/Connect-AzAccount
.Untersuchen Sie die Parameter, die das Cmdlet verwendet.
Für die Verwendung mit dem Run As-Konto verwendet das Cmdlet den Parameter
ServicePrinicipalCertificate
, der aufApplicationId
festgelegt ist.CertificateThumbprint
stammt vonRunAsAccountConnection
.
Bearbeiten eines grafischen Runbooks zur Verwendung einer verwalteten Identität
Sie müssen die verwaltete Identität testen, um sicherzustellen, dass das grafische Runbook erwartungsgemäß funktioniert. Erstellen Sie eine Kopie Ihres Produktionsrunbooks zur Verwendung der verwalteten Identität, und aktualisieren Sie dann den Code des grafischen Testrunbooks, um sich mithilfe der verwalteten Identität zu authentifizieren. Sie können diese Funktionen zu einem grafischen Runbook hinzufügen, indem Sie das Cmdlet Connect-AzAccount
hinzufügen.
Die folgenden Schritte enthalten ein Beispiel, das zeigt, wie ein grafisches Runbook, das ein ausführendes Konto verwendet, verwaltete Identitäten verwenden kann:
Melden Sie sich beim Azure-Portal an.
Öffnen Sie das Automation-Konto, und wählen Sie Prozessautomatisierung>Runbooks aus.
Wählen Sie ein Runbook aus. Wählen Sie beispielsweise das Runbook Azure V2-VMs starten aus der Liste aus und wählen Sie dann Bearbeiten aus, oder wechseln Sie zu Katalog durchsuchen und wählen Sie Azure V2-VMs starten aus.
Ersetzen Sie die Verbindung für das ausführende Konto, die
AzureRunAsConnection
verwendet, und das Verbindungsobjekt, das intern das PowerShell-CmdletGet-AutomationConnection
verwendet, durch das CmdletConnect-AzAccount
.Wählen Sie Löschen aus, um die
Get Run As Connection
- undConnect to Azure
-Aktivitäten zu löschen.Wählen Sie im linken Bereich unter RUNBOOK CONTROL Code und dann Zu Canvas hinzufügen aus.
Bearbeiten Sie die Codeaktivität, weisen Sie geeignete Bezeichnungsnamen zu und wählen Sie Aktivitätslogik erstellen aus.
Geben Sie auf der Code-Editor-Seite den folgenden PowerShell-Code ein, und wählen Sie OK aus.
try { Write-Output ("Logging in to Azure...") Connect-AzAccount -Identity } catch { Write-Error -Message $_.Exception throw $_.Exception }
Verbinden Sie die neue Aktivität mit den Aktivitäten, die zuvor mit Azure Connect verbunden wurden, und speichern Sie das Runbook.
Im Runbook Azure V2-VMs starten im Runbook-Katalog müssen Sie beispielsweise die Get Run As Connection
- und Connect to Azure
-Aktivitäten durch die Codeaktivität ersetzen, die das oben beschriebene Cmdlet verwendet Connect-AzAccount
.
Weitere Informationen finden Sie im Beispiel für das Runbook AzureAutomationTutorialWithIdentityGraphical, das mit dem Automation-Konto erstellt wird.
Hinweis
AzureRM PowerShell-Module werden am 29. Februar 2024 eingestellt. Wenn Sie AzureRM PowerShell-Module in grafischen Runbooks verwenden, müssen Sie diese aktualisieren, um Az PowerShell-Module zu verwenden. Weitere Informationen
Nächste Schritte
Lesen Sie die häufig gestellten Fragen zum Migrieren zu verwalteten Identitäten
Wenn Ihre Runbooks nicht erfolgreich abgeschlossen werden, lesen Sie Behandlung von Problemen mit der verwalteten Azure Automation-Identität.
Weitere Informationen zu systemseitig zugewiesenen verwalteten Identitäten finden Sie unter Verwenden einer systemseitig zugewiesenen verwalteten Identität für ein Azure Automation-Konto.
Weitere Informationen zu benutzerseitig zugewiesenen verwalteten Identitäten finden Sie unter Verwenden einer benutzerseitig zugewiesenen verwalteten Identität für ein Azure Automation-Konto.
Informationen zur Sicherheit von Azure Automation-Konten finden Sie unter Übersicht über die Azure Automation-Kontoauthentifizierung.