2016-03-31 46 views
4

Invoke-Commandを使用してGet-ScheduledTaskをリモートで実行しようとしています。 ユーザーは非管理者ですが、「リモート管理ユーザー」の一部です。 PS-Remotingは正常に動作します。 コマンドをローカルで実行すると正常に動作します。 しかし、Invoke-Commandコマンドを通してそれを実行すると、私は次のエラーを取得:管理者以外のユーザーのリモートからPSコマンドレットを実行中 - アクセス拒否

注:

Cannot connect to CIM server. Access denied 
    + CategoryInfo   : ResourceUnavailable: (MSFT_ScheduledTask:String) [Get-ScheduledTask], CimJobException 
    + FullyQualifiedErrorId : CimJob_BrokenCimSession,Get-ScheduledTask 
    + PSComputerName  : us-web1 

は、ここでのサンプルコードです、これは問題では、管理者以外のユーザーの下で直接実行されています。

$servers = "us-web1","us-web2","us-engine1","us-engine2","us-engine3","us-engine4" 

foreach ($server in $servers) { 

Invoke-Command -ComputerName "$server" -ScriptBlock { 

     get-scheduledtask 
    } 
} 
+0

に役立ちますか?私はあなたが管理credsで接続していると、接続が限られたアクセス権で作られているため、この接続の "内部"のアクセスを実行しないでユーザーの信用を使用していると仮定します – Martin

+0

私は実際には、質問。 すぐにコードを追加します。 – JustAGuy

+0

コマンドを実行する権限を持っている可能性がありますが、コマンドを実行するためにリモートで接続する権限はありません。このようなことが助けになりますか? http://msgoodies.blogspot.ca/2009/09/using-ps-session-without-having.html私はここにこれがあるのか​​どうかを見ています。 – Matt

答えて

0

これは、通過しない資格情報に問題がある可能性があります。 get-credentialを追加し、それをあなたのinvoke-commandに追加してみてください。あなたは同じ信用を使用することができます、それを直接渡すことを試みてください。このよう

$Cred = Get-Credential Invoke-Command -Credential $Cred -ScriptBlock {Get-ScheduledTask}

+0

私は恐れていませんでした。 – JustAGuy

2

私は管理者の資格情報なしでリモートからGET-プリンタコマンドを使用しようとすると非常によく似た問題を抱えていました。 https://social.technet.microsoft.com/Forums/exchange/en-US/b748d1bb-fa97-4c30-a626-145dfbc40873/service-acccount-permission-to-remote-powershell-to-dns-server-on-windows-server-2012?forum=winserverpowershell

私は私の問題のために使用されるプロセスだった:

  1. [コンピュータの管理コンソール私は本当に見つけ助けた何

    は、このリンクでした。 [サービスとアプリケーション]の下の[WMIコントロール]を右クリックし、[プロパティ]をクリックします。

  2. 新しく開いたウィンドウで、[セキュリティ]タブをクリックします。

  3. は、ルートツリーを展開し、ノードCIMV2をクリックして、新しく開いたウィンドウで、ボタンのセキュリティ

  4. をクリックし、ボタン[詳細]をクリックします。

  5. 新たに開いたウィンドウで、[権限]タブの[追加]ボタンをクリックします。

  6. 新しく開いたウィンドウで、「プリンシパルを選択」をクリックし、プリンシパルとしてアクセスするアカウントまたはグループを検索して追加し、「OK」をクリックします。

  7. に該当する場合は、「この名前空間とサブネームスペース」を選択します。許可を

  8. 、「アカウントを有効にする」と

  9. クリックして、開いているすべてのダイアログボックスに

  10. 再起動WMIサービス

  11. を受け入れる「リモートの有効化」、「メソッドを実行」をチェック

    コマンドを再度リモートで実行しようとしました。もう一度失敗しますが、今回は本当の問題が見えます。エラーで "permission denied"を探し、上記と同じ手順に従って、表示されたパスへのアクセスを許可します。

希望これはあなたのコードスニペットを投稿することができ

+0

興味深い... 私はそれにショットをして後で更新してください。 – JustAGuy

関連する問題