Как установить bios serialmunber в качестве пароля пользователя - PullRequest
0 голосов
/ 02 ноября 2018

Я пытаюсь создать локальную учетную запись пользователя и установить пароль как bios serialnumber .

$Password = Get-WmiObject win32_bios | select serialnumber | Out-String
New-LocalUser -Name Altran -Password $Password

И получите эту ошибку

PS C:\windows\system32> $Password = Get-WmiObject win32_bios | select serialnumber | Out-String

New-LocalUser -Name Altran -Password $Password


New-LocalUser : Cannot bind parameter 'Password'. Cannot convert the "
serialnumber
------------
PF0IKYXC    
" value of type "System.String" to type "System.Security.SecureString".
At line:3 char:38
+ New-LocalUser -Name Altran -Password $Password
+                                      ~~~~~~~~~
    + CategoryInfo          : InvalidArgument: (:) [New-LocalUser], ParameterBindingException
    + FullyQualifiedErrorId : CannotConvertArgumentNoMessage,Microsoft.PowerShell.Commands.NewLocalUserCommand

Кто-нибудь может мне помочь? Я застрял на этом.

1 Ответ

0 голосов
/ 02 ноября 2018

1) Вместо этого:

$Password = Get-WmiObject win32_bios | select serialnumber | Out-String

Вы хотите это:

$Password = Get-WmiObject Win32_BIOS | Select-Object -ExpandProperty SerialNumber

Почему? Вы хотите выбрать свойство объекта (Select-Object -ExpandProperty) вместо Out-String.

2) Вместо этого:

New-LocalUser -Name Altran -Password $Password

Вы хотите это:

New-LocalUser -Name Altran -Password ($Password | ConvertTo-SecureString -AsPlainText -Force)

Это потому, что для параметра -Password требуется объект SecureString. (ПРИМЕЧАНИЕ: я не проверял это.)

3) Это довольно небезопасно. Не думаю, что я бы порекомендовал так поступить.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...