I-PyPI iyindawo esemthethweni yesoftware yezinhlelo zokusebenza zezinkampani zangaphandle ngolimi lokuhlela lwePython.
Ezinsukwini ezimbalwa ezedlule kwavela lokho inqolobane yephakheji yePython PyPI (Python Package Index) kakade inikeza ikhono lokusebenzisa indlela entsha evikelekile yokushicilela amaphakheji, okususa isidingo sokugcina amaphasiwedi aqinile namathokheni okufinyelela e-API ezinhlelweni zangaphandle (isibonelo, ku-GitHub Actions).
Indlela entsha yokuqinisekisa inegama'Abashicileli Abathenjwayo' futhi yakhelwe ukuxazulula inkinga yokukhishwa kwezibuyekezo ezinonya ngenxa yezinhlelo zangaphandle ezisengozini kanye namaphasiwedi achazwe ngaphambilini noma amathokheni awela ezandleni ezingalungile.
Kusukela namuhla, abagcini bephakheji ye-PyPI bangakwazi ukusebenzisa indlela yokushicilela entsha, ephephe kakhudlwana engadingi amaphasiwedi ahlala isikhathi eside noma amathokheni e-API ukuze babelane namasistimu angaphandle.
Kushiwo ukuthi le ndlela entsha yokuqinisekisa inikeza ukusebenziseka okubalulekile nezinzuzo zokuphepha uma kuqhathaniswa nezinye izindlela zokuqinisekisa ze-PyPI ezivamile:
- Ukusetshenziswa: Ngokushicilela okuthenjwayo, abasebenzisi akusadingeki ukuthi bazenzele mathupha amathokheni e-API ku-PyPI futhi bawakopishe futhi bawanamathisele kumhlinzeki wabo we-CI. Isinyathelo semanuwali kuphela ukumisa isihleli ku-PyPI.
- Ezokuphepha: amathokheni avamile e-PyPI API ahlala isikhathi eside, okusho ukuthi umhlaseli onaka ukukhishwa kwephakheji angayisebenzisa kuze kube yilapho umsebenzisi wayo osemthethweni eqaphela futhi akuhoxise mathupha. Ngokufanayo, ukulayisha ngephasiwedi kusho ukuthi umhlaseli angalayisha noma iyiphi iphrojekthi ehlotshaniswa ne-akhawunti. Ukushicilela Okuthenjwayo kugwema zombili lezi zinkinga: Amathokheni akhishiwe aphelelwa yisikhathi ngokuzenzakalelayo futhi akhawulelwe kumaphakheji agunyazwe ukuthi alayishe kuwo.
Mayelana nale ndlela entsha yokuqinisekisa, kuyashiwo ukuthi isekelwe ezingeni le-OpenID Connect (OIDC), okuyinto isebenzisa amathokheni okuqinisekisa anesikhathi esilinganiselwe ashintshiwe phakathi kwezinsizakalo zangaphandle kanye nohla lwemibhalo lwe-PyPI ukuze kuqinisekiswe umsebenzi wokushicilela iphakheji, esikhundleni sokusebenzisa igama lokungena elivamile/iphasiwedi noma i-API eqhubekayo ekhiqizwa mathupha amathokheni okufinyelela.
“Ukushicilela Okuthenjwayo” isikhathi sethu sokusebenzisa izinga le-OpenID Connect (OIDC) ukushintshanisa amathokheni kamazisi wesikhashana phakathi kwesevisi ethenjwayo evela eceleni kanye ne-PyPI. Le ndlela ingasetshenziswa ezindaweni ezizenzakalelayo futhi iqeda isidingo sokusebenzisa inhlanganisela yegama lomsebenzisi/iphasiwedi noma amathokheni e-API akhiqizwa mathupha ukuze aqinisekise nge-PyPI lapho ushicilela.
Ngakolunye uhlangothi, kuphinde kushiwo ukuthi abagcini bephakheji bangakwazi, ohlangothini lwe-PyPI, izihlonzi zokwethenjwa ezinikezwe Abahlinzeki be-OpenID bangaphandle (ama-IdP), isevisi yangaphandle ezozisebenzisa ukucela amathokheni angaphili we-PyPI.
Amathokheni akhiqiziwe we-OpenID Connect aqinisekisa ubudlelwano phakathi kwephrojekthi nesilawuli, okuvumela i-PyPI ukuthi yenze ukuqinisekiswa okwengeziwe kwemethadatha, njengokuqinisekisa ukuthi iphakheji eshicilelwe ihlotshaniswa nenqolobane ethile. Amathokheni awaqhubeki, aboshwe kuma-API athile, futhi aphelelwa yisikhathi ngokuzenzakalelayo ngemva kwempilo emfushane.
Esikhundleni salokho, abalondolozi be-PyPI bangalungiselela i-PyPI ukuthi ithembe umazisi onikezwe umhlinzeki womazisi we-OpenID Connect (IdP). Lokhu kuvumela i-PyPI ukuthi iqinisekise futhi idlulisele ukwethemba kulobo bunikazi, obugunyazwa ukucela amathokheni e-API anomkhawulo, wesikhashana esifushane ku-PyPI. Lawa mathokheni e-API awadingi ukugcinwa noma ukwabelwa, azungeziswe ngokuzenzakalela lapho kuphelelwa isikhathi esisheshayo, futhi anikeze isixhumanisi esingaqinisekiswa phakathi kwephakheji eshicilelwe kanye nomthombo walo.
Okwamanje ikhono lokusebenzisa umshini "Abashicileli Abathenjwayo" Sesivele siqalisiwe futhi siyasebenza. izilawuli ziqale ku-GitHub Actions. Okokugcina, kushiwo futhi ukuthi ukusebenzisana nabashicileli abathembekile kwezinye izinkonzo zangaphandle kulindeleke esikhathini esizayo.
Okokugcina uma unentshisekelo yokwazi kabanzi ngakho, ungabheka imininingwane Kulesi sixhumanisi esilandelayo.