
承認された回答のコメントによると、これ質問ですが、ユーザーが管理者であっても、 を呼び出すスケジュールされたタスクを実行する際に問題が発生していますshutdown.exe
。私は他のユーザーのメイン アカウントを使用してそのユーザーのマシンを管理しているので、彼らは現状のままでよいと思っているので、あまり変更することはできません。
本当に奇妙なのは、次の場合にのみタスクを実行できることです。
- ユーザーは管理者です。
- パスワードが定義されています。
私には分からない奇妙な理由で、ユーザーは管理者である必要があるだけでなく、しなければならないスケジュールされたタスクを実行するには、アカウントにパスワードが必要です。そうしないと、アクセス拒否エラーが発生し、タスクの実行に失敗します。
ユーザーにアカウントのパスワードを強制的に定義させずにこれを機能させるにはどうすればよいですか?
基本的に、残りの目標は、誰がログインしているかに関係なく、毎晩午後 11 時にコンピューターをシャットダウンすることです。
プログラムでタスクを設定しようとすると、以下のエラーが発生しますScheduled Tasks
。
タスク アカウント情報の設定中にエラーが発生しました。
具体的なエラーは次のとおりです:
0x8007005: アクセスが拒否されました。
要求された操作を実行する権限がありません。
記録のために、これが私のセキュリティ ポリシーです。ユーザーにはコンピューターを強制的にシャットダウンしたり手動でシャットダウンしたりする権限があることがわかります。
答え1
最も簡単な解決策は、スケジュールされたタスクを管理者アカウントで実行するように設定することです。ない通常ログオンしているユーザーと同じアカウントを使用する必要はありません。タスクを作成するときに、異なる資格情報を提供するだけです。
「管理者」にパスワードを設定したくない場合は、スケジュールされたタスク専用のアカウントを作成するだけで済みます。(以下の修正を適用すると、制限付きユーザー アカウントも機能します。)
プログラムshutdown.exe
にはSeRemoteShutdown権限いつもの代わりに走るSeShutdown権限– 私の推測では、ローカル マシンとリモート マシンの両方をシャットダウンするのに同じ RPC が使用されていると思います。(これにより、パスワードが必要な理由も説明できます。デフォルトでは、コンソール ログインのみが免除され、明らかに RPC は含まれません。)
付与することができますSeRemoteShutdown権限secpol.msc
→を通してローカルポリシー→ユーザー権限の割り当て「リモート システムからの強制シャットダウン」エントリを編集します。
- タスク専用のアカウントを作成し、ここに追加することができます (最適な選択)。
- 任意のユーザーが対話型のコマンドラインを使用できるようにするには、 を追加できます
INTERACTIVE
。 - 任意のユーザーによってスケジュールされたタスクの場合は、 を追加します
BATCH
。
答え2
これはもっと簡単な解決策です:
ローカル ユーザーのみが を実行できるようにするには%windir%\system32\shutdown.exe -s -t 0
、 をSeRemoteShutdownPrivilege
グループ に付与しますINTERACTIVE
。このグループのメンバーはローカル ユーザーのみです。
方法: を実行しますsecpol.msc
。 を開きます。右側のペインでSecurity Settings \ Local Policies \ User Rights Assignment
ダブルクリックします。 をクリックします。テキスト ボックスに名前を入力してをクリックし、 をクリックして、もう一度 をクリックします。Force shutdown from a remote system
Add User or Group
INTERACTIVE
Check names
OK
OK
ソース: http://blogs.msdn.com/aaron_margosis/archive/2006/01/27/518214.aspx
答え3
パスワードなしで管理者アカウントでタスクをスケジュールしようとしているようです。
空白のパスワードに関係する他の唯一の設定は「ローカルアカウントの空白のパスワードの使用をコンソールログオンのみに制限する」であるという事実に賭けています。
その設定を試してください。セキュリティ オプションの、ユーザー権利の割り当てのすぐ下にあります。
答え4
パスワードが空白のアカウントにタスクを作成する場合、いくつかの制限があります。
Shutdown.exe を実行するタスクを作成できますが、「パスワードを保存しない」オプションを設定する必要があります。これは Windows 7 SP1 の場合です。別の OS を使用している場合はお知らせください。
Windows XP の場合は、コマンド ライン AT ツールを使用します。
at 23:00 /every:monday,tuesday,wednesday,thursday,friday,saturday,sunday shutdown /s