2009-05-06 11 views
3

私はローカルで本番システムを再現しようとしていますが、サービスを使用する際に問題があります。私はプロダクションサーバーにできるだけ近いところにサーバーのローカルインスタンスを設定しましたが、ローカルクライアントはそのサーバーで動作しません。しかし、私のローカルマシン上の同じクライアントは本番インスタンスでうまく動作します。WCF/SSL発行

本稼働システムをローカルで使用するために、hostsファイルを使用して、すべてのアドレスを127.0.0.1にリダイレクトし、ホストヘッダーをIISで使用しています。

ローカルマシンで認識している唯一の違いは、CAから購入したSSL証明書を使用するのではなく、IISリソースキットのSelfSSLで作成した証明書を使用していることです。

selfssl.exe/T /N:CN=my.url/V:365/S:12345/P:443 (12345は、私のウェブサイトのIDです。 IIS)私は、ローカル/デバッグクライアントを使用しようとするたびに、私はエラーを取得する

要求されたサービスを、 『https://my.url/myService.svcは』アクティブにすることができませんでした詳細については、サーバーの診断トレースログを参照してください。 "

次のようにしてサービスにアクセスしようとしましたブラウザ内のURL:

https://my.url/myService.svc?wsdl

http://my.url/myService.svc?wsdl

と、それは、WSDLのXMLを返し両方のケースインチ

誰でも私がこの問題を解決するのに役立つことができますか?

歓待

答えて

0

IIS設定がASP.NET 2.0であり、1.0または1.1でないことを確認してください。

+0

ありがとうございます。2.0.50727 –

+0

エンドポイントにはどのようなバインディングを使用していますか? –

+0

サービスではhttpとhttpsの両方が使用されていますが、ブラウザを使用してページにアクセスしようとしたときに、プライベートキーにアクセスできなかったためアクセス権が変更されていました。ご協力いただきありがとうございます。 –

2

解決済み...証明書の秘密鍵に対するアクセス許可の問題でした。 ASPNETユーザーに必要な権限と私はwinhttpcertcfgを使用してそれらを付与:

winhttpcertcfg -g -c LOCAL_MACHINE\My -s my.url -a ASPNET 
1

web.configファイル内の接続文字列プロパティを確認してください。 あなたの接続文字列はWindows認証のためだと思います。ですから、SQL認証に変更してください。