1

これが私が達成したいことであり、これについては何も見つかりません。

リモート サーバーで使用可能なモジュールのリモート モジュール プロキシを作成したいと考えています。

リモート処理の操作方法は知っていますが、よりクリーンなスクリプト ファイルを作成するものが必要です。

例を挙げると。リモート コンピューター上のモジュール MyModule からMyCmdlet実行する場合は、これを実行します。

$block={
    # Invoke the cmdlet from a module named MyCmdlet
    MyCmdlet -Parameter1 -Parameter2
}

Invoke-Command -ComputerName "" -ScriptBlock $block

しかし、私はこのようなものに着陸したいと思います

Import-Module MyModuleRemote
MyCmdlet -ComputerName "" -Parameter1 -Parameter2

クライアント マシンにMyModuleがインストールされていないことに注意してください。

コマンドレットごとに Invoke-Command ラッパーを使用してモジュールを書き直すことはできますが、それは目的ではありません。私がやりたいのは、コマンドレットとパラメーターごとにプロキシと同等のプロキシを作成して、 MyModuleをリモート化することです。Get-Help でさえ、少なくともパラメーター構成に対しては機能するはずです。

いくつかのアイデアがありますが、それが可能かどうかはわかりません。

  1. リモートサーバー上のモジュールをプローブしてコードを生成するPSRemotifyなどのpowershellモジュールを作成します。
    1. ファイル システムにファイルを書き込むことを選択した場合、コマンドレットでリフレクションを実行できれば、これが可能になるはずです。
    2. ファイルを保存したくない場合は、すべてをメモリ内で行う必要があります。コマンドレットの本体をメモリに書き込むことはできますか? 文字列を生成して、その埋め込みコマンドレットをインポートできますか?
  2. 1.2 を実行するスクリプトを作成します。

私の好みはオプション1.2です。非常にクリーンで、ファイル システムに痕跡を残すことはありません。

何か案は?誰かがすでに何かを試しましたか?

私の調査後の結論と@ Persistent13からの回答:

PowerShell は、すぐに使用できるこの機能を提供します。これはIMPLICIT REMOTINGとして知られています。@ Persistent13の回答の前に、自分の経験を共有するのは興味深いと思うので、間違った部分を取りました.それについてブログを書きました. リモートサーバーからモジュールをインポートして使用する

4

2 に答える 2