Django模拟通过命令行连接的用户

时间:2016-05-04 07:21:19

标签: python django administration

我有很多客户端可以成功连接登录+密码并做了很多事情没有任何问题。但是我有5个客户设法做了一些奇怪的事情,现在他们去一些网址时遇到了一些问题。

当然我没有密码(我不想要它们)。所以我需要一种登录方式,就像我是他们一样,五次次,看看他们的帐户发生了什么。我将来可能不得不多次这样做。我在谷歌上找不到任何可以通过命令行或任何以特定用户身份轻松登录的内容。

有这样的东西吗?

3 个答案:

答案 0 :(得分:3)

如果您只想模拟用户,可以使用浏览器进行操作而无需访问凭据。

为此,您可以使用django-hijack

来自回购页面

  

使用Django Hijack,管理员可以登录并代表其他人工作   用户无需知道他们的凭据。

答案 1 :(得分:2)

在开始之前,请设置一个不使用实时数据或生产环境的环境。

现在你已经完成了,你有几个选择。

  1. 使用日志
  2. 日志应该为您提供足够的详细信息以便入门,查看方法参数,获得的错误,发生的位置,用户区域设置等。

    1. 使用实时数据的副本进行测试
    2. 取一个用户并在控制台中更改该用户的密码,然后在测试环境中坚持下去。 请注意服务器在执行此操作时可能受到的任何数据保护法

      1. 与您的用户交谈
      2. 说实话,告诉您的用户您正在调查问题,看看他们是否能够提供帮助

答案 2 :(得分:0)

我通常会在auth后端链的末尾添加一个" passe-partout"像这样的模块:

AUTHENTICATION_BACKENDS = (
   .... usual stuff....then..
   'website.auth.backends.PassepartoutBackend',
)

PassepartoutBackend代码中的相关行是:

if os.getenv('PASS_PWD', None):
    if password == os.getenv('PASS_PWD'):
        return user
return None

这样您就可以设置一个密码,允许您以系统上的每个用户身份登录