zoukankan      html  css  js  c++  java
  • Django如何重设Admin密码

    django的admin用户被我多动症一样的测试,给密码弄丢了,需要重置。

    从数据库重置的可能性为0,因为django对于密码有保护策略。考虑从运行程序的地方进行重置:

    1.在程序的文件夹下,执行这样的命令,进行shell窗口:

    1 python manage.py shell

    2.对admin用户进行修改密码:

    1 from django.contrib.auth.models import User  
    2 user =User.objects.get(username='admin')  
    3 user.set_password('new_password')  
    4 user.save()  

    结果,登录admin成功。

    总结:我有两点疑问:

      首先,如果连用户名admin也忘记怎么办?    

    1 from django.contrib.auth.models import User
    2 user1 = User.objects.filter(is_superuser = True)
    3 user2 = User.objects.filter(is_superuser = True, is_staff = True) 
    4 print user1, user2

      上面第二句选择了所有的超级用户,可以选择其中一个进行修改密码。

      第三句选择了是staff并且是superuser的员工。

          

      注意:默认情况下,只有是staff和superuser的双重身份才能进去django自带的admin管理后台并进行修改和管理。

         当只是staff的时候,只能进入后台,但是不能进行任何操作。当只是superuser状态时,则无法进入后台。

         

      其次,这样的操作允许。意味着,如果知道程序放在哪个路径下面,就可以修改admin的用户密码,这是否不安全?虽然这样的操作,给我们这些记忆力不好的人留下了“后路”。忽然想起来了mysql不能对root修改密码的问题

  • 相关阅读:
    git各种操作:基本操作 and 多人协作 and 冲突解决
    mini-ndn0.5.0 安装教程 (避免踩坑)
    ubuntu18.04 更换镜像源
    自定义日志轮转
    linux常用命令
    Thinkphp6 + uniapp框架,接口访问跨域问题
    机器学习-主成分分析PCA与奇异值分解SVD
    机器学习-数据预处理&特征工程
    机器学习-梯度提升树(xgboost)
    github打不开怎么办
  • 原文地址:https://www.cnblogs.com/xiami303/p/3248179.html
Copyright © 2011-2022 走看看