標準ユーザーが印刷スプーラーを再起動 (停止/開始) できるようにする方法はありますか?

標準ユーザーが印刷スプーラーを再起動 (停止/開始) できるようにする方法はありますか?

何らかの理由で、WiFi ネットワーク上の複数のラップトップが、ネットワーク上のサーバーに接続されたデバイスに印刷できなくなることがよくあります。各ラップトップで印刷スプーラーを再起動すると、問題は解決します。ただし、Windows 印刷スプーラー サービスを再起動するには ( またはコマンドservices.msc経由net start/stop)、管理者権限が必要です。

昇格または管理者権限を必要とせずに、標準ユーザーがローカル印刷スプーラー サービスを再起動できるようにする方法はありますか? たとえば、ポリシーの変更などでしょうか?

答え1

私は最終的に方法3を使用しましたWindows 2000 でユーザーにサービスの管理権限を付与する方法

  1. ダウンロードとインストールサブInACL.exe
  2. 走る"C:\Program Files\Windows Resource Kits\Tools\subinacl" /service Spooler /grant=<username>=TO

SubInACLWindows 7 で動作します。

grantパラメータはアクセスT用であり、パラメータはアクセスです。start serviceOstop service

次のこと<username>が可能になりました:

  • 走っsc stop Spoolersc start Spooler
  • 走っnet stop "Print Spooler"net start "Print Spooler"
  • アイテムRestartのボタンを使用するPrint Spoolerservices.msc

答え2

試してみましょう: SetACL: Windows ACL 管理 http://sourceforge.net/projects/setacl/

SetACL + GUI = SetACL スタジオ http://helgeklein.com/setacl-studio/

答え3

古いブログ記事正しい解決策があります (「すべての認証済みユーザーにサービスの再起動を許可する」を参照してください)。管理者特権のコマンド プロンプトで次のコマンドを 1 回実行します。

sc sdset Spooler "D:AR(A;;CCDCLCSWRPWPDTLOCRSDRCWDWO;;;BA) (A;;LCRPWP;;;AU)(A;;CCLCSWLOCRRC;;;IU)(A;;CCDCLCSWRPWPDTLOCRSDRCWDWO;;;SY) S:(AU;FA;CCDCLCSWRPWPDTLOCRSDRCWDWO;;;WD)"

ユーザーが再起動する必要のあるサービスの名前に置き換えますSpooler。行の残りの部分はそのまま使用します。意味はわかりませんが、機能します。 :-)

数秒後、次の応答が表示されます。

[SC] SetServiceObjectSecurity SUCCESS

これで、認証されたすべてのユーザーがサービスを再起動できるようになります。

答え4

まず、既存のデフォルトの権限を調べて文書化します。管理者
特権のコマンド プロンプトから、次のように入力します。

sc.exe sdshow spooler

結果:
D:(A;;CCLCSWLOCRRC;;;AU)(A;;CCDCLCSWRPWPDTLOCRSDRCWDWO;;;BA)(A;;CCLCSWRPWPDTLOCRRC;;;SY)S:(AU;FA;CCDCLCSWRPWPDTLOCRSDRCWDWO;;;WD)

出力を読み取るための鍵:

D: — 任意 ACL (DACL)
S: — システム アクセス制御リスト (SACL)

最初の文字は、許可(A)または拒否(D)を意味します。

次のシンボルのセットは割り当て可能な権限です。

CC — SERVICE_QUERY_CONFIG (サービス設定の要求)
LC — SERVICE_QUERY_STATUS (サービス ステータスのポーリング)
SW — SERVICE_ENUMERATE_DEPENDENTS
LO — SERVICE_INTERROGATE
CR — SERVICE_USER_DEFINED_CONTROL
RC — READ_CONTROL
RP — SERVICE_START
WP — SERVICE_STOP
DT — SERVICE_PAUSE_CONTINUE

受託者のリストは長いですが、私たちが探しているのは最初の括弧内に含まれる認証済みユーザー (AU) です。

認証されたユーザー (AU) に RP、WP、および DT 権限を追加すると、問題が解決するはずです。

(A;;CCLCSWLOCRRCRPWPDT;;;AU)

これらの権限を設定するには、再度管理者特権のコマンド プロンプトから次の手順を実行します。

sc.exe sdset spooler "D:(A;;CCLCSWLOCRRCRPWPDT;;;AU)(A;;CCDCLCSWRPWPDTLOCRSDRCWDWO;;;BA)(A;;CCLCSWRPWPDTLOCRRC;;;SY)S:(AU;FA;CCDCLCSWRPWPDTLOCRSDRCWDWO;;;WD)"

権限をデフォルトに復元し、認証されたユーザーがスプーラ サービスを開始/停止/一時停止/再開できないようにするには、次の手順を実行します。

sc.exe sdset spooler "D:(A;;CCLCSWLOCRRC;;;AU)(A;;CCDCLCSWRPWPDTLOCRSDRCWDWO;;;BA)(A;;CCLCSWRPWPDTLOCRRC;;;SY)S:(AU;FA;CCDCLCSWRPWPDTLOCRSDRCWDWO;;;WD)"

ワシントン大学のITコネクトの功績は大きい。https://itconnect.uw.edu/wares/msinf/other-help/understanding-sddl-syntax/

関連情報