විවෘත මූලාශ්‍ර පැකේජ

විවෘත මූලාශ්‍ර අනිෂ්ට පැකේජ වලින් ආරක්ෂා වීම: ක්‍රියා කරන්නේ (නොකරන) දේ

පටුන

කියවිය යුතුම සටහන්

නවතම උනන්දුවක් දක්වන පළ කිරීම්

මෙය තුන්වන කථාංගයයි a ලිපි මාලාව වඩාත් ප්‍රචලිත මෘදුකාංග සැපයුම් දාම ප්‍රහාර ගැන: පොදු ලේඛනයක් අනිසි ලෙස භාවිතා කරන ඒවා විවෘත කේතය මෘදුකාංග සංරචක. පෙර කථාංගයේ විශ්ලේෂණය කිරීමෙන් පසු “අනිෂ්ට පැකේජවල ව්‍යුහ විද්‍යාව: ප්‍රවණතා මොනවාද?"නරක නළුවන් නව හෝ පවතින ප්‍රකාශිත සංරචක වලට ද්වේෂසහගත හැසිරීම් එන්නත් කරන ආකාරය පිළිබඳව, අපගේ ගිනි නිවන ජැකට් පැළඳීමට සහ මේ ආකාරයෙන් ලබා දෙන ද්වේෂසහගත මෘදුකාංග සාර්ථකව අවහිර කරන්නේ කෙසේද යන්න පරීක්ෂා කිරීමට අපි සූදානම්, නැතහොත් විකල්පයක් ලෙස, අපි වැරදි ප්‍රවේශයක් ගත් නිසා බරපතල සයිබර් සිදුවීමකට මුහුණ දෙන්නේ කෙසේද යන්න පරීක්ෂා කිරීමට අපි සූදානම්."

මෙම තර්ජනය හැසිරවිය යුතු ආකාරය පිළිබඳව බොහෝ ආරක්ෂක දැනුමැති වෘත්තිකයන්ට අදහස් තිබේ. ආරක්ෂක කළමනාකරුවන් පැකිලීමකින් තොරව පවසනු අපි අසා ඇත්තෙමු SCA පැකේජ අනුවාදයක් අනිෂ්ට මෘදුකාංගයක් වන්නේ කවදාදැයි මෙවලම් දැනටමත් ඔබට කියයි. නැතහොත් ඒවා හොඳින් දන්නා, බෙහෙවින් සමාලෝචනය කරන ලද මෘදුකාංග සංරචක මත රඳා පවතින බවත්, එහිදී ඕනෑම අනිෂ්ට මෘදුකාංගයක් වහාම හඳුනාගෙන ඉවත් කරනු ඇති බවත්. ඔවුන් ස්වයංක්‍රීයව අවදානම් නිවැරදි කිරීම් ලබා ගැනීම සඳහා විවෘත සුළු/පැච් අනුවාද භාවිතා කරන අතර, එය විවෘත මූලාශ්‍ර පරායත්තතා මත අවදානම අඩු කිරීමට නිසි, නිර්දේශිත ක්‍රමය වන අතර, “කලින් ඇලවීම, නිතර ඇලවීමමූලධර්මය. 

මෙම කථාංගයේදී, මෙම අදහස් වැරදි වන්නේ මන්දැයි සහ එවැනි වැරදි වැටහීම් මෙම ප්‍රහාරක යාන්ත්‍රණයේ ජනප්‍රියතාවයට සහ සංවිධාන අත්විඳින අතිමහත් අවදානමට දායක වන්නේ කෙසේද යන්න අපි සමාලෝචනය කරමු. අපි අවසන් කරන්නේ කුමක්ද සහ එයට සම්බන්ධ වන උත්සාහය සහ සම්පත් මොනවාද යන්න සමඟින්.

පොදු වැරදි වැටහීම්

මෘදුකාංග ආරක්ෂාව සමඟ අපගේ ගමනේදී, ප්‍රහාරක ශිල්පීය ක්‍රම විකාශනය වන ආකාරය සහ ආරක්ෂාව ගැන සැලකිලිමත් පුද්ගලයින්ගෙන් පුළුල් පරාසයක අදහස් අපි දුටුවෙමු. සංවිධාන බොහෝ විට මෙම තර්ජනයට එරෙහිව ක්‍රියා කරන දේ වරදවා වටහා ගනී, එබැවින් පළමුව අපි ක්‍රියා නොකරන දේ පරීක්ෂා කර බලමු, පහත දැක්වෙන වැරදි වැටහීම් ලැයිස්තුවට සංක්ෂිප්ත කර ඇත, සම්පූර්ණ නොවේ.

වැරදි වැටහීම #1: SCA මෙවලම් දැනටමත් අනිෂ්ට සංරචක වාර්තා කරයි

ඇත්ත වශයෙන්ම! නමුත් කාරණයෙන් පසු… මෘදුකාංග ගොඩනැගීමක මූලද්‍රව්‍යය භාවිතා කර ඇත්නම් සහ නරක ක්‍රියාකාරීන් දැනටමත් සංවර්ධකයෙකු තුළ අඩිතාලමක් ලබාගෙන තිබේ නම් එය බොහෝ විට ප්‍රමාද වැඩියි නම් හෝ CI/CD සත්කාරක. රහස් ඉවත් කර, අතිරේක අනිෂ්ට මෘදුකාංග බාගත කර ස්ථාපනය කර ඇති අතර, සමහර විට සතුරා පාර්ශ්වීයව ගමන් කර වෙනත් තැනකට ප්‍රවේශය ලබාගෙන ඇත. 

මෘදුකාංග සංයුති විශ්ලේෂණය (SCA) මෙවලම් නිර්මාණය කර ඇත්තේ විභව දන්නා අවදානම් හඳුනා ගැනීම සඳහා ය. නවීන මෙවලම් සංඥා-ශබ්ද අනුපාතය වැඩි කිරීමෙන් විශිෂ්ට කාර්යයක් ඉටු කරයි, අවදානම සැබවින්ම ළඟා විය හැකිද නැතහොත් සූරාකෑමට ලක්විය හැකිද යන්න තීරණය කරයි. නමුත් ඒවා නව අනිෂ්ට මෘදුකාංග වලට එරෙහිව නිෂ්ඵල වේ. අනිෂ්ට සංරචකයක් ශුන්‍ය-දින අවදානමක් ලෙස සිතන්න: එහි ද්වේෂසහගත හැසිරීම අනාවරණය වූ විට පමණක්, සංරචකය රඳවා ගැනීමේ රෙජිස්ට්‍රියට වාර්තා කරනු ලැබේ, එය ආරක්ෂක කණ්ඩායමක් විසින් සමාලෝචනය කිරීමෙන් පසුව ද්වේෂසහගත ලෙස තහවුරු කර රෙජිස්ට්‍රියෙන් ඉවත් කරනු ලැබේ. [1]

ඒ අවස්ථාවේදී, ලෝකය (ඇතුළුව SCAs) සංරචකය (හෝ පවතින සංරචකයක යම් අනුවාදයක්) ස්ථාපනය කිරීම හෝ භාවිතා කිරීම හොඳ දෙයක් නොවන බව දනී. නමුත් මෙය සිදුවන්නේ සංරචකය රෙජිස්ට්‍රියෙන් ලබා ගත නොහැකි විටය.. තෙවන පාර්ශවීය සංරචකවල හෝ රෙජිස්ට්‍රිය විසින් අනිෂ්ට ලෙස වර්ගීකරණය කරන ලද සංරචකවල පවා මට අවදානම් ඇති බව දැන ගැනීම හොඳයි, නමුත් අවාසනාවකට SCA හෝ පොදු විගණන මෙවලම් මෙම සන්දර්භය තුළ උපකාරී නොවේ. හැර SCA/audit මෙවලමට ඔබේ සංවිධානයේ සංරචකයක් භාවිතා කිරීමට පෙර එය අනිෂ්ට බව කල්තියා දැනගත හැකිය..

මතක තබා ගන්න, අනිෂ්ට විවෘත-මූලාශ්‍ර සංරචක වලට එරෙහි ඕනෑම විසඳුමක් ඒවා හඳුනාගත යුතුය. පියාසර කරන විට, සංරචකය රෙජිස්ට්‍රියේ ප්‍රකාශයට පත් කරන කාලය සහ සංරචකය (අනුවාදය) ඔබේ සංවිධානයේ ප්‍රථම වරට භාවිතා කරන කාලය අතර වේ. තවද එයට සංක්‍රාන්ති සංරචක ඇතුළත් වේ.  

වැරදි වැටහීම #2: ගොඩනැගීමේ වේලාවේදී ස්ථාපන ස්ක්‍රිප්ට් පාලනය කිරීම විවෘත මූලාශ්‍ර සංරචක වලින් ද්වේෂසහගත හැසිරීම් වළක්වයි.

විවිධ පැකේජ කළමනාකරුවන් මඟින් ස්ක්‍රිප්ට් ධාවනය කිරීමේ හැකියාව ලබා දෙයි (සංරචක තාර්බෝල් හි ඇතුළත් කර ඇත) [2]), විවිධ වේදිකාවල අවශ්‍ය අයිතම සම්පාදනය කිරීම, කේත ජනනය කිරීම හෝ පරීක්ෂණ ක්‍රියාත්මක කිරීම වැනි නීත්‍යානුකූල හේතූන් මත, සහ තාර්බෝලයට ද්වේෂ සහගත ස්ක්‍රිප්ට් ඇතුළත් කළහොත් හෝ ප්‍රහාරකයාට හොඳ එක වෙනුවට ද්වේෂ සහගත ස්ක්‍රිප්ට් එකක් ක්‍රියාත්මක කළ හැකි නම්, නරක නළුවන් විසින් ඒවා අනිසි ලෙස භාවිතා කළ හැකි බව අපි සැම දැන සිටිය යුතුය.

මෙය දැන ගැනීමෙන්, අපට පැකේජ කළමනාකරුට ස්ක්‍රිප්ට් නොසලකා හැරීමට වින්‍යාසගත කළ හැකිය. උදාහරණයක් ලෙස, NPM සමඟ -ස්ක්‍රිප්ට් නොසලකා හරින්න ධජය (හෝ වින්‍යාස ගුණාංගයක් .එන්පීඑම්ආර්සී file) ස්ථාපනය අතරතුර ස්ක්‍රිප්ට් මඟ හරියි. බොහෝ පරිසර පද්ධතිවල ස්ක්‍රිප්ට් ධාවනය කිරීම සුලභ බැවින් මෙය සමහර ගැටළු ඇති කළ හැකිය: සමහර පැකේජ කළමනාකරුවන් ස්ක්‍රිප්ට් ක්‍රියාත්මක කිරීම අක්‍රීය කිරීමට පවා ඉඩ නොදේ (ඉඟිය: prompt “ස්ථාපන ස්ක්‍රිප්ට් ක්‍රියාත්මක කිරීම අක්‍රීය කිරීමට අවසර නොදෙන්නේ කුමන පැකේජ කළමනාකරුවන් ද?” ඔබේ ප්‍රියතම AI හි). නමුත් මෙය සාමාන්‍යයෙන් ආරක්ෂා නොකරයි (skip disable වින්‍යාසය සෑම තැනකම ඇති බව අපට බලාත්මක කිරීමට අවශ්‍යයි). 

තවද ද්වේෂසහගත හැසිරීම ස්ථාපන ස්ක්‍රිප්ට් වල නොව ධාවන වේලාවේදී ක්‍රියාත්මක කිරීමට මෘදුකාංගයේ පිහිටා ඇති විට, මෙම විකල්පය පමණක් අපව ආරක්ෂා නොකරයි. 

වැරදි වැටහීම #3: අනුවාද පින් කිරීම අනිෂ්ට සංරචක ස්ථාපනය වීම වළක්වයි.

කලින් පැච් කිරීම සහ බොහෝ විට සමඟ හුවමාරුවක් ඇත විවෘත අනුවාදයන් (ආරක්ෂක නිවැරදි කිරීම් සඳහා ලබා ගත හැකි විට පැකේජ කළමනාකරුට ස්වයංක්‍රීයව නව යාවත්කාලීන ස්ථාපනය කිරීමට ඉඩ දීම) සහ අනුවාදය ඇමිණීම (ස්ථාවර අනුවාදයක මෘදුකාංගයක් සඳහා සියලු සෘජු සහ සංක්‍රාන්ති පරායත්තතා තිබීම). ආරක්ෂක මූලධර්ම මුරණ්ඩු වන අතර සමහර විට පරස්පර විරෝධී වේ, “කලින් පැච් කරන්න, බොහෝ විට පැච් කරන්න” සහ "උත්ශ්‍රේණි කිරීම සැහැල්ලුවට නොගත යුතුය". සමහර පැකේජ කළමනාකරුවන් නිර්දේශිත ආකාරයෙන් සේවාදායක පරාස සමඟ ස්වයංක්‍රීය යාවත්කාලීන කිරීම් සිදු කරයි. ඔබටත් අනිෂ්ට යාවත්කාලීන කිරීම් ලැබීමට අවශ්‍ය නම් එය හොඳයි! ඔව්, හැකි ඉක්මනින් අවදානම් වසා දමන ආරක්ෂක නිවැරදි කිරීම් ලබා ගැනීම සඳහා සංරචක යාවත්කාලීන කළ යුතුය, නමුත් ... කිසි විටෙකත් පැකේජ කළමනාකරුට මෙය ස්වයංක්‍රීයව කිරීමට ඉඩ නොදෙන්න.

වැරදි මතය #4: විශ්වාසදායක සංරචක භාවිතා කිරීම ආරක්ෂිතයි. ඕනෑම අනිෂ්ට අනුවාදයක් වහාම සොයාගෙන, හෙළිදරව් කර ඉවත් කරනු ලැබේ.

සංරචකයක් විශ්වාසදායක වන්නේ ඇයි? එය ඉතා ජනප්‍රිය නිසා විය හැකිය, බොහෝ දෙනෙක් අවදානම් සොයන අතර, නඩත්තුව සඳහා දායකයින් විශාල සංඛ්‍යාවක් සිටින අතර, සියල්ල කඩිසරව සමාලෝචනය කරන බහු මූලික නඩත්තු කරන්නන් සිටින නිසා විය හැකිය. pull requests. යථාර්ථය බෙහෙවින් වෙනස් ය. සමහර අත්‍යවශ්‍ය සංරචක නඩත්තු කරනු ලබන්නේ තනි, නොගෙවූ සංවර්ධකයෙකු විසිනි. බහුලව භාවිතා වන රාමු වල නිතිපතා දායකයින් කිහිප දෙනෙක්, වේගයෙන් අඩු වන සංඛ්‍යාවක් සමඟ commitනඩත්තු කරන්නෙකුට s (ජනප්‍රිය ව්‍යාපෘති සඳහා දිගු දායකයින් පිරිසක් සිටින අතර ඔවුන් යම් ඩ්‍රයිව්-බයි ඉටු කරයි commit සහ කිසිදා ආපසු නොඑනු ඇත). තනි නඩත්තුකරුවෙකු සහිත ජනප්‍රිය ව්‍යාපෘති බහුලව තිබේ.

ඔබ මෙසේ පවසනවා යැයි සිතන්න "ඔහ්, අපි Spring Boot / Angular / React / PyTorch / නිල පාදක Docker රූප භාවිතා කරනවා, ඒ නිසා ඔබ කතා කරන අවදානම ඉතා අඩුයි." සමහරවිට ඒක ඇත්ත වෙන්න ඇති, අපි ආරක්ෂක වෙළෙන්දෝ නිතරම බිය උපදවන දේවල් කරනවා, ඒ වගේම විවාදාත්මක අවදානමක් අවම කිරීම සඳහා සංවර්ධන කණ්ඩායම්වලට ඇඟිලි ගැසීම විකාරයකි. ඔබ අවදානම් පිළිගැනීමේ ඡේදයට (ඊළඟ කොටසේ) පැනීමට පෙළඹෙනු ඇති අතර සියල්ල අවසන්. අවාසනාවකට මෙන්, වඩාත්ම ජනප්‍රිය සංරචක නරක ක්‍රියාකාරීන්ගේ ඉලක්ක වේ, උදාහරණයක් ලෙස, ජනප්‍රිය PyTorch පුස්තකාලයට ප්‍රහාරයක් එල්ල විය. අතීතයේදී.

"වහාම සොයා ගන්නා ලදී, හෙළිදරව් කරන ලදී, සහ ඉවත් කරන ලදී".  නව අනිෂ්ට සංරචකයක් පොදු ලේඛනයෙන් ඉවත් කිරීමට දින කිහිපයක් ගතවේ. සංරචක අනුවාදයක් ඉවත් කිරීම සම්බන්ධයෙන් ලේඛකාධිකාරීවරුන් ප්‍රවේශම් වේ, යහපත සඳහා. අපගේ අත්දැකීම නම්, අපගේ පැත්තෙන් වාර්තා කළ පසු, බලපෑමට ලක් වූ අනුවාදය ඉවත් කිරීමට රෙජිස්ට්‍රියට ගතවන මධ්‍යන්‍ය කාලය පැය 39 ක් වන අතර එය දින එකහමාරකට වඩා වැඩිය. ඉවත් කිරීමට පෙර රෙජිස්ට්‍රියේ අපගේ මූලික වාර්තා කිරීමෙන් සතියකට පසුව ඇති අනිෂ්ට සංරචක තිබේ. සමහර අවස්ථාවලදී, සංරචකය ඉවත් කරනු ලබන්නේ වින්දිතයෙකු හෝ සිදුවීම් ප්‍රතිචාර සමාගමක් සංරචකය සම්බන්ධ සිදුවීමක් වාර්තා කිරීමෙන් පසුව පමණි. 

අනිෂ්ට සංරචක වලට එරෙහිව ක්‍රියා නොකරන්නේ කුමක්ද?

ඕනෑම නිශ්චිත නොවන ප්‍රවේශයක් අවාසනාවන්ත ලෙස අසාර්ථක වනු ඇත. මෙය නිසැකවම, මෙම තර්ජනය හා සම්බන්ධ අවදානම සඳහා ඔබ ඵලදායී ප්‍රති-පියවර සපයන්නේ නැත. 

සම්ප්රදායික SCA මෙවලම් මඟින් දන්නා අනිෂ්ට මෘදුකාංග ගැන ඔබට කියනු ඇත, නමුත් විශාල නිරාවරණ කවුළුවක් ඇත. ඒවා අනිෂ්ට සංරචක බලහත්කාරයෙන් අවහිර කිරීම සමඟ අනිෂ්ට මෘදුකාංග අනාවරණය කිරීම කල්තියා සිදු නොකරන්නේ නම්, ඒවා මෙම තර්ජනයට එරෙහිව ක්‍රියා නොකරයි. 

ස්ථාපන ස්ක්‍රිප්ට් අක්‍රිය කිරීම උපකාරී විය හැකි නමුත් සංරචකයක් ස්ථාපනය කිරීමට අවශ්‍ය සෑම තැනකම එය බලාත්මක කළ යුතුය. අනුවාද පින් කිරීමත් එසේමයි, මන්ද අනුවාද ආරක්ෂිත ආරම්භක තත්වයකින් සදහටම පින් කළ නොහැක.

ජනප්‍රිය සංරචක වලට ප්‍රමාණවත් අවධානයක් ලැබෙන බවත්, සැපයුම් දාම ප්‍රහාරයකදී අනපේක්ෂිත හැසිරීම් එන්නත් කළ නොහැකි බවත්, කිසිදු හානියක් වැළැක්වීම සඳහා ක්ෂණිකව අනාවරණය කර ගැනීමකින් තොරව උපකල්පනය කිරීම බොළඳ හා අවදානම් සහගතයි. ඔබට අද්දර ජීවත් වීමට අවශ්‍ය නැහැ නේද?

මේ මොහොතේ ඔබ නතර වුවහොත්, අවදානම් පිළිගැනීම ඔබට කළ හැකි එකම දෙය මෙයයි: මෙය ඩිcisඅවදානම පිළිගැනීමේ තාර්කිකත්වය සහ එහි විභව ඇඟවුම් ඇතුළුව, ඔබේ තර්ජන ආකෘතියේ/අවදානම් තක්සේරුවේ ලේඛනගත කළ යුතු තොරතුරු. කළමනාකරණයට සහ අනෙකුත් අදාළ පාර්ශවයන්ට එය සන්නිවේදනය කිරීමෙන් දැනුවත්භාවය වැඩි කරන්න. සමහරක් අවිනිශ්චිතතාව ඔබේ මෘදුකාංගයට අනිෂ්ට සංරචකයක් ස්ථාපනය කළ විට හෝ ඇතුළත් කළ විට සැලසුම් කළ හැකිය, නමුත් ප්‍රහාරකයින්ට අනුගමනය කිරීමට බොහෝ මාර්ග ඇති බැවින් මෙය දුෂ්කර ය. අනිෂ්ට සංරචකයක් භාවිතා කිරීම මත පදනම් වූ සැපයුම් දාම ප්‍රහාරයක විස්තර, සිද්ධිය පිළිබඳ ප්‍රසිද්ධ හෙළිදරව් කිරීම දැඩි ලෙස වෙනස් කරනු ඇත, එය බොහෝ විට ඔබේ සංවිධානයේ නියාමන රාමුව යටතේ අනිවාර්ය වේ. ඔබට වන්දි පාලන or මාරු අවදානම උදා: රක්ෂණය සමඟ.

කෙසේ වෙතත්, තර්ජනයට මුහුණ දෙන පාලනයන් ඇති අතර අවදානම් පිළිගැනීම පිළිබඳව ඔබ සෑහීමකට පත් නොවන්නේ නම් ඒවා සලකා බැලිය යුතුය. කරුණාකර කියවන්න.

අනිෂ්ට සංරචක භාවිතයෙන් සිදුවන ප්‍රහාරවලට එරෙහිව ක්‍රියා කරන්නේ කුමක්ද?

ඝන අනුවාද හැසිරවීම

පාලිත සහ දැනුවත් අනුවාද බම්ප් සමඟ අනුවාද පින් කිරීම යනු අනිෂ්ට මෘදුකාංග ලබා නොගෙන අවදානම් ඉවත් කිරීමේ අවශ්‍යතාවය සමතුලිත කිරීම සඳහා යා යුතු මාර්ගයයි. නමුත් වැරදි වැටහීම #3 මතක තබා ගන්න: නව අනුවාද වලින් එන අනිෂ්ට කේත අවහිර කිරීමට අනුවාද පින් කිරීම පමණක් ප්‍රමාණවත් නොවේ, මන්ද අනාගතයේදී ඔබට ඕනෑම සෘජු හෝ වක්‍ර යැපීමකින් අනුවාද යාවත්කාලීන කිරීමට අවශ්‍ය වනු ඇත. ඒ මොහොතේ ඔබට සියලුම වෙනස් කළ අනුවාදවල අනිෂ්ට මෘදුකාංග අඩංගු නොවන බවට ප්‍රමාණවත් තරම් ශක්තිමත් සාක්ෂි අවශ්‍ය වේ.

පූර්ව අනතුරු ඇඟවීම්

අනිෂ්ට සංරචක පිළිබඳ ගැටළුවට එක් ප්‍රවේශයක් වන්නේ පූර්ව අනතුරු ඇඟවීමේ පද්ධතියකි (මෙහි නම් කර ඇත්තේ අනිෂ්ට මෘදුකාංග පූර්ව අනතුරු ඇඟවීම හෝ MEW), එහිදී ප්‍රකාශයට පත් කරන ලද නව අනුවාදයන් (නව හෝ පවතින සංරචක සඳහා) හඳුනාගැනීමේ එන්ජිමක් මගින් විශ්ලේෂණය කරනු ලැබේ, ප්‍රමාණවත් සාක්ෂි සොයාගත් විට නව අනුවාදය විභවයෙන් ද්වේෂ සහගත ලෙස වර්ගීකරණය කළ හැකිය. 

වත්මන් ප්‍රකාශන අනුපාතයට සියලුම නව සංරචක අතින් සමාලෝචනය කිරීමට නොහැකි බැවින් ස්වයංක්‍රීයකරණය මෙහිදී අත්‍යවශ්‍ය වේ. එබැවින් හඳුනාගැනීමේ එන්ජිමට විවිධ ශිල්පීය ක්‍රම ඒකාබද්ධ කිරීමට අවශ්‍ය වේ, සමහර විට ස්ථිතික, ගතික සහ හැකියාවන් විශ්ලේෂණය, පරිශීලක කීර්තිය සහ සංරචක මෙටාඩේටා සහ තාර්බෝල් අන්තර්ගතයන් අතර විෂමතාවන්ගෙන් ලැබෙන සාක්ෂි හෝ තාර්බෝල් සහ සංරචකය පැමිණෙන්නේ යැයි කියන මූලාශ්‍ර ගබඩාව අතර ඇති විෂමතා ඇතුළුව.

ඒ නිසා එය අඳුරු කලාපය ප්‍රකාශන කාලය සහ එන්ජිම සංරචක අන්තර්ගතය විශ්ලේෂණය කරන කාලය අතර, නමුත් එය මිනිත්තු කිහිපයක් නොඉක්මවිය යුතුය. යෝජනා ක්‍රමය වෙනස් කළ හැකිය, උදාහරණයක් ලෙස මෘදුකාංග ගොඩනැගීමේදී ඒවා ස්ථාපනය කර භාවිතා කිරීමට ඉඩ දීමට පෙර නව සංරචක විශ්ලේෂණය කිරීමට බලා සිටීමෙන්. pipelines, නැතහොත් අවශ්‍ය විටෙක ඉල්ලුම මත ඒවා විශ්ලේෂණය කරන්න. දී ඇති අනුවාදයක සංරචකයක් වෙනස් කළ නොහැකි ය [3], එබැවින් එය විශ්ලේෂණය කළ යුත්තේ එක් වරක් පමණි.

සම්පූර්ණ ස්වයංක්‍රීයකරණය කළ නොහැකි අතර, හානිකර විය හැකි සංරචක සඳහා ආරක්ෂක සමාලෝචනයක් අවශ්‍ය වේ. ඩිජිටල් කෝකටත් තෛල යෝජකයින්ගෙන් පරිස්සම් වන්න: සැක සහිත සංරචකයක අනිෂ්ට මෘදුකාංග තිබේද යන්න තහවුරු කිරීමේදී අවසාන වචනය ගැනීමට AI සහ යන්ත්‍ර ඉගෙනීම ප්‍රමාණවත් ලෙස දියුණු වී නොමැත. ඇත්ත වශයෙන්ම, අල්ලා ගන්නා ලද අමු සාක්ෂි වලින් ආදාන සංරචකය වර්ගීකරණය කිරීමේදී යන්ත්‍ර ඉගෙනීම හඳුනාගැනීමේ එන්ජිමේ ප්‍රධාන කාර්යභාරයක් ඉටු කරයි, නමුත් සංරචකය "නිරෝධායනය" කළ පසු අවසාන වචනය වන්නේ අනිෂ්ට සංරචක පිළිබඳ අත්දැකීම් ඇති ආරක්ෂක කණ්ඩායමක් විසින් අතින් සමාලෝචනය කිරීමයි. මෙය ඕනෑම විභව අනිෂ්ට මෘදුකාංගයක් තහවුරු කරයි හෝ එය ආරක්ෂිත යැයි නැවත වර්ගීකරණය කරයි. සහ කාල සීමාව පැය පරාසය තුළ පවතී. 

රෙජිස්ට්‍රිය අනිෂ්ට අනුවාදය/සංරචකය පිළිබඳව වාර්තා කරයි; පසුව රෙජිස්ට්‍රිය තහවුරු කිරීම සඳහා එහි සමාලෝචනය සිදු කරන අතර ප්‍රසිද්ධියේ හෙළිදරව් කිරීම සහ රෙජිස්ට්‍රියෙන් ඉවත් කිරීම සිදු කරයි. සමහර රෙජිස්ට්‍රියන් ආරක්ෂක රඳවා ගැනීමේ පැකේජයක් තබා ගනී. මෙහි කාල පරාසය ප්‍රකාශනයේ සිට දින හෝ සති වේ, එනම් 'සිටින වේලාව' හෝ 'නිරාවරණ කවුළුව'බොහෝ ද්වේෂසහගත සංරචක සඳහා.'

සංරචක අනුවාදයක් ද්වේෂසහගත දැයි දැන ගැනීමට හැකිද?

ඉතින්, පූර්ව අනතුරු ඇඟවීමක් සඳහා, අපි මෙම ප්‍රශ්නයට සතුටුදායක පිළිතුරක් ලබා දිය යුතුයි: පුස්තකාලයක් හෝ පැකේජයක් ද්වේෂ සහගත බව (නොවන) මා දැන ගන්නේ කෙසේද? ද්වේෂ සහගත හැසිරීම් පිළිබඳ ප්‍රමාණවත් සාක්ෂි රැස් කරන්නේ කෙසේද? හැකි නමුත් දුෂ්කර ය, මන්ද විරුද්ධවාදීන් අනාවරණය වීම වළක්වා ගැනීමට බොහෝ දක්ෂතාවය භාවිතා කරන බැවිනි. විවිධ ප්‍රවේශයන් ඇත, ඒ සෑම එකක්ම වාසි සහ අවාසි ඇත.

ස්ථිතික විශ්ලේෂණය සියලුම ක්‍රියාත්මක කිරීමේ මාර්ග පරීක්ෂා කළ හැකි අතර, සංරචකය ක්‍රියාත්මක නොකර ප්‍රහාරකයින් විසින් භාවිතා කරන ශිල්පීය ක්‍රම පරීක්ෂා කළ හැකි අතර, අපැහැදිලි කිරීම හෝ විකේතනය කිරීම වැනි පූර්ව සැකසුම් කාර්යයන් සිදු කළ හැකිය. ප්‍රහාරකයින් ඔවුන්ගේ අකටයුතුකම් සැඟවීමට උත්සාහ කරන විට, අපැහැදිලි කිරීමේ උත්සාහයන් ඇත්ත වශයෙන්ම අනිෂ්ට මෘදුකාංග සඳහා සාක්ෂි වේ (නමුත් නීත්‍යානුකූල සංරචක බුද්ධිමය දේපළ සංරක්ෂණය කිරීම සඳහා කේතය අපැහැදිලි කරන බව සලකන්න, "විවෘත කේතයකි”). ප්‍රබල අපැහැදිලි කිරීමක් සහිත ඉතා සංකීර්ණ ප්‍රහාර සුළුතරයකට පමණක් වැලිපිල්ල අවශ්‍ය වේ, නමුත් එවැනි ප්‍රබල අපැහැදිලි කිරීමක් ද්වේෂසහගත බව පෙන්නුම් කරන ලකුණකි. සාම්ප්‍රදායික බව කරුණාවෙන් සලකන්න SAST මෙවලම් නිර්මාණය කර ඇත්තේ නොදැනුවත්වම අවදානම් සඳහා මිස පසුපස දොරවල් වැනි ද්වේෂසහගත අභිප්‍රායන් සඳහා නොවේ.

ගතික විශ්ලේෂණය සංරචකය ක්‍රියාත්මක කර ප්‍රතිචාරය පරීක්ෂා කරන්නේ ධාවන කාලය උපකරණගත කිරීමෙනි, සාමාන්‍යයෙන් වැලිපිල්ල සහිත පරිසරයක් ලබා දීමෙනි. ඇතැම් තත්වයන් යටතේ අවුලුවන අනිෂ්ට හැසිරීම් අනාවරණය නොවී සමත් විය හැකිය: අනිෂ්ට මෘදුකාංග මගහැරීමේ ශිල්පීය ක්‍රම භාවිතා කළ හැකි බව කරුණාවෙන් සලකන්න. අථත්‍යකරණය/සෑන්ඩ්බොක්ස් මග හැරීම පරීක්ෂාවට ලක් නොවන විට පමණක් සක්‍රිය කිරීමට සහ ඕනෑම ස්ථිතික විශ්ලේෂණ එන්ජිමක් සඳහා ද්වේෂසහගත ක්‍රියාකාරකම් පිළිබඳ කතන්දර ලකුණක් ද වේ.

හැකියාවන් විශ්ලේෂණය සංරචකය කරන්නේ කුමක්ද යන්න සලකා බලයි: එය සම්බන්ධ වන්නේ කොතැනටද, එය ප්‍රවේශ වන්නේ කුමන ගොනුවලටද, කුමන විධාන හෝ වැඩසටහන් ක්‍රියාත්මක වන්නේද, පර්යන්තය හෝ උපාංගය I/O සිදු කරන්නේද, හෝ කුමන පද්ධති ඇමතුම් කැඳවන්නේද යන්න. හැසිරීම් වල මෙම ඇඟිලි සලකුණු අනුවාද හරහා (පවතින සංරචකයක් සඳහා) සංසන්දනය කළ හැකිය, එබැවින් අනපේක්ෂිත හැසිරීමක් අනාවරණය වූ විට, එම සාක්ෂි නව අනුවාදයේ එන්නත් කරන ලද විභව ද්වේෂසහගත ක්‍රියාකාරකම් පිළිබඳ සැකයක් ඇති කළ හැකිය. මෙම ප්‍රවේශය විභව අනිෂ්ට මෘදුකාංග වලට මුහුණ දෙන විට ආරක්ෂක විශ්ලේෂකයින් අනුගමනය කරන ත්‍රිත්ව පියවර අනුගමනය කරයි: භාවිතා කරන පරීක්ෂාවක් නූල් හෝ ඒ හා සමාන මෙවලම්. මෙම ප්‍රවේශය ප්‍රේරක තත්වයන් නොසලකා ද්වේෂසහගත හැසිරීම් හඳුනා ගන්නා අතර මූලාශ්‍ර කේතයක් නොමැති විට ක්‍රියා කරයි.

සන්දර්භ විශ්ලේෂණය සංරචකය ප්‍රකාශයට පත් කළ ආකාරය සහ කවුරුන් විසින්ද යන්න පිළිබඳ තොරතුරු රැස් කරයි. නරක ක්‍රියාකාරීන්ගේ ව්‍යාපාර බොහෝ විට දැඩි පරීක්ෂණ ක්‍රියාවලියකට යටත් නොවන නව පරිශීලක ගිණුමක්/ගිණුම් භාවිතා කරයි. අතීත ක්‍රියාකාරකම් නිරීක්ෂණය කිරීමෙන් යටින් පවතින පරිශීලකයා පිළිබඳ අවබෝධයක් ලබා දිය හැකිය, බොහෝ දුරට විභව සම්මුතියක් ගැන ඉඟි කළ හැකි විෂමතා සඳහා. කීර්තිය උපයා ගැනීම ඉතා අපහසු වන අතර අහිමි වීම ඉතා පහසුය! අතීත ක්‍රියාකාරකම් නොමැති පරිශීලකයෙකු මධ්‍යස්ථ වේ, නමුත් කර්මය ද්වේෂසහගත දේ ලුහුබඳියි. හැක්ටිවිස්ට්වරුන් හෝ ඔවුන්ගේ ප්‍රකාශන අක්තපත්‍ර සොරකම් කර ඇති සාමාන්‍ය පරිශීලකයින් ප්‍රවේශමෙන් නිරීක්ෂණය කළ යුතුය.

තවත් සන්දර්භීය තොරතුරක් වන්නේ සංරචක තාරබෝලය නිර්මාණය කිරීමට භාවිතා කළ බව කියන මූලාශ්‍ර ගබඩාව සහ තාරබෝලයේම අන්තර්ගතය අතර ඇති ඕනෑම විෂමතාවයක්. තවද පොදු ලේඛනයේ ප්‍රකාශයට පත් කරන ලද සංරචකයේ අනුවාදවලට ගැලපෙන මූලාශ්‍ර ගබඩාවේ ටැග් හෝ නිකුතු නිර්මාණය කිරීම වැනි හොඳ පිළිවෙත් අනුගමනය කිරීමයි. විශේෂිත ස්ථානයක මූලාශ්‍ර ගබඩාව ඇති විට commit නිකුතුව සමඟ ටැග් කර ඇති අතර, පසුව හදිසියේම එක් අනුවාදයක් එය අනුගමනය කිරීමට අපොහොසත් වේ, එයම සංරචකය දූෂිත විය හැකි බවට ප්‍රබල සාක්ෂියකි: නරක නළුවා සංරචකය ප්‍රකාශයට පත් කිරීම සඳහා භාවිතා කළ ගිණුම අවදානමට ලක් කර තිබිය හැකි නමුත්, මූලාශ්‍ර කේත ගබඩාවේ ලිවීමේ අවසර නොමැත). මෙම නීති භාවිතා කරමින් බොහෝ ප්‍රහාර නිතිපතා අනාවරණය වේ: උදාහරණයක් ලෙස, ලෙජර් ප්‍රහාරය මෙම රේඛා ඔස්සේ පහසුවෙන් හඳුනාගත හැකිය. එබැවින් සන්දර්භ විශ්ලේෂණය, ප්‍රකාශන ක්‍රියාවලියේ එවැනි විෂමතා හඳුනා ගනී.

යැපුම් ෆයර්වෝල් කිරීම

වෙනස් ප්‍රවේශයක් වන්නේ ඔබේ මෘදුකාංගයේ භාවිතා කරන සියලුම පරායත්තතා ප්‍රස්ථාර සඳහා සංරචකවල පුළුල් සුදු ලැයිස්තුවක් තිබීමයි, එබැවින් ඕනෑම ගොඩනැගීමකදී pipeline ඔබේ සංවිධානය තුළ ක්‍රියාත්මක කරන්න අනුමත සංරචක අනුවාද පමණක් ස්ථාපනය කර භාවිතා කළ හැකිය. “ගිනි පවුර” අවසර ලත් සංරචක අනුවාද සඳහා තාර බෝල සපයනු ලබන (හැඹිලිගත හෝ ප්‍රොක්සි කරන ලද) අභ්‍යන්තර රෙජිස්ට්‍රියක් භාවිතයෙන් බලාත්මක කරනු ලැබේ. ඕනෑම නව අනුවාදයක් සාධාරණ ලෙස ආරක්ෂිත ලෙස වර්ගීකරණය කිරීමේ තාක්ෂණය ඔබ සතුව නොමැති නම්, ඕනෑම සුදු ලැයිස්තුවක් ක්‍රියා නොකරන බව කරුණාවෙන් සලකන්න, එවිට එය සුදු ලැයිස්තුවට එක් කළ හැකිය. 

කරුණාකර සටහන් කර ගන්න, පූර්ව අනතුරු ඇඟවීම (නව අනුවාදය ප්‍රකාශයට පත් කිරීමෙන් පසු හැකි ඉක්මනින් ඉක්මන් හඳුනාගැනීම) ගොඩනැගීමට බලපාන සංරචකය අවහිර කිරීම සඳහා එම තොරතුරු කල්තියා භාවිතා කිරීමට යම් ක්‍රමයක් සමඟ ඒකාබද්ධ කළ යුතුය. pipelines හෝ සංවර්ධකයින්ගේ යන්ත්‍ර [4]. අපි මෙය හඳුන්වන්නේ “පරායත්තතා ෆයර්වෝල් කිරීම”: අනිෂ්ට පැකේජ වලින් ස්වයංක්‍රීය ගොඩනැගීම් ආරක්ෂා කිරීම සඳහා නිරෝධායන යාන්ත්‍රණයක්. බාහිර නපුරෙන් සංවිධාන හුදකලා කිරීමට අභ්‍යන්තර පැකේජ සහ රූප ලේඛන හොඳ නමුත් නිරෝධායනය ඵලදායී කිරීමට ප්‍රමාණවත් තරම් ශක්තිමත් සාක්ෂි අවශ්‍ය වේ. 

ධාවන කාල සෑන්ඩ්බොක්සිං

ප්‍රකාශන අවස්ථාවේදී අනාවරණය කර ගැනීම සඳහා විකල්ප ප්‍රවේශයක් වන්නේ ධාවන වේලාවේදී හැසිරීම විශ්ලේෂණය කිරීමයි. අදහස වන්නේ මෘදුකාංගයෙන් අපේක්ෂිත හැසිරීම ග්‍රහණය කර ගැනීම සහ සොයාගත් ඕනෑම විෂමතාවයක් හඳුනා ගැනීම (හෝ අවහිර කිරීම) ය. මෙම ක්‍රියාමාර්ගයට නිරීක්ෂණය හෝ අවහිර කිරීම සඳහා ධාවන කාලය උපකරණ කිරීමට සිදුවීමේ ගැටලුව ඇති අතර, එය ද්වේෂසහගත සංරචක පළිබෝධකයන්ට එරෙහිව ආරක්ෂණ යාන්ත්‍රණවල අවි ගබඩාවට එකතු කරනු ලබන පොරොන්දු වූ අදහසකි.

විස්තීර්ණ උපාය මාර්ගයක් සැකසීම

නිර්දේශිත උපාය මාර්ගයට මෘදුකාංග සංවර්ධන ක්‍රියාවලියේ විවිධ ශිල්පීය ක්‍රම ඒකාබද්ධ කිරීමට අවශ්‍ය වන අතර, පැමිණෙන අනිෂ්ට සංරචක අවහිර කිරීම සඳහා අනුවාද යාවත්කාලීන කිරීම් පාලනය කිරීමට සිදුවේ. වැදගත් වන අවදානම් සඳහා විසඳුම් ලබා ගැනීම සඳහා අනුවාද යාවත්කාලීන කිරීම් සමඟ ස්වයංක්‍රීය ආසාදනය වළක්වා ගැනීම සඳහා අපි අනුවාද පින් කිරීම සඳහා ඉඩ දිය යුතුය; අනුවාද යාවත්කාලීන කිරීම් අතරතුර සෘජු සහ වක්‍ර යැපීම් පිළිබඳ ඉක්මන් හා කාර්යක්ෂම තක්සේරුවක්, ඒවා අනිෂ්ට මෘදුකාංගවලින් පිරී නොමැති බවට ප්‍රමාණවත් සාක්ෂි ලබා ගත යුතුය. දන්නා අනිෂ්ට සංරචක මත රඳා පවතින මෘදුකාංග ගොඩනැගීම් අවහිර කළ යුතුය. ඒ වගේම සියල්ල බලාත්මක කළ යුතුයි.

හැකි සෑම විටම අනුවාද පින් කිරීම භාවිතා කරන්න, මන්ද එය ගොඩනැගීම් වඩාත් ප්‍රතිනිෂ්පාදනය කළ හැකි කරයි. පාලිත, අතින් අනුමත කරන ලද අනුවාද ගැටීම් සමඟ අනුවාද ඇමිණීම, සහ සහායක තාක්ෂණයෙන් සහාය වේ, යාවත්කාලීනය මඟින් අනිෂ්ට මෘදුකාංග ගෙන එන්නේද නැතහොත් මෘදුකාංගය බිඳ දමන්නේද යන්න තක්සේරු කළ යුතු අතර, අනිෂ්ට මෘදුකාංග ආසාදනය වළක්වා ගැනීම සමඟ අවදානම් නිවැරදි කිරීම සඳහා යාවත්කාලීන කිරීම සමථයකට පත් කළ යුතුය. මෙවලම් මෙහිදී උපකාරී විය හැකිය, (1) සැබවින්ම වැදගත් වන අවදානම් වලට ප්‍රමුඛතාවය දීම (ළඟා විය හැකි සහ සූරාකෑමට ලක්විය හැකි, ප්‍රහාරකයින් විසින් ඉලක්ක කර ගැනීමේ ඉහළ අවදානමක් සහිතව), (2) වත්මන් සංරචක භාවිතයන්ට අනුකූල වන සහ මෘදුකාංගය බිඳ නොදමන ඉලක්ක අනුවාද තෝරා ගැනීම, (3) ද්වේෂසහගත හැසිරීම් අඩංගු නොවන ඉලක්ක අනුවාද තෝරා ගැනීම සහ (4) ඉක්මනින් අනුමත කළ හැකි මැනිෆෙස්ට් ගොනුවල වෙනස්කම් යෝජනා කිරීමෙන් සෘජු සහ වක්‍ර පරායත්තතා සඳහා අනුවාද යාවත්කාලීන කිරීම හදිසි කිරීම. පියවර (3) ට හැකි තරම් ඒවායේ ප්‍රකාශන කාලයට ආසන්නව අනිෂ්ට සංරචක පිළිබඳ නිශ්චිත තොරතුරු අවශ්‍ය වේ.

යැපීම් යාවත්කාලීන කිරීමේ මෙම ක්‍රියාවලිය විය යුතුය බලාත්මක විය සහ තහවුරු කර ඇත සෑම තැනකම. ක්‍රියාවලිය ලේඛනගත කළ යුතු අතර, සම්බන්ධ වන සියලුම පාර්ශ්වයන් පුහුණු කළ යුතුය, මන්ද බොහෝ විට සංවර්ධනය සහ මෘදුකාංග ගොඩනැගීම/යෙදීම බාහිරකරණය කරනු ලැබේ. CI/CD pipelineස්වයංක්‍රීයකරණය මඟින් ද්වේෂසහගත වක්‍ර යැපීමක් ගොඩනැගීමට ලිස්සා යාමට ඉඩ නොදෙන පරිදි s ඒ අනුව වෙනස් කළ යුතුය: guardrails යැපීමක විභව අනිෂ්ට මෘදුකාංග ඇති බවට ප්‍රමාණවත් සාක්ෂි තිබේ නම් ගොඩනැගීම අවහිර කිරීම නිර්දේශිත ක්‍රමයයි. 

අවසර ලත් සංරචක අනුවාදයන් තබා ගැනීම සඳහා ආරක්ෂක ප්‍රොක්සියක් ලෙස ක්‍රියා කරන අභ්‍යන්තර රෙජිස්ට්‍රියක් ඔබේ සංවිධානය සතුව තිබේ නම්, දීමනා ලැයිස්තුවට එය එකතු කිරීමට පෙර ඉල්ලා සිටින සංරචකයක් පරීක්ෂා කිරීම සඳහා අනිෂ්ට සංරචක (වෙනත් නිර්ණායකවලට අමතරව) පිළිබඳ බුද්ධි තොරතුරු ලබා ගත යුතුය. 

විවෘත මූලාශ්‍ර මෘදුකාංග ආරක්ෂිතව පරිභෝජනය කිරීම පහසු නොවන අතර, අනිෂ්ට මෘදුකාංග සාධකය සම්පූර්ණයෙන්ම සැලකිල්ලට ගත යුතු අතර, අවදානම් හැසිරවීමේදී ද ඒ හා සමාන උත්සාහයක් දැරිය යුතුය.

එක් අවසාන සටහනක්: මූලාශ්‍ර සම්භවය, සංරචකය ගොඩනැගීමේ අවස්ථාවේදී ජනනය කරන ලද මෘදුකාංග සහතික කිරීමේ ස්වරූපයෙන්, එය නිෂ්පාදනය කළ මූලාශ්‍ර සහ ගොඩනැගීමේ ක්‍රියාවලිය සමඟ කෞතුක වස්තුව (සංරචක තාර බෝලය) සොයා ගැනීමේ උත්සාහයේ තවත් ප්‍රධාන අංගයකි. මූලාශ්‍ර ස්නැප්ෂොට් + ගොඩනැගීමේ පරිසරය සහ ඒ ආශ්‍රිත මෘදුකාංග කෞතුක වස්තුව (විශ්වාසදායක ගොඩනැගීමේ පද්ධතිය විසින් අත්සන් කරන ලද) අතර මෙම සබැඳිය සංරචකයේ ද්වේෂ සහගත හැසිරීම් අඩංගු නොවන බව වළක්වන්නේ නැත, නමුත් නරක පුද්ගලයින්ට අනිෂ්ට මෘදුකාංග එන්නත් කිරීම දුෂ්කර කරයි. සහ විවෘත මූලාශ්‍ර සංරචක පරිභෝජනය කිරීම සඳහා ප්‍රභව වලංගුකරණය පොදු අවශ්‍යතාවයක් බවට පත් කිරීම දිගු කාලයක් ගතවනු ඇති අතර, මෑතකදී NPM වෙත එකතු කරන ලදී. විශ්වාසදායක ගොඩනැගීම් සහ යෙදවුම් පද්ධති අනවසරයෙන් ඇතුළුවීමට ඔරොත්තු දීම හෝ ගොඩනැගීමේ ඕනෑම අනවසරයෙන් ඇතුළුවීමක් අනාවරණය කර ගැනීමට හැකියාව ලබා දීම මෙම සටහනේ විෂය පථයෙන් බැහැර වෙනස් කතාවකි. 

වැඩිදුර කියවීම

ඊළඟ කථාංගය විවෘත මූලාශ්‍ර අනිෂ්ට පැකේජ: සයිජෙනි ප්‍රවේශය අපගේ Xygeni සඳහා අපි අනුගමනය කරන උපාය මාර්ගය ඉදිරිපත් කරනු ඇත. අනිෂ්ට මෘදුකාංග පූර්ව අනතුරු ඇඟවීම (MEW) පද්ධතිය. පොදු පැකේජයේ සහ රූප ලේඛනවල නව පැකේජ අනුවාදයන් පරිලෝකනය කර ස්ථිතික, ගතික, හැකියාවන් සහ සන්දර්භීය විශ්ලේෂණයන්හි එකතුවක් භාවිතයෙන් සාක්ෂි ලබා ගනී. පරිශීලක කීර්තිය සහ මූලාශ්‍ර කේත ගබඩාවල වෙනස්කම්වල ඉතිහාසය සමඟ ඒකාබද්ධ වූ සාක්ෂි, අධි අවදානම් සහ බොහෝ විට ද්වේෂසහගත කාණ්ඩවලට සංරචකයක් සම්පූර්ණයෙන්ම ස්වයංක්‍රීයව වර්ගීකරණය කිරීමට ඉඩ සලසයි. ව්‍යාජ ධනාත්මක අවම මට්ටමකට අඩු කිරීම සඳහා පද්ධතිය පැකේජවලින් රැස් කරන ලද අතීත සාක්ෂි වලින් ඉගෙන ගනී. 

ද්වේශසහගත අනුවාදයක් වර්ගීකරණය කළ විට, දායක වූ සංවිධානවලට සෘජුව හෝ වක්‍රව ඔවුන් භාවිතා කරන සංරචක සඳහා අනතුරු ඇඟවීමේ දැනුම්දීමක් ලැබේ. ඉන්පසු අපගේ විශ්ලේෂකයින් විසින් අතින් විශ්ලේෂණයක් සිදු කරනු ලබන අතර, එය වර්ගීකරණය තහවුරු කරයි හෝ ප්‍රතික්ෂේප කරයි. තහවුරු කරන ලද අනිෂ්ට මෘදුකාංග සඳහා, පොදු ලේඛනාගාරයට දැනුම් දෙනු ලැබේ, එවිට එයට තමන්ගේම විශ්ලේෂණයක් සිදු කළ හැකි අතර සාමාන්‍යයෙන් ද්වේශසහගත අනුවාදය ඉවත් කිරීමට හෝ අදාළ පරිශීලක ගිණුම අවහිර කිරීම හෝ ඉවත් කිරීම වැනි අමතර ක්‍රියාමාර්ග ගත හැකිය.

ප්‍රකාශයට පත් කරන ලද නව ද්වේෂසහගත සංරචකයක් අනිෂ්ට මෘදුකාංග බව තහවුරු කර රෙජිස්ට්‍රියෙන් ඉවත් කරන තෙක් සක්‍රියව පවතින කාලය අඩු කිරීම සඳහා විවෘත මූලාශ්‍ර පරිසර පද්ධතියේ NPM, PyPI, GitHub සහ අනෙකුත් ප්‍රධාන යටිතල පහසුකම් සඳහා අපි උදව් කරන්නේ කෙසේදැයි අපි පැහැදිලි කරන්නෙමු. සහ විවෘත මූලාශ්‍ර සංරචක සම්බන්ධ මෘදුකාංග සැපයුම් දාම ප්‍රහාරවලට එරෙහිව වඩා හොඳ ආරක්ෂාවක් ලබා ගැනීමට සංවිධාන MEW පද්ධතියෙන් ප්‍රයෝජන ගන්නේ කෙසේද.

  • [1] කෙසේ වෙතත්, සංරචකයේ පරිශීලකයින් සංරචක තාර්බෝල් කොතැනක හෝ හැඹිලිගත කර ඇත්ද නැතහොත් ලියාපදිංචි කර ඇත්දැයි පරීක්ෂා කළ යුතුය, උදාහරණයක් ලෙස අභ්‍යන්තර රෙජිස්ට්‍රියක, එවිට රෝගය තුරන් වේ.
  • [2] ඇසුරුම් කරන ලද සංරචකයට එහි අන්තර්ගතය සහ පාර-දත්ත, මූලාශ්‍ර හෝ සම්පාදනය කරන ලද කේතය, ස්ථාපන ස්ක්‍රිප්ට් සහ පරීක්ෂණ කට්ටල වැනි අමතර අයිතම ප්‍රකාශ කරන මැනිෆෙස්ටයක් ඇතුළත් වේ, ඇසුරුම් ආකෘතියකට අනුව සහ සාමාන්‍යයෙන් සම්පීඩිත ආකාරයෙන්. මෙය "සංරචක තාරබෝල" ලෙස හැඳින්වේ.
  • [3] ද්වේෂසහගත ක්‍රියාකරුට රෙජිස්ට්‍රියේම සිදු වූ බිඳීමක් හේතුවෙන් ප්‍රකාශිත සංරචකයක් වෙනස් කළ හැකි වුවද, විශ්ලේෂණය සිදු කිරීමෙන් පසු සරල-පැරණි ගුප්ත ලේඛන සංග්‍රහයකට තාර බෝලයේ ඕනෑම වෙනසක් හඳුනාගත හැකිය.
  • [4] සමහර අනිෂ්ට සංරචක ස්ථාපන වේලාවේදී ක්‍රියාත්මක වන බව මතක තබා ගන්න, එබැවින් එය නොදැනුවත්වම “npm install X” ක්‍රියාත්මක කරන සංවර්ධක නෝඩ් වලට බලපෑ හැකිය, එය X අනිෂ්ට සංරචකයක් සමඟින්.  

විවෘත මූලාශ්‍ර අනිෂ්ට පැකේජ: ගැටලුව

අනිෂ්ට පැකේජවල ව්‍යුහ විද්‍යාව: ප්‍රවණතා මොනවාද?

sca-මෙවලම්-මෘදුකාංග-සංයුතිය-විශ්ලේෂණ-මෙවලම්
ඔබේ මෘදුකාංග අවදානම් ප්‍රමුඛතාවය දෙන්න, නිවැරදි කරන්න සහ සුරක්ෂිත කරන්න
ඔබගේ නොමිලේ ගිණුම ලබා ගන්න.
කිසිදු ක්රෙඩිට් කාඩ්පතක් අවශ්ය නොවේ.

ඔබේ මෘදුකාංග සංවර්ධනය සහ බෙදා හැරීම සුරක්ෂිත කරන්න

Xygeni නිෂ්පාදන කට්ටලය සමඟ