Невозможно добавить вход в Windows, используя DSC

После создания виртуальной машины Azure и присоединения к домену мне нужно добавить пользователя Windows для входа в SQL Server. Я использую DSC для этого, код

Configuration SQLConfig 
{
    param(
        # Parameter help description
        [Parameter(Mandatory =$true)][string]$ServerName,
        [System.Management.Automation.PSCredential]  $Credential

    )

    Import-DscResource -ModuleName SqlServerDsc
    Import-DscResource -ModuleName PSDesiredStateConfiguration

    Node localhost
    {
        SqlServerLogin addsysadmin
        {
            Ensure               = 'Present'
            Name                 = $Credential.UserName
            LoginType            = 'WindowsUser'
            ServerName           = $ServerName
            InstanceName         = 'MSSQLSERVER'
            PsDscRunAsCredential = $Credential
            LoginMustChangePassword = $false

        }

    }
}

Однако развертывание завершается с ошибкой, приведенной ниже.

Ресурсу PowerShell DSC MSFT_SqlServerLogin не удалось выполнить функцию Test-TargetResource с сообщением об ошибке: System.InvalidOperationException: Не удалось подключиться к экземпляру SQL "localhost". + CategoryInfo: InvalidOperation: (root/Microsoft/...gurationManager:String) [], CimException + FullyQualifiedErrorId: ProviderOperationExecutionFailure + PSComputerName: localhost

Похоже, что DSC пытается подключиться к серверу SQL как пользователь, которого я пытаюсь добавить. Я имею в виду, что если я пытаюсь добавить MyDomain\xxx.zzz, я получаю сообщение об ошибке в журнале SQL

"Ошибка входа пользователя" MyDomain \ xxx.zzz ". Причина: не удалось найти имя входа, соответствующее указанному имени. [КЛИЕНТ: ]"

Что я делаю неправильно?

Спасибо

0 ответов

Похоже, что DSC пытается подключиться к серверу SQL как пользователь, которого я пытаюсь добавить.

Ваш вывод верен. PsDscRunAsCredential = $Credential инструктирует DSC Local Configuration Manager использовать $credential для выполнения команд. Возможно, вы захотите указать существующее имя входа SQL с достаточным разрешением, чтобы добавить дополнительные имена входа в PsDscRunAsCredential.

Другие вопросы по тегам