我试图找出在我的服务器和另一家公司的服务器之间来回发送信息的最佳方式。基本上,另一家公司处理我的软件的销售,然后去我的服务器激活软件。每次加载时我的软件都会点击我的服务器以获取激活的许可证。我的服务器被阻止外部SQL查询(不会从其他公司服务器运行查询),所以我不得不在他们的服务器上来回传递数据。
对这种事情不熟悉,我正在寻找关于如何最好地执行此操作的意见(如何安全地执行此操作)(我已经知道如何编写代码)。例如,加密的GET请求是否足以解密链接中传递的信息? SSL中的数据是否为XML?我很感激你能给予的任何想法和方向。
提前致谢!
答案 0 :(得分:3)
听起来你可以建立网络或网络服务服务器?让您的服务器仅通过HTTPS接受连接,并要求客户端身份验证。让其他公司的服务器使用带有POST请求的HTTPS联系您的服务器。
您的服务器需要提供另一家公司的服务器认为可靠的SSL证书 - 您需要获取CA颁发的证书,或者您可以创建自签名证书并让另一家公司安装该证书他们的服务器的信任存储。另一家公司还需要提供您的服务器可识别的SSL证书 - 在这种情况下,它应该是您在信任库中安装的自签名证书,因此您不接受任何已发布CA的人员的连接证书。
您的软件可以通过HTTPS GET请求与您的服务器联系。如上所述,客户端软件的证书要求与其他公司的服务器相同。
此安排将阻止(a)任何人冒充您的服务器,(b)任何人在发布到您的服务器时模仿您的合作伙伴的服务器,(c)任何人窃听您的客户端软件与您的服务器的连接并获取其用户密钥那样。