Zarządzanie połączeniami w usłudze Azure Automation
Zasób połączenia usługi Azure Automation zawiera informacje wymienione poniżej. Te informacje są wymagane do nawiązania połączenia z usługą zewnętrzną lub aplikacją z poziomu elementu Runbook lub konfiguracji DSC.
- Informacje potrzebne do uwierzytelniania, takie jak nazwa użytkownika i hasło
- Informacje o połączeniu, takie jak adres URL lub port
Zasób połączenia przechowuje wszystkie właściwości służące do łączenia się z określoną aplikacją, co sprawia, że tworzenie wielu zmiennych jest niepotrzebne. Możesz edytować wartości połączenia w jednym miejscu i przekazać nazwę połączenia do konfiguracji elementu Runbook lub DSC w jednym parametrze. Element Runbook lub konfiguracja uzyskuje dostęp do właściwości połączenia przy użyciu wewnętrznego Get-AutomationConnection
polecenia cmdlet.
Podczas tworzenia połączenia należy określić typ połączenia. Typ połączenia to szablon, który definiuje zestaw właściwości. Typ połączenia można dodać do usługi Azure Automation przy użyciu modułu integracji z plikiem metadanych. Istnieje również możliwość utworzenia typu połączenia przy użyciu interfejsu API usługi Azure Automation, jeśli moduł integracji zawiera typ połączenia i jest importowany do konta usługi Automation.
Uwaga
Zabezpieczanie zasobów w usłudze Azure Automation dotyczy poświadczeń, certyfikatów, połączeń i zaszyfrowanych zmiennych. Te zasoby są szyfrowane i przechowywane w usłudze Azure Automation przy użyciu unikatowego klucza generowanego dla każdego konta usługi Automation. Usługa Azure Automation przechowuje klucz w zarządzanym przez system usłudze Key Vault. Przed zapisaniem bezpiecznego zasobu usługa Automation ładuje klucz z usługi Key Vault, a następnie używa go do szyfrowania zasobu.
Typy połączeń
Usługa Azure Automation udostępnia następujące wbudowane typy połączeń:
Azure
— Reprezentuje połączenie używane do zarządzania zasobami klasycznymi.AzureServicePrincipal
— Reprezentuje połączenie używane do zarządzania zasobami na platformie Azure przy użyciu jednostki usługi.AzureClassicCertificate
— Ten typ połączenia służy do zarządzania zasobami na platformie Azure utworzonymi przy użyciu klasycznego modelu wdrażania, który nie obsługuje uwierzytelniania jednostki usługi.
Polecenia cmdlet programu PowerShell do uzyskiwania dostępu do połączeń
Polecenia cmdlet w poniższej tabeli tworzą połączenia usługi Automation i zarządzają nimi za pomocą programu PowerShell. Są one dostarczane jako część modułów Az.
Polecenia cmdlet | opis |
---|---|
Get-AzAutomationConnection | Pobiera informacje o połączeniu. |
New-AzAutomationConnection | Tworzy nowe połączenie. |
Remove-AzAutomationConnection | Usuwa istniejące połączenie. |
Set-AzAutomationConnectionFieldValue | Ustawia wartość określonego pola dla istniejącego połączenia. |
Wewnętrzne polecenia cmdlet do uzyskiwania dostępu do połączeń
Wewnętrzne polecenie cmdlet w poniższej tabeli służy do uzyskiwania dostępu do połączeń w konfiguracjach elementów Runbook i DSC. To polecenie cmdlet jest dostarczane z modułem Orchestrator.AssetManagement.Cmdlets
globalnym . Aby uzyskać więcej informacji, zobacz Wewnętrzne polecenia cmdlet.
Wewnętrzne polecenie cmdlet | opis |
---|---|
Get-AutomationConnection |
Pobiera wartości różnych pól w połączeniu i zwraca je jako tabelę skrótu. Następnie można użyć tej tabeli skrótu z odpowiednimi poleceniami w konfiguracji elementu Runbook lub DSC. |
Uwaga
Unikaj używania zmiennych z parametrem Name
Get-AutomationConnection
. Użycie zmiennych w tym przypadku może komplikować odnajdywanie zależności między elementami Runbook lub konfiguracjami DSC i elementami zawartości połączenia w czasie projektowania.
Funkcje języka Python w celu uzyskiwania dostępu do połączeń
Funkcja w poniższej tabeli służy do uzyskiwania dostępu do połączeń w elemecie Runbook języka Python 2 i 3. 3 elementy Runbook języka Python są obecnie dostępne w wersji zapoznawczej.
Function | opis |
---|---|
automationassets.get_automation_connection |
Pobiera połączenie. Zwraca słownik z właściwościami połączenia. |
Uwaga
Aby uzyskać dostęp do funkcji zasobów, należy zaimportować automationassets
moduł w górnej części elementu Runbook języka Python.
Utwórz nowe połączenie
Tworzenie nowego połączenia za pomocą witryny Azure Portal
Aby utworzyć nowe połączenie w witrynie Azure Portal:
- Na koncie usługi Automation kliknij pozycję Połączenia w obszarze Udostępnione zasoby.
- Kliknij pozycję + Dodaj połączenie na stronie Połączenia.
- W polu Typ w okienku Nowe połączenie wybierz typ połączenia do utworzenia. Wybrane opcje to
Azure
,AzureServicePrincipal
iAzureClassicCertificate
. - Formularz przedstawia właściwości wybranego typu połączenia. Wypełnij formularz i kliknij przycisk Utwórz , aby zapisać nowe połączenie.
Tworzenie nowego połączenia za pomocą programu Windows PowerShell
Utwórz nowe połączenie z programem Windows PowerShell przy użyciu New-AzAutomationConnection
polecenia cmdlet . To polecenie cmdlet ma ConnectionFieldValues
parametr, który oczekuje tabeli skrótu definiującej wartości dla każdej właściwości zdefiniowanej przez typ połączenia.
Poniższe przykładowe polecenia umożliwiają utworzenie połączenia, którego można użyć do uwierzytelniania przy użyciu jednostki usługi platformy Azure.
$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
Jeśli spróbujesz utworzyć nowy zasób połączenia w celu nawiązania połączenia z usługą lub aplikacją z inną metodą uwierzytelniania, operacja zakończy się niepowodzeniem, ponieważ typ połączenia nie jest jeszcze zdefiniowany na koncie usługi Automation. Aby uzyskać więcej informacji na temat tworzenia własnego typu połączenia dla modułu niestandardowego, zobacz Dodawanie typu połączenia.
Dodawanie typu połączenia
Jeśli konfiguracja elementu Runbook lub DSC łączy się z usługą zewnętrzną, musisz zdefiniować typ połączenia w module niestandardowym nazywanym modułem integracji. Ten moduł zawiera plik metadanych, który określa właściwości typu połączenia i ma nazwę <ModuleName>-Automation.json znajdujący się w folderze modułu skompresowanego pliku .zip . Ten plik zawiera pola połączenia wymagane do nawiązania połączenia z systemem lub usługą reprezentowaną przez moduł. Za pomocą tego pliku można ustawić nazwy pól, typy danych, stan szyfrowania i opcjonalny stan dla typu połączenia. W tym pliku nie jest obsługiwanych wiele typów połączeń.
Poniższy przykład to szablon w formacie pliku .json , który definiuje właściwości nazwy użytkownika i hasła dla niestandardowego typu połączenia o nazwie MyModuleConnection
:
{
"ConnectionFields": [
{
"IsEncrypted": false,
"IsOptional": true,
"Name": "Username",
"TypeName": "System.String"
},
{
"IsEncrypted": true,
"IsOptional": false,
"Name": "Password",
"TypeName": "System.String"
}
],
"ConnectionTypeName": "MyModuleConnection",
"IntegrationModuleName": "MyModule"
}
Pobieranie połączenia w konfiguracji elementu Runbook lub DSC
Pobieranie połączenia w konfiguracji elementu Runbook lub DSC za pomocą wewnętrznego Get-AutomationConnection
polecenia cmdlet. To polecenie cmdlet jest preferowane przez Get-AzAutomationConnection
polecenie cmdlet, ponieważ pobiera wartości połączenia zamiast informacji o połączeniu.
W poniższym przykładzie pokazano, jak używać połączenia do uwierzytelniania za pomocą zasobów usługi Azure Resource Manager w elemecie Runbook. Używa zasobu połączenia, który odwołuje się do jednostki usługi opartej na certyfikatach.
$Conn = Get-AutomationConnection -Name AzureConnection
Connect-AzAccount -ServicePrincipal -Tenant $Conn.TenantID -ApplicationId $Conn.ApplicationID -CertificateThumbprint $Conn.CertificateThumbprint
Przykłady graficznego elementu Runbook
Działanie wewnętrznego Get-AutomationConnection
polecenia cmdlet można dodać do graficznego elementu Runbook. Kliknij prawym przyciskiem myszy połączenie w okienku Biblioteka edytora graficznego i wybierz polecenie Dodaj do kanwy.
Na poniższej ilustracji przedstawiono przykład użycia obiektu połączenia w graficznym elemecie Runbook.
Następne kroki
- Aby dowiedzieć się więcej o poleceniach cmdlet używanych do uzyskiwania dostępu do połączeń, zobacz Zarządzanie modułami w usłudze Azure Automation.
- Aby uzyskać ogólne informacje na temat elementów Runbook, zobacz Wykonywanie elementu Runbook w usłudze Azure Automation.
- Aby uzyskać szczegółowe informacje na temat konfiguracji DSC, zobacz State Configuration overview (Omówienie konfiguracji stanu).