hantera autentiseringsuppgifter i Azure Automation

En Automation-autentiseringstillgång innehåller ett objekt som innehåller säkerhetsautentiseringsuppgifter, till exempel ett användarnamn och ett lösenord. Runbooks och DSC-konfigurationer använder cmdlets som accepterar ett PSCredential-objekt för autentisering. De kan också extrahera användarnamnet och lösenordet för objektet för att tillhandahålla PSCredential till vissa program eller tjänster som kräver autentisering.

Anteckning

Säkra tillgångar i Azure Automation omfattar autentiseringsuppgifter, certifikat, anslutningar och krypterade variabler. Dessa tillgångar krypteras och lagras i Azure Automation med en unik nyckel som genereras för varje Automation-konto. Azure Automation nyckeln i den system-hanterade Key Vault. Innan du lagrar en säker tillgång läser Automation in nyckeln från Key Vault och använder den sedan för att kryptera tillgången.

Anteckning

I Azure-begäranden från registrerad person för GDPR finns det information om att visa eller ta bort personuppgifter. Mer information om GDPR finns i avsnittet GDPR i avsnittet Microsoft säkerhets Center och avsnittet GDPR i service Trust-portalen.

PowerShell-cmdlets som används för att komma åt autentiseringsuppgifter

Cmdletarna i följande tabell skapar och hanterar autentiseringsuppgifter för Automation med PowerShell. De levereras som en del av Az-modulerna.

Cmdlet Beskrivning
Get-AzAutomationCredential Hämtar ett CredentialInfo-objekt som innehåller metadata om autentiseringsobjektet. Cmdleten hämtar inte själva PSCredential objektet.
New-AzAutomationCredential Skapar en ny Automation-autentiseringsidentifiering.
Remove-AzAutomationCredential Tar bort autentiseringsuppgifter för Automation.
Set-AzAutomationCredential Anger egenskaperna för en befintlig Automation-autentiseringsidentifiering.

Andra cmdlets som används för att komma åt autentiseringsuppgifter

Cmdletarna i följande tabell används för att komma åt autentiseringsuppgifter i dina runbooks och DSC-konfigurationer.

Cmdlet Beskrivning
Get-AutomationPSCredential Hämtar ett PSCredential -objekt som ska användas i en runbook eller DSC-konfiguration. Oftast bör du använda den här interna cmdleten i stället för cmdleten eftersom den senare endast Get-AzAutomationCredential hämtar autentiseringsinformation. Den här informationen är normalt inte användbar för att skicka till en annan cmdlet.
Get-Credential Hämtar autentiseringsuppgifter med en uppmaning om användarnamn och lösenord. Den här cmdleten är en del av standardmodulen Microsoft.PowerShell.Security. Se Standardmoduler.
New-AzureAutomationCredential Skapar en autentiseringstillgång. Den här cmdleten är en del av Azure-standardmodulen. Se Standardmoduler.

Om du PSCredential vill hämta objekt i koden måste du importera Orchestrator.AssetManagement.Cmdlets modulen. Mer information finns i Hantera moduler i Azure Automation.

Import-Module Orchestrator.AssetManagement.Cmdlets -ErrorAction SilentlyContinue

Anteckning

Du bör undvika att använda variabler i Name parametern för Get-AutomationPSCredential . Användningen av dem kan göra det komplicerat att identifiera beroenden mellan runbooks eller DSC-konfigurationer och autentiseringstillgångar vid designtiden.

Python-funktioner som har åtkomst till autentiseringsuppgifter

Funktionen i följande tabell används för att komma åt autentiseringsuppgifter i en Python 2- och 3-runbook. Python 3-runbooks är för närvarande i förhandsversion.

Funktion Beskrivning
automationassets.get_automation_credential Hämtar information om en autentiseringstillgång.

Anteckning

Importera modulen automationassets överst i din Python-runbook för att få åtkomst till tillgångsfunktionerna.

Skapa en ny autentiseringstillgång

Du kan skapa en ny autentiseringstillgång med hjälp av Azure Portal eller Windows PowerShell.

Skapa en ny autentiseringstillgång med Azure Portal

  1. Välj Autentiseringsuppgifter under Delade resurser i det vänstra fönstret från ditt Automation-konto.

  2. På sidan Autentiseringsuppgifter väljer du Lägg till en autentiseringsuppgifterna.

  3. I fönstret Nya autentiseringsuppgifter anger du ett lämpligt namn på autentiseringsnamnet enligt dina namngivningsstandarder.

  4. Ange ditt åtkomst-ID i fältet Användarnamn.

  5. För båda lösenordsfälten anger du din hemliga åtkomstnyckel.

    Skapa nya autentiseringsuppgifter

  6. Om rutan multifaktorautentisering är markerad avmarkerar du den.

  7. Klicka på Skapa för att spara den nya autentiseringstillgången.

Anteckning

Azure Automation stöder inte användarkonton som använder multifaktorautentisering.

Skapa en ny autentiseringstillgång med Windows PowerShell

I följande exempel visas hur du skapar en ny Automation-autentiseringstillgång. Ett PSCredential -objekt skapas först med namnet och lösenordet och används sedan för att skapa autentiseringstillgången. I stället kan du använda Get-Credential cmdleten för att uppmana användaren att ange ett namn och lösenord.

$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

Hämta en autentiseringstillgång

En runbook eller DSC-konfiguration hämtar en autentiseringstillgång med den interna Get-AutomationPSCredential cmdleten. Den här cmdleten PSCredential hämtar ett -objekt som du kan använda med en cmdlet som kräver autentiseringsuppgifter. Du kan också hämta egenskaperna för autentiseringsobjektet för att använda individuellt. Objektet har egenskaper för användarnamnet och det säkra lösenordet.

Anteckning

Get-AzAutomationCredentialCmdleten hämtar inte ett PSCredential objekt som kan användas för autentisering. Den innehåller endast information om autentiseringsinformationen. Om du behöver använda autentiseringsuppgifter i en runbook måste du hämta den som ett objekt PSCredential med hjälp av Get-AutomationPSCredential .

Du kan också använda metoden GetNetworkCredential för att hämta ett NetworkCredential-objekt som representerar en oskyddad version av lösenordet.

Exempel på textbaserad runbook

I följande exempel visas hur du använder powershell-autentiseringsuppgifter i en runbook. Den hämtar autentiseringssuppgifter och tilldelar dess användarnamn och lösenord till variabler.

$myCredential = Get-AutomationPSCredential -Name 'MyCredential'
$userName = $myCredential.UserName
$securePassword = $myCredential.Password
$password = $myCredential.GetNetworkCredential().Password

Du kan också använda autentiseringsuppgifter för att autentisera till Azure med Connect-AzAccount. I de flesta fall bör du använda ett Kör som-konto och hämta anslutningen med Get-AzAutomationConnection.

$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-AzAccount -Credential $myPsCred

Exempel på grafisk runbook

Du kan lägga till en aktivitet för den interna cmdleten i en grafisk runbook genom att högerklicka på autentiseringssuppgifter i fönstret Bibliotek i den grafiska redigeraren och välja Lägg till Get-AutomationPSCredential på arbetsytan.

Lägg till cmdlet för autentiseringsuppgifter på arbetsytan

Följande bild visar ett exempel på hur du använder autentiseringsuppgifter i en grafisk runbook. I det här fallet tillhandahåller autentiseringsautentisering för en runbook till Azure-resurser, enligt beskrivningen i Använda Azure AD i Azure Automation för att autentisera till Azure. Den första aktiviteten hämtar de autentiseringsuppgifter som har åtkomst till Azure-prenumerationen. Kontoanslutningsaktiviteten använder sedan dessa autentiseringsuppgifter för att tillhandahålla autentisering för alla aktiviteter som kommer efter den. En pipelinelänk används här eftersom Get-AutomationPSCredential förväntar sig ett enda objekt.

Exempel på arbetsflöde för autentiseringsuppgifter med pipelinelänk

Använda autentiseringsuppgifter i en DSC-konfiguration

DSC-konfigurationer i Azure Automation fungerar med autentiseringstillgångar med , men de kan också skicka Get-AutomationPSCredential autentiseringstillgångar via parametrar. Mer information finns i Kompilera konfigurationer i Azure Automation DSC.

Nästa steg