首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >在SqlServerDsc模块中将PSCredential类作为参数传递

在SqlServerDsc模块中将PSCredential类作为参数传递
EN

Stack Overflow用户
提问于 2018-06-06 23:28:27
回答 2查看 745关注 0票数 1

我不熟悉posting,也不熟悉powershell DSC和powershell。我正在测试SqlServerDsc模块中的SqlServiceAccount资源,但不知道如何使用PSCredential类。我的目标是将凭据放在变量中,但不知道如何正确执行此操作。我查看了这个示例,并在它的github上读取了该资源的psm1,但仍然没有找到。这是我用来测试它的代码,密码以及其他信息在这个脚本底部调用的另一个脚本中。提示我输入凭据的窗口正在弹出,但我希望将我的凭据放在变量中以填充此窗口。

Configuration SQLInstall

{param (
    [Parameter(Mandatory=$true)]
    [ValidateNotNullOrEmpty()]
    [String]
    $PackagePath,

    [Parameter(Mandatory = $true)]
    [System.Management.Automation.PSCredential]
    $ServiceAccountCredential

)
Import-DscResource –ModuleName PSDesiredStateConfiguration
Import-DSCResource -ModuleName ComputerManagementDsc
Import-DSCResource -ModuleName SqlServerDsc

Node $AllNodes.where{ $_.Role.Contains("SQLENGINE") }.NodeName
{

    Log ParamLog
    {
        Message = "Running SQLInstall. PackagePath = $PackagePath"
    }

# Password info here
$password = $using:Node.Service4SQLPassword | ConvertTo-SecureString -asPlainText -Force 
$username = $using:Node.Service4SQLAccount 
$Credential = New-Object System.Management.Automation.PSCredential($username,$password)

    SqlServiceAccount SetServiceAccount_DatabaseEngine
    {
        ServerName     = $Node.NodeName
        InstanceName   = 'MSSQLSERVER'
        ServiceType    = 'DatabaseEngine'
        ServiceAccount = $ServiceAccountCredential
        RestartService = $true
        Force          = $true
        DependsOn      = "[Script]InstallSQLServer"
    }

    SqlServiceAccount SetServiceAccount_SQLServerAgent
    {
        ServerName     = $Node.NodeName
        InstanceName   = 'MSSQLSERVER'
        ServiceType    = 'SQLServerAgent'
        ServiceAccount = $ServiceAccountCredential
        RestartService = $true
        Force          = $true
        DependsOn      = "[Script]InstallSQLServer"
    }

    SqlServiceAccount SetServiceAccount_IntegrationServices
    {
        ServerName     = $Node.NodeName
        InstanceName   = 'MSSQLSERVER'
        ServiceType    = 'IntegrationServices'
        ServiceAccount = $ServiceAccountCredential
        RestartService = $true
        Force          = $true
        DependsOn      = "[Script]InstallSQLServer"
    }               
}}

SQLInstall -ConfigurationData C:\PowerShell_UserScripts\MyServerData.psd1 `
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50724175

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档