- PR -

Win2000ProからWin2003Serverへアプリケーションログ書き込みたい

1
投稿者投稿内容
kazuhi6
会議室デビュー日: 2005/10/28
投稿数: 5
投稿日時: 2005-10-30 02:03
はじめて投稿するtake3と申します。
早速ですが、1つ質問がありますので、宜しくお願いします。

【環境】
サーバ:Windows2003Server
クライアント:Windows2000Pro
開発言語:VB.NET

【内容】
現在、あるシステムを開発しており、クライアントの操作をサーバのイベントログ(アプリケーションログ)に書き込むようにしております。以前までは、Windows2000Serverだったのですが、EventLogクラスのWriteEntryメソッドを使用して書き込みが可能でした。しかし今回、2000から2003に変更になり、WriteEntryメソッドを実行すると、「ユーザに書き込みアクセス権がありません。」というエラーが発生するようになりました。これは2003Serverのセキュリティが強化されたことによるものだとは思うのですが・・・。
尚、いろいろ試した結果、クライアントのユーザにadministrator権限を付与すれば書き込みはできたのですが、実際この方法は使えないと思っております。
また、サーバのドメインコントロールポリシーを変更したり、レジストリのアプリケーションログのアクセス権を変更したりしたのですが、いずれも問題解決には至りませんでした。
どんな些細なことでも構いませんので、皆さんの回答をお待ちしております。
きくちゃん
ぬし
会議室デビュー日: 2003/08/01
投稿数: 854
お住まい・勤務地: 都内某所
投稿日時: 2005-10-31 09:03
kazuhi6さん、お早うございます。

#思いつきですが…。

書込み自体はサーバ上のプログラムにやらせて、各クライアントはそのプログラムに報告する、という構成にしては如何でしょうか。その方が、OSの仕様変更なんかにも強そうな気がします。
例えば、XML Web サービスとか。
kazuhi6
会議室デビュー日: 2005/10/28
投稿数: 5
投稿日時: 2005-10-31 10:48
kazuhi6です。

回答ありがとうございます。

きくちゃんさんの回答も1つの方法ですよね。確かに、サーバ側は書き込み、クライアント側はサーバへ報告、という形をとれば、権限に悩まされることはなくなると思います。ただ、サーバ側にあるプログラムへのアクセス権は、考慮しなければならないでしょうけども。
参考になりました、ありがとうございます!

他の方の意見もお聞きしたいので、引き続き皆さんの意見をお待ちしております。
Makoto
大ベテラン
会議室デビュー日: 2004/03/31
投稿数: 133
投稿日時: 2005-10-31 17:30
いつもお世話になっております。

Webサービスでのイベントログ操作は、以前作ったことがあります。
この方式だと、アクセス権はIIS(Webサービス)のWindows認証で
実行できたと思います。

運用が見えないので、上記アクセス設定が可能かによると思いますが...

以上、参考までの情報です。
kazuhi6
会議室デビュー日: 2005/10/28
投稿数: 5
投稿日時: 2005-11-01 10:50
kazuhi6です。

Makotoさん、回答ありがとうございます。

現状では、IISを使用しての運用は想定しておりませんでしたし、お客様とも相談しなければならないと考えております。
ただ、今後本件が解決できない場合は、Makotoさんの意見も踏まえた上で、検討していきたいとは思っております。

Makotoさん、ありがとうございました。
きくちゃん
ぬし
会議室デビュー日: 2003/08/01
投稿数: 854
お住まい・勤務地: 都内某所
投稿日時: 2005-11-01 12:53
kazuhi6さん、こんにちは。

独自のサービスをサーバ上で動かすとか、他にも様々な方法が考えられると思いますが、取り敢えず、今の方法は考え直した方が良いかも知れません。
どこかのアクセス権とかを弄れば、そのまま運用を継続することは出来るかも知れませんが、セキュリティ強化の影響によって動作しなくなったということは、セキュリティ上、好ましくない方法に頼っていたことになりますよね?
まあ、それが原因ではないかも知れませんが。
kazuhi6
会議室デビュー日: 2005/10/28
投稿数: 5
投稿日時: 2005-11-01 13:11
kazuhi6です。

きくちゃんさん、回答ありがとうございます。

確かにおっしゃるとおりですよね。開発当初は、EventLogクラスでPCを指定することで、他のマシンへログ出力ができることを念頭において開発しておりましたので、正直あまりアクセス権については考慮していなかったのが、そもそもの原因かと思います。(※さらに最初は2000Serverだったので、アクセス権はまったく影響しませんでしたし)
最終的に本件を対応するときは、アクセス権への影響を極力少なくなるような方法を用いて、対応していきたいと思います。

きくちゃんさんのご意見、参考にさせていただきます。
1

スキルアップ/キャリアアップ(JOB@IT)