セッション開始スクリプトを使用する際は、次のベスト プラクティスに従います。

セッション開始スクリプトの使用場面

セッションの開始前にデスクトップ ポリシーを構成する必要がある場合にのみ、セッション開始スクリプトを使用します。

ベスト プラクティスとして、デスクトップ セッションの接続後または再接続後に、Horizon Agent CommandsToRunOnConnect および CommandsToRunOnReconnect グループ ポリシー設定を使用してコマンド スクリプトを実行します。セッション開始スクリプトを使用する代わりにデスクトップ セッション内でスクリプトを実行すると、ほとんどの使用事例に対応できます。

詳細については、Horizon デスクトップでのコマンドの実行を参照してください。

開始セッションのタイムアウトの管理

セッション開始スクリプトの実行が迅速に行われるようにします。

Windows レジストリで WaitScriptsOnStartSession 値を設定した場合は、Horizon Agent がコネクション ブローカーから送信される StartSession メッセージに応答する前に、セッション開始スクリプトの実行が完了している必要があります。スクリプトの実行が長時間継続すると、StartSession 要求がタイムアウトすることがあります。

タイムアウトが発生し、プールがフローティング割り当てを使用する場合、コネクション ブローカーはユーザーを別の仮想マシンに接続しようとします。タイムアウトが発生し、使用可能な仮想マシンがない場合、コネクション ブローカーはユーザーの接続要求を拒否します。

ベスト プラクティスとして、スクリプト ホスト操作のハード タイムアウトを設定し、スクリプトの実行が長時間に続く場合に特定のエラーが返されるようにします。

セッション開始スクリプトにアクセス権を設定する

セッション開始スクリプトを構成するパスにアクセスできるのは、SYSTEM アカウントとローカル管理者のみであることが必要です。これらのアカウントのみにアクセスを許可するようにベース キーの ACL を設定します。

ベスト プラクティスとして、View_Agent_install_path\scripts ディレクトリにセッション開始スクリプトを配置します。次はその例です。

%ProgramFiles%\VMware\VMware View\Agent\scripts\sample.vbs

デフォルトでは、このディレクトリには SYSTEM アカウントと管理者アカウントのみがアクセスできます。