ශ්රි ලංකාවේ බොහෝ පාසල් ERP පද්ධති Angular ඉදිරිපස සහ ASP.NET Core පසුබැසීම භාවිතා කරයි. නවතම සංවර්ධකයෙක් මේ දෙක එකට සම්බන්ධ කිරීමේදී අමුතු ගැටලුවක් ගොඩක් දුටුහ.
ලොග් ඉන් වීමෙන් පසු, බ්රවුසරය සෑම API ඇමතුමක්ම 401 Unauthorized ලෙස ප්රතිචාර දුන්නා. Postman තුළ ඒම endpoint එක සාර්ථකව ක්රියාත්මක වුණා, කුකී එක නිකුත් වුණා, එහෙත් බ්රවුසරය ඒ කුකී එක අලුත් ඉල්ලීමකට එවීමේදී අතහැර දැමුවා. මුලින්ම CORS ගැටලුවක් බව සැක කළා, නමුත් DevTools පෙන්වා දුන්නා preflight 200 OK, කිසිදු CORS දෝෂයක් නොමැති බව. පරීක්ෂණය කරද්දී, කුකී එක SameSite=Lax ලෙස සකසා තිබීම සහ CORS ප්රතිපත්ති “AllowCredentials” නොකිරීම හේතුවෙන් බ්රවුසරය එය අහරලා යන බව හඳුනාගත්තා.
ඇත්තේ කුකී එක අතහැර දැමීමයි, සත්යාපන පද්ධතිය අසාර්ථක නොවීමයි. ඒ නිසා තවත් තෙරුම්පත්රයක් අවශ්ය වුණා: CORS‑ට AllowCredentials එක එක්ක සක්රිය කිරීම, කුකී පාලනය SameSite=None සහ Secure=True ලෙස වෙනස් කිරීම, Angular‑ට withCredentials:true යොදා ගතයුතුය. මේ තුනම සකස් කළ පසු, සත්යාපනය සාර්ථකව පවත්නා බව තහවුරු වුණා.
ශ්රී ලංකාවට ඇති වැදගත්කම
මෙම සරල සෙට්‑අප් එක ශ්රී ලංකාවේ පාසල්, විශ්වවිද්යාල, පුහුණු ආයතන ආදියට විශාල ප්රයෝජන ගෙන දෙයි:
- ඉගෙනුම් කළමනාකරණ පද්ධති වල ලොග්‑ඉන් අඩවිය ස්ථාවරව පවත්වා, සිසුන්ට සහ ගුරුවරුන්ට අඛණ්ඩ සේවාවක් සැපයීම.
- දෙබලවූ සංවර්ධකයින්ට Cross‑origin authentication ගැටලුවක් ඉක්මනින් හඳුනා ගැනීමට මාර්ගෝපදේශයක්.
- බහු‑කාර්ය සාධක SaaS නිෂ්පාදනවල ගනුදෙනුකරුවන්ගේ විශ්වාසය වැඩි කර, ව්යාපාරික අඩුපාඩු සහ churn අඩු කිරීම.
අවසන් වශයෙන්, මේ ගැටලුව සත්යයෙහි “කේතයක්” නොව, බ්රවුසරය ආරක්ෂාව සඳහා කරන ලද නීතියක් බවට පත්වේ. නිවැරදි CORS, SameSite, සහ Angular credential සැකසුම් යෙදීමෙන් පසු, පද්ධතියේ ආරක්ෂාවත්, භාවිතා පහසුවත් දෙකම වර්ධනය වේ.
ඔබගේ ව්යාපෘති වලද මේ සෙට්‑අප් එක අනුගමනය කර, අනාගතයේ අඳුරු authentication ගැටලු වලින් පලදීමට හැකියාව ලැබේ.