Udostępnij za pośrednictwem


Przekazywanie poświadczeń do programu obsługi rozszerzenia AZURE DSCExtension

W tym artykule opisano rozszerzenie Desired State Configuration (DSC) dla platformy Azure. Aby zapoznać się z omówieniem procedury obsługi rozszerzenia DSC, zobacz Wprowadzenie do procedury obsługi rozszerzenia Azure Desired State Configuration.

Uwaga

Przed włączeniem rozszerzenia DSC chcielibyśmy wiedzieć, że nowsza wersja rozszerzenia DSC jest teraz ogólnie dostępna, zarządzana przez funkcję konfiguracji maszyny o nazwie Azure Automange. Funkcja konfiguracji maszyny łączy funkcje programu obsługi rozszerzenia Desired State Configuration (DSC), usługi Azure Automation State Configuration i najczęściej żądanych funkcji z opinii klientów. Konfiguracja maszyny obejmuje również obsługę maszyn hybrydowych za pośrednictwem serwerów z obsługą usługi Arc.

Przekazywanie poświadczeń

W ramach procesu konfiguracji może być konieczne skonfigurowanie kont użytkowników, usług dostępu lub zainstalowanie programu w kontekście użytkownika. Aby wykonać te czynności, należy podać poświadczenia.

Za pomocą rozszerzenia DSC można skonfigurować sparametryzowane konfiguracje. W sparametryzowanej konfiguracji poświadczenia są przekazywane do konfiguracji i bezpiecznie przechowywane w plikach mof. Procedura obsługi rozszerzeń platformy Azure upraszcza zarządzanie poświadczeniami, zapewniając automatyczne zarządzanie certyfikatami.

Następujący skrypt konfiguracji DSC tworzy konto użytkownika lokalnego z określonym hasłem:

configuration Main
{
    param(
        [Parameter(Mandatory=$true)]
        [ValidateNotNullorEmpty()]
        [PSCredential]
        $Credential
    )
    Node localhost {
        User LocalUserAccount
        {
            Username = $Credential.UserName
            Password = $Credential
            Disabled = $false
            Ensure = "Present"
            FullName = "Local User Account"
            Description = "Local User Account"
            PasswordNeverExpires = $true
        }
    }
}

Ważne jest, aby uwzględnić hosta lokalnego węzła w ramach konfiguracji. Procedura obsługi rozszerzeń szuka konkretnie instrukcji localhost węzła. Jeśli brakuje tej instrukcji, poniższe kroki nie działają. Ważne jest również, aby uwzględnić emisję typu [PsCredential]. Ten konkretny typ wyzwala rozszerzenie w celu zaszyfrowania poświadczeń.

Aby opublikować ten skrypt w usłudze Azure Blob Storage:

Publish-AzVMDscConfiguration -ConfigurationPath .\user_configuration.ps1

Aby ustawić rozszerzenie DSC platformy Azure i podać poświadczenia:

$configurationName = 'Main'
$configurationArguments = @{ Credential = Get-Credential }
$configurationArchive = 'user_configuration.ps1.zip'
$vm = Get-AzVM -Name 'example-1'

$vm = Set-AzVMDscExtension -VMName $vm -ConfigurationArchive $configurationArchive -ConfigurationName $configurationName -ConfigurationArgument @configurationArguments

$vm | Update-AzVM

Jak poświadczenia są zabezpieczone

Uruchomienie tego kodu powoduje wyświetlenie monitu o podanie poświadczeń. Po podaniu poświadczeń jest on krótko przechowywany w pamięci. Po opublikowaniu poświadczeń przy użyciu polecenia cmdlet Set-AzVMDscExtension poświadczenie jest przesyłane za pośrednictwem protokołu HTTPS do maszyny wirtualnej. Na maszynie wirtualnej platforma Azure przechowuje poświadczenia zaszyfrowane na dysku przy użyciu lokalnego certyfikatu maszyny wirtualnej. Poświadczenie jest krótko odszyfrowywane w pamięci, a następnie jest ponownie szyfrowane, aby przekazać je do rozszerzenia DSC.

Ten proces różni się od używania bezpiecznych konfiguracji bez procedury obsługi rozszerzeń. Środowisko platformy Azure umożliwia bezpieczne przesyłanie danych konfiguracji za pośrednictwem certyfikatów. W przypadku korzystania z programu obsługi rozszerzenia DSC nie musisz podawać $CertificatePath ani $CertificateID/ $Thumbprint wpisu w obszarze ConfigurationData.

Następne kroki

  • Zapoznaj się z wprowadzeniem do procedury obsługi rozszerzenia DSC platformy Azure.
  • Zapoznaj się z szablonem usługi Azure Resource Manager dla rozszerzenia DSC.
  • Aby uzyskać więcej informacji na temat rozszerzenia DSC programu PowerShell, przejdź do centrum dokumentacji programu PowerShell.
  • Aby uzyskać więcej funkcji, którymi można zarządzać za pomocą rozszerzenia DSC programu PowerShell, i aby uzyskać więcej zasobów DSC, przejdź do galerii programu PowerShell.