Thuta Learning
Digital Privacy & Modern Security
IntermediateSecurityintermediate

Cookie၊ Session နှင့် Browser Privacy

ဒီခန်းပြီးရင် ဘာတတ်သွားမလဲ

  • Cookie၊ Session နှင့် Browser Privacy concept ကို နားလည်ရှင်းပြနိုင်ရန်
  • Diagram/checklist ကို ဖတ်ပြီး threat/control/decision ဘယ်လို ဆက်စပ်နေသလဲ ခြေရာခံနိုင်ရန်
  • ကိုယ့် digital life (သို့) developer workflow မှာ ဘယ်လို အသုံးချသင့်သလဲ ရှင်းပြနိုင်ရန်

နားလည်ထားရမယ့် အချက်

Cookie တစ်ခုသည် website တစ်ခုက သင့် browser အား သိမ်းဆည်းပြီး နောက်ပိုင်းလာလည်သောအခါ ပြန်ပို့ပေးရန် တောင်းဆိုသော data အလေးအားနည်းသေးသေးလေးတစ်ခုဖြစ်သည်။ ထို mechanism တွင် နေ့စဉ်အသုံးပြုနေသော တရားဝင်အသုံးဝင်မှုများ ရှိသည် — page များကြားတွင် login ဝင်ထားကြောင်း မှတ်ထားပေးခြင်း၊ page ကနေ ရွှေ့သွားချိန် shopping cart ကို မဟာဇလွင့် မသွားစေခြင်း၊ ဘာသာစကား သို့မဟုတ် theme preference ကို မှတ်ထားပေးခြင်း၊ ပြီးတော့ basic security ၏အစိတ်အပိုင်းအနေနှင့် တကယ့် visitor နှင့် automated request ကို ခွဲခြားနိုင်ရန် ကူညီပေးခြင်း။ Cookie အားလုံးသည် အန္တရာယ်ရှိသည်ဟု ဆိုခြင်းသည် အမှန်တကယ် ယေဘုယျ၊ အများစုအဆင်းရဲသော storage mechanism တစ်ခု၏ သဘောသဘာဝကို ရိုးရှင်းလွန်းအောင် ပြောဆိုလိုက်ခြင်းဖြစ်သည်။

Mechanism တူတူကိုပင် tracking အတွက်လည်း အသုံးပြုနိုင်ပြီး၊ ထိုအခါ cookie သည် သင့် preference ကို သိမ်းဆည်းမည့်အစား visit တစ်ခုမှတစ်ခု၊ တစ်ခါတစ်ရံ website မတူသောအချင်းချင်း သင့်ကို ခွဲခြားသိမှတ်ရန် ကူညီပေးပြီး ယေဘုယျအားဖြင့် ကြော်ငြာ profile တစ်ခု တည်ဆောက်ရန်ဖြစ်သည်။ ဤအသုံးပြုမှုသည် privacy သတိထားမှုကို ဆွဲဆောင်သော အသုံးပြုမှုဖြစ်ပြီး၊ အထက်ဖော်ပြပါ session နှင့် preference cookie များနှင့် ခွဲထားသော အမှန်တကယ်သီးခြား category တစ်ခုဖြစ်ပြီး mechanism တစ်ခုလုံး ပြဿနာရှိကြောင်း သက်သေမဖြစ်ပါ။

Session cookie များကို ပိုမိုနီးကပ်စွာ ကြည့်ရှုသင့်သည်၊ အဘယ်ကြောင့်ဆိုသော် ၎င်းတို့သည် browsing level တွင် account security နှင့် တိုက်ရိုက်ဆက်စပ်နေသောကြောင့်ဖြစ်သည်။ Login ဝင်သောအခါ site သည် session token တစ်ခုကို cookie ထဲတွင် ပုံမှန်သိမ်းဆည်းသည် — ထို cookie ရှိနေသ၍နှင့် session active ဖြစ်နေသ၍ ၎င်းကို ဝင်ရောက်ခွင့်ရသူတိုင်းသည် သင့် password ကို ထပ်မလိုအပ်ဘဲ သင့်အဖြစ် လုပ်ဆောင်နိုင်ဖွယ်ရှိသည်။ ၎င်းသည် ဝေမျှ သို့မဟုတ် public computer ကဲ့သို့ သင်အပြည့်အဝမထိန်းချုပ်ထားသော device တစ်ခုတွင် အရေးကြီးဆုံးဖြစ်သည်။

"Stay signed in" သည် personal device တွင် အဆင်ပြေသော်လည်း ဝေမျှ device တစ်ခုတွင် ထို session ကို ချန်ထားပြီး၊ တစ်ခါတစ်ရံ သင်ထွက်သွားပြီး ကြာမြင့်စွာနောက်ပိုင်းအထိပင် ကျန်ရှိနေတတ်သည်။ Log out လုပ်ခြင်းသည် server ပေါ်ရှိ session ကို အမှန်တကယ် invalidate လုပ်ပေးသည့်အရာဖြစ်ပြီး၊ tab သို့မဟုတ် browser window ကို ပိတ်ခြင်းသည် ၎င်းကို မြင်ကွင်းမှ ဖျောက်ပေးရုံသာဖြစ်ပြီး၊ site အများစုတွင် session သည် တိကျစွာ မရပ်တန့်မချင်း သို့မဟုတ် သက်တမ်းမကုန်မချင်း အသုံးပြုနိုင်ဆဲဖြစ်နေသည်။

text
COOKIES: TWO BRANCHES FROM ONE ROOT
-----------------------------------
          SMALL STORED DATA (a cookie)
                    |
      +-------------+--------------+
      |                            |
 LEGITIMATE USES               TRACKING USE
  - session (stay logged in)    - identify you across
  - preferences (language)        visits or sites
  - security (bot vs human)     - build ad profiles

လက်တွေ့ scenario နဲ့ ချိတ်ကြည့်မယ်

သင့်ပင်မ personal device ပေါ်တွင် သင်ယုံကြည်သော site များတွင် signed in ဆက်ထားခြင်းသည် ကျိုးကြောင်းညီညွတ်သော အဆင်ပြေမှု trade-off ဖြစ်သည် — physical access ကို ဘယ်သူရသည်ဆိုတာ သင်ထိန်းချုပ်ထားသောကြောင့် ဝေမျှ device တစ်ခု ခံစားရသော risk အများစု မသက်ဆိုင်ပါ။ ၎င်းကိုယ်တိုင်အတွက်ဟု နေ့စဉ် အားလုံးမှ log out လုပ်ရန် မလိုအပ်ပါ။

စာကြည့်တိုက် computer၊ ဟိုတယ် business center သို့မဟုတ် ခဏချေးယူထားသော သူငယ်ချင်း laptop ကဲ့သို့ ဝေမျှ သို့မဟုတ် public device တစ်ခုတွင်မူ ကွဲပြားစွာ သဘောထားပါ။ ပေးလာသောအခါ "stay signed in" ကို ကျော်ခြင်းလုပ်ပါ၊ stay signed in လုပ်ခဲ့လျှင် သို့မဟုတ် မသေချာလျှင် ထွက်မသွားခင် tab ကိုသာ ပိတ်မည့်အစား site ၏ menu ကိုယ်တိုင်မှတဆင့် အပြည့်အဝ log out လုပ်ပါ — tab ပိတ်ရုံသက်သက်သည် ပုံမှန်အားဖြင့် server ပေါ်တွင် session ကို active ဖြစ်နေအောင် ချန်ထားခဲ့တတ်သောကြောင့်ဖြစ်သည်။

Browser အများစုတွင် private သို့မဟုတ် incognito window ရွေးချယ်စရာလည်း ရှိပြီး၊ ထို session ကျော်လွန်ပြီး cookie အသစ်များ မသိမ်းဆည်းစေဘဲ ရှောင်ရှားပေးသည် — မိမိမပိုင်ဆိုင်သော device တစ်ခုတွင် တစ်ကြိမ်တည်း လုပ်ငန်းအတွက် default ကောင်းတစ်ခုဖြစ်သည်။ ဝေမျှသုံးသော machine တစ်ခုတွင် sensitive အလုပ်ပြီးဆုံးသောအခါ မှန်ကန်စွာ log out ပြီးသည့်တိုင် ထို browser profile အတွက် cookie များကို ရှင်းလင်းခြင်းသည် ထိုက်တန်သော နောက်ထပ်ခြေလှမ်းတစ်ခုဖြစ်သည်။

အတူတူ စမ်းရေးကြည့်မယ်

javascript
function sessionPrivacyRecommendation({ isSharedOrPublicDevice, staySignedInChecked, sessionActive }) {
  if (isSharedOrPublicDevice && (staySignedInChecked || sessionActive)) {
    return {
      action: "log-out-fully",
      reason: "On a shared or public device, an active or 'stay signed in' session could let the next user reach your account. Log out fully rather than closing the tab.",
    };
  }
  if (isSharedOrPublicDevice) {
    return {
      action: "clear-cookies",
      reason: "No account session appears active, but clearing cookies on a shared device still removes leftover site data.",
    };
  }
  return {
    action: "fine-to-stay-signed-in",
    reason: "This is a personal device you control, so staying signed in is a reasonable convenience trade-off.",
  };
}

const examples = [
  { label: "Personal device", input: { isSharedOrPublicDevice: false, staySignedInChecked: true, sessionActive: true } },
  { label: "Shared library computer", input: { isSharedOrPublicDevice: true, staySignedInChecked: true, sessionActive: true } },
];

for (const { label, input } of examples) {
  console.log(label, "->", sessionPrivacyRecommendation(input));
}
You should see
Personal-device ဥပမာသည် action 'fine-to-stay-signed-in' ပြန်ရသည်။ Shared-device ဥပမာသည် 'stay signed in' checked ဖြစ်ပြီး session active ဖြစ်နေခြင်းနှင့်အတူ action 'log-out-fully' ပြန်ရပြီး၊ မဟုတ်ပါက နောက်လာမည့် user က account ကို ရောက်နိုင်သည်ဟု သတိပေးသည်။

၅ မိနစ် စမ်းကြည့်

သင်အပြည့်အဝ မပိုင်ဆိုင်သော device တစ်ခု — office laptop၊ library computer၊ ချေးယူထားသော သူငယ်ချင်း ဖုန်း — ကို စဉ်းစားပါ။ ထို scenario အတွက် isSharedOrPublicDevice ကို true ထားပြီး staySignedInChecked နှင့် sessionActive ၏ ပေါင်းစပ်မှု နှစ်ခုလုံးကို sessionPrivacyRecommendation မှတဆင့် စမ်းကြည့်ပါ။ 'log-out-fully' မဟုတ်ဘဲ 'clear-cookies' ပြန်ပေးသည့် တစ်ခုတည်းသော ပေါင်းစပ်မှုက ဘယ်ဟာလဲ သတိပြုပါ။

သတိလေးတစ်ချက်

Cookie အားလုံးသည် tracking ဖြစ်သည်ဟု ယူဆပြီး နေရာတိုင်းတွင် ရှင်းလင်းပစ်ခြင်း — ၎င်းသည် အစကတည်းက privacy ပြဿနာ တစ်ခါမှ မဖြစ်ခဲ့သော login နှင့် preference များကို ချိုးဖျက်ပစ်လိုက်သည်။

ဝေမျှ device တစ်ခုတွင် browser tab ကိုပိတ်ပြီး ၎င်းသည် log out ဖြစ်သွားပြီဟု ယူဆခြင်း — session သည် server ပေါ်တွင် ပုံမှန်အားဖြင့် active ဖြစ်နေဆဲဖြစ်သည်။

MDN – Using HTTP CookiesDigital Privacy & Modern Security

ဒီနေရာမှာ လူအများမှားတတ်တယ်

  • Cookie အားလုံးသည် tracking ဖြစ်သည်ဟု ယူဆပြီး နေရာတိုင်းတွင် ရှင်းလင်းပစ်ခြင်း — ၎င်းသည် အစကတည်းက privacy ပြဿနာ တစ်ခါမှ မဖြစ်ခဲ့သော login နှင့် preference များကို ချိုးဖျက်ပစ်လိုက်သည်။
  • ဝေမျှ device တစ်ခုတွင် browser tab ကိုပိတ်ပြီး ၎င်းသည် log out ဖြစ်သွားပြီဟု ယူဆခြင်း — session သည် server ပေါ်တွင် ပုံမှန်အားဖြင့် active ဖြစ်နေဆဲဖြစ်သည်။
  • ဒီ course က Cybersecurity Basics course အသစ် မဟုတ်ပါ — password/2FA/phishing/malware/encryption/backup အခြေခံကို Cybersecurity tutorial ကနေ လေ့လာပြီးသားလို့ ယူဆထားပါတယ်။ ဒီ course က Passkeys, Public Wi-Fi/VPN, Browser Security, Privacy, developer-focused Auth/API security, AI security လို အသစ်ထပ်ဖြည့်တဲ့ အပိုင်းကိုသာ သင်ပေးပါတယ်။

လေ့ကျင့်ခန်း

သင်အပြည့်အဝ မပိုင်ဆိုင်သော device တစ်ခု — office laptop၊ library computer၊ ချေးယူထားသော သူငယ်ချင်း ဖုန်း — ကို စဉ်းစားပါ။ ထို scenario အတွက် isSharedOrPublicDevice ကို true ထားပြီး staySignedInChecked နှင့် sessionActive ၏ ပေါင်းစပ်မှု နှစ်ခုလုံးကို sessionPrivacyRecommendation မှတဆင့် စမ်းကြည့်ပါ။ 'log-out-fully' မဟုတ်ဘဲ 'clear-cookies' ပြန်ပေးသည့် တစ်ခုတည်းသော ပေါင်းစပ်မှုက ဘယ်ဟာလဲ သတိပြုပါ။

You'll know it worked when: Personal-device ဥပမာသည် action 'fine-to-stay-signed-in' ပြန်ရသည်။ Shared-device ဥပမာသည် 'stay signed in' checked ဖြစ်ပြီး session active ဖြစ်နေခြင်းနှင့်အတူ action 'log-out-fully' ပြန်ရပြီး၊ မဟုတ်ပါက နောက်လာမည့် user က account ကို ရောက်နိုင်သည်ဟု သတိပေးသည်။

Cookie၊ Session နှင့် Browser Privacy | Thuta Learning