HOME >> Tips >> Microsoft Windows

タスクスケジューラ設定時に"バッチ ジョブ としてログオン"の権利が必要と言われる

2016/12/12
文書番号:20637


Windows 7 でタスクスケジューラ設定時に以下のようなエラーが表示されました。

=================================================================
このタスクでは、指定されたユーザー アカウントに "バッチ ジョブとしてログオン" の権利が必要です。このポリシーの設定の詳細については、ヘルプの「タスクのセキュリティ コンテキスト」を参照してください。
=================================================================


クリックで拡大


上記メッセージが表示されてもタスクの設定自体は完了しますが、実行する時間になってもタスクは実行されません。

タスクスケジューラを確認すると「前回の実行結果」の欄に以下のエラーが出力されていました。
=================================================================
タスク スケジューラ サービスはタスクを実行しようとしましたが、タスクの定義にある制約の1つのためタスクを実行できませんでした。(0x80041324)
=================================================================

これは「タスクの実行時に使うユーザーアカウント」に指定したアカウントに"バッチ ジョブとしてログオン" の権利がないと発生します。

権限のあるユーザーで指定できない場合はこのユーザーに権限を与えてバッチ ジョブを実行できるようにします。

【設定方法】

    ローカルセキュリティポリシーを設定します。

  1. キーボードの Windwos ロゴキーを押しながら「R」キーを押します。

    クリックで拡大

  2. 「ファイル名を指定して実行」ダイアログが起動します。
    「control admintools」と入力して「OK」をクリックします。

    クリックで拡大

  3. 管理ツールの一覧から「ローカル セキュリティ ポリシー」を起動します。

    クリックで拡大

  4. 「ローカル セキュリティ ポリシー」が起動します。

    [ローカル ポリシー] - [ユーザー権利の割り当て]と展開し、一覧から「バッチ ジョブとしてログオン」の項目をダブルクリックして開きます。

    クリックで拡大

  5. 「バッチ ジョブとしてログオン」のプロパティが開きます。
    ここの一覧にあるアカウントがバッチジョブを実行できるアカウントです。

    今回はローカルユーザーで作成した「admin」というアカウントでバッチジョブを実行したいので「admin」というアカウントを追加します。

    「ユーザーまたはグループの追加」ボタンをクリックします。

    クリックで拡大

  6. 「ユーザー または グループ の選択」ダイアログが起動します。
    追加したいアカウントを指定して「OK」をクリックします。

    クリックで拡大

  7. アカウントが一覧に追加されたことを確認して「OK」ボタンをクリックします。
    ローカルセキュリティポリシーの画面も終了します。
    これでバッチジョブを実行できるようになりました。

    クリックで拡大