הוסטס - פורום אחסון האתרים הגדול בישראל

הוסטס - פורום אחסון האתרים הגדול בישראל (https://hosts.co.il/forums/index.php)
-   פורום תיכנות (https://hosts.co.il/forums/forumdisplay.php?f=14)
-   -   [PHP] עבודה עם קוקיז? (https://hosts.co.il/forums/showthread.php?t=22368)

sUP 23-05-06 13:21

[PHP] עבודה עם קוקיז?
 
אני יודע שאני אולי אחשב "דביל",
אבל עד עכשיו תמיד עבדתי עם SESSION ועדיין לא נכנסתי לאזור של הקוקיז..

אז הייתי שמח לקבל קצת רקע על הנושא,
והצורת עבודה עם הקוקיז,

איך להגדיר, איך להגדיר זמן, איך להגדיר מידע, איך לקרוא מידע, איך למחוק את הקוקיז,
וכל הנושא הזה שדי חדש לי.

תודה רבה |winky|

Ori The Man 23-05-06 13:45

כל מה שצריך לדעת
http://php.eitan.ac.il/main.php?id=00153

adiga000 23-05-06 13:45

יתרונות : שומר במחשב במקרה שהשרת קרס או משהו.

חסרונות: אפשרות גישה לקבצים ולראות מה יש בתוכם.

(סתם כתבתי את מה שאני יודע.. אני יודע רק מעט מאוד לדבי זה)

אני אומר לך אל תשמור שמות משתמשים & סיסמאות בקוקיז..
הם יכולים להפרץ.

http://php.eitan.ac.il/main.php?id=00153
אורי תודה על זה..
רציתי לתת את זה אבל נאבד לי..

Ori The Man 23-05-06 13:48

ציטוט:

נכתב במקור על ידי adiga000
יתרונות : שומר במחשב במקרה שהשרת קרס או משהו.

חסרונות: אפשרות גישה לקבצים ולראות מה יש בתוכם.

(סתם כתבתי את מה שאני יודע.. אני יודע רק מעט מאוד לדבי זה)

אני אומר לך אל תשמור שמות משתמשים & סיסמאות בקוקיז..
הם יכולים להפרץ.

http://php.eitan.ac.il/main.php?id=00153
אורי תודה על זה..
רציתי לתת את זה אבל נאבד לי..

בבקשה :)
החסרונות
זה שיכולים לקחת למשתמש את העוגיה ולהשים אצלו תמחשב
ופיתאום זה אותו משתמש
בישביל זה צריך להצפין את התוכן
היתרון הוא טוב למערכות (התחברות וכו') שצריך לשמור את המשתמש מחובר גם לאחר יציאותו מהאתר
וזה יכול להכיל מידע (לא ממומלץ להעמיס מידע לע העוגיה)

sUP 23-05-06 13:54

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

אורי, בנוגע לאתר של איתן, לא הבנתי כלום :|
אני פשוט שונא תאתר הזה, הוא לא מסביר מספיק וזה מבלבל לאללה..

אבל תודה בכל מקרה,
הצלחתי להבין את זה כבר דרך PHP.NET

מה שעדיין לא הצלחתי להבין,
איך יוצרים מערך "עוגיות" ואיך מוחקים עוגיה

Alon.R 23-05-06 14:21

מערך?
וואלה אני שכחתי כבר.. חח

לגבי מחיקת עוגייה, זה פשוט.
אתה קובע עוגייה חדשה (setcookie) באותו שם של זאתי שאתה רוצה למחוק ואתה קובע את הזמן שלה כשלילי (-1).

Ori The Man 23-05-06 14:51

ציטוט:

נכתב במקור על ידי Alon.R
מערך?
וואלה אני שכחתי כבר.. חח

לגבי מחיקת עוגייה, זה פשוט.
אתה קובע עוגייה חדשה (setcookie) באותו שם של זאתי שאתה רוצה למחוק ואתה קובע את הזמן שלה כשלילי (-1).

נכון,
אם הגדרתה 3600 שניות אתה עושה מינוס -3600

BlueNosE 23-05-06 15:47

ציטוט:

נכתב במקור על ידי Ori The Man
בבקשה :)
החסרונות
זה שיכולים לקחת למשתמש את העוגיה ולהשים אצלו תמחשב
ופיתאום זה אותו משתמש
בישביל זה צריך להצפין את התוכן
היתרון הוא טוב למערכות (התחברות וכו') שצריך לשמור את המשתמש מחובר גם לאחר יציאותו מהאתר
וזה יכול להכיל מידע (לא ממומלץ להעמיס מידע לע העוגיה)

שטויות
אי אפשר לזייף עוגיה אלא אם אתה מהFBI או משהו
השם של העוגייה הוא: bla@site-name.co.il
ולא רק bla
כלומר המערך הנבדק מצטמצם ל site-name.co.il בלבד.
פשוט מישהו יכול להסתכל ולראות את השם bla עם הסיסמא goool ולהיכנס..
בגלל זה צריך להצפין סיסמא.

אגב, גם לעשות -1 מספיק.
סתם שתדע.

sUP 23-05-06 15:51

ואיך אני מכניס מספר פרטים לאותה עוגיה?

miniature 23-05-06 16:17

ציטוט:

נכתב במקור על ידי sUP
ואיך אני מכניס מספר פרטים לאותה עוגיה?

עדיף לך לעשות בשיטה שלי:
יש ב DB שדה code ושדה id.
בהרשמה נכנס id חדש ו code שמוצפן ב MD5 חדש.
בכל התחברות אתה מזין לשני עוגיות (אחת id ואחת code) את הנתונים של אותו משתמש, וכן יוצר קוד חדש שמוצפן ב MD5 לאחר יצירת העוגיות, להקשות על זיוף ה code (כי כך הכל התחברות יש code חדש שמוכנס לעוגיה code).
בכל פעם שאתה רוצה להשתמש בעוגיות (וידוי התחברות לדוג'), אתה בודק האם העוגיות id ו code נמצאות, ואם כן, אתה משווה את העוגיה code לערך שדה ה code שב DB איפה (WHERE) שערך שדה ה id שווה לערך העוגיה id.

מקווה שהבנת, במידה ולא כל כך, אתה יכול לשאול בנושא הזה / בפרטי.

יואב.

sUP 23-05-06 16:25

מממ מניאטור תודה,
אבל למה להצפין את הפרטים?

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

miniature 23-05-06 16:35

כי אז יוכלו לשנות את הפרטים של האימייל או מה שלא תכניס שם ולהכנס כמשתמש אחר.

Alon.R 23-05-06 16:35

לדעתי זה חובה להכניס סיסמא בנוסף לפרטים כמו ID וכו'..

מכייוון שאפשר לערוך עוגיות, ואיך תבצע אימות עם העוגיות בלי סיסמא?

אז אתה מכניס עוגיה עם סיסמא מוצפנת, ואז מוודא שהסיסמא תואמת לסיסמא של הID שצויין, כנ"ל לגבי האימייל וכו'..

Alon.R 23-05-06 16:37

ציטוט:

נכתב במקור על ידי BlueNosE
שטויות
אי אפשר לזייף עוגיה אלא אם אתה מהFBI או משהו
השם של העוגייה הוא: bla@site-name.co.il
ולא רק bla
כלומר המערך הנבדק מצטמצם ל site-name.co.il בלבד.
פשוט מישהו יכול להסתכל ולראות את השם bla עם הסיסמא goool ולהיכנס..
בגלל זה צריך להצפין סיסמא.

אגב, גם לעשות -1 מספיק.
סתם שתדע.

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

miniature 23-05-06 16:41

ציטוט:

נכתב במקור על ידי Alon.R
לזייף אולי לא, אבל לגנוב עוגיות בבוודאי.
תיאורתית זה אמור לעבוד אני לא יודע אם זה באמת עובד, פשוט לוקחים עוגיה שמים במחשב אחר, נכנסים לאתר מסויים וזה אמור להתחבר עם הפרטים מהעוגיה.

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

MasterNir 23-05-06 16:46

ציטוט:

נכתב במקור על ידי Ori The Man
נכון,
אם הגדרתה 3600 שניות אתה עושה מינוס -3600

שטויות, פשוט צריך לקבוע time שכבר עבר, אפשר מינוס אחד, ואפשר time() -1...
מה שאמרת הרגע זה פשוט שטויות

ציטוט:

נכתב במקור על ידי BlueNosE
שטויות
אי אפשר לזייף עוגיה אלא אם אתה מהFBI או משהו
השם של העוגייה הוא: bla@site-name.co.il
ולא רק bla
כלומר המערך הנבדק מצטמצם ל site-name.co.il בלבד.
פשוט מישהו יכול להסתכל ולראות את השם bla עם הסיסמא goool ולהיכנס..
בגלל זה צריך להצפין סיסמא.

ב-IE העוגיות נשמרות בקבצים כאשר השם של הקובץ מורכב משם המשתמש (של הווינדוז) אח"כ @ ואז כתובת האתר.
כל העוגיות של אותו אתר ומשתמש (ווינדוז) נשמרים באותו קובץ.
קל יחסית לגנוב עוגיות כי אפשר להעתיק את הקובץ עצמו ממחשב למחשב.

ממש לא צריך להיות FBI בשביל לגנוב עוגיות, זאת פעולה שיכולה להיות אפילו דיי פשוטה באתר שמאפשר לזרקת HTML...

sUP 23-05-06 16:56

ממ אז אם הבנתי נכון צריך לעשות ככה:

PHP קוד:

$id md5($sqlarray['id']);
$name md5($sqlarray['name']);
$email md5($sqlarray['email']);

setcookie("UserID"$idtime()+86400);
setcookie("UserName"$nametime()+86400);
setcookie("UserEmail"$emailtime()+86400); 

הבנתי נכון? |Lol|

miniature 23-05-06 16:58

ציטוט:

נכתב במקור על ידי sUP
ממ אז אם הבנתי נכון צריך לעשות ככה:

PHP קוד:

$id md5($sqlarray['id']);
$name md5($sqlarray['name']);
$email md5($sqlarray['email']);
 
setcookie("UserID"$idtime()+86400);
setcookie("UserName"$nametime()+86400);
setcookie("UserEmail"$emailtime()+86400); 

הבנתי נכון? |Lol|

למה להסתבך?
אתה יכול ללכת לפי השיטה שלי ולהצפין רק את הקוד (והסיסמה כמובן בהרשמה..).

sUP 23-05-06 17:07

איזה קוד?

הסיסמה כבר מוצפנת..

miniature 23-05-06 17:09

ציטוט:

נכתב במקור על ידי sUP
איזה קוד?

הסיסמה כבר מוצפנת..

תסתכל על העוגיה code והשדה code שהתייחסתי אליהם בדרך שכתבתי לך כמה הודעות קודם.

sUP 23-05-06 17:45

לא הבנתי מה עשית איתם

miniature 23-05-06 17:50

בכל התחברות הצפנתי אותם מחדש רנדומלית ובעת בדיקת קוקיז השוואתי עם מה שיש ב DB ומה שיש בעוגיה.

sUP 23-05-06 18:01

חחח עכשיו סיבכת לי תצורה,
שמע פניתי אליך במסנג'ר מקווה שתעזור לי למה אני לא מצליח להבין כלום =\


כל הזמנים הם GMT +2. הזמן כעת הוא 19:59.

מופעל באמצעות VBulletin גרסה 3.8.6
כל הזכויות שמורות ©
כל הזכויות שמורות לסולל יבוא ורשתות (1997) בע"מ