איפוס סיסמת של משתמש-העל ב-Drupal

drupal-logoכבר פעמיים שהדבר קרא לי, משום מה אחרי ששינתי פרטים בפרופיל של המשתמש-על, לא הצלחתי להתחבר שוב. ואז חיפשתי דרך לאפס את הסיסמה, בפעם הראשונה היה מדובר ה-Drupal 6 ושם הסיסמה היתה ב-MD5, כך שאפשר היה להשתמש בפונקציה הפנימית של MySQL כדי לכתוב את הסיסמה ישירות. ב-Drupal 7 הסיסמה היא Salted SHA512, ולכן האיפוס הפעם לקח טיפה יותר זמן.

אחרי שהפתרון הארוך הצליח, מצאתי גם פתרון מובנה וקצר יותר.

הדרך הארוכה

הדרך הארוכה כוללת שימוש בפונקציה פנימית של Drupal בשם user_hash_password כדי לבצע HASH על מחרוזת. הטריק שמצאתי בפורומים של Drupal היה להכניס את הפונקציה לקוד php של האתר ולתת לאתר לקודד לי את הסיסמה הידועה, ומשם פשוט לדחוף את הסיסמה המקודדת ישירות ל-DB.

הוספת השורות הבאות לקוד בעמוד index.php 

הקוד שלכם אמור להראות ככה:

כאשר תכנסו לאתר, אתם תקבלו מחרוזת משונה, כמו $S$Cd059Vsxc8berFeg6hspaa7ejx2bSxyUisvCbT4h9o8XIgSUtPKz, מה שנשאר לעשות הוא להריץ את הפקודה הבאה עבור עדכון הסיסמה ל-DB, כל אחד והדרך שלו, יש את אלו שיעדיפו ישירות משורת הפקודה ואחרים דרך ממשקי ניהול כמו phpMyAdmin.

הדרך הקצרה

Druapl מגיעה כבר עם סקריפט שיכול ליצור לכם את ה-HASH, הסקריפט נקרא password-hash.sh והוא יושב תחת התיקיה scripts בתקיית ה-druapl שלכם. יש להריץ את הסקריפט תחת גרסה 5 של php ומתוך תקיית השורש של Drupal.

נשאר רק להריץ את הפקודת עדכון ב-SQL וזהו, פשוט וקל ולא דורש להתעסק עם הקוד של האתר.

מקורות

  1. http://drupal.org/node/992400
  2. http://drupal.org/node/1023428


2 thoughts on “איפוס סיסמת של משתמש-העל ב-Drupal

    1. תלוי למה ?

      התשובה הקצרה תהיה כנראה WP, כי זו פלטפורמה מאוד קלה ונוחה לניהול
      בניגוד ל-DRUPAL שיש לה עקומת לימוד ארוכה יותר.

      אבל התשבוה המלאה , תהיה בהתאם לסוג האתר שאתה רוצה להקים
      כמות המשתמשים שינהלו אותו ועוד פרמטרים שאתה צריך לקחת בחשבון.

Leave a Comment

האימייל לא יוצג באתר. שדות החובה מסומנים *

*
*