2

更多的是理解问题,而不是寻找技术解决方案。我在一个致力于构建需要数据库支持的 iOS 应用程序的团队中。我们将 Swift 用于应用程序代码。一个 Django REST API 在后端包装了一个 MySQL 数据库。两者使用 Swift 的 NSURLSession 类通过 HTTP 进行通信。

我们将通过其中一个 http 请求传递密码信息,因此我们希望将请求提升到 HTTPS。在 API 方面,我们可以使用django-ssilfy强制流量通过 SSL 中间件。

我担心的是,包含这个库对客户端没有任何作用。据我所知,我们只需要将 url 更改为包含“https://”而不是“http://”。似乎传递的数据只有在到达 API时才是安全的,而不是通过整个连接

我们必须做些什么来保护通过 Wi-Fi 和移动网络上的 NSURLSession 传递的数据?或者只是将会话指向一个通过 SSL 端口限制的 API 视图,足以确保请求是安全的?

请让我知道我是否偏离了轨道,或者我应该采取除django-ssilfy以外的任何步骤来确保所有 http 通信的安全!

去吧!

4

1 回答 1

1

这个问题更多的是关于 SSL 是否安全,而不是关于正在使用的任何工具是否使其不安全。

幸运的是,信息安全堆栈交换为您提供了答案,并深入解释了 TLS 如何帮助保护您的应用程序。


虽然在保护您的 Django 站点方面,这django-sslify是一个好的开始,但它并不是解决安全问题的灵丹妙药。如果可以,建议不要提供不安全的响应,这适用于 API 主机(api.github.com是一个示例),但如果您的 API 托管在与前端应用程序相同的域中,则不适用。推荐使用其他可用的 Django 应用程序,例如 djang-secure(其中一部分已集成到 Django 1.8中)。

您还应该遵循Django 安全建议,并在新的主要版本中重新审视它们。您可以查看其他资源,例如“Django 的内置安全性是否足够”以及Information Security Stack Exchange上的许多 其他 问题

于 2014-12-25T20:00:52.483 回答