Ի՞նչ է Cookie-ը
Ի՞նչ է Cookie-ը և ինչպես է աշխատում
Ի՞նչ է Cookie-ը և ինչպես է աշխատում
Cookies-ը փոքր տվյալներ են, որոնք տեղավորվում են օգտագործողի բրաուզերում՝ սերվերի կողմից։ Դրանք օգտագործվում են հաճախորդների մոտ տեղեկատվություն պահելու և հետագայում օգտագործելու նպատակով՝ առանց անհրաժեշտության ամեն անգամ նորից հարցում կատարել սերվերին։ Օրինակ՝ երբ այցելում ենք մի կայք և մուտք գործում, cookie-ն կարող է պահել մեր մուտքի տվյալները, որպեսզի մեր առաջընթացը պահպանվի մինչև հաջորդ այցը։
Cookies-ը համարվում են շատ կարևոր՝ հատկապես դոմենային պահպանման և օգտագործողի վավերացման (authentication) գործընթացներում։ Սակայն դրանք նաև ունեն սահմանափակումներ՝ կապված նրանց չափի, անվտանգության և կյանքի տևողության հետ։
Ինչպես աշխատում է Cookie-ը
Cookie-ը ստեղծվում է սերվերի կողմից, երբ օգտագործողը այցելում է կայք։ Այն ուղարկվում է սերվերին հետագա հարցումների ժամանակ՝ ապահովելով, որ սերվերը գիտի, թե ով է այցելում։ Երբ բրաուզերը ստանում է cookie-ն, պահում է այն և փոխանցում է հետագա հարցումներում։
document.cookie = "user=JohnDoe; expires=Thu, 31 Dec 2025 12:00:00 UTC; path=/";
Այս կոդով մենք ստեղծում ենք մի cookie՝ "user" անունով, որի արժեքը "JohnDoe" է։ Մենք նաև կարող ենք որոշել expiry (չեղարկման ժամկետը)՝ երբ cookie-ն պետք է չեղարկվի, և path (պատվիրված ուղին), որը սահմանում է, թե որ էջերին է հասանելի cookie-ն։
Cookies-ի տեսակներ
Cookies-ը կարող են լինել մի քանի տեսակների՝ կախված դրանց օգտագործման նպատակներից։ Ահա նրանց հիմնական տեսակները։
- Session cookies — Այս cookies-ը լիցքավորվում են միայն տվյալ session-ի ընթացքում։ Երբ օգտատերը փակել է բրաուզերը կամ session-ը ավարտվում է, cookies-ը կորչում է։
- Persistent cookies — Այս cookies-ը պահվում են մինչև իսկապես որոշված ժամանակի ավարտը, նույնիսկ եթե բրաուզերն փակված է։ Այս տեսակի cookies-ը սովորաբար օգտագործվում է՝ օրինակ՝ մուտքագրման հիշեցման համար։
- Secure cookies — Հատուկ cookies, որոնք կարող են փոխանցվել միայն https:// կայքի միջոցով՝ ապահովելով տվյալների անվտանգությունը։
- HttpOnly cookies — Այս cookies-ը հասանելի են միայն HTTP հարցումների ժամանակ և չեն կարող վերահսկվել JavaScript-ի կողմից՝ պաշտպանելով XSS հարձակումներից։
Cookies-ի առավելություններ և թերություններ
Առավելությունները:
- Դրանք թույլ են տալիս պահպանել օգտատիրոջ նախընտրությունները կամ մուտքի տվյալները՝ առանց յուրաքանչյուր անգամ մուտք գործելու պահանջելու։
- Օգտագործվում են հետևելու համար՝ երբ ուզում ենք դիտարկել օգտատերերի վարքագիծը (analytics)։
- Սովորաբար անվտանգ են օգտագործման ժամանակ, եթե հստակ սահմանվեն անվտանգության դրույթները (օր.՝ Secure, HttpOnly, SameSite flags)։
Թերությունները:
- Ունեն չափային սահմանափակումներ (մոտ 4KB-ը մեկ cookie-ի համար)։
- Խոցելի են մի շարք հարձակումների համար՝ օրինակ՝ XSS և CSRF։
- Դրանք կարող են խանգարել օգտատիրոջ գաղտնիությանը, քանի որ tracking cookies-ը կարող են հավաքել տվյալներ առանց նրանց բացահայտման։
Վերջաբան
Cookie-ն կարևոր գործիք է վեբ հավելվածներում՝ հատկապես օգտագործողի վիճակը պահելու և վավերացումը իրականացնելու համար։ Այնուամենայնիվ, պետք է ուշադրություն դարձնել անվտանգությանը՝ ճիշտ նշելով cookie-ի տարբերակի սահմանափակումները, օրինակ՝ `Secure` և `HttpOnly` դրույթները։ Հաջորդ հոդվածում կքննարկենք մյուս հայտնի մեթոդը՝ LocalStorage-ը։
- 0
- 45