私は、WCF を使用して、組織内のすべてのコンピューターを定期的に "家に呼び寄せる" ソリューションを設計しています。説明のために、組織内の各コンピューターに気象センサーが接続されているとします。このアプリケーションの目的は、各コンピューターが中央サーバーに接続して、その場所の天気を報告することです。送信されるデータは文字列としてエンコードされます。
説明のために、1 日に 1 回メソッドを呼び出す Windows サービスがあるとしますSendWeatherReport
。この関数のシグネチャは次のとおりです。
void SendWeatherReport(string report);
次のインターフェイスを使用して WCF メソッドをセットアップしたとします。
[ServiceContract]
public interface IWeatherReportReceiver
{
[OperationContract]
void GetReport(string report);
}
次の要件があります。
1) 私の天気予報の情報は機密情報です。セキュリティのために暗号化する必要があります。
2) 気象情報をインターネットで配信します。レポートを受信する WCF サービスを実行しているコンピューターは にありますexample.com
。
3) 天気予報は、サーバーに送信される途中で、過度に設定されたファイアウォールを通過する必要があります。
要件を説明したので、これらの要件を満たすようにエンドポイント構成をセットアップする方法を説明してください。
(1) を満たすには、net tcp バインディングを使用する必要があると思います。(3) については、ポート 80、443、またはその他の一般的に使用されるポートで動作するように、このバインドを構成できます。ここでの私の主な懸念は、WCF サーバーに対して自分自身を識別するようにソフトウェアを構成する方法がわからないことです...