问题标签 [django-authentication]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
django - 如何在南迁移中访问身份验证用户的 User.objects.create_user(...)?
我没有使用 django 的 auth 模块,而是使用了我自己的并且已经很后悔了。
为了纠正这种情况,我正在尝试将数据从我的用户模型迁移到 django.auth.models.User。
我创建了如下数据迁移:
当我运行迁移时,我收到此错误(回溯):
经过进一步调查,我发现Manager
所提到的那个是south.orm.NoDryRunManager
解释错误的时间。
现在,我什至需要create_user
创建一个django.contrib.auth
可以理解的密码哈希。
说了这么多,我该怎么做呢?考虑到我所在的洞,最优雅的解决方案是什么?!
提前致谢。
更新 1
正如stevejalim所建议的,我尝试使用User
'sset_password(...)
如下:
然而,这个错误失败了:
我确实在南文档中找到了一个提示,其中指出:
South 不会冻结模型的每个方面。例如,它不保留新的管理器或自定义模型方法,因为这些需要序列化运行这些方法的 python 代码(以及依赖的代码,等等)。
如果您想在迁移中使用自定义方法,则必须将代码复制进去,包括它所依赖的任何导入。但是请记住,对于您添加的每个导入,您都承诺在迁移期间保持该导入有效。
我想问题仍然存在,最好/最安全的方法是什么?把方法复制set_password(...)
过来?为我创建一个散列密码的函数?还有其他想法吗?
django - Django Piston 问题 - “oauth_user_auth() 只需要 1 个参数(给定 2 个)”
我在设置 Django Piston 时遇到了一些问题。我已经设法通过此处显示的 oauth_client.py 示例(http://github.com/clemesha/django-piston-oauth-example)生成身份验证。当我运行“python oauth_client.py”时,我被带到http://localhost:8000/api/oauth/authorize/?oauth_token=8wm33jeWR92BpsrHjs然后我勾选一个框以确认访问,然后提交表单。
此时我遇到了“oauth_user_auth() 恰好需要 1 个参数(给定 2 个)”错误。我敢肯定,简单的答案是 oauth_user_auth 方法不接受一个参数,但要删除该字符,我必须编辑一个活塞文件,我对此有点沉默。有没有其他人遇到过这个问题?
django - Django 身份验证 - 错误的重定向 url 到登录页面
当用户未登录时,我仅尝试为经过身份验证的用户输入站点区域,我应该使用设置重定向到我的登录站点,?next=
这里是我的 LOGIN_REDIRECT_URL。但不是/users/login
在我的地址栏中/accounts/login
显示。我应该改变什么以获得正确的网址?
设置:
项目的网址:
帐户应用程序 urls.py :
和帐户 auth_urls.py(它们只是 contrib.auth 的 url):
如果我应该粘贴更多,请告诉我。
django - Django auth:如果他的 IP 与原始 IP 不匹配(他登录的那个),如何禁止用户会话
如果用户的 IP 与他登录时使用的 IP 不同,如何配置或修改身份验证以禁止用户会话?我真的尽我所能保护我的 Django 站点免受 XSS 攻击。但我永远不能确定我涵盖了所有的基础。如果最坏的情况发生并且有人能够在我的网站中放置一些 XSS,至少这可以防止他劫持现有的用户会话。
django - 在 Django 管理员中激活用户时发送电子邮件
我即将创建一个监控注册的网站,只允许某些人注册。毫无疑问,尽管我在注册表上方写了任何文字,但仍有一些不合适的人会注册,所以我们要适度。
注册后django.contrib.auth
User
,将创建一个和个人资料,并向版主发送一封电子邮件。版主将登录 Django 管理站点,检查他们是否被允许注册并将其帐户标记为活动的。如果他们是一些试图溜进来的恶棍,该帐户将被删除。
我将使用 recaptcha 来尝试停止自动尝试。
我想在帐户被激活或删除时发送一封电子邮件,让帐户持有人知道他们的帐户发生了什么,他们可以登录,或者让他们知道我们知道他们在做什么,他们应该别傻了。
我怀疑这与信号有关,但坦率地说,鉴于我使用的是从django.contrib.auth
.
任何提示、线索或代码都被亲切地接受。
django - Django:如何跟踪线性(但灵活)的项目管理工作流程?
我正在 Django 中开发一个项目管理应用程序,它需要一个涉及不同用户组的线性响应过程(如在 Django auth Groups 中)。响应过程中的每个步骤都有多个响应选项(大多数选项是该步骤独有的),并分配给特定组中的用户。该过程的下一步由用户的响应决定,有时可能需要向项目成员之一索取额外信息。
问题是我当前的实现看起来相当繁琐,我确信有更好的方法来跟踪响应过程。我希望有人可以对更强大的解决方案提供一些见解。
作为一个简单的示例,考虑一个具有以下用户组的项目:销售代表、销售经理和项目经理。这些模型目前看起来像这样:
以下是该过程如何工作的简单概述:
- 销售代表创建一个新项目并将其分配给销售经理
- 向销售经理提供以下选项:
(a) 批准项目或
(b) 向销售代表索取更多信息 - 如果项目获得批准,分配给项目经理,项目经理有以下选择:
(a) 开始项目
(b) 拒绝项目
(c) 向销售代表或销售经理索取更多信息 - 如果向用户请求更多信息,项目将分配给该用户,他们只需要提供一个文本框响应。但是,一旦收到他们的响应,项目需要返回到上一步(这就是我跟踪上面的 current_step 和 previous_step 的原因)。在此示例中,如果项目经理向销售代表请求更多信息,则一旦销售代表做出响应,项目应被分配回项目经理,并使用与之前相同的响应选项(开始、拒绝、请求更多信息)。
整个过程大约有 10 个左右这样的步骤。
更复杂的是,我还需要能够显示为每个步骤选择的响应。例如,如果销售经理批准该项目,则应显示“销售经理批准该项目”以及他们可能拥有的任何评论。该模型如下所示:
现在每个响应动作的逻辑都被硬编码在视图中,并且一个步骤和另一个步骤之间没有正式的关系。我觉得应该使用更好的模型结构或数据结构来跟踪这个工作流程,但是我使用当前系统已经很长时间了,以至于我很难以不同的方式思考它。任何见解或灵感将不胜感激!如果我需要澄清任何事情,请告诉我。
django - Django 和通用访问卡 (CAC)
计划用 Python 编写一个 Web 应用程序,Django 是框架的主要竞争者。
一项要求是 CAC 访问,无需手动输入用户名和密码。据我所知,CAC 访问不是 Django 包含的“电池”的一部分。
作为一个整体框架(不一定是一个坏属性),一旦你修改了核心,Django 就有一个高维护的代表。我可以轻松地将 CAC 访问权限添加到 Django 站点吗?以后可以轻松维护吗?
或者也许我们应该考虑一个不同的 Python 框架?
仅供参考..关于 CAC 访问链接的有趣演示
django - Django 身份验证后端
我如何在服务器端知道确定用户的身份验证后端是什么?
python - Django 3rd 方认证系统
我正在考虑用于登录(新/旧)用户的第三部分身份验证系统。就像 StackOverflow 如何验证它的用户一样。这个方案很好,因为它让我不必从我身边进行身份验证。我需要这个 -
- 使用 Google、Facebook、Twitter、Yahoo、OpenID 身份验证系统登录。
- 提供与默认 django 身份验证系统相同的用户登录功能,即 @login_required 装饰器应该可以工作
似乎有一些 Django 应用程序声称可以解决这个问题。哪些好?前任。Django-SocialAuth , django-openid-auth
django - 删除 Django User 模型的 30 个字符限制的最简单方法是什么?
我继承了一个使用自定义无表单身份验证后端的 Django 应用程序。django.contrib.auth.models.User
它通过 SQL hack在 30 个字符限制附近工作ALTER TABLE auth_user MODIFY COLUMN username varchar(90);
,这当然只对数据库有效,但对表单无效。由于我正在尝试从包括 SQL 在内的代码中删除所有的 hack,所以我正在寻找一种适当的方法来消除该限制。您如何建议删除它?