zoukankan      html  css  js  c++  java
  • MediaWiki怎样重置用户password

    今天。弄mediawiki因为一个周末另一夜没有睡觉导致忘记password了(欢迎吐槽~)
    就開始折腾之旅,本来以为能够直接执行一条sql语句就都搞定了结果。。。依照网上大多数讲述的

    我已经找不到原作者了。也可能是翻译的官网文档。


    引用;
    忘了MediaWiki的password。假设启用了wiki的Email功能($wgEmailEnble=true),那用户自能够通过Email获取新password,假设没有能够使用更狠的一招,数据库管理员通过SQL语句直接改动password字段。

    如: UPDATE user SET user_password=md5(CONCAT('USERID-',md5('newpassword'))) WHERE user_id=USERID;

    注意:

        假设在安装时,设定了表前缀,那要改动语句中的表名为:YourPreFix_user
        存入wiki中的是passwordmd5后再加上usrID在MD5一次的结果,事实上在Localsettong.php中也能够设定是否要两次MD5
        当然,WHERE中也能够用user_name,但记住要首字母大写

    郁闷执行了,写的更改成功。可是还是无法登录那个郁闷啊~

    继续查就有以下这个文章

    您能够使用maintenance/changePassword.php维护脚本来重置一名用户的password。

    您必须在命令行下执行该脚本。

    换句话说,请登录到安装wiki的server。然后进入命令行提示符。进入安装文件夹,然后进入maintenance子文件夹。执行下列命令:

    php changePassword.php --user=someuser --password=somepass

    这里可见的“somepass”就是您将要设置的password,而“someuser”就是您将改动其password的username,该username应出如今数据库的“user”表中。

    您相同能够使用直接改动数据库的老办法。假设变量$wgPasswordSalt已被设为true值(默认),您能够在MySQL中执行下列SQL查询:

     UPDATE USER SET user_password = MD5(CONCAT(user_id, '-',
       MD5('somepass'))) WHERE user_name = 'someuser';

    这里可见的“somepass”就是您将要设置的password。而“someuser”就是您将改动其password的username。该username应出如今数据库的“user”表中。

    Note 注意:CONCAT字符串中的user_id是一项列名。不应被替换为'someuser'。

    Note 注意:假设您得到了'dbname.user table does not exist'错误,请检查LocalSettings.php文件,并特别注意$wgDBprefix变量的值。假设该变量不为空。请尝试反复执行上述命令,并将SQL查询UPDATE子句中的user替换为$wgDBPrefix_user。



    假设您使用的是PostGreSQL,请使用下列查询替代:

      UPDATE mwuser SET user_password =
        md5(user_id || '-' || md5('somepass')) WHERE user_name='someuser';

    您还能够尝试使用重设password插件。

  • 相关阅读:
    XSS练习小游戏和答案参考
    nxlog以syslog方式发送日志
    Hydra—密码爆破神器
    syslog服务器配置笔记
    信息安全工具汇总整理
    nmap使用指南
    Cleaner, more elegant, and harder to recognize (msdn blog)
    Golang 中的坑 一
    Concurrency Is Not Parallelism (Rob pike)
    golang sql database drivers
  • 原文地址:https://www.cnblogs.com/yjbjingcha/p/8339836.html
Copyright © 2011-2022 走看看