我正在尝试保护我的 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/
这是我的问题:
- 基本认证系统的弱点是什么?
- 还有其他适合我目的的方法吗?
谢谢