ඔබේ SaaS යෙදුමේ පරිශීලකයා ලොග්-ඉන් වුනාම, ඔහුගේ සංවිධානය හඳුනාගැනීම සහ tenant context එකක් සකස් කිරීම පමණක් ආරක්ෂාව සපයන්නේ නැත. JWT සහ RBAC පරීක්ෂා කරලා පරිශීලකයාට අවසර තියනවා කියලා තහවුරු කරගත්තාමත්, ඒ ආධාරයෙන් පද්ධතියේ අනෙකුත් පීඩන හෝ දෝෂයන්ට ඉඩ ඇත.
JWT සත්යාපනය කරන්නේ ටෝකනය වලංගුද, කල් ඉකුත් වී නැද්ද කියා පමණි. RBAC කියන්නේ එම ටෝකනයේ රෝලය ඉල්ලූ endpoint එකට අනුමතද කියා පරීක්ෂා කරනවා. ඒ දෙකම tenant‑level data validation හෝ payload schema checking වැනි වැදගත් පියවරවලට ආවරණයක් නොදෙයි. උදාහරණයක් ලෙස, tenant ID එක අනුව query එක filter නොකළොත්, ලොග්‑ඉන් වී ඇති පරිශීලකයා වෙනත් සංවිධානයේ ඉන්වොයිසියක් කියවීමේ හැකියාව ලැබේ.
එම නිසා ආරක්ෂාව ලොග්‑ඉන් කිරීමෙන් පසු, සෑම controller, DTO, query එකකටම අමුණා යුතුය. මෙහිදී rate limiting සහ abuse prevention ඉතා වැදගත් වේ. ප්රසිද්ධ public endpoint එකක් හෝ login endpoint එකක් අධික ප්රමාණයෙන් අයදුම් කරන්නේ නම්, සේවාදායකය අඩු වේගයෙන් පණිවිඩ ලබා දෙයි.
NestJS හි @nestjs/throttler පැකේජය මේ සඳහා සූදානම් කරයි. එය Redis සමඟ භාවිතා කිරීමෙන්, බහු‑instance පරිසරයකද සමාන counter එකක් පවත්වා ගත හැක. Redis නොමැතිව in‑memory storage භාවිතා කළහොත්, එක් instance එකක් පමණක් සීමා කරනු ලබන බැවින් distributed attack එකක් සාර්ථක විය හැක.
- global limit එක safety net එකක් ලෙස භාවිතා කරන්න.
- endpoint අනුව limit වෙනස් කරන්න – login route එකට ඉතා අඩු limit එකක් දෙන්න.
- IP එක පමණක් නොව, user‑id හෝ org‑id වැනි තවත් key භාවිතා කරන්න.
ශ්රී ලංකාවට ඇති වැදගත්කම
ශ්රී ලංකාවේ තාක්ෂණික ආරම්භකයන්, විශ්වවිද්යාල සිසුන්, හා ත්රිවිධ ව්යාපාරිකයන්ට මෙම උපදෙස් ප්රයෝජනවත් වේ. SaaS පදනම් වූ සේවා සැපයුම්කරුවන්ට, tenant‑level data protection ක්රම දැන ගැනීමෙන් දත්ත රහස්යතාවය රැක ගැනීමට හැකියාව ලැබේ. නව පරිශීලකයන්ට JWT සහ RBAC පමණක් නොව, rate limiting, payload validation වැනි වැඩිම පදනම් ආරක්ෂා ක්රම ඇතුළත් කිරීමෙන්, සයිබර් අක්රමිකතා වලින් ආරක්ෂා වීමට සහ සේවා uptime වැඩි කිරීමට ඉඩ සලසයි. එමෙන්ම, Redis‑based throttling ක්රමය cloud‑native Sri Lankan startups සඳහා low‑cost, scalable solution එකක් ලෙස පෙනෙයි.
ඉතින්, ඔබේ SaaS API එකේ ආරක්ෂාව සම්පූර්ණ කිරීමේ අරමුණයි නම්, authentication පසුපසින් පවතින සියලුම layer එකට අවධානය යොමු කිරීම අත්යවශ්යයි. ඒ නිසා, ඔබේ codebase එකේ සෑම controller, DTO, query එකකටම validation, tenant filtering, හා rate limiting යෙදවීමෙන්, ආරක්ෂිත, විශ්වාසනීය SaaS පද්ධතියක් ගොඩනැගිය හැක.