Sobes.tech
Junior

ვინ ახერხებს local storage, session storage და cookies-ში შენახული მონაცემების წვდომას?

sobes.tech AI

პასუხი AI-სგან

localStorage და sessionStorage მონაცემები ხელმისაწვდომია მხოლოდ იმ სკრიპტებისთვის, რომლებიც იმავე დომენზე მუშაობენ, როგორც გვერდი, იგივე წარმომავლობის პოლიტიკის (same-origin policy) შესაბამისად. ეს ნიშნავს, რომ სხვა საიტები ვერ მიიღებენ ამ მონაცემებს.

  • localStorage ინახავს მონაცემებს ვადაგასული გარეშე, ხელმისაწვდომია მხოლოდ იმავე დომენიდან.
  • sessionStorage ინახავს მონაცემებს მხოლოდ ბრაუზერის ჩანართის სესიის განმავლობაში, ასევე მხოლოდ იმავე დომენიდან.

Cookies შეიძლება იყოს ხელმისაწვდომი როგორც კლიენტის მხარიდან (JavaScript-ის საშუალებით), ასევე სერვერის მხრიდან, თუ ისინი გამოგზავნილია HTTP მოთხოვნებში. Cookies-ის ხელმისაწვდომობა დამოკიდებულია პარამეტრებზე:

  • HttpOnly ბილეთი აკრძალავს JavaScript-ის საშუალებით წვდომას, რაც Cookies-ს მხოლოდ სერვერისთვის ხდის ხელმისაწვდომს.
  • Secure ბილეთი შეზღუდავს Cookies-ის გადაცემას მხოლოდ HTTPS-ის საშუალებით.
  • SameSite ბილეთი აკონტროლებს, თუ Cookies-ს გამოგზავნიან სხვა საიტებიდან გამოგზავნილ მოთხოვნებთან, რაც ეხმარება CSRF შეტევების თავიდან აცილებაში.

ამიტომ, მონაცემებზე წვდომა:

  • localStorage/sessionStorage: მხოლოდ იმავე დომენის სკრიპტებისთვის.
  • Cookies: ხელმისაწვდომია სერვერისთვის და, თუ HttpOnly არ არის დაყენებული, ასევე კლიენტის JavaScript-ისთვის იმავე დომენიდან.