|
![]() |
# 1 |
חבר מתקדם
|
התחברות לאתר?
הי,
יש לי טופס התחברות, לצורך הענין נקרא לו login.php בטופס ישנם השדות שם משתמש + סיסמא בלבד. נניח והמשתמש עבר בהצלחה את פרוצדורת הזיהוי, איך ניתן לזכור אותו בכניסות הבאות שלו לאתר? יש את set cookie אבל אני קצת מסתבך עם זה. כמו כן רציתי לדעת איך לSeasion_start יש קשר לכל הסיפור תודה לעוזרים! שב"ש ![]() |
![]() |
![]() |
# 2 |
חבר מתקדם
|
אז זה הולך ככה ..
אחרי שהמשתמש עבר את הזיהוי אתה מייצר לו סיישן ככה : PHP קוד:
קוד:
$_POST["user"] אם אתה רוצה לבדוק האם המשתמש התחבר תעשה ככה : PHP קוד:
![]()
__________________
|
![]() |
![]() |
# 3 |
חבר מתקדם
|
הי ליאור! קודם כל תודה.
![]() לדעתך מאובטח יותר להשתמש בסשן מאשר קוקיז? |
![]() |
![]() |
# 4 |
חבר מתקדם
|
כן .. מכיוון שקוקיז כל אחד שיודע להתעסק קצת יכול לערוך אותו .. מהסיבה הזאת צריך לבנות אבטחה בשבילו..
מהצד השני אתה יכול לשלוט על הזמן שהמשתמש יהיה מחובר ... ובסישן אתה לא יכול
__________________
|
![]() |
![]() |
# 5 | |
חבר בקהילה
|
ציטוט:
אתה טועה. שוב. וממשיך להטעות אנשים, חבל.. אם אתה לא יודע פשוט אל תנסה לעזור. זיוף Sessions אפשרי בדיוק באותה רמה של זיוף Cookies. אז איך כן תעשה את זה ? - תיצור כפתור CheckBox של "זכור אותי" לדעת אם לשמור את העוגייה במחשב (אולי המשתמש לא משתמש הרגע במחשב שלו?) - בדוק עם המסד נתונים אם המשתמש קיים והסיסמא תקינה במקרה אם כן המשך הלאה. - תגדיר Session במקרה שלא השתמש באופציה "זכור אותי" - במקרה שכן השתמש באופציה "זכור אותי" תגדיר עוגייה - בנוסף את הסיסמא תדאג להצפין באחת מההצפנות המוצעות בPHP לדוגמא: md5, sha1, crc32. נקודות חשובות: שים לב לא להגדיר בצורה הבאה (כמו שהראו לך למעלה): קוד:
$username = $_POST["user"] אתה בודק עם המסד נתונים אם המשתמש קיים והסיסמא שהוזנה נכונה. במקרה של שימוש בצורה הזאת אתה חושף את המסד נתונים שלך להזרקות SQL. על מנת לקרוא עוד על הזרקות SQL: http://www.unixwiz.net/techtips/sql-injection.html אז מה כן אפשר לעשות? השתמש בפונקציה mysql_real_escape_string ! קוד:
$username = mysql_real_escape_string($_POST['user']) Last edited by daNN; 28-10-11 at 18:03.. |
|
![]() |
![]() |
# 6 |
חבר בקהילה
|
הייתי רוצה להצטרף לדיון באיך אפשר להצפין עוגייה. כמו שאמרו, אפשר לשחק עם עוגיות זו לא הבעיה. אז מה אפשר לעשות? קודם כל לקחת כמה ערכים מזהים:
מספר משתמש - מספר ייחודי שיש לכל משתמש, זה הערך הראשוני שצריך להיות בעוגייה סיסמה מוצפנת בנוסף - הסיסמה שקיימת במסד, להצפין אותה פעם נוספת ליתר בטחון כתובת אתר - הדומיין של האתר שממנו בוצעה ההתחברות אחרי שביצעת את ההתחברות לאתר ווידאת בוודאות שהוא המשתמש תיצור את העוגייה.ואפשר לקחת ערכים אחרים. את הערכים אתה מזין בעוגייה כשהם מופרדים בתור מסויים, לא משנה איזה. נעבור לחלק השני: כשהמשתמש מגיע לאתר פעם נוספת אתה טוען לתוך מחרוזת את הערך של העוגייה ומשתמש בפונקציה exploe(פונקצייה חזקה מאוד, שימושית ונוחה http://php.net/manual/en/function.explode.php ) ואז אתה טוען מהמסד נתונים את הערכים לפי המספר משתמש ובודק הסיסמה שבמסד, אם אצפין אותה עוד הפעם היא זהה למה שיש בעוגייה? האם הדומיין שיש בעוגייה זהה לדומיין הנוכחי? וכו' וכו' וכו'. במידה וכן המשתמש מחובר, במידה ולא תמחק את העוגייה ותפנה אותו לעמוד ההתחברות. מקווה שעזרתי. |
![]() |
![]() |
# 7 | |
עסק רשום [?]
|
ציטוט:
לכן אי אפשר לערוך את הערך של סשיין. מה שכן אפשרי זה לגנוב את המזהה הייחודי של מישהו, אבל בכל מקרה אין למשתמש גישה לערך של הסשיין ואין שום טעם להצפין אותו. מספיק להזין שם את האיידי של המשתמש או שם המשתמש וזהו. כמובן שאם השרת שאתה מאוחסן בו הוא בעל אבטחה אפסית אז זה כבר סיפור אחר ואפשר להשיג גישה למידע, אבל במקרה הנורמלי אין טעם להצפין את הסשיין |
|
![]() |
![]() |
# 8 | |
חבר בקהילה
|
ציטוט:
וזאת הכוונה בזיוף סיישן רציתי לציין שיש דרך כזאת. |
|
![]() |
![]() |
# 9 |
חבר מתקדם
|
ובהנחה שהמשתמש יצא מהאתר ונכנס אחרי יומיים(מאותו מחשב+דפדפן) - > איך המערכת תזהה אותו? הרי אין לו כלום על המחשב שמעיד על כך (=קוקיז)
אני מקווה שזה לא עפ"י כתובת IP מאחר וזה לא כל כך טוב עבורי. |
![]() |
![]() |
# 10 |
עסק רשום [?]
|
שימוש במערכת הסיישנים המובנית ב- PHP לא עונה על התנאי של פותח האשכול: "איך ניתן לזכור אותו בכניסות הבאות שלו לאתר".
המידע הקיים בסיישן תקף כל עוד הגולש לא סגר את הדפדפן/ איפס את הסיישן, ברגע שהגולש יסגור את הדפדפן ויפתח אותו מחדש הוא יקבל מזהה אחר והמערכת כבר לא תקשר אותו למידע מהסיישן הקודם שלו. תלמד להשתמש בעוגיות, זה ידע בסיסי. |
![]() |
![]() |
חברים פעילים הצופים באשכול זה: 1 (0 חברים ו- 1 אורחים) | |
|
|