【发布时间】:2014-01-04 22:08:22
【问题描述】:
我有一个 django 项目,在其中我公开了一些 api 端点(api 端点 = 获取/发布的答案,返回 json 响应,如果我的定义有误,请纠正我)。我在前端使用这些端点,例如更新计数或获取更新的内容,或无数其他事情。我在服务器端,在模板中处理表示逻辑,并且在某些情况下将渲染到字符串模板发送到客户端。
以下是我试图回答的问题:
- 我需要在客户端和服务器之间进行某种身份验证吗?
- django 跨域保护是否足够?
- 在这张图片中,像django-oauth-toolkit 这样的包在哪里安装?还有django-rest-framework?
- 如果我不在客户端和服务器之间添加任何身份验证,我是否会让我的服务器处于开放状态以受到攻击?
此外,服务器到服务器的连接是什么?两台服务器都在我的控制之下。
【问题讨论】:
-
如果您要问 - 我是否应该实施 oauth/openid/something 身份验证来保护我的服务器免受 GET 请求的影响,那么我会说不。是的,服务器将打开,但如果所有视图都不允许对任何对象进行任何更改并且您已遵循 django 部署指南 (djangobook.com/en/2.0/chapter12.html),那么一切都应该没问题。
-
@OdifYltsaeb 是的,这就是我想知道的,我应该为客户实施 oauth 等。邮局电话呢? csrf 够用吗?那么服务器到服务器呢?
-
好吧,我尽量保护我的每一个观点。这意味着我需要登录保护大多数视图和 API 视图通常需要 API 密钥。所以只要你有 API 密钥——你可以做任何视图允许的事情:P
标签: python django api rest oauth