2012-01-17 14 views
0

WCFサービスを1つ作成しました。このサービスでは、C#コードを使用してHttpWebRequestおよびHttpWebResponseを通じてフィードと新しいフィードを読み込みます。ローカルPCでサービスを実行すると、私のシステム内だけでなく、私たちのネットワークシステム全体でも、正しく動作し、フィードが適切に取得されます。私はCredentialCache.DefaultNetworkCredentialsをHttpWebRequestプロキシ認証情報にデフォルトのネットワーク認証情報として割り当て、さらにHttpWebRequestのプロキシにHttpWebRequest.DefaultWebProxyを割り当てて使用しています。すべて私のPCで正常に動作しています。私は、Windowsサービスに、当社のサーバPCでサービスをインストールし、Windowsサービスを実行しているときにWCFサービスがエラーを起こしています

System.Net.WebException: The remote server returned an error: (403) Forbidden. 
    at System.Net.HttpWebRequest.GetResponse() 

を次のようにその予期しないエラーを投げ毎回のため、サービスを開始するとき、私は私のサーバーアプリケーションでこのバグを修正することができません。私が私のサービスで要求しているuriをブラウザにコピーすることによって、サーバーpcにフィードを取得します。しかし、なぜそれはWindowsサービス(services.msc)を実行しているときに例外をスロー?いずれかの私がこの問題を解決するために役立つことを願っています。

EDIT:実際

、私は、プロキシの資格情報のプロキシのユーザー名とパスワードを与えることで試してみましたし、またそれがうまく働いていたその時に、設定項目を通じてプロキシアドレスを指定する前に。しかし、私たちの計画は、毎回プロキシのIPアドレス、ユーザー名、パスワードを提供する負担を取り除くことです。そこで、上記の手順でプロキシをバイパスするために、システムに保存されている既定のネットワーク資格情報を使用してその資格情報を提供することを計画しました。

答えて

0

あなたの会社には、認証が必要なプロキシサーバーが設定されていますか?

組み込みサービス(ネットワークサービス、ローカルシステム)の代わりにIDを使用してサービスを実行し、そのサービスが役立つかどうかを確認してください。

編集:私はそれはプロキシが設定されているかによって異なりでしたが、あなたは正しく設定され、これらの性質を有するドメインアカウントで実行するサービスが必要な場合がありますデフォルトのプロキシ設定を使用するように推測

。良い習慣として、あなた自身の代わりに、専用のサービスアカウントを使用してください。

また、ハードコーディングする代わりにconfigure proxy in the config fileを参照することをお勧めします。

+0

@ Damir Arh、ご返信ありがとうございます。編集済みの投稿をもう一度ご覧ください。 –

+0

あなたの編集をありがとう。私はそれ以上に努力しています、私はあなたにそれを許すかどうか答えます。 –

関連する問題