[英]How can I connect myself as an other user?
您好,我是django项目的开发人员,我必须检查我的开发是否正常。
为此,我必须以用户身份连接自己,但我只有他的电子邮件而不是他的密码。 我在table User
找到该电子邮件和密码,但是密码以此开头: pbkdf2_sha256 ...
所以我猜密码是加密的。 有没有一种更简单的方法可以做到这一点?
谢谢您的帮助 !
根据创建新用户时对密码进行哈希处理的方式,您可以将用户的哈希值替换为另一个哈希值:
如果散列的生成方式相同,则可以使用其他用户的密码登录。
然后,完成后,还原数据库中的更改。
希望能帮助到你。
django中的密码是一种加密方式,因此无法解密,因此无法从数据库的用户表中查找任何用户的实际密码。
如果您想代表另一个用户登录而不必知道他们的密码,则可以编写一些复杂的代码来实现该目的,或者使用第三方程序包。
django-hijack看起来不错。 它的文档对如何使用它有很好的解释,因此在这里我将不做介绍。 如果您不喜欢该软件包,则可以在djangopackages上看到用于此目的的软件包列表,然后选择所需的软件包。
向/hijack/<user_id>
发出发布请求,其中<user_id>
是表user
的列id
。 如果您尚未更新模型用户的字段ID,则该字段ID将为1、2、3,...。因此,该网址将类似于/hijack/1/
如果要通过用户名劫持,请向/hijack/username/<username>
发出发布请求。 例如。 /hijack/username/awesome_username/
如果您想通过/hijack/email/<user email>/
进行劫持,请向/hijack/email/<user email>/
发出发帖请求。 例如。 /hijack/email/awesome@email.com/
在以超级用户身份向这些网址之一发出发布请求后,您将被重定向到HIJACK_LOGIN_REDIRECT_URL
中指定的HIJACK_LOGIN_REDIRECT_URL
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.