繁体   English   中英

如何将桌面应用程序公开为安全Web服务?

[英]How to expose desktop application as a Secure Web Service?

Window桌面应用程序提供了C ++ API,该API提供了一系列客户信息,例如姓名和地址。 我想将其公开为具有安全性的SOAP Web服务,以便该Web服务的授权客户端(从远程服务器Linux / Java通过ESB)可以随时在SOA实现(基于Java)中获取此信息。 桌面应用程序没有标准数据库。 它在内部存储其数据。 它基本上是旧的定制CRM应用程序,安装在每个代理的PC盒上。 每个代理商都有自己的客户清单。

完成此任务需要采取哪些步骤?

我需要将其作为Windows服务运行吗?

简短的答案是,是的,您可以通过SOAP Web服务公开来自桌面应用程序的数据。 使用C#和.NET更容易,但使用C ++并非不可能。 您需要采取什么步骤取决于您要开发的平台。

大概-

实现支持SSL的端点,客户端可以在该端点上连接到您的桌面应用程序(使用C ++中的套接字或使用.NET的HTTPListener)。

编写可以接收和调度SOAP请求的代码。

处理SOAP请求并返回格式正确的SOAP响应。

处理WSDL请求。

实施安全机制(基于cookie或其他方式)。

使用.NET,大部分已经在平台代码中了,您只需要将各个部分放在一起。 使用C ++,您可能会找到一些第三方库,但实际上您将编写自己的库。

仅当希望在桌面用户未登录并运行桌面应用程序时数据可用时,才需要实现Windows服务。 这里的挑战是,您必须确保Windows服务可以访问桌面应用程序正在使用的相同数据。

另一种策略是使用C ++ API和Interop从桌面应用程序访问数据,并将Web服务作为IIS上托管的现成的asmx标准实现。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM