如何针对服务器验证WPF应用程序?

时间:2017-01-09 17:36:49

标签: wpf security

假设如下:

  1. 我有一个WPF应用程序,它从发送的文件中读取文本 通过HTTPS将文本发送到我的服务器REST API,服务器发送一个
    响应取决于请求中发送的文本

  2. WPF应用程序应该是唯一获得有用响应的应用程序 对此请求 - 所以WPF应用程序必须以某种方式显示 服务器,请求从应用程序本身发送。

  3. 不应要求WPF应用程序的用户输入任何登录凭据

  4. 这里有哪些最佳做法?

    我的想法:

    • WPF应用程序可以发送硬编码密码 在服务器端检查的请求 - 但听起来不是 对我来说是一个很好的解决方案,因为安全性取决于这个事实 没人能够嗅探HTTPS请求。
    • 是否可以嗅探HTTPS请求以轻松获取密码?

    提前致谢

1 个答案:

答案 0 :(得分:1)

如果您的服务器已经支持HTTPS,则客户端根据其使用的证书知道服务器是受信任的,以便处理该端。 (客户信任服务器)

为确保信任,服务器需要执行相同操作。 (服务器信任客户端)客户端应该持有可以传递给服务器的证书,以便服务器可以验证客户端身份。

总是会出现如何在客户端中隐藏密钥的问题,其中有各种方案,但由于客户端需要获取密钥,最终无法阻止专门的黑客查找该信息,只能使其成为对他们来说更难。 (混淆等)

根据您的应用程序,最好的是允许连接的简单白名单客户端。有些应用程序可以做到这一点,但许多应用程序可以做到这一点,因为它们没有用户IP等,但如果它适合您的用例,那么请记住这一点。

您可以像建议的那样向服务器发送密码。只要邮件被加密(HTTPS),你可能就好了。没有什么是100%安全的。它可以通过中间人攻击来截获,但是这些攻击相当罕见,或者至少非常有针对性,所以它取决于你的软件做什么等。