Použití přihlašovacích údajů s prostředky DSC

Platí pro: Windows PowerShell 5.0, Windows PowerShell 5.1

Prostředek DSC můžete spustit pod zadanou sadou přihlašovacích údajů pomocí automatické vlastnosti PsDscRunAsCredential v konfiguraci. Ve výchozím nastavení DSC spouští každý prostředek jako systémový účet. Existují chvíle, kdy je spuštění nezbytné, jako je instalace balíčků MSI v kontextu konkrétního uživatele, nastavení klíčů registru uživatele, přístup k místnímu adresáři konkrétního uživatele nebo přístup ke sdílené síťové složce. SeInteractiveLogonRight vyžaduje cílový počítač pro každý účet, který zadáte do PSDSCRunAsCredential. Další informace najdete v tématu Konstanty práv k účtu.

Každý prostředek DSC má vlastnost PsDscRunAsCredential , kterou je možné nastavit na libovolné přihlašovací údaje uživatele (objekt PSCredential ). Přihlašovací údaje mohou být pevně zakódovány jako hodnota vlastnosti v konfiguraci nebo můžete nastavit hodnotu Get-Credential, která uživatele vyzve k zadání přihlašovacích údajů při kompilaci konfigurace (informace o kompilaci konfigurací najdete v tématu Konfigurace.

Poznámka

V PowerShellu 5.0 se použití vlastnosti PsDscRunAsCredential v konfiguracích, které volají složené prostředky, nepodporovalo. V PowerShellu 5.1 se vlastnost PsDscRunAsCredential podporuje v konfiguracích volajících složené prostředky. Vlastnost PsDscRunAsCredential není v PowerShellu 4.0 k dispozici.

V následujícím příkladu Get-Credential se používá k zobrazení výzvy uživateli k zadání přihlašovacích údajů. Prostředek registru se používá ke změně klíče registru, který určuje barvu pozadí okna příkazového řádku systému Windows.

Configuration ChangeCmdBackGroundColor
{
    Import-DscResource -ModuleName PSDesiredStateConfiguration

    Node $AllNodes.NodeName
    {
        Registry CmdPath
        {
            Key                  = 'HKEY_CURRENT_USER\SOFTWARE\Microsoft\Command Processor'
            ValueName            = 'DefaultColor'
            ValueData            = '1F'
            ValueType            = 'DWORD'
            Ensure               = 'Present'
            Force                = $true
            Hex                  = $true
            PsDscRunAsCredential = Get-Credential
        }
    }
}

$configData = @{
    AllNodes = @(
        @{
            NodeName             = 'localhost';
            PSDscAllowDomainUser = $true
            CertificateFile      = 'C:\publicKeys\targetNode.cer'
            Thumbprint           = '7ee7f09d-4be0-41aa-a47f-96b9e3bdec25'
        }
    )
}

ChangeCmdBackGroundColor -ConfigurationData $configData

Poznámka

Tento příklad předpokládá, že máte platný certifikát na adrese C:\publicKeys\targetNode.cera že kryptografický otisk tohoto certifikátu je zobrazená hodnota. Informace o šifrování přihlašovacích údajů v souborech MOF konfigurace DSC najdete v tématu Zabezpečení souboru MOF.