Git edistyneellä tasolla: monorepot, submoduulit ja työnkulut · Oppitunti

Git-tietoturva DevOpsissa: salaisuudet, allekirjoittaminen ja hookit

Opitte pitämään salaisuudet poissa Gitistä, varmistamaan tekijyyden allekirjoitetuilla commiteilla ja valvomaan käytäntöjä automaattisesti hookien avulla DevOps- ja automaatioputkissa.

Oppitunti 4/413 vaihetta

Git-tietoturva DevOpsissa: salaisuudet, allekirjoittaminen ja hookit on ilmainen Git edistyneellä tasolla: monorepot, submoduulit ja työnkulut-oppitunti CoddyKitissä. Tämä on oppitunti 4/4. Voit lukea koko oppitunnin alta ilmaiseksi ja harjoitella sen jälkeen käytännössä selaimessa sisäänrakennetulla koodieditorilla ja ympäri vuorokauden käytettävissä olevan tekoälytuutorin avulla. Oppitunti kuuluu Git edistyneellä tasolla: monorepot, submoduulit ja työnkulut-oppimispolkuun, ja edistymisesi synkronoituu verkon ja CoddyKit-sovelluksen välillä. Git edistyneellä tasolla: monorepot, submoduulit ja työnkulut-kurssilla on yhteensä 4 oppituntia.

Git on turvallisuuden hyökkäyspinta

DevOpsissa Git ohjaa käyttöönottoja. Siksi repositorio on turvallisuuden hyökkäyspinta: vuotanut salaisuus tai väärennetty commit voi vaarantaa tuotantoympäristön. Gitin suojaaminen on osa putken suojaamista.

Pidä salaisuudet poissa historiasta

Älä koskaan commitoi API-avaimia, tokeneita tai salasanoja. Kun salaisuus on päätynyt historiaan, se on käytännössä julkinen ikuisesti, vaikka poistaisit sen myöhemmin, koska vanha commit sisältää sen edelleen.

Käytä sen sijaan .gitignore-tiedostoa ja ympäristömuuttujia.

.env
*.pem
secrets/
config/credentials.json

Vuotaneiden salaisuuksien etsiminen

Automaattiset skannerit havaitsevat salaisuudet ennen niiden yhdistämistä. Ota sellainen käyttöön CI:ssä, jotta vuotanut token pysäyttää buildin.

gitleaks detect --source . --verbose

Jos salaisuus vuotaa

Jos salaisuus päätyy etärepositorioon, kaksi vaihetta ovat pakollisia:

  • Vaihda tunnistetieto heti — oleta, että se on vaarantunut
  • Poista se historiasta esimerkiksi työkalulla git filter-repo

Vaihtaminen on tärkeämpää kuin poistaminen.

git filter-repo --path config/credentials.json --invert-paths

Commitien allekirjoittaminen

Allekirjoitetut commitit todistavat, kuka on luonut ne. Automatisoiduissa ympäristöissä tämä estää toisena henkilönä esiintymisen ja antaa putkille mahdollisuuden luottaa commitin tekijätietoihin.

git config commit.gpgsign true
git commit -S -m 'Deploy config update'

Allekirjoitusten tarkistaminen

CI voi edellyttää, että jokainen suojatun haaran commit on allekirjoitettu ja varmennettu, ja hylätä allekirjoittamattomat tai tuntemattomalla avaimella allekirjoitetut commitit ennen käyttöönottoa.

git log --show-signature -1
git verify-commit HEAD

Asiakaspuolen hookit

Hookit suorittavat skriptejä Gitin elinkaaren tapahtumissa. pre-commit-hook voi estää salaisuuksien päätymisen committiin tai suorittaa linterit ennen commitin luomista.

#!/bin/sh
# .git/hooks/pre-commit
gitleaks protect --staged || exit 1

Palvelinpuolen hookit

Asiakaspuolen hookit voidaan ohittaa. Palvelinpuolen hookit (pre-receive) valvovat käytäntöjä keskitetysti ja hylkäävät vaatimustenvastaiset pushit kaikilta riippumatta heidän paikallisista asetuksistaan.

#!/bin/sh
# pre-receive: reject force pushes to main
while read old new ref; do
  if [ "$ref" = 'refs/heads/main' ]; then
    echo 'Direct pushes to main are blocked'; exit 1
  fi
done

Haarojen suojaus käytäntönä

Alustan haarojen suojaussäännöt täydentävät hookeja: edellytä katselmointeja, läpäistyjä CI-tarkistuksia ja allekirjoitettuja committeja ennen yhdistämistä. Alustalla valvottua käytäntöä ei voi ohittaa paikallisesti.

Automaation vähimmät oikeudet

Käyttöönotto-bottien tulee käyttää rajattuja, lyhytikäisiä tokeneita henkilökohtaisten tunnistetietojen sijaan. Myönnä vain työn tarvitsemat oikeudet ja vaihda tokenit säännöllisesti vahinkojen rajoittamiseksi.

Tarkastusjäljen tarkastaminen

Git-historia ja alustan lokit muodostavat tarkastusjäljen. Suojaa ne: estä historian uudelleenkirjoitus jaetuissa haaroissa ja tarkista, kenellä on ylläpitäjän oikeudet, jotta tieto julkaistusta sisällöstä säilyy luotettavana.

Pikatarkistus

Testaa, miten hyvin ymmärrät Gitin tietoturvan DevOpsissa.

Kertaus

Opit suojaamaan Gitiä DevOpsissa: pitämään salaisuudet poissa historiasta, etsimään niitä automaattisesti, vaihtamaan tunnistetiedot ja poistamaan ne sitten vuodon jälkeen, käyttämään allekirjoitettuja committeja, valvomaan käytäntöjä asiakas- ja palvelinpuolen hookeilla sekä haarojen suojauksella ja soveltamaan vähimpien oikeuksien periaatetta automaation tokeneihin.

Aloita maksutta

Opi Git edistyneellä tasolla: monorepot, submoduulit ja työnkulut tekoälytuutorin avulla — ilmaiseksi

Kirjoita ja suorita oikeaa koodia selaimessa, saa välitöntä apua tekoälytuutorilta ympäri vuorokauden ja jatka siitä, mihin jäit, verkossa tai sovelluksessa.

Kurssit
12
Oppitunnit
48

Usein kysytyt kysymykset

Onko oppitunti ”Git-tietoturva DevOpsissa: salaisuudet, allekirjoittaminen ja hookit” ilmainen?

Kyllä – oppitunnin ”Git-tietoturva DevOpsissa: salaisuudet, allekirjoittaminen ja hookit” koko tekstin voi lukea täällä verkossa ilmaiseksi. Jos haluat harjoitella interaktiivisesti sisäänrakennetulla koodieditorilla ja ympäri vuorokauden käytettävissä olevan tekoälytuutorin avulla sekä avata koko Git edistyneellä tasolla: monorepot, submoduulit ja työnkulut-kurssin, päivitä CoddyKit PROhon. Git edistyneellä tasolla: monorepot, submoduulit ja työnkulut-kurssilla on yhteensä 4 oppituntia.

Mitä opin oppitunnilla ”Git-tietoturva DevOpsissa: salaisuudet, allekirjoittaminen ja hookit”?

Opitte pitämään salaisuudet poissa Gitistä, varmistamaan tekijyyden allekirjoitetuilla commiteilla ja valvomaan käytäntöjä automaattisesti hookien avulla DevOps- ja automaatioputkissa. Harjoittelet Git edistyneellä tasolla: monorepot, submoduulit ja työnkulut-aihetta koodilla, jonka suoritat suoraan selaimessa. Ympäri vuorokauden käytettävissä oleva tekoälytuutori vastaa kysymyksiisi oppitunnin aikana.

Tarvitsenko kokemusta aloittaakseni Git edistyneellä tasolla: monorepot, submoduulit ja työnkulut-opiskelun?

Aiempi kokemus ei ole tarpeen. CoddyKitin Git edistyneellä tasolla: monorepot, submoduulit ja työnkulut-oppimispolku sopii vasta-alkajista edistyneisiin, joten voit aloittaa tästä tai alusta ja edetä omaan tahtiisi. Tämä on oppitunti 4/4.

Kuinka kauan ”Git-tietoturva DevOpsissa: salaisuudet, allekirjoittaminen ja hookit”-oppitunnin suorittaminen kestää?

Useimmat CoddyKitin oppitunnit kestävät noin 5–10 minuuttia. Jokainen oppitunti on lyhyt ja interaktiivinen, joten edistyt tasaisesti ja voit jatkaa siitä, mihin jäit – sekä verkossa että sovelluksessa.

Voinko kirjoittaa ja suorittaa koodia tällä Git edistyneellä tasolla: monorepot, submoduulit ja työnkulut-oppitunnilla?

Kyllä. Jokainen Git edistyneellä tasolla: monorepot, submoduulit ja työnkulut-oppitunti sisältää sisäänrakennetun koodieditorin, joten voit kirjoittaa ja suorittaa oikeaa koodia suoraan selaimessa ja saada välitöntä palautetta tekoälyltä – paikallista asennusta ei tarvita.

Kaikki tämän kurssin oppitunnit

  1. GitOps-periaatteet ja käyttöönotto
  2. Git-tehtävien automatisointi skripteillä
  3. Gitin integrointi CI/CD:hen
  4. Git-tietoturva DevOpsissa: salaisuudet, allekirjoittaminen ja hookit
← Takaisin: Git edistyneellä tasolla: monorepot, submoduulit ja työnkulut