2012-05-05 116 views
6

moodle平臺中的管理員登錄密碼丟失。手動更改訪問phpMyAdmin的moodle管理員密碼或創建另一個管理員帳戶?

我有機會獲得phpMyAdmin的。

我去mdl_user表,並在那裏我可以看到或編輯此表。

我該如何繼續?我可以將管理員編寫的密碼和密鑰更改爲已知的密碼,還是僅僅添加管理員用戶更簡單?

那會怎麼樣?

+0

你可以只檢查源代碼,看看哈希是如何計算的。然後,您可以使用散列函數對新密碼進行新的散列。 – Zombaya

回答

0

顯然Moodle 1.9.9版本只用md5一次散列密碼(根本沒有鹽!!)。

因此,唯一要做的就是用管理員行中的密碼填寫密碼,並使用所需的任何密碼與應用的md5。

+0

您如何確定這裏使用的是moodle版本? – iankit

+0

我看了一下當時是什麼版本... – Trufa

0

目前的Moodle介紹密碼在每個安裝唯一加密密碼的鹽。

如果您沒有刪除或更改訪客帳戶密碼,您可以將其值複製到admin用戶密碼以便能夠登錄。

稍後,您可以將其更改爲任何你喜歡的。

用戶帳戶存儲在mdl_user表中。

1

你可以只檢查源代碼,看看哈希是如何計算的。然後,您可以使用散列函數對新密碼進行新的散列。

我檢查了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); 
} 
10

打開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> 
1

如何改變密碼使用MD5哈希:

  1. 登錄到phpMyAdmin的。 cPanel託管將在cPanel中有一個名爲PhpMyAdmin的數據庫實用程序 。如果Moodle安裝在非cPanel託管的 上,請聯繫託管公司獲取有關 如何在服務器上編輯數據庫的信息。有關 登錄到phpMyAdmin的更多信息,請參考文章「如何做我在控制面板(的cPanel)?管理 一個MySQL數據庫在phpMyAdmin」。

  2. 在PhpMyAdmin中,找到名爲mdl_user的表並將其選中。由於Moodle有許多表,mdl_user表可能在第二頁上。選擇第二頁。點擊mdl_user表。

  3. 選擇表後,找到正在編輯的用戶的表格行。點擊帶鉛筆圖標的編輯鏈接。

  4. 密碼字段中會有一系列字符和數字。這是一個加密的密碼,因此無法在數據庫中查看。用登錄的新密碼替換加密的文本。

  5. 接下來,在左側的下拉菜單中,選擇MD5,然後單擊開始。

這也可以用於電子郵件地址和用戶名。電子郵件和用戶名不需要MD5散列。

11

僅上的Moodle 2

測試可以重置命令行任何用戶密碼。在您的Moodle根:

PHP管理/ CLI/reset_password.php

dev的督促環境也可能要禁用密碼策略檢查(這樣你就可以進入一個小而快速的打字密碼)。編輯reset_password.php和註釋:(!check_password_policy($密碼,$ ERRMSG))

//如果{
// cli_error($ ERRMSG);

//}

+1

確認這適用於2.9.1。對我來說,這應該是正確的選擇答案。沒有大驚小怪,沒有麻煩。 – PartialOrder

+0

優秀和簡單的答案。適用於Moodle 3.0。 –

1

另一種更快速,輕鬆地生成一個新的MD5哈希密碼:

  1. 轉到http://www.miraclesalad.com/webtools/md5.php並創建一個新的密碼一樣... wintersnow123〜 (它將如下所示:「003df036e1a99aad3eaba7c3ca46723d」不帶引號)。
  2. 複製您提交的單詞(很容易)生成的md5哈希密碼並準備好粘貼它。
  3. 使用phpMyAdmin,登錄到您的MySQL數據庫。
  4. 導航到用戶表(對於Moodle,它被稱爲「mdl_user」)並瀏覽數據。
  5. 找到「admin」用戶帳戶後,點擊編輯,然後粘貼在步驟2中複製的新密碼(「003df036e1a99aad3eaba7c3ca46723d」)。 (進入密碼字段。)這將取代你以前的。
  6. 嘗試用您的管理員用戶帳戶和新密碼登錄(密碼:wintersnow123〜)