Hantera anslutningar i Azure Automation

En Azure Automation-anslutningstillgång innehåller den information som anges nedan. Den här informationen krävs för anslutning till en extern tjänst eller ett program från en runbook- eller DSC-konfiguration.

  • Information som behövs för autentisering, till exempel användarnamn och lösenord
  • Anslut information, till exempel URL eller port

Anslutningstillgången håller ihop alla egenskaper för att ansluta till ett visst program, vilket gör det onödigt att skapa flera variabler. Du kan redigera värdena för en anslutning på ett ställe och du kan skicka namnet på en anslutning till en runbook- eller DSC-konfiguration i en enda parameter. Runbooken eller konfigurationen kommer åt egenskaperna för en anslutning med hjälp av den interna Get-AutomationConnection cmdleten.

När du skapar en anslutning måste du ange en anslutningstyp. Anslutningstypen är en mall som definierar en uppsättning egenskaper. Du kan lägga till en anslutningstyp i Azure Automation med hjälp av en integreringsmodul med en metadatafil. Det går också att skapa en anslutningstyp med hjälp av Azure Automation-API :et om integreringsmodulen innehåller en anslutningstyp och importeras till ditt Automation-konto.

Kommentar

Säkra tillgångar i Azure Automation omfattar autentiseringsuppgifter, certifikat, anslutningar och krypterade variabler. Dessa tillgångar krypteras och lagras i Azure Automation med hjälp av en unik nyckel som genereras för varje Automation-konto. Azure Automation lagrar nyckeln i det systemhanterade 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.

Anslutningstyper

Azure Automation gör följande inbyggda anslutningstyper tillgängliga:

  • Azure – Representerar en anslutning som används för att hantera klassiska resurser.
  • AzureServicePrincipal – Representerar en anslutning som används för att hantera resurser i Azure med hjälp av tjänstens huvudnamn.
  • AzureClassicCertificate – Den här anslutningstypen används för att hantera resurser i Azure som har skapats med den klassiska distributionsmodellen som inte stöder autentisering med tjänstens huvudnamn.

PowerShell-cmdletar för åtkomst till anslutningar

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

Cmdlet Description
Get-AzAutomationConnection Hämtar information om en anslutning.
New-AzAutomation Anslut ion Skapar en ny anslutning.
Remove-AzAutomation Anslut ion Tar bort en befintlig anslutning.
Set-AzAutomation Anslut ionFieldValue Anger värdet för ett visst fält för en befintlig anslutning.

Interna cmdletar för åtkomst till anslutningar

Den interna cmdleten i följande tabell används för att komma åt anslutningar i dina runbooks och DSC-konfigurationer. Den här cmdleten levereras med den globala modulen Orchestrator.AssetManagement.Cmdlets. Mer information finns i Interna cmdletar.

Intern cmdlet Description
Get-AutomationConnection Hämtar värdena för de olika fälten i anslutningen och returnerar dem som en hashtable. Du kan sedan använda den här hashtabellen med lämpliga kommandon i runbook- eller DSC-konfigurationen.

Kommentar

Undvik att använda variabler med parametern NameGet-AutomationConnection. Användning av variabler i det här fallet kan komplicera identifieringen av beroenden mellan runbooks eller DSC-konfigurationer och anslutningstillgångar vid designtillfället.

Python-funktioner för åtkomst till anslutningar

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

Function Description
automationassets.get_automation_connection Hämtar en anslutning. Returnerar en ordlista med anslutningens egenskaper.

Kommentar

Du måste importera modulen automationassets överst i Python-runbooken för att få åtkomst till tillgångsfunktionerna.

Skapa en ny anslutning

Skapa en ny anslutning med Azure-portalen

Så här skapar du en ny anslutning i Azure-portalen:

  1. Från ditt Automation-konto klickar du på Anslut ions under Delade resurser.
  2. Klicka på + Lägg till en anslutning på sidan Anslut ions.
  3. I fältet Typ i fönstret Ny Anslut ion väljer du vilken typ av anslutning som ska skapas. Dina val är Azure, AzureServicePrincipaloch AzureClassicCertificate.
  4. Formuläret visar egenskaper för den anslutningstyp som du har valt. Fyll i formuläret och klicka på Skapa för att spara den nya anslutningen.

Skapa en ny anslutning med Windows PowerShell

Skapa en ny anslutning med Windows PowerShell med hjälp av cmdleten New-AzAutomationConnection . Den här cmdleten har en ConnectionFieldValues parameter som förväntar sig en hashtabell som definierar värden för var och en av de egenskaper som definieras av anslutningstypen.

Du kan använda följande exempelkommandon för att skapa en anslutning som kan användas för autentisering med azure-tjänstens huvudnamn.

$ConnectionAssetName = "AzureConnection"
$ConnectionFieldValues = @{"ApplicationId" = $Application.ApplicationId; "TenantId" = $TenantID.TenantId; "CertificateThumbprint" = $Cert.Thumbprint; "SubscriptionId" = $SubscriptionId}
New-AzAutomationConnection -ResourceGroupName $ResourceGroup -AutomationAccountName $AutomationAccountName -Name $ConnectionAssetName -ConnectionTypeName AzureServicePrincipal -ConnectionFieldValues $ConnectionFieldValues

Om du försöker skapa en ny anslutningstillgång för att ansluta till en tjänst eller ett program med en annan autentiseringsmetod misslyckas åtgärden eftersom anslutningstypen inte redan har definierats i ditt Automation-konto. Mer information om hur du skapar en egen anslutningstyp för en anpassad modul finns i Lägga till en anslutningstyp.

Lägga till en anslutningstyp

Om din runbook- eller DSC-konfiguration ansluter till en extern tjänst måste du definiera en anslutningstyp i en anpassad modul som kallas för en integreringsmodul. Den här modulen innehåller en metadatafil som anger egenskaper för anslutningstyp och heter ModuleName-Automation.json>, som finns i modulmappen för den komprimerade .zip-filen.< Den här filen innehåller fälten för en anslutning som krävs för att ansluta till systemet eller tjänsten som modulen representerar. Med den här filen kan du ange fältnamn, datatyper, krypteringsstatus och valfri status för anslutningstypen. Flera anslutningstyper stöds inte i den här filen.

Följande exempel är en mall i filformatet .json som definierar användarnamn och lösenordsegenskaper för en anpassad anslutningstyp med namnet MyModuleConnection:

{
   "ConnectionFields": [
   {
      "IsEncrypted":  false,
      "IsOptional":  true,
      "Name":  "Username",
      "TypeName":  "System.String"
   },
   {
      "IsEncrypted":  true,
      "IsOptional":  false,
      "Name":  "Password",
      "TypeName":  "System.String"
   }
   ],
   "ConnectionTypeName":  "MyModuleConnection",
   "IntegrationModuleName":  "MyModule"
}

Hämta en anslutning i en runbook- eller DSC-konfiguration

Hämta en anslutning i en runbook- eller DSC-konfiguration med den interna Get-AutomationConnection cmdleten. Den här cmdleten föredras framför cmdleten Get-AzAutomationConnection eftersom den hämtar anslutningsvärdena i stället för information om anslutningen.

I följande exempel visas hur du använder en anslutning för att autentisera med Azure Resource Manager-resurser i din runbook. Den använder en anslutningstillgång som refererar till det certifikatbaserade tjänstens huvudnamn.

$Conn = Get-AutomationConnection -Name AzureConnection
Connect-AzAccount -ServicePrincipal -Tenant $Conn.TenantID -ApplicationId $Conn.ApplicationID -CertificateThumbprint $Conn.CertificateThumbprint

Grafiska runbook-exempel

Du kan lägga till en aktivitet för den interna Get-AutomationConnection cmdleten i en grafisk runbook. Högerklicka på anslutningen i fönstret Bibliotek i den grafiska redigeraren och välj Lägg till på arbetsytan.

add to canvas

Följande bild visar ett exempel på hur du använder ett anslutningsobjekt i en grafisk runbook.

get connections

Nästa steg