标签: custom-backend

MongoEngine - 如何自定义用户模型/自定义后端进行身份验证()

摘要

如何使用Django + MongoEngine 自定义用户模型自定义身份验证后端(以允许电子邮件/密码身份验证)? (是否需要自定义后端?...即,在使用MongoEngine进行身份验证时使用电子邮件作为用户名.)

在使用Django进行身份验证时,使用Mongo作为主数据存储区时,是否存在使用自定义用户对象的直接(且完整!)示例的文档?(Postgres有更清晰,更全面的文档...)


详情

MongoEngine似乎只为您提供两种身份验证 - "经典"(又名" mongoengine.django.auth.MongoEngineBackend ")方式......或者......"自定义用户模型"(又名' django.contrib.auth) .backends.ModelBackend ')方式 - 在Nicolas Cortot对这里的另一个问题的回答中或多或少简洁地概述了这两种方式:

Python-Social-Auth失败了mongoEngine(Django)

这两种身份验证技术都允许您访问类似于Django的AbstractBaseUser类的authenticate()方法 - 一种依赖于check_password函数的方法.但是,你分钟使用身份验证(如上面的链接概述)的所谓的"自定义用户模型"的味道...... 随后一对用自定义后端(为了使用电子邮件,要求用户名)......你由于无法访问典型的authenticate()函数而遇到麻烦.

例如,像这样......

accounts.models.py


# ...with postgres, I'd subclass AbstractBaseUser...but with Mongo...(?)

from django.conf import settings
from mongoengine.fields import EmailField, BooleanField 
from mongoengine.django.auth import User class MyUser(User): email = EmailField(max_length=254, unique=True) is_active = BooleanField(default=True) is_admin = BooleanField(default=False) USERNAME_FIELD = 'email' REQUIRED_FIELDS = '' ... …

authentication django custom-backend mongoengine

13
推荐指数
1
解决办法
3207
查看次数

Django自定义身份验证后端需要输入密码吗?

以下是我的大学处理身份验证的方式:我们将用户重定向到网站,输入用户名和密码,然后使用用户名和在查询字符串中传递的登录密钥重定向回我们.当我们收回用户时,我们在大学的数据库中调用存储过程,该存储过程获取用户名,登录密钥和IP地址,并告诉我们这是否有效.

我有一个Django自定义身份验证后端设置来处理我们所有这一切的结束.我是否能够接受密码参数(因为我们实际上没有使用他们的密码),这会有什么不同吗?现在,我已将其设置为使用登录密钥作为密码参数.它是好的还是坏的,或者我不能改变这个,比如说,login_key而不是密码?

python authentication django django-authentication custom-backend

2
推荐指数
1
解决办法
1968
查看次数

我忘记了Jsecure管理员网址,我怎么能把它拿回来?

如果有人知道Jsecure组件,可以告诉非常好的扩展躲Joom后端网址...但我忘了什么类型的字我给Jsecure访问我的后端.

我找几个sulotion在互联网上,我怎么能看出来那是什么关键是什么我失去了它......可能是所有sulotion只为Joomla 1.5,但我使用Joomla 2.5.所以我在prefix_extensions表中找到了Jsecure行,然后打开它.我想我运气好,但是当我看到"Params"是完全空的时候.无处我可以看到这个管理URL关键...有人可以帮我请我怎么能找回来我的管理员?

joomla backend custom-backend joomla-extensions joomla2.5

1
推荐指数
1
解决办法
1万
查看次数