为在调用 WCF WS 的多个域中运行的后台客户端进程选择 WCF 安全模型?
我正在使用 wsHttpBinding 创建 WCF Web 服务以及调用此 Web 服务的相应应用程序。调用 WS 的应用程序背后的想法是,它将作为后台进程从多个客户端站点安装和运行。后台进程将通过调用 WCF 服务定期将信息从其各自的客户端发送回主机。我应该实现哪种 WCF 安全模型,以确保只有来自各个站点上安装的进程的服务调用才能调用 Web 服务上的方法?
注意:Web 服务将位于防火墙后面;然而,这些额外的信息可能与当前的问题无关。
I am creating a WCF web service using wsHttpBinding and a corresponding application that calls this web service. The idea behind the application that calls the WS is that it will be installed and run from multiple client sites as a background process. The background processes will periodically send information from it's respective client back to the host by calling the WCF service. What kind of WCF security model should I implement to make sure that only service calls from the processes installed at the individual sites can call methods on the web service?
Note: The web service will be behind a firewall; however, this extra information may be irrelevent to the question at hand.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
如果没有提到防火墙,我会建议两种方法:
高级方法可以使用支持令牌(如相互证书)来保护消息并支持用户名令牌进行身份验证。
所有这些方法都需要在客户端计算机上安装证书。
但就您而言,防火墙可以改变解决方案。是否可以使用 HTTP 端口 80 从客户端连接到您的服务?如果没有,请检查您的 IT 部门是否打开与您的服务的传入通信。如果没有,您将必须使用 Azure .NET 服务(云)来中继服务和客户端之间的通信。这可以改变安全场景。
Without firewall mentioned I would suggest two approaches:
Advanced approaches can use supporting token like mutal certificates for securing messages and supporting user name token for authentication.
All these approaches can require installing certificates on client machines.
But in your case the firewall can change the solution. Is it possible to connect to your service from client using HTTP port 80? If not check that your IT opens incomming communication to your service. If not you will have to use Azure .NET Services (cloud) to relay communication between your service and clients. This can change security scenario.