セッション開始スクリプトを使用する際は、次のベスト プラクティスに従います。
セッション開始スクリプトの使用場面
セッションの開始前にデスクトップ ポリシーを構成する必要がある場合にのみ、セッション開始スクリプトを使用します。
ベスト プラクティスとして、デスクトップ セッションの接続後または再接続後に、Horizon Agent CommandsToRunOnConnect および CommandsToRunOnReconnect グループ ポリシー設定を使用してコマンド スクリプトを実行します。セッション開始スクリプトを使用する代わりにデスクトップ セッション内でスクリプトを実行すると、ほとんどの使用事例に対応できます。
詳細については、Horizon デスクトップでのコマンドの実行を参照してください。
開始セッションのタイムアウトの管理
セッション開始スクリプトの実行が迅速に行われるようにします。
Windows レジストリで WaitScriptsOnStartSession 値を設定した場合は、Horizon Agent が Horizon Connection Server から送信される StartSession メッセージに応答する前に、セッション開始スクリプトの実行が完了している必要があります。スクリプトの実行が長時間継続すると、StartSession 要求がタイムアウトすることがあります。
タイムアウトが発生し、プールがフローティング割り当てを使用する場合、Connection Server はユーザーを別の仮想マシンに接続しようとします。タイムアウトが発生し、使用可能な仮想マシンがない場合、Connection Server はユーザーの接続要求を拒否します。
ベスト プラクティスとして、スクリプト ホスト操作のハード タイムアウトを設定し、スクリプトの実行が長時間に続く場合に特定のエラーが返されるようにします。
セッション開始スクリプトにアクセス権を設定する
セッション開始スクリプトを構成するパスにアクセスできるのは、SYSTEM アカウントとローカル管理者のみであることが必要です。これらのアカウントのみにアクセスを許可するようにベース キーの ACL を設定します。
ベスト プラクティスとして、View_Agent_install_path\scripts ディレクトリにセッション開始スクリプトを配置します。次はその例です。
%ProgramFiles%\VMware\VMware View\Agent\scripts\sample.vbs
デフォルトでは、このディレクトリには SYSTEM アカウントと管理者アカウントのみがアクセスできます。