【问题标题】:Powershell create New-LocalUser from CSV file cannot convert string to securestringPowershell 从 CSV 文件创建 New-LocalUser 无法将字符串转换为安全字符串
【发布时间】:2018-05-11 18:44:31
【问题描述】:

我正在尝试在 PowerShell 中从 CSV 文件创建一些本地用户 (Windows 10)。 我使用的是 New-LocalUser,而不是 Net User 或 ADSI,但获得了无法绑定参数“Password” 无法将“System.String”类型的“P@ssW0rd”值转换为“System.Security.SecureString”类型。 当搜索 google 时,我可以看到我可以使用 convert 和 -AsSecureString,但这是使用 Read-Host,我从 CSV 文件中获取数据。

我的代码是:

New-LocalGroup -Name "tester" -Description "for 10 users"
Import-Csv C:\users.csv |
ForEach-Object {
New-LocalUser -Name $_.userName -Password $_.Password
Add-LocalGroupMember -Group "tester" -Member $_.userName -add}

【问题讨论】:

    标签: powershell csv


    【解决方案1】:

    您需要将明文密码转换为 SecureString:

    改变这一行:

    New-LocalUser -Name $_.userName -Password ($_.Password | ConvertTo-SecureString -AsPlainText -Force)
    

    【讨论】:

    • 谢谢。 Avshalom 它帮了我很多:-) 然后我需要删除 -add 然后它也可以与 Add-LocalGroup 成员一起使用。谢谢。
    • 可能更简单一些:先运行它然后使用 $secureStringPassword 而不是 $password $secureStringPassword = ($password | ConvertTo-SecureString -AsPlainText -Force)
    猜你喜欢
    • 2013-10-11
    • 1970-01-01
    • 1970-01-01
    • 2010-12-06
    • 2021-03-30
    • 1970-01-01
    • 1970-01-01
    • 2010-09-09
    • 1970-01-01
    相关资源
    最近更新 更多