Verwalten von Anmeldeinformationen in Azure Automation
Ein Automation-Anmeldeinformationsobjekt enthält ein Objekt, das Sicherheitsanmeldeinformationen wie beispielsweise einen Benutzernamen und ein Kennwort umfasst. Runbooks und DSC-Konfigurationen verwenden Cmdlets, die ein PSCredential--Objekt für die Authentifizierung akzeptieren. Alternativ können sie den Benutzernamen und das Kennwort des PSCredential
-Objekts extrahieren, um diese einer Anwendung oder einem Dienst bereitzustellen, die eine Authentifizierung erfordern.
Hinweis
Zu den sicheren Objekten in Azure Automation gehören Anmeldeinformationen, Zertifikate, Verbindungen und verschlüsselte Variablen. Diese Objekte werden mithilfe eines eindeutigen Schlüssels verschlüsselt und in Azure Automation gespeichert, der für jedes Automation-Konto generiert wird. Azure Automation speichert den Schlüssel im vom System verwalteten Schlüsseltresor. Vor dem Speichern einer sicheren Ressource lädt Azure Automation den Schlüssel aus dem Schlüsseltresor und verwendet ihn dann zum Verschlüsseln der Ressource.
Hinweis
Informationen zum Anzeigen oder Löschen personenbezogener Daten finden Sie in den Allgemeinen Anträgen betroffener Personen zu der DSGVO, Azure-Anträge betroffener Personen zu der DSGVO oder Windows-Anträge betroffener Personen zu der DSGVO, je nach Ihrem jeweiligen Bereich und Ihren Anforderungen. Weitere Informationen zur DSGVO finden Sie im Abschnitt zur DSGVO im Microsoft Trust Center und im Abschnitt zur DSGVO im Service Trust Portal.
PowerShell-Cmdlets, die für den Zugriff auf Anmeldeinformationen verwendet werden
Über die Cmdlets in der folgenden Tabelle können Sie Anmeldeinformation für Automation mit PowerShell erstellen und verwalten. Diese sind im Lieferumfang der Az-Module enthalten.
Cmdlet | Beschreibung |
---|---|
Get-AzAutomationCredential | Ruft ein CredentialInfo-Objekt ab, das Metadaten über die Anmeldeinformationen enthält. Das Cmdlet ruft nicht das PSCredential -Objekt selbst ab. |
New-AzAutomationCredential | Erstellt ein neues Anmeldeinformationsobjekt. |
Remove-AzAutomationCredential | Entfernt ein Anmeldeinformationsobjekt. |
Set-AzAutomationCredential | Legt die Eigenschaften für ein vorhandenes Anmeldeinformationsobjekt fest. |
Andere Cmdlets, die für den Zugriff auf Anmeldeinformationen verwendet werden
Die Cmdlets in der folgenden Tabelle werden für den Zugriff auf Anmeldeinformationen in Runbooks und DSC-Konfigurationen verwendet.
Cmdlet | Beschreibung |
---|---|
Get-AutomationPSCredential |
Ruft ein PSCredential -Objekt zur Verwendung in einem Runbook oder einer DSC-Konfiguration ab. In den meisten Fällen sollten Sie dieses interne Cmdlet anstelle des Get-AzAutomationCredential -Cmdlets verwenden, da dieses nur Anmeldeinformationen abruft. Es ist in der Regel nicht hilfreich, diese Informationen an ein anderes Cmdlet zu übergeben. |
Get-Credential | Ruft Anmeldeinformationen mit einer Abfrage von Benutzername und Kennwort ab. Dieses Cmdlet ist Teil des Standardmoduls von Microsoft.PowerShell.Security. Weitere Informationen finden Sie unter Standardmodule. |
New-AzureAutomationCredential | Erstellt ein Anmeldeinformationsobjekt. Dieses Cmdlet ist Teil des Azure-Standardmoduls. Weitere Informationen finden Sie unter Standardmodule. |
Zum Abrufen von PSCredential
-Objekten in Ihrem Code müssen Sie das Orchestrator.AssetManagement.Cmdlets
-Modul importieren. Weitere Informationen finden Sie unter Verwalten von Modulen in Azure Automation.
Import-Module Orchestrator.AssetManagement.Cmdlets -ErrorAction SilentlyContinue
Hinweis
Vermeiden Sie die Verwendung von Variablen im Parameter Name
von Get-AutomationPSCredential
. Durch deren Verwendung kann die Ermittlung von Abhängigkeiten zwischen Runbooks oder DSC-Konfigurationen und Anmeldeinformationsobjekten zur Entwurfszeit erschwert werden.
Python-Funktionen, die auf Anmeldeinformationen zugreifen
Mit der Funktion in der folgenden Tabelle wird auf Anmeldeinformationen in einem Python 2- und Python 3-Runbook zugegriffen. Python 3-Runbooks sind derzeit als Vorschau verfügbar.
Funktion | Beschreibung |
---|---|
automationassets.get_automation_credential |
Ruft Informationen zu einem Anmeldeinformationsobjekt ab. |
Hinweis
Importieren Sie das Modul automationassets
oben im Python-Runbook, um auf die Ressourcenfunktionen zugreifen zu können.
Erstellen von neuen Anmeldeinformationsobjekten
Sie können ein neues Anmeldeinformationsobjekt im Azure-Portal oder mit Windows PowerShell erstellen.
Erstellen eines neuen Anmeldeinformationsobjekts über das Azure-Portal
Wählen Sie in Ihrem Azure Automation-Konto im linken Bereich Anmeldeinformationen unter Freigegebene Ressourcen aus.
Wählen Sie auf der Seite Anmeldeinformationen den Befehl Anmeldeinformationen hinzufügen aus.
Geben Sie im Bereich „Neue Anmeldeinformationen“ einen geeigneten Anmeldeinformationsnamen ein, der Ihre Benennungsstandards einhält.
Geben Sie Ihre Zugriffs-ID in das Feld Benutzername ein.
Geben Sie für beide Kennwortfelder Ihren geheimen Zugriffsschlüssel ein.
Wenn das Kontrollkästchen für mehrstufige Authentifizierung aktiviert ist, deaktivieren Sie es.
Klicken Sie auf Erstellen, um das neue Anmeldeinformationsobjekt zu speichern.
Hinweis
Azure Automation unterstützt keine Benutzerkonten, die mehrstufige Authentifizierung verwenden.
Erstellen eines neuen Anmeldeinformationsobjekts mithilfe von Windows PowerShell
Das folgenden Beispiel zeigt, wie Sie ein neues Automation-Anmeldeinformationsobjekt erstellen. Es wird zunächst ein PSCredential
-Objekt mit Name und Kennwort erstellt, anschließend werden diese Informationen zum Erstellen des Anmeldeinformationsobjekts verwendet. Stattdessen können Sie das Cmdlet Get-Credential
verwenden, um den Benutzer zur Eingabe eines Namens und Kennworts aufzufordern.
$user = "MyDomain\MyUser"
$pw = ConvertTo-SecureString "PassWord!" -AsPlainText -Force
$cred = New-Object –TypeName System.Management.Automation.PSCredential –ArgumentList $user, $pw
New-AzureAutomationCredential -AutomationAccountName "MyAutomationAccount" -Name "MyCredential" -Value $cred
Abrufen von Anmeldeinformationsobjekten
Ein Runbook oder eine DSC-Konfiguration ruft Anmeldeinformationsobjekte mit dem internen Get-AutomationPSCredential
-Cmdlet ab. Dieses Cmdlet ruft ein PSCredential
-Objekt ab, das Sie mit einem Cmdlet verwenden können, für das Anmeldeinformationen benötigt werden. Sie können auch die Eigenschaften des Anmeldeinformationsobjekts abrufen, um diese einzeln zu verwenden. Das Objekt verfügt über Eigenschaften für den Benutzernamen und das sichere Kennwort.
Hinweis
Das Get-AzAutomationCredential
-Cmdlet ruft kein PSCredential
-Objekt ab, das für die Authentifizierung verwendet werden kann. Es bietet lediglich Informationen zu den Anmeldeinformationen. Wenn Sie ein Anmeldeinformationsobjekt in einem Runbook verwenden müssen, müssen Sie dieses mithilfe von Get-AutomationPSCredential
als PSCredential
-Objekt abrufen.
Alternativ können Sie die Methode GetNetworkCredential verwenden, um ein NetworkCredential-Objekt abzurufen, das eine unsichere Version des Kennworts darstellt.
Beispiel für ein Textrunbook
Das folgende Beispiel zeigt, wie Sie ein PowerShell-Anmeldeinformationsobjekt in einem Runbook verwenden. Es ruft das Anmeldeinformationsobjekt ab und weist seinen Benutzernamen und das Kennwort Variablen zu.
$myCredential = Get-AutomationPSCredential -Name 'MyCredential'
$userName = $myCredential.UserName
$securePassword = $myCredential.Password
$password = $myCredential.GetNetworkCredential().Password
Sie können Anmeldeinformationen auch zum Authentifizieren mit Connect-AzAccount in Azure verwenden, nachdem Sie eine Verbindung zu einer verwalteten Identität hergestellt haben. In diesem Beispiel wird eine systemseitig zugewiesene verwaltete Identität verwendet.
# Ensures you do not inherit an AzContext in your runbook
Disable-AzContextAutosave -Scope Process
# Connect to Azure with system-assigned managed identity
$AzureContext = (Connect-AzAccount -Identity).context
# set and store context
$AzureContext = Set-AzContext -SubscriptionName $AzureContext.Subscription -DefaultProfile $AzureContext
# Get credential
$myCred = Get-AutomationPSCredential -Name "MyCredential"
$userName = $myCred.UserName
$securePassword = $myCred.Password
$password = $myCred.GetNetworkCredential().Password
$myPsCred = New-Object System.Management.Automation.PSCredential ($userName,$securePassword)
# Connect to Azure with credential
$AzureContext = (Connect-AzAccount -Credential $myPsCred -TenantId $AzureContext.Subscription.TenantId).context
# set and store context
$AzureContext = Set-AzContext -SubscriptionName $AzureContext.Subscription `
-TenantId $AzureContext.Subscription.TenantId `
-DefaultProfile $AzureContext
Beispiel für ein grafisches Runbook
Sie können einem grafischen Runbook eine Aktivität für das interne Get-AutomationPSCredential
-Cmdlet hinzufügen, indem Sie im Bibliotheksbereich des grafischen Editors erst mit der rechten Maustaste auf die Anmeldeinformationen und anschließend mit der linken auf Zur Canvas hinzufügen klicken.
Die folgende Abbildung zeigt ein Beispiel für die Verwendung eines Anmeldeinformationsobjekts in einem grafischen Runbook. In diesem Fall stellt das Anmeldeinformationsobjekt Authentifizierungsinformationen für ein Runbook in Azure-Ressourcen bereit, wie unter Verwenden von Microsoft Entra ID in Azure Automation für die Authentifizierung bei Azure beschrieben. Die erste Aktivität ruft die Anmeldeinformationen ab, die Zugriff auf das Azure-Abonnement haben. Die Kontoverbindungsaktivität verwendet diese Anmeldeinformationen anschließend, um eine Authentifizierung für alle nachfolgenden Aktivitäten bereitzustellen. Es wird eine Pipelineverknüpfung verwendet, da Get-AutomationPSCredential
ein einzelnes Objekt erwartet.
Verwenden von Anmeldeinformationen in einer DSC-Konfiguration
DSC-Konfigurationen in Azure Automation können mithilfe von Get-AutomationPSCredential
mit Anmeldeinformationsobjekten arbeiten, können aber gleichzeitig auch Anmeldeinformationsobjekte über Parameter übergeben. Weitere Informationen finden Sie unter Kompilieren von Konfigurationen in Azure Automation DSC.
Nächste Schritte
- Weitere Informationen zu den Cmdlets, die für den Zugriff auf Zertifikate verwendet werden, finden Sie unter Verwalten von Modulen in Azure Automation.
- Allgemeine Informationen zu Runbooks finden Sie unter Ausführen von Runbooks in Azure Automation.
- Ausführliche Informationen zu DSC-Konfigurationen finden Sie in der Übersicht über die Zustandskonfiguration.