wrapper.ntservice.password プロパティ

対応バージョン :3.0.0
対応エディション :プロフェッショナル版スタンダード版コミュニティー版
対応プラットフォーム :WindowsMac OSX (未対応)Linux (未対応)IBM AIX (未対応)FreeBSD (未対応)HP-UX (未対応)Solaris (未対応)IBM z/Linux (未対応)

警告

コンフィギュレーションファイルを使って、 アプリケーションをWindowsサービスとしてインストールしている場合、このプロパティ値を変更しないでください。 このプロパティ値を変更する前に、必ずアプリケーションを既存サービスからアンインストールしてください。 後に、新しい設定値で、サービスを安全に再インストールすることができます。

このプロパティは、Windowsプラットフォームで使われるプロパティです。

wrapper.ntservice.password プロパティ

このプロパティには、[wrapper.ntservice.account] プロパティで指定されたアカウントのパスワードを設定します。 もし、そのアカウントにパスワードが設定されていない場合、あるいは、LocalSystemアカウントが利用されている場合、 この値は「ブランク(空)」にすることができます。 デフォルト値は「パスワードなし」です。

パスワードの設定例:
wrapper.ntservice.password=secret

注意

このプロパティを変更した場合、Windowsサービスを再インストールするまで有効になりません。

空文字パスワード:

単純にパスワードを空文字に設定するか、あるいは、このプロパティを全てまとめて省略すれば、 パスワードを設定していないアカウントを使うことができます。

空文字パスワードの設定例:
wrapper.ntservice.password=

注意

Windows XP、Windows 2000 SP3や、それ以上のシステムでは、 デフォルトで、パスワードを設定していないアカウントでサービスを動作させることは許可されていません。

パスワードなしのアカウントで動作させるためには、 『アカウント : 空パスワードのローカルアカウントの利用をコンソールログオンだけに制限する』 の設定を無効にする必要があります。

「アカウント制限の無効」設定方法:

コントロールパネルにある『管理ツール』に行き、『ローカルセキュリティポリシー』を開きます。 『ローカルポリシー』を展開させて、『セキュリティオプション』をクリックします。 ウィンドウの右側に、上記の項目が見えるはずです。 右クリックか、ダブルクリックで、プロパティダイアログにアクセスして、「無効」に設定します。

Windows 2000 や XP のホームエディションでは、ローカルセキュリティポリシーは表示されません。 つまり、そのWindows上では、アカウントを指定して、サービスを動かすことはできません。

パスワード保存に不安?

wrapper.conf」 ファイルに プレーンテキストとしてのパスワードを保存しておくことに不安を感じるユーザーもいることでしょう。 この問題を避ける手法として、いくつか選択肢があります。 一旦、Wrapperがサービスのとしてインストールされると、 その後は[wrapper.ntservice.password]は要求されません。

  • 一番明白な解決法は、サービスがインストールされた後、 「wrapper.conf」ファイルから、 この[wrapper.ntservice.password]プロパティ を単純に削除することです。 これで、ファイルを手動で修正するために、ユーザーの要求が必要になります。

  • その他の手法としては、2つ目のコンフィギュレーションファイルを作成して、 以下のように、「password.conf」のファイル名で保存します。 実際の「wrapper.conf」ファイルに 直接的にプロパティを宣言するのではなく、 新しく作成したパスワードファイルを含めるようにインクルードファイル(カスケード形式)を活用します。 この利点は、オプション選択として、 一旦、Wrapperがサービスのとしてインストールすれば、 パスワードファイルを単純に削除することができます。

    新しいコンフィギュレーションファイル「password.conf」:
    wrapper.ntservice.password=secret
    
    wrapper.conf」ファイルに、パスワードファイルを含める
    wrapper.ntservice.name=myapp
    wrapper.ntservice.account=myuser
    #include ../conf/password.conf
    

    インクルードファイルの動作に関してなどの詳しくは、 『コンフィギュレーションファイルのカスケード(インクルードファイル)』ページ を参照ください。

  • 3つ目の選択肢は、Wrapperをインストール時に使われるバッチファイルを編集して、 ユーザーにパスワード入力を求めるようにします。下記のコマンドを使って、Wrpperをインストールします。

    wrapper.exe -i ..\conf\wrapper.conf wrapper.ntservice.password=%PASSWORD%
    

    Wrapperバージョン3.2.0より以前のものは、 プレーンテキスト形式のレジストリ内に、コマンドラインで指定された全てのプロパティを保存しています。 このセキュリティホールは、 [wrapper.ntservice.password]プロパティを特別に覆うことや、 レジストリに保存された値から省くことで、修正されています。

  • 4つ目の選択肢は、Wrapperをサービスとしてインストールするとき、 ユーザーにパスワードを求めるプロンプトを表示させる、 次の[wrapper.ntservice.password.prompt]プロパティを設定することができます。

wrapper.ntservice.password.prompt プロパティ

このプロパティを設定すると、 Wrapperは[wrapper.ntservice.password]プロパティの設定を無視して、 サービスとしてインストールする際に、ユーザーにパスワードの入力を求めます。 Windowsサービスマネージャー以外のどこにもパスワードが記録されないため、セキュリティ上の利点があります。 デフォルト値は「FALSE」です。

設定例:(プロンプト有効)
wrapper.ntservice.password.prompt=TRUE

-i]コマンドでWrapperが起動されると、 コンソールに下記が表示され、ユーザーにアカウントパスワードの入力を求めます。 この例では、 [wrapper.ntservice.account]プロパティが、 『.\Wrapper』に設定されているという前提です。

プロンプト表示例:
Please input the password for account '.\Wrapper':

注意

現在のところ、このプロパティはコンソールが有効になっていることが必要なため、 Wrapperのウィンドウアプリケーション「wrapperW.exe」ではなく、 Wrapperのコンソールアプリケーション「wrapper.exe」だけで動作します。

wrapper.ntservice.password.prompt.mask プロパティ

Wrapperのデフォルトでは、パスワード入力時に、パスワードをマスク表示します。 このプロパティを「FALSE」に設定すると、コンソールでパスワードが見えるようになります。 デフォルト値は「TRUE」です。

設定例:(マスクの無効)
wrapper.ntservice.password.prompt.mask=FALSE

参照: アカウント関連