【发布时间】:2013-05-20 11:14:42
【问题描述】:
我正在努力保护我的 Django restful api。
我有两个客户:
- 我的 Django 前端应用程序(我的服务器上的 Ajax 请求)
- 使用 httplib 发出自己的请求的 python 应用程序
现在我使用 HTTP 基本身份验证来允许客户端使用资源。 管理 cookie 会话的身份验证方法上的基本用户名/密码。 在生产中,我确保我的 API 只能通过 https 使用。
我尝试实现 HMAC 构造(因为我不想将密码放在网络上,但我必须在两端存储秘密)。这适用于我的其他 python 应用程序,但不适用于我的 Django 前端应用程序,因为任何用户都可以看到 javascript 代码。
我尝试实现其他身份验证方法,因为我不想真正维护会话状态(不是真正的 REST)。
curl -H "PERSONAL_SECRET_API_KEY: TokenKeyxxxxxxxxxx" https://localhost:8000/api/resource/
这是我的问题:
- 基本身份验证系统的弱点是什么?
- 还有其他适合我的方法吗?
谢谢
【问题讨论】:
-
我建议你看看 django-rest-framework.org 提供了很多很棒的身份验证选项,可以帮助你专注于应用程序的其他部分。
标签: django api rest basic-authentication