0

我的团队将构建一个应用程序的 iOS 和 Android 版本,供该领域的数百名员工使用。我们将在内部开发一个 .NET Web 服务,以便为这些应用程序提供数据。由于这将是我们第一次涉足移动开发,我想确保我们能够正确地进行。:)

考虑到这一点,实现以下目标的最佳方法是什么:

  • 保护 .NET 网络服务,使除我们之外的其他应用程序无法使用它。
  • 确保从 Web 服务到客户端应用程序的数据传输是安全的。
  • 验证我们的用户 - Windows 还是 Forms 验证?

此外,如果有任何好的教程可以推荐用于开发用于移动应用程序的 Web 服务的最佳实践,请告诉我。非常感谢!

4

1 回答 1

0

- 使用带有适当证书的 https 而不是 http。

- 使用 IIS 重写模块只允许您的应用程序代理名称,或在 Web 配置中阻止其他人。

  <rules>
    <rule name="Ban user-agent RogueBot" stopProcessing="true">
      <match url=".*" />
      <conditions>
        <add input="{HTTP_USER_AGENT}" pattern="googlebot|msnbot|slurp|yandex|yahoo|chrome|safari|google|explorer|mozilla|gecko|opera"/>
      </conditions>
      <action type="AbortRequest" />
    </rule>
  </rules>

- 让您的移动客户端在第一次启动应用程序时生成唯一的随机 UUID,使用此 UUID 来识别客户端,当然您应该在每个请求中发送此 ID,并且您应该在帖子正文中发送,而不是在查询字符串中发送。SSL!在您在网络服务中做某事之前,您可以随时检查收到的 ID 是否已注册。

- 除了唯一 ID NTLM 身份验证之外,您还应该考虑实施 OAuth,我建议使用 1.0 而不是 2.0。文档可以在这里找到

对于 Web API,是一个很好的起点

于 2012-12-27T01:39:03.743 回答