我正在构建一个解决方案,该解决方案将使用 WCF 使我组织中的所有计算机定期“回家”。为了便于讨论,我们假设我组织中的每台计算机都连接了一个天气传感器。此应用程序的目的是每台计算机都应联系中央服务器以报告其所在位置的天气情况。要传输的数据被编码为字符串。
假设为了讨论,我有一个 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 服务器标识自己......