我想实现与django服务器交互的软件客户端。我需要用户登录客户端。
是否可以检查用户是否在数据库及其密码中,只能使用用户名和密码?类似的东西:
if user_valid(username, password):
do something;
我不想发送开放密码,是否可以只发送它的哈希值?我怎样才能获得有效的哈希?在这种情况下,auth方法应该是:
if user_valid(username, password_hash):
do something;
答案 0 :(得分:1)
查看https://github.com/jpulgarin/django-tokenapi
基本上您需要根据用户生成令牌..在下面的示例中,作者使用的是用户主键和密码。
示例:
https://github.com/jpulgarin/django-tokenapi/blob/master/tokenapi/tokens.py#L15
然后......您可以实现自定义身份验证后端..这将允许用户使用生成的令牌登录。
示例:
https://github.com/jpulgarin/django-tokenapi/blob/master/tokenapi/backends.py#L13
有关自定义身份验证后端的详细信息
https://docs.djangoproject.com/en/1.7/topics/auth/customizing/#customizing-authentication-in-django