2016-07-06 18 views
1

我有一個網站,其中包含登錄名/密碼部分。它有近500個用戶。我已經在mysql表中爲它們創建了登錄名和密碼,我們稱之爲「用戶」。從另一個mysql用戶表導入用戶到Mybb數據庫

現在我剛安裝了一個Mybb論壇,它有自己的mysql數據庫(mybb_users)。 我不希望人們通過自己註冊,我只是希望他們使用他們在我的常規網站上使用的以前的登錄名/密碼。

我的問題是:

1)我可以導入用戶從CSV文件中的MyBB的應用程序?
2)mybb_users數據庫結構是:用戶名密碼鹽loginkey

是其中只有登錄名和密碼(明文)

我的「用戶」表的不同我如何轉換的密碼,並創建該登錄密鑰可在mybb中使用。

我不能手動創建500個用戶。
我希望我很清楚。

感謝您的幫助

+0

如果表格與「插入到表格2(用戶,通過)選擇用戶,從表格1傳遞到相同的數據庫」 –

+0

@RafaelShkembi Shkembi在mybb管理界面中,我可以手動添加用戶。當我這樣做時,它通過選擇salt自動加密密碼並使用登錄密鑰 – gamliel

+0

這些表位於同一數據庫中? –

回答

0

這是對只有登錄名和密碼 (明文)我的「用戶」表

一個解決方案,將工作,因爲不同的初始存儲的密碼根本不加密:

提醒您的上下文:

  • 一個自定義類MyUserLogin表。
  • MyBB的登錄表。我們稱之爲MyBBLogin
  • MyUserLogin的密碼根本不加密
  • MyBBLogin的密碼是用MD5 + Salt加密的。

一個簡單的解決方案,除了從CSV之一,是創建這類PHP腳本:

  1. MyUserLogin表中選擇的所有用戶。
  2. 對於每個返回用戶的密碼($password_cleartext),應用此功能:

    function generate_salt() { 
        return random_str(8); //picked from MyBB's source code 
    } 
    
    $passwordToStoreInMyBB = md5(md5($salt).md5($password_cleartext)); 
    
  3. 然後你只需做一個插入查詢來填充MyBBLogin的領域,包括新加密的密碼($passwordToStoreInMyBB鹽鍵($salt)。

注意LoginKey場僅僅是在登錄時由MyBB的,以防止某些類型的CSRF攻擊的,尤其是在退出機制產生的密鑰。
您不必親自填寫它。
有關此密鑰的精華here的更多信息。

相關問題