私はC#WCFサービスとクライアントを作成しました。これは、企業の従業員がモバイルデバイス(現在のところネットブック)でクライアントからクロックイン/クロックアウトできるようにするためです。これはテストされ、開発でうまく機能します。今度は本番環境に移行します。
Productionは、企業のオフィス(ホームオフィス)でWin 2008R2x64を実行するHPProliantML110サーバーです。これはホームオフィスであり、通常のホームケーブルインターネット接続だけであるため、Webトラフィックがこのサーバーに適切に送信されるように無料のno-ipダイナミックDNSアカウントとポート転送を設定しました。
リモートマシンから、サーバー上のIISでホストされているWebサービスのWSDLにアクセスできます。たとえば、http://example.no-ip.org/exampleService/LaborServiceを使用して(実際のURLではなく)例を示します。 svc?wsdl、インターネット上のリモートマシンからWSDLを見ることができます。
ここで、SSLを使用してこれを安全にホストできるようにする必要があります。また、リモートクライアントがインターネット経由でこのWebサービスを認証してWebサービス呼び出しを行えるように、IISとWebサービスエンドポイント/クライアントを適切に構成する必要があります。
私が抱えている問題は、SSLがどのように機能するか(少なくともSSLを使用するために何が必要かはわかりません)、IIS、Webサービス、またはクライアントを構成する方法がわからないことです。
既定では、サービスとクライアントはWindows認証でwsHttpBindingを使用しています。これは実際には機密性の高いデータではないので(従業員名、ID、refcode /ジョブ名、id、refcode /職場ID、名前、refコード/出勤時刻と退勤時刻)が最善だと思います。リモートクライアントに接続できるように、動作させるために必要な最小限のセキュリティがあります。
そのため、現在、IIS7を搭載したWindows 2008と、ローカルクライアントに接続できるC#WCFサービスが展開されています。これを公開するにはどうすればよいですか?たくさんの選択肢があることは知っていますが、私が必要だと思うのは、誰かがこれを行うための最良の方法についての意見と、それを行う方法についての指示またはガイダンスを私に与えることです(したがって、それは幅広い質問であることを知ってくださいたくさんの答えがありますが、あなたが最善だと思う解決策を1つ選び、それを私に説明してください。私は永遠に感謝します)。
Webアプリケーションをデプロイする方法について私がどれほど無知であるかの例として。SSL証明書を取得するために何が必要か、SSL証明書を持っている場合はそれをどうするか、IIS、サービス、およびクライアントがSSL証明書を使用するように構成する方法がわかりません。だから、それらのことを行う方法についての指示は素晴らしいでしょう。
ありがとう。