5

私はそうのようには、Get-EC2PasswordData呼び出すためにPowerShellを使用しています:Get-EC2PasswordDataが「パラメータが正しくありません」を返すのはなぜですか?

$instances = (Get-EC2Instance -Filter @($envFilter, $stateFilter)).Instances 

$instances | Foreach-object { 
    $instID = $_.InstanceId 
    Write-Host Getting password to $instID... 
    $password = Get-EC2PasswordData -InstanceId $instID -PemFile "c:\my.pem" -Decrypt 
    Write-Host Username/Password for $_.PrivateIpAddress is Administrator/$password 

} 

そして、私は、次を得る:

Getting password to i-3e961280 ... 
Get-EC2PasswordData : Value cannot be null. 
Parameter name: s 
At C:\temp\CIS-aws-volumes\copyToMachine.ps1:12 char:17 
+  $password = Get-EC2PasswordData -InstanceId $instID -PemFile "c:\docs\ssh\ci ... 
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
    + CategoryInfo   : InvalidOperation: (Amazon.PowerShe...swordDataCmdlet:GetEC2PasswordDataCmdlet) [Get-EC2 
    PasswordData], ArgumentNullException 
    + FullyQualifiedErrorId : InvalidOperationException,Amazon.PowerShell.Cmdlets.EC2.GetEC2PasswordDataCmdlet 

Username/Password for 10.185.30.124 is Administrator/ 

何を "ゲット・EC2PasswordData:値をNullにすることはできません"平均?私はnull値を渡すつもりはありません。

答えて

6

答えは、パスワードがまだ利用できないためです。マシンが現れるまでしばらく待つだけです。コンソールでWindows管理者パスワードも取得できないことがわかります(ただし、tiははるかに直感的なメッセージを表示します)。

長時間待っていたのは、Ec2ConfigServiceがマシン上でパスワードをリセットするように設定されていないためです。 「C:¥Program Files¥Amazon¥Ec2ConfigService¥Settings¥config.xml」を変更する必要があります。そこでは、このような上部近くの作品見つけることができます:

<Plugin> 
    <Name>Ec2SetPassword</Name> 
    <State>Disabled</State> 
</Plugin> 

変更を「無効」「有効」にするには:

<Plugin> 
    <Name>Ec2SetPassword</Name> 
    <State>Enabled</State> 
</Plugin> 

私は次のようどこかにインターネットにこれを投稿したいですGoogles "Get-EC2PasswordData:Valueはnullにできません"という人は、役に立つものを見つけるかもしれません。

+0

「しばらく時間を取っている」とは何か?私のサーバーは10分以上稼働しており、私はそれにRDPすることができます。私はコンピュータの名前を変更することができるように私は管理者のパスワードを取得する必要が、私は言及された正確なエラーを取得しています。 – Johnrad

+0

マシン上で起動しているサービスの数によって異なります。あなたは起動時にデータベースや何か重いものを動かしていますか?もしそうでなければ、10分は空白の窓のマシンのように思える。 –

関連する問題