2014-10-06 155 views
1

我在Django有一个网站,我正在开发一个Android应用程序。在一项活动中,我必须登录用户。我已经安装了Django Rest Framework,但是我担心发送用户名和密码是不安全的。使用Rest Framework进行登录的最佳方式是什么?用Django Rest框架登录

+0

有许多现有的应用程序来处理身份验证,所以你可能想看看其中的一些。我听到关于[allauth]的好消息(http://django-allauth.readthedocs.org/en/latest/)。 – 2014-10-06 14:36:49

+0

但是这是用于Facebook,Twitter等。我有我自己的用户 – user3657840 2014-10-06 17:06:11

+0

对不起,我缺乏REST框架熟悉导致我错误。他们的[认证指南](http://www.django-rest-framework.org/api-guide/authentication)看起来确实很彻底,是否有一部分内容不适合你? – 2014-10-07 11:41:28

回答

2

您可以使用基本身份验证,通过提供用户名和密码,但必须通过https完成。否则,您可能会使用其他不同的身份验证机制。看看here。适用于移动应用程序的应用程序可能是令牌认证。

1

使用REST API进行身份验证的最常用方法之一是使用令牌。这实际上意味着设置一个接收“用户名”和“密码”并用令牌响应的API端点。然后,每个向API发出的请求都应该与此令牌一起作为头或参数,并在API后面运行该函数之前得到解析和验证。这样你的用户名和密码将只发送一次。当然,即使这样,建议使用HTTPS。

一个很好的方法是使用djangorestframework-jwt(http://getblimp.github.io/django-rest-framework-jwt/)。这是一个为Django Rest Framework API提供JSON Web Token功能的应用程序。