Rangovo prieiga prie saugyklos: viešas įėjimas ar VPN kelias?
Rangovui reikia vienos privačios saugyklos ribotam projektui. Pasirinkite autentifikuotą viešą įėjimą arba ribotą VPN kelią, tada padarykite saugyklos vaidmenį prieigos vienetu.
Rangovui reikia vienos privačios saugyklos ribotam projektui, o prašymas ateina kaip «padarykite saugyklą viešą» arba «duokite jiems VPN prieigą». Abu atsakymai apeina tikrąjį klausimą. Saugyklos autorizacija ir tinklo įėjimas yra atskiri sluoksniai, o svarbi yra ta teisė, kuri leidžia tam žmogui skaityti arba push į tą vieną saugyklą. Visa kita bet kuriame pakete yra papildoma rizika. Pirmiausia suprojektuokite autorizacijos sluoksnį, tada nuspręskite, kiek mažai tinklo kelio jam reikia.
Iliustracinis darbas tai padaro konkrečiu: vienas išorinis kūrėjas, viena saugykla, jokių produkcijos serverių, jokios administravimo sąsajos. Laikykite šią apimtį fiksuotą, kol lyginate įėjimus.
Du įėjimai, dvi skirtingos ribos
Viešai pasiekiama saugyklos paslauga vis tiek taiko HTTPS arba SSH autentifikaciją ir programos autorizaciją. Viešas pasiekiamumas nereiškia anoniminio skaitomumo. Kaina yra klausytojas, kurį turite prižiūrėti, stebėti ir lopyti.
VPN įėjimas gali laikyti tą klausytoją už viešo kelio, bet plati VPN paskyra gali atskleisti nesusijusias paslaugas. Liko viešas pagrindinio kompiuterio vardas, SSH klausytojas ar pamiršta adresų šeima gali sugriauti tik-VPN ribą, kurią manėte turį. Todėl tik-VPN dizainui reikia klausytojų inventoriaus, o ne vien ugniasienės taisyklės.
Lyginkite leidžiamus kelius, o ne etiketes. Bet kuriuo atveju palikite programos autentifikaciją ir įprastą serverio tapatybės patikrinimą.
Saugyklos vaidmenys yra teisės vienetas
Duokite rangovui individualią tapatybę su mažiausiu vaidmeniu, kuris atlieka užduotį. Peržiūra, push, priežiūra ir administravimas yra skirtingi vaidmenys, o grupė, kuri suteikia kiekvieną vidinį projektą, nėra tas pats kaip prieiga prie vienos saugyklos. Patikrinkite tikrus vaidmenų pavadinimus savo platformoje, o ne manykite, kad grupės pavadinimas atitinka vieną vaidmenį.
Išvardykite kiekvieną operaciją, kurios darbui tikrai reikia. Naršyklės prieiga ir Git transportavimas gali naudoti skirtingus prisijungimo duomenis ar klausytojus. Automatizuoti buildai, paketų atsisiuntimai ir webhook gali veikti kaip atskiros tapatybės su savo pristatymo keliais, o nešiojamojo kompiuterio VPN jų nesujungia.
Saugyklos turinio apsauga yra atskiras darbas. Įėjimo kelio pakeitimas nepašalina istorijoje jau esančios paslapties, neriboja autorizuoto klono ir neužtikrina prisidėjusiojo darbo stoties.
Prisijungimo duomenys, gyvenantys ilgiau už žmogų
Pasitraukimas yra vieta, kur saugyklos prieiga ir tinklo prieiga vėl išsiskiria. Pašalinkite saugyklos autorizaciją ir VPN teisę per jų savininkus, tada patikrinkite asmeninius žetonus, SSH raktus, automatizavimo prisijungimo duomenis ir aktyvias sesijas. Diegimo raktas yra klasikinis išgyvenusysis: jis gali išlaikyti sukonfigūruotą skaitymo arba rašymo prieigą po to, kai žmogus palieka organizaciją. Pašalinimas iš narių sąrašo nėra visiškas pasitraukimas.
Suskaičiuokite mašininius prisijungimo duomenis pagal savininką ir paskirtį prieš darbui pasibaigiant, o ne po to. Žetonas, sukurtas savaitės buildui, gali pergyventi projektą metais, jei niekas neužrašė, kodėl jis egzistuoja.
Patikrinkite operaciją, atmetimą ir pasitraukimą
Prieš perdavimą išbandykite tris dalykus: leidžiama saugyklos operacija pavyksta, nesusijusi saugykla atmetama, o atšaukta tapatybė nepavyksta. Jei dizainas tik-VPN, patvirtinkite, kad senas tiesioginis viešas kelias nebegali atlikti operacijos.
Saugokite kodą ir peržiūros įrašus, bet neleiskite pamirštai prieigai tapti atkūrimo planu. Rašytinis tapatybių, vaidmenų ir galiojimo datų sąrašas yra tai, kas kitą rangovo prašymą paverčia pakartojamu procesu.