moodle平臺中的管理員登錄密碼丟失。手動更改訪問phpMyAdmin的moodle管理員密碼或創建另一個管理員帳戶?
我有機會獲得phpMyAdmin的。
我去mdl_user表,並在那裏我可以看到或編輯此表。
我該如何繼續?我可以將管理員編寫的密碼和密鑰更改爲已知的密碼,還是僅僅添加管理員用戶更簡單?
那會怎麼樣?
moodle平臺中的管理員登錄密碼丟失。手動更改訪問phpMyAdmin的moodle管理員密碼或創建另一個管理員帳戶?
我有機會獲得phpMyAdmin的。
我去mdl_user表,並在那裏我可以看到或編輯此表。
我該如何繼續?我可以將管理員編寫的密碼和密鑰更改爲已知的密碼,還是僅僅添加管理員用戶更簡單?
那會怎麼樣?
目前的Moodle介紹密碼在每個安裝唯一加密密碼的鹽。
如果您沒有刪除或更改訪客帳戶密碼,您可以將其值複製到admin用戶密碼以便能夠登錄。
稍後,您可以將其更改爲任何你喜歡的。
用戶帳戶存儲在mdl_user表中。
你可以只檢查源代碼,看看哈希是如何計算的。然後,您可以使用散列函數對新密碼進行新的散列。
我檢查了source-code,並根據配置使用md5或sha1進行散列處理。所以檢查一下你的配置,然後製作你自己的配置文件。
// From the sourcecode:
if ($this->config->passtype === 'md5') { // Re-format password accordingly
$extpassword = md5($extpassword);
} else if ($this->config->passtype === 'sha1') {
$extpassword = sha1($extpassword);
}
打開Moodle的config.php文件,發現其中$ CFG-> passwordsaltmain定義行,並複製它的值(它是隨機字符的長字符串)。
在phpMyAdmin,運行下面的查詢,用值酌情:
UPDATE mdl_user SET password = MD5(CONCAT('<new password>', '<password salt copied from config>')) WHERE id = <id of admin user>
如何改變密碼使用MD5哈希:
登錄到phpMyAdmin的。 cPanel託管將在cPanel中有一個名爲PhpMyAdmin的數據庫實用程序 。如果Moodle安裝在非cPanel託管的 上,請聯繫託管公司獲取有關 如何在服務器上編輯數據庫的信息。有關 登錄到phpMyAdmin的更多信息,請參考文章「如何做我在控制面板(的cPanel)?管理 一個MySQL數據庫在phpMyAdmin」。
在PhpMyAdmin中,找到名爲mdl_user的表並將其選中。由於Moodle有許多表,mdl_user表可能在第二頁上。選擇第二頁。點擊mdl_user表。
選擇表後,找到正在編輯的用戶的表格行。點擊帶鉛筆圖標的編輯鏈接。
密碼字段中會有一系列字符和數字。這是一個加密的密碼,因此無法在數據庫中查看。用登錄的新密碼替換加密的文本。
接下來,在左側的下拉菜單中,選擇MD5,然後單擊開始。
這也可以用於電子郵件地址和用戶名。電子郵件和用戶名不需要MD5散列。
僅上的Moodle 2
測試可以重置命令行任何用戶密碼。在您的Moodle根:
PHP管理/ CLI/reset_password.php
dev的督促環境也可能要禁用密碼策略檢查(這樣你就可以進入一個小而快速的打字密碼)。編輯reset_password.php和註釋:(!check_password_policy($密碼,$ ERRMSG))
//如果{
// cli_error($ ERRMSG);//}
確認這適用於2.9.1。對我來說,這應該是正確的選擇答案。沒有大驚小怪,沒有麻煩。 – PartialOrder
優秀和簡單的答案。適用於Moodle 3.0。 –
另一種更快速,輕鬆地生成一個新的MD5哈希密碼:
你可以只檢查源代碼,看看哈希是如何計算的。然後,您可以使用散列函數對新密碼進行新的散列。 – Zombaya