← Back

LESSON 11

Multi-Factor Authentication (MFA) Factor 1 Something You KNOW 🔑 Password PIN Code Factor 2 Something You HAVE 📱 Phone/SMS Hardware Token Factor 3 Something You ARE 👆 Fingerprint Face ID 🔒 Layered Security = Maximum Protection

Identity Security

Authentication vs Authorization

🔑 Authentication

Question: Who are you?

Methods:

  • Password
  • MFA (SMS, authenticator app)
  • Biometrics (fingerprint, face)
  • SSO (Single Sign-On)
+

🚪 Authorization

Question: What can you access?

Methods:

  • Role-Based Access Control (RBAC)
  • Attribute-Based (ABAC)
  • Access Control Lists (ACL)
Example: Airport security
Authentication: Passport check (prove you're John Doe)
Authorization: Boarding pass check (you can board Flight 123, not Flight 456)

Principle of Least Privilege (PoLP)

Grant users minimum permissions necessary to perform their job.

Bad: Junior developer gets admin access to production database
Good: Junior developer gets read-only access to development database
Benefit: If account compromised, damage is limited

IAM vs PAM

Feature IAM PAM
Scope All users (standard accounts) Privileged accounts only (admin, root)
Focus Identity lifecycle, SSO Session monitoring, credential vaulting
Use Case Employee access to email, apps SysAdmin access to servers
Risk Low to medium High (can take over systems)
Scenario: Attacker compromises account
IAM account (regular user): Access to own files, email (limited damage)
PAM account (admin): Access to all servers, databases (catastrophic damage → lateral movement, full breach)

MFA (Multi-Factor Authentication)

Verify identity using multiple factors:

  • Something you know: Password, PIN
  • Something you have: Phone (SMS code), hardware token
  • Something you are: Fingerprint, face recognition
Example: Login to bank account:
1. Password (something you know)
2. SMS code to phone (something you have)
Even if password stolen, attacker needs your phone!

Authentication vs Authorization

Authentication (අනන්‍යතාව සත්‍යාපනය):

ප්‍රශ්නය: "ඔයා කවුද?"
පිළිතුර: Password, fingerprint, MFA use කරලා සනාථ කරන්න ඕන

උදාහරණය: Gmail login → Password type කරලා, verification code phone එකට ඇවිත් enter → Authenticated (ඔයා ඇත්තතම ඔයා කියලා තහවුරු කළා)

Authorization (ප්‍රවේශ අවසර):

ප්‍රශ්නය: "ඔයාට මොකද්ද ප්‍රවේශ කරන්න පුළුවන්?"
පිළිතුර: Roles, permissions අනුව තීරණය වෙනවා

උදාහරණය: Office 365 login උනාම, ඔයා තමන්ගේ files ප්‍රවේශ කරන්න පුළුවන්, නමුත් HR දෙපාර්තමේන්තුවේ වැටුප් files ප්‍රවේශ කරන්න බැහැ (authorization සීමාව)

සැබෑ ලෝක උපමාව:
Authentication: රියදුරු බලපත්‍රය පෙන්වනවා (ඔයා රිය පැදවීමට සුදුසු බව සනාථ කරනවා)
Authorization: බලපත්‍රය මෝටර් රථ සඳහා විතරයි, බස් එකට නැහැ (ඔයාට මොනවද පදවන්න පුළුවන්)

Principle of Least Privilege (PoLP)

සංකල්පය: පරිශීලකයින්ට අවම අවශ්‍ය අවසර විතරයි දෙන්න ඕන රැකියාව කරන්න.

නරක පුරුද්ද: Junior developer intern කෙනෙකුට production database එකේ සම්පූර්ණ admin ප්‍රවේශය දෙනවා
අවදානම: වරදක් උනාම සම්පූර්ණ database එක මකන්න පුළුවන්, හෝ ගිණුම සම්මුති උනාම ප්‍රහාරකයින්ට admin ප්‍රවේශය

හොඳ පුරුද්ද: Junior developer එකට development database එකේ read-only ප්‍රවේශය (බලන්න පුළුවන්, වෙනස් කරන්න බැහැ)
ප්‍රතිලාභය: වරදක් උනත්, ගිණුම hack උනත්, හානිය සීමිත

උදාහරණය: Marketing කණ්ඩායමට website අන්තර්ගතය සංස්කරණය කරන්න ඕන, server වින්‍යාසය ප්‍රවේශය ඕන නැහැ. Server ප්‍රවේශය දුන්නාම අහම්බෙන් තීරණාත්මක සැකසුම් වෙනස් කරගන්න පුළුවන්.

IAM vs PAM

IAM (Identity Access Management):

  • සාමාන්‍ය පරිශීලක ගිණුම් කළමනාකරණය (සේවකයින්, කොන්ත්‍රාත්කරුවන්)
  • Email, CRM, file shares වගේ සාමාන්‍ය යෙදුම් සඳහා ප්‍රවේශය
  • SSO (Single Sign-On) - එකම login එකකින් බහු apps ප්‍රවේශය
  • උදාහරණය: සේවකයෙකුට Office 365, Salesforce ප්‍රවේශය දෙනවා

PAM (Privileged Access Management):

  • ඉහළ-අවදානම් ගිණුම් කළමනාකරණය (admin, root, DBA)
  • සංවේදී පද්ධති (servers, databases, network උපාංග) කළමනාකරණ ගිණුම්
  • අක්තපත්‍ර ගබඩාව: Admin මුරපද ආරක්ෂිත vault එකක ගබඩා (hardcoded/බෙදාගත් මුරපද නැහැ)
  • සැසි නිරීක්ෂණය: Admin සැසිය පටිගත කරනවා (විගණන මාර්ගය)

PAM වැදගත් ඇයි? ප්‍රහාරකයෙක් සාමාන්‍ය පරිශීලක ගිණුමක් සම්මුති කළත් සීමිත හානිය. නමුත් admin ගිණුමක් සම්මුති උනාම සම්පූර්ණ network එක අත්පත් කරගන්න පුළුවන් (පාර්ශ්වික චලනය).

උදාහරණය: SysAdmin කෙනෙක් server වලට login වෙනවා PAM හරහා:
1. Admin ප්‍රවේශය ඉල්ලනවා → PAM අනුමත කරනවා (තාවකාලික)
2. සැසිය පටිගත වෙනවා (video + යතුරු එබීම්)
3. කාර්යය අවසන් වුණාම, ප්‍රවේශය අහෝසි වෙනවා
4. විගණනය: කවද්ද server එකට login උනේ, මොකද්ද කළේ, කීයක් තිස්සේ විතර, සියල්ල logged

MFA (Multi-Factor Authentication)

Password එකක් විතරයි ආරක්ෂාව ප්‍රමාණවත් නැහැ (password කාන්දු වෙන්න පුළුවන්). MFA එකෙන් සාධක කිහිපයක් use කරලා අනන්‍යතාව සත්‍යාපනය කරනවා.

වර්ග 3:

  • ඔයා දන්න දෙයක්: Password, PIN
  • ඔයා ළඟ තියෙන දෙයක්: Phone (SMS code), hardware token (RSA key)
  • ඔයා වන දෙයක්: Biometrics (fingerprint, face ID)

උදාහරණය - බැංකු යෙදුම:

  1. Username + Password enter (ඔයා දන්න දෙයක්)
  2. SMS code phone එකට ඇවනවා, එක enter (ඔයා ළඟ තියෙන දෙයක්)
  3. Fingerprint scan (ඔයා වන දෙයක්)

ප්‍රහාරකයෙක් password එක hack කළත්, phone එක සහ fingerprint එක නැති නම් login කරන්න බැහැ!

වැදගත් ඇයි? Password කාන්දු වීම් සාමාන්‍ය (දත්ත කාන්දු, phishing). MFA එකකින් password කාන්දු උනත් ගිණුම ආරක්ෂිතයි.