django/python - 在我的基础架构和客户之间交换数据的推荐安全方式是啥?

Posted

技术标签:

【中文标题】django/python - 在我的基础架构和客户之间交换数据的推荐安全方式是啥?【英文标题】:django/python - what's the recommended secure way to exchange data between my infrastructure and my customers?django/python - 在我的基础架构和客户之间交换数据的推荐安全方式是什么? 【发布时间】:2011-06-28 16:01:56 【问题描述】:

我正在为我的网站和后台进程使用 Django/Postgres 和 Python。我每分钟有数百条消息填充我的数据库,我希望安全地允许其他客户访问他们的数据。

我的客户使用 linux 或 windows,所以我想要一些与平台/数据库无关的解决方案。

到目前为止,我查看了 Piston、Twisted、Celery 和 RabbitMQ。所有这些都有某种方式来交换数据。但我不确定该使用什么或是否有更好的选择。

例如,我需要客户只能访问他们在我的数据库中的数据。我需要的另一件事是允许客户将简短的命令发送回我的服务器。我的服务器将执行命令并将结果实时返回给客户。

有什么想法吗?

【问题讨论】:

这些确实是 SSL 问题。听起来您应该有一个基于 SSL 且带有防火墙访问规则的 RESTful Web 界面。 【参考方案1】:

您询问客户如何安全地将命令传输到您的网站并在响应中检索结果(接近“实时”)。

...您是否考虑过将合理的 API 挂接到您的 django 应用程序中?如果您担心安全性,可以使用身份验证并通过 HTTPS 提供服务。

它不像孩子们现在使用的消息传递和排队平台那么花哨,但它可以完成工作。

关于 HTTP/HTTPS API 的优点:

它们可以负载平衡(高度可用且可扩展!) 它们可以被缓存(mo' betta 性能和仍然提供内容的能力,同时限制客户端访问数据库的频率) 几乎每种编程语言都有一个允许 HTTP/HTTPS 连接的成熟库。有些有多个,例如Python: urllib,urllib2,httplib

【讨论】:

我正处于弄清楚我需要使用什么的早期阶段。活塞似乎可以用于客户可以定期从我的数据库中获取数据的地方。我还不确定客户发起请求并需要在大约 10 秒内得到响应的另一部分。

以上是关于django/python - 在我的基础架构和客户之间交换数据的推荐安全方式是啥?的主要内容,如果未能解决你的问题,请参考以下文章

多个设置文件的问题。 Django/Python

在Django中测试django-rq(python-rq)的最佳实践

使用 For 循环的 Django Python 模板嵌套列表

Django Python - 如何在一个 HTML 模板中显示来自不同表的信息

如何在Django / python中每行循环三列?

初识Django —Python API接口编程入门