« 同一ネットワークで複数ISPの共有東尋坊に行ってきた(北陸旅行) »

[Windows Server]サービスへのアクセス権限

[Windows Server]サービスへのアクセス権限

パーマリンク 2009/03/26 23:53:15 著者: kumaold メール
カテゴリ: サーバ関係

動画配信サーバの設定準備中に、外部からWeb画面を通してWindows Media Serviceを操作する必要が出てきました。

本当はVBScript(WSH)を使ってスクリプトを書くべきですが、とりあえずそこはまた後日ということでPHPからサービスの制御で済ませることにしました。


が、そこでこんなに苦労するとは・・・

例えば、コマンドラインからサービスを開始・終了するにはscコマンドです。

sc start サービス名(WMServer)      # サービスの開始
sc stop サービス名(WMServer)      # サービスの停止


PHPからこれをexec()とかsystem()とかで実行すればいいはずですが、普通にやるとどうやってもこうなってしまいます。

[SC] OpenService FAILED 5:

アクセスが拒否されました。

もちろん、この辺は全部試した上での話ですよ。

  • UAC(ユーザーアカウント制御)の無効化
  • IISの実行ユーザをPower Usersグループのメンバに
  • cmd.exeへのアクセス権限を付与
  • sc.exeへのアクセス権限付与
  • WMServer.exeへのアクセス権限付与


しばらく格闘しても結局どうしようもなかったので途方に暮れていると、こんな情報が出てきました。

Windows OSでは、セキュリティを確保するために、システム内部に存在する各種のオブジェクト(ファイルだけでなく、サービスやプロセス、パイプといった、動的に生成されるものも含む)に対して、アクセス権を設定し、権限を持つユーザーやグループからのアクセスを許可し、それ以外からのアクセスを禁止するなどしている。

@IT - セキュリティ設定を記述するSDDL文字列とは?』より


まさに探し求めていた情報です。

まずサービスについての現在のセキュリティ記述子を表示するには、「sc sdshow サービス名(WMServer)」と打ち込みます。

すると、なんか暗号めいたACLの設定文字列が表示されます。
意味は解説しきれないので上のリンク先のページを参考に。

D:(A;;CCLCSWRPWPDTLOCRRC;;;SY)
(A;;CCDCLCSWRPWPDTLOCRSDRCWDWO;;;BA)
(A;;CCLCSWLOCRRC;;;IU)
(A;;CCLCSWLOCRRC;;;SU)
S:(AU;FA;CCDCLCSWRPWPDTLOCRSDRCWDWO;;;WD)

現状ではIISの実行ユーザにはサービスの操作権限がないようです。

whoamiコマンドをPHPから実行してみると、ユーザはNetwork Service(略称NS)であることが分かるので、これに実行権限を付加します。

ACLの設定反映には、「sc sdset サービス名(WMServer)」コマンドに続けて、今回は以下の新しい設定を流し込みます。

D:(A;;CCLCSWRPWPDTLOCRRC;;;SY)
(A;;CCDCLCSWRPWPDTLOCRSDRCWDWO;;;BA)
(A;;CCLCSWLOCRRC;;;IU)
(A;;CCLCSWLOCRRC;;;SU)
(A;;GX;;;NS)  ←今回追加したアクセス権限(権限はRPWPDTCRRC相当)
S:(AU;FA;CCDCLCSWRPWPDTLOCRSDRCWDWO;;;WD)


これにてPHP側からの制御で、サービスの開始・終了ができるようになりました。

セキュリティに厳格すぎるというのもこういう時には面倒になるなぁ。

ひと目でわかるMicrosoft Windows Server 2008 (マイクロソフト公式解説書) (マイクロソフト公式解説書)ひと目でわかるMicrosoft Windows Server 2008 (マイクロソフト公式解説書) (マイクロソフト公式解説書)
天野 司

type="text/javascript" src="http://www.ad16.jp/socailmedia.php?a=CCBot%2F2.0+%28http%3A%2F%2Fcommoncrawl.org%2Ffaq%2F%29&u=http%3A%2F%2Fkuroutoshikou.blog16.jp%2Findex.php%2F2009%2F03%2F26%2Fwindows_server_a_ma_fa_a_sa_ca_ra_ca_ma_" charset="EUC-JP">

一六社で働くITエンジニアのブログ。

普段はWeb系システム開発と地元のPCサポートをやってます。いつの間にやら会社に8年目。
技術ネタ中心に日々の仕事と生活と趣味やらを気が向いたら書いてます。

2017年5月
 << <   > >>
  1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30 31      

検索

XMLフィード

16ブログ     powered by b2evolution free blog software