Hitachi

JP1 Version 13 JP1/Script(Windows(R)用)


2.4.2 Scriptランチャサービスの設定

〈この項の構成〉

(1) Scriptランチャサービスの概要

Scriptランチャサービスは,NetExecコマンドのログオン空間での要求を制御する機能です。リモートデスクトップ環境では,Scriptランチャは起動できないため,ScriptランチャではNetExecコマンドのログオン空間での要求を制御できません。Scriptランチャサービスを使用すると,このようなシステム構成でもNetExecコマンドのログオン空間での要求を制御できます。

Scriptランチャサービスは,NetExecコマンドでログオン空間を指定して起動するプログラムを,Scriptランチャサービスの開始パラメータ,またはNetExecログオンユーザ設定ファイルで指定したユーザのログオンセッション下に起動します。そのため,Scriptランチャサービスを使用する場合,NetExecコマンドを実行するタイミングで,ユーザがログオン状態である必要があります。ユーザのログオンは,コンソールおよびリモートデスクトップのどちらからでも可能です。リモートデスクトップでログオンした場合は,セッションを切断すると,ログオン状態を維持できます。

Scriptランチャサービスは,次の内容でWindowsサービスに登録されます。

Scriptランチャサービスを使用するとScriptランチャは起動できなくなります。Scriptランチャサービスを使用する運用の場合,ログオン空間での自動起動ができなくなります。ログオン空間での自動起動が必要な場合は,Scriptランチャサービスを使用しないで,Scriptランチャを使用してください。

Scriptランチャサービスを使用する場合,次のどちらかの手順で設定してください。

NetExecコマンドで要求されたプログラムを実行するユーザとして,ログオンユーザ名を1人だけ指定する場合は,どちらの手順でも設定できます。

複数のログオンユーザ名を指定する場合は,NetExecログオンユーザ設定ファイルで設定してください。

(2) Scriptランチャサービスを使用する設定手順

Scriptランチャサービスを使用する場合の手順を次に示します。

(a) Scriptランチャサービスの開始パラメータで設定する場合

Scriptランチャサービスの開始パラメータで設定する場合の,Scriptランチャサービスの設定手順を次に示します。

  1. スタートアップに登録されているScriptランチャを削除する。

  2. Windowsサービスマネージャで,Scriptランチャサービスのプロパティを次のように変更し,プロパティダイアログを開いた状態でScriptランチャサービスを開始する。

    ・ 全般

    • スタートアップの種類:自動

    • 開始パラメータ:ログオンユーザ名

      ログオンユーザ名には,NetExecコマンドで要求されたコマンドを実行するユーザ名を指定します。

      ログオンユーザ名は,"ユーザ名","ユーザ名@ドメイン名","ドメイン名\ユーザ名"のどれかの形式で指定します。

    必ずScriptランチャサービスを開始してから,プロパティの設定ダイアログを閉じてください。Scriptランチャサービスを開始する前にダイアログを閉じると,開始パラメータに設定した情報が消失します。情報が消失した場合は,再度「全般」タブの項目を設定し,Scriptランチャサービスを開始してください。

  3. 開始パラメータに指定したログオンユーザ名でログオンする。

    NetExecコマンドを使用して運用している間は,ログオフしないでください。リモートデスクトップでログオンした場合は,ログオン状態を維持したままセッションを切断すれば,リモートデスクトップサービスクライアントを終了してもかまいません。

注意事項
  • NetExecコマンドで要求されたコマンドを実行するユーザ名を変更するには,Scriptランチャサービスを停止し,手順2からやり直してください。

  • 管理者以外のユーザをログオンユーザ名に指定し,リモートデスクトップ接続を使用してログオンする場合は,ユーザに対して事前にOSのセキュリティの設定で「グローバルオブジェクトの作成」の権利を割り当ててください。

(b) NetExecログオンユーザ設定ファイルで設定する場合

NetExecログオンユーザ設定ファイルで設定する場合の,Scriptランチャサービスの設定手順を次に示します。

  1. JP1/Scriptのインストール先フォルダの配下にConfフォルダを作成する。

  2. NetExecコマンドで要求されたコマンドを実行するユーザ名を指定したNetExecログオンユーザ設定ファイルを作成し,JP1/Scriptインストール先フォルダ\Conf\SPTHLSV_LogonUser.confに格納する。

    NetExecログオンユーザ設定ファイルについては,「(3) NetExecログオンユーザ設定ファイルの詳細」を参照してください。

    なお,ConfフォルダとNetExecログオンユーザ設定ファイルについて,Scriptランチャサービスの開始アカウント(ローカルシステムアカウント)に対して,次のアクセス許可が必要です。

    ●Confフォルダ

    ・読み取りと実行:許可

    ・フォルダの内容の一覧表示:許可

    ・読み取り:許可

    ●NetExecログオンユーザ設定ファイル

    ・読み取り:許可

  3. スタートアップに登録されているScriptランチャを削除する。

  4. Windowsサービスマネージャで,Scriptランチャサービスのスタートアップの種類を「自動」に変更し,Scriptランチャサービスを開始する。

  5. NetExecログオンユーザ設定ファイルに指定したログオンユーザ名でログオンする。

    NetExecコマンドを使用して運用している間は,ログオフしないでください。リモートデスクトップでログオンした場合は,ログオン状態を維持したままセッションを切断すれば,リモートデスクトップサービスクライアントを終了してもかまいません。

注意事項
  • NetExecログオンユーザ設定ファイルを修正した場合は,Scriptランチャサービスを再起動してください。

  • 管理者以外のユーザをログオンユーザ名に指定し,リモートデスクトップ接続を使用してログオンする場合は,ユーザに対して事前にOSのセキュリティの設定で「グローバルオブジェクトの作成」の権利を割り当ててください。

  • NetExecログオンユーザ設定ファイルが存在する場合は,Scriptランチャサービスの開始パラメータに設定した実行ユーザ名は無効となります。

  • Scriptランチャサービスの開始パラメータによる設定に戻したい場合は,NetExecログオンユーザ設定ファイルを削除してください。

(3) NetExecログオンユーザ設定ファイルの詳細

NetExecログオンユーザ設定ファイルは,Scriptランチャサービスを使用する場合に,NetExecコマンドで要求されたプログラムをどのユーザのログオン空間で実行するかを指定するファイルです。

(a) ファイル名

SPTHLSV_LogonUser.conf(ファイル名固定)

(b) 格納先フォルダ

JP1/Scriptインストール先フォルダ\Conf\

(c) 設定反映のタイミング

Scriptランチャサービス起動時。

(d) 指定形式

指定形式1:

優先順位が高い順に改行区切りでログオンユーザを指定

ログオンユーザ名1
ログオンユーザ名2
  :
指定形式2:

ログオンユーザを限定しない場合は「*」を指定

*

(e) 記述内容の説明

指定形式1の場合

1行に対して1人のログオンユーザ名を256バイト以内で指定します。

ログオンユーザ名は,"ユーザ名","ユーザ名@ドメイン名","ドメイン名\ユーザ名"のどれかの形式で指定します。ログオンユーザ名の指定に「*」(ワイルドカード)は使用できません。

少なくとも1人のログオンユーザ名を指定する必要があります。最大で10人のログオンユーザ名を指定できます。

複数のログオンユーザ名を指定する場合は,優先順位の高い順に指定してください。

NetExecコマンドの実行時に,指定されている順にログオンしているユーザを検索し,最初に見つかったユーザのログオン空間においてNetExecコマンドで要求されたプログラムを実行します。

指定されているユーザが誰もログオンしていない場合は,NetExecコマンドの実行がエラーとなります。

なお,11行目以降の記載は無視されます。

指定形式2の場合

1行目に「*」(半角アスタリスク)だけを指定します。「*」以外を指定するとエラーになります。

ログオンしているユーザを検索し,最初に見つかったユーザのログオン空間においてNetExecコマンドで要求されたプログラムを実行します。

ログオンしているユーザが見つからない場合は,NetExecコマンドの実行がエラーとなります。

なお,2行目以降の記載は無視されます。

(f) 注意事項

  • NetExecコマンドの実行時には,指定したユーザがログオン状態である必要があります。

  • 実行するユーザ(ログオンしておくユーザ)を固定できる場合は,ログオンユーザ名を1人だけ指定することを推奨します。

  • ユーザのログオン状況によるNetExecコマンド自体のエラーを減らしたいという場合に複数のログオンユーザ名を指定してください。

  • 複数のログオンユーザ名を指定する場合または「*」を指定する場合は,ユーザのログオン状況によって,実行ユーザが変わります。NetExecコマンドで呼び出すプログラムは,実行ユーザの権限に依存しない作りにしてください。

    また,できるだけ画面を表示しない作りにすることを推奨します。画面を表示する場合は,どのユーザに対して画面が表示されるかが分からないため,どれかのユーザが画面を確認できれば問題ないという使い方にしてください。

  • 実行中にどのユーザで実行しているかを確認したい場合は,タスクマネージャなどで確認してください。実行後にどのユーザで実行したかを確認したい場合は,サーバトレースファイルまたは実行トレースファイル(呼び出すプログラムがSPTファイルの場合だけ)で確認してください。

  • NetExecログオンユーザ設定ファイルの文字コードはシフトJISだけ対応しています。

(g) 定義例

Administratorで実行する場合
Administrator
User01,User02の優先順位で実行する場合
User01
User02

(4) Scriptランチャサービスを使用する運用からScriptランチャを使用する運用への変更手順

Scriptランチャサービスを使用する運用からScriptランチャを使用する運用に変更する場合は,次の手順を実施してください。

  1. Windowsサービスマネージャで,Scriptランチャサービスのスタートアップの種類を「手動」に変更し,Scriptランチャサービスを停止する。

  2. Scriptランチャのショートカットをスタートアップに登録する。