Thuta Learning
Digital Privacy & Modern Security
ProjectsSecurityintermediate

ပရောဂျက်: Privacy နှင့် Permissions Audit

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

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

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

ဒီ project ဟာ privacy-fundamentals lesson (data footprint) နဲ့ app-permissions-and-tracking lesson (app permission, browser tracking) ကို ပေါင်းစပ်ထားပါတယ်။ Lesson နှစ်ခုစလုံးက ကိုယ့် exposure ရဲ့ ပုံပြည့်ကို သီးခြားစီ မပေးနိုင်ပါ — ဒီ project က account/device တွေအတွက် structured audit တစ်ခု လုပ်ခိုင်းပါတယ်။

Cybersecurity Basics ရဲ့ project တွေက authentication (password, 2FA) နဲ့ phishing recognition ကို ကြည့်ခဲ့တယ်။ ဘယ်တစ်ခုမှ privacy exposure — app permission mismatch, browser tracking, live third-party connection, profile visibility, forgotten session — ကို မထိခဲ့ပါ။

Categoryသုံးသပ်ချက်
Apps & PermissionsApp တစ်ခုစီရဲ့ permission က ကြေညာထားတဲ့ ရည်ရွယ်ချက်နဲ့ ကိုက်ညီလား
Browser TrackingBrowser ရဲ့ cookie နဲ့ tracking-protection setting များ
Connected AppsMain account တွေနဲ့ ဆက်နေသေးတဲ့ third-party integration များ
Account VisibilityDefault အနေနဲ့ profile/post ကို ဘယ်သူမြင်နိုင်လဲ
Active SessionsDevice/session ဘယ်ခု ဆက်ဝင်နေသေးလဲ

Category တစ်ခုစီအတွက် တိကျတဲ့ finding မှတ်တမ်းတင်ပြီး prioritized improvement list ထုတ်ပါ — priority မရှိတဲ့ audit ဟာ ဖတ်စရာတစ်ခုပဲ ဖြစ်နေတတ်ပါတယ်။

text
PRIVACY AND PERMISSIONS AUDIT
-----------------------------
PRIVACY AND PERMISSIONS AUDIT
-------------------------------
APPS & PERMISSIONS      ---+
BROWSER TRACKING        ---+
CONNECTED APPS          ---+---> PRIORITIZED IMPROVEMENT LIST
ACCOUNT VISIBILITY      ---+
ACTIVE SESSIONS         ---+

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

ဒါကို ကိုယ့် device နဲ့ account တွေကို category ၅ ခု အလိုက် sweep တစ်ခု အနေနဲ့ သဘောထားပါ — category တစ်ခုစီအတွက် အာရုံစိုက်တဲ့ မိနစ်အနည်းငယ်ပဲ သုံးပါ၊ ကိုယ်တွေ့ရှိတာကိုပဲ ရေးမှတ်ပါ။

Apps နှင့် permissions

Phone ရဲ့ permission settings ကို ဖွင့်ပြီး app ၅-၁၀ ခုကို သူတို့ access လုပ်နိုင်တာ နဲ့ တကယ်ဘာအတွက်လဲဆိုတာနဲ့ အတူ စာရင်းလုပ်ပါ — flashlight app တစ်ခုက contacts တောင်းနေတာဟာ flag လုပ်သင့်တဲ့ mismatch တစ်ခုပါ။

Browser tracking

Third-party cookies တွေကို block လုပ်ထားလား၊ tracking-protection feature ဖွင့်ထားလား၊ ပုံမှန် page load တစ်ခုမှာ tracker ဘယ်နှစ်ခု block ဖြစ်နေလဲ စစ်ဆေးပါ။

Connected apps

Main email နဲ့ social account တွေရဲ့ 'connected apps' (သို့) 'third-party access' page ကို ဖွင့်ပြီး ခြောက်လ (သို့) ထက်ကျော် အသုံးမပြုတော့တဲ့ integration တွေကို မှတ်ချက်ချပါ။

Account visibility

Main social account ရဲ့ account visibility settings ကို စစ်ပါ — ပုံမှန် (default) အနေနဲ့ ကိုယ့် post နဲ့ profile ကို ဘယ်သူတွေ မြင်နိုင်လဲ ဆိုတာပါ။

Active sessions

အရေးကြီး account နှစ်/သုံးခုရဲ့ active-sessions (သို့) 'where you're logged in' page ကို ဖွင့်ပြီး မသိတဲ့ device ရှိမရှိ မှတ်ချက်ချပါ။

Category ၅ ခုစလုံးက finding တွေကို အောက်က audit function ထဲ ထည့်ပြီး၊ ထွက်လာတဲ့ prioritized report ကို ကိုယ့်ရဲ့ risk အမြင်နဲ့ နှိုင်းယှဉ်ကြည့်ပါ။

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

javascript
function buildPrivacyReport(apps, integrations, today) {
  const now = new Date(today);

  const permissionFindings = apps
    .map((app) => {
      const unjustified = app.permissions.filter((p) => !app.justifiedPermissions.includes(p));
      return { app: app.name, unjustifiedPermissions: unjustified };
    })
    .filter((f) => f.unjustifiedPermissions.length > 0);

  const integrationFindings = integrations
    .map((i) => {
      const daysSinceUse = Math.floor((now - new Date(i.lastUsed)) / 86400000);
      return { integration: i.name, daysSinceUse };
    })
    .filter((f) => f.daysSinceUse > 180);

  const findings = [
    ...permissionFindings.map((f) => ({
      category: "App Permissions",
      subject: f.app,
      severity: f.unjustifiedPermissions.length * 3,
      detail: `Requests ${f.unjustifiedPermissions.join(", ")} beyond its stated purpose`,
    })),
    ...integrationFindings.map((f) => ({
      category: "Connected Apps",
      subject: f.integration,
      severity: Math.min(5, Math.floor(f.daysSinceUse / 90)),
      detail: `Unused for ${f.daysSinceUse} days -- still has account access`,
    })),
  ];

  findings.sort((a, b) => b.severity - a.severity);
  return findings.map((f, i) => ({ priority: i + 1, ...f }));
}

// Described apps/integrations -- names and permissions only, never real login data.
const apps = [
  { name: "Flashlight Pro", permissions: ["camera", "contacts"], justifiedPermissions: ["camera"] },
  { name: "Messaging App", permissions: ["contacts", "microphone", "camera"], justifiedPermissions: ["contacts", "microphone", "camera"] },
  { name: "Weather Widget", permissions: ["location", "contacts"], justifiedPermissions: ["location"] },
];

const integrations = [
  { name: "Old Quiz App", lastUsed: "2024-11-01" },
  { name: "Cloud Storage Sync", lastUsed: "2026-08-20" },
  { name: "Fitness Tracker", lastUsed: "2025-02-14" },
];

const report = buildPrivacyReport(apps, integrations, "2026-09-06");
for (const item of report) {
  console.log(`#${item.priority} [${item.category}] ${item.subject} (severity ${item.severity})`);
  console.log(`   ${item.detail}`);
}
You should see
Function ဟာ severity အလိုက် finding လေးခု ပြန်ပေးပါတယ် — 'Old Quiz App' နဲ့ 'Fitness Tracker' တို့ severity 5 အတူတူနဲ့ (၆၇၄ ရက်နဲ့ ၅၆၉ ရက် အသုံးမပြုဖြစ်နေတာ) #1 နဲ့ #2 ရရှိပြီး၊ 'Flashlight Pro' နဲ့ 'Weather Widget' တို့ကတော့ ကြေညာမထားတဲ့ 'contacts' permission တောင်းနေလို့ severity 3 အတူတူနဲ့ ဆက်ပါတယ် — အထက်က console output နဲ့ ကိုက်ညီပါတယ်။

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

ကိုယ့် install လုပ်ထားတဲ့ app သုံး/ငါးခု (နာမည်, တောင်းထားတဲ့ permission, ကြေညာထားတဲ့ ရည်ရွယ်ချက်) နဲ့ connected integration နှစ်/သုံးခု (နာမည်, နောက်ဆုံးသုံးခဲ့တဲ့ ရက်) ကို — account credential အစစ်တွေ ဘယ်တော့မှ မပါဘဲ — ဖော်ပြပြီး buildPrivacyReport ကို run ကြည့်ပါ။ ရလဒ်တွေကို rank လုပ်ပြီး ဒီအပတ်ထဲ တကယ်ပြင်မယ့် fix နှစ်ခုကို ရွေးချယ်ပါ။

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

App တွေက permission အသစ်တွေ ထပ်တောင်းလာနိုင်ပြီး integration တွေက အချိန်ကြာလာတာနဲ့အမျှ တိတ်တဆိတ် စုလာနိုင်ပေမယ့်၊ permission တွေကို တစ်ကြိမ်တည်းပဲ audit လုပ်ပြီး ဘယ်တော့မှ ပြန်မစစ်တော့ခြင်း

Permission mismatch (သို့) stale integration ကို flag လုပ်ပေမယ့် access ကို တကယ် ပြန်ပယ်ဖျက်ခြင်း မလုပ်ခြင်း

EFF — Surveillance Self-DefenseDigital Privacy & Modern Security

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

  • App တွေက permission အသစ်တွေ ထပ်တောင်းလာနိုင်ပြီး integration တွေက အချိန်ကြာလာတာနဲ့အမျှ တိတ်တဆိတ် စုလာနိုင်ပေမယ့်၊ permission တွေကို တစ်ကြိမ်တည်းပဲ audit လုပ်ပြီး ဘယ်တော့မှ ပြန်မစစ်တော့ခြင်း
  • Permission mismatch (သို့) stale integration ကို flag လုပ်ပေမယ့် access ကို တကယ် ပြန်ပယ်ဖျက်ခြင်း မလုပ်ခြင်း
  • ဒီ 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 လို အသစ်ထပ်ဖြည့်တဲ့ အပိုင်းကိုသာ သင်ပေးပါတယ်။

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

ကိုယ့် install လုပ်ထားတဲ့ app သုံး/ငါးခု (နာမည်, တောင်းထားတဲ့ permission, ကြေညာထားတဲ့ ရည်ရွယ်ချက်) နဲ့ connected integration နှစ်/သုံးခု (နာမည်, နောက်ဆုံးသုံးခဲ့တဲ့ ရက်) ကို — account credential အစစ်တွေ ဘယ်တော့မှ မပါဘဲ — ဖော်ပြပြီး buildPrivacyReport ကို run ကြည့်ပါ။ ရလဒ်တွေကို rank လုပ်ပြီး ဒီအပတ်ထဲ တကယ်ပြင်မယ့် fix နှစ်ခုကို ရွေးချယ်ပါ။

You'll know it worked when: Function ဟာ severity အလိုက် finding လေးခု ပြန်ပေးပါတယ် — 'Old Quiz App' နဲ့ 'Fitness Tracker' တို့ severity 5 အတူတူနဲ့ (၆၇၄ ရက်နဲ့ ၅၆၉ ရက် အသုံးမပြုဖြစ်နေတာ) #1 နဲ့ #2 ရရှိပြီး၊ 'Flashlight Pro' နဲ့ 'Weather Widget' တို့ကတော့ ကြေညာမထားတဲ့ 'contacts' permission တောင်းနေလို့ severity 3 အတူတူနဲ့ ဆက်ပါတယ် — အထက်က console output နဲ့ ကိုက်ညီပါတယ်။

ပရောဂျက်: Privacy နှင့် Permissions Audit | Thuta Learning