Basic Gitea Information
Last updated
Last updated
Learn & practice AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Learn & practice GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Muundo wa msingi wa mazingira ya Gitea ni kuunganisha repos kwa mashirika, kila moja inaweza kuwa na hifadhi kadhaa na timu kadhaa. Hata hivyo, kumbuka kwamba kama ilivyo katika github, watumiaji wanaweza kuwa na repos nje ya shirika.
Zaidi ya hayo, mtumiaji anaweza kuwa mwanachama wa mashirika tofauti. Ndani ya shirika, mtumiaji anaweza kuwa na idhini tofauti juu ya kila hifadhi.
Mtumiaji pia anaweza kuwa sehemu ya timu tofauti zikiwa na idhini tofauti juu ya repos tofauti.
Na hatimaye, hifadhi zinaweza kuwa na mifumo maalum ya ulinzi.
Wakati shirika linaundwa, timu inayoitwa Wamiliki inaundwa na mtumiaji anawekwa ndani yake. Timu hii itatoa ufikiaji wa admin juu ya shirika, hizo idhini na jina la timu haziwezi kubadilishwa.
Org admins (wamiliki) wanaweza kuchagua mwonekano wa shirika:
Umma
Kizuiwaji (watumiaji walioingia tu)
Binafsi (wanachama tu)
Org admins wanaweza pia kuonyesha kama repo admins wanaweza kuongeza au kuondoa ufikiaji kwa timu. Wanaweza pia kuonyesha idadi ya juu ya repos.
Wakati wa kuunda timu mpya, mipangilio kadhaa muhimu inachaguliwa:
Inabainishwa repos za shirika ambazo wanachama wa timu wataweza kufikia: repos maalum (repos ambapo timu imeongezwa) au zote.
Pia inabainishwa kama wanachama wanaweza kuunda repos mpya (mumbaji atapata ufikiaji wa admin kwa hiyo)
Idhini ambazo wanachama wa repo wata kuwa nazo:
Ukurugenzi wa ufikiaji
Ukurugenzi maalum:
Katika repo, org admin na repo admins (ikiwa inaruhusiwa na shirika) wanaweza kusimamia majukumu yanayotolewa kwa washiriki (watumiaji wengine) na timu. Kuna 3 majukumu yanayowezekana:
Mkurugenzi
Andika
Soma
Kutumia jina la mtumiaji + nenosiri na labda (na inapendekezwa) 2FA.
Unaweza kuunda akaunti yako na funguo moja au kadhaa za umma zinazoruhusu funguo husika za binafsi kufanya vitendo kwa niaba yako. http://localhost:3000/user/settings/keys
Huwezi kujifanya kuwa mtumiaji kwa funguo hizi lakini ikiwa huzitumii inaweza kuwa inawezekana kwamba unagundulika kwa kutuma commits bila saini.
Unaweza kuunda token za ufikiaji wa kibinafsi ili kutoa programu ufikiaji wa akaunti yako. Token ya ufikiaji wa kibinafsi inatoa ufikiaji kamili juu ya akaunti yako: http://localhost:3000/user/settings/applications
Kama token za ufikiaji wa kibinafsi, Oauth applications zitakuwa na ufikiaji kamili juu ya akaunti yako na maeneo ambayo akaunti yako ina ufikiaji kwa sababu, kama ilivyoonyeshwa katika docs, maeneo hayajasaidiwa bado:
Funguo za kupeleka zinaweza kuwa na ufikiaji wa kusoma tu au kuandika kwa repo, hivyo zinaweza kuwa za kuvutia kuathiri repos maalum.
Ulinzi wa matawi umeundwa ili kutopeana udhibiti kamili wa hifadhi kwa watumiaji. Lengo ni kweka mbinu kadhaa za ulinzi kabla ya kuwa na uwezo wa kuandika msimbo ndani ya matawi fulani.
Ulinzi wa matawi wa hifadhi unaweza kupatikana katika https://localhost:3000/<orgname>/<reponame>/settings/branches
Haiwezekani kweka ulinzi wa tawi katika kiwango cha shirika. Hivyo zote lazima zitangazwe kwenye kila repo.
Ulinzi tofauti unaweza kutumika kwa tawi (kama kwa master):
Zuia Push: Hakuna mtu anaweza kusukuma kwenye tawi hili
Ruhusu Push: Mtu yeyote mwenye ufikiaji anaweza kusukuma, lakini si kusukuma kwa nguvu.
Whitelist Restricted Push: Ni watumiaji/timu waliochaguliwa pekee wanaweza kusukuma kwenye tawi hili (lakini si kusukuma kwa nguvu)
Ruhusu Merge Whitelist: Ni watumiaji/timu walio kwenye orodha ya kibali pekee wanaweza kuunganishwa PRs.
Ruhusu Status checks: Hitaji ukaguzi wa hali kupita kabla ya kuunganishwa.
Hitaji idhini: Onyesha idadi ya idhini zinazohitajika kabla ya PR kuunganishwa.
Zuia idhini kwa walio kwenye orodha ya kibali: Onyesha watumiaji/timu wanaoweza kuidhinisha PRs.
Zuia kuunganishwa kwenye mapitio yaliyokataliwa: Ikiwa mabadiliko yanahitajika, haiwezi kuunganishwa (hata kama ukaguzi mwingine unapita)
Zuia kuunganishwa kwenye maombi rasmi ya mapitio: Ikiwa kuna maombi rasmi ya mapitio haiwezi kuunganishwa
Futa idhini za zamani: Wakati commits mpya, idhini za zamani zitafutwa.
Hitaji Commits Zilizotiwa Saini: Commits lazima zisainiwa.
Zuia kuunganishwa ikiwa ombi la kuvuta limepitwa na wakati
Mifumo ya faili zilizolindwa/zisizolindwa: Onyesha mifumo ya faili za kulinda/kutoondoa dhidi ya mabadiliko
Kama unavyoona, hata kama umeweza kupata baadhi ya akidi za mtumiaji, repos zinaweza kulindwa zikizuia wewe kusukuma msimbo kwa master kwa mfano kuathiri mchakato wa CI/CD.
Learn & practice AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Learn & practice GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)