Topik temu duga representatif

Temu duga tingkah laku: Ceritakan tentang saat anda mengubah keputusan pelepasan kerana asal usul binaan (build provenance) tidak dapat disahkan

Tingkah lakuSederhana
Pasukan Editorial Offer.ccDiterbitkan Dikemas kini

Soalan

Ceritakan tentang masa apabila anda mendapati binaan lulus ujian tetapi asal usul atau tandatangan tidak dapat disahkan, dan anda telah mengubah keputusan pelepasan.

Soalan

Ceritakan tentang masa apabila anda mendapati binaan lulus ujian tetapi asal usul atau tandatangan tidak dapat disahkan, dan anda telah mengubah keputusan pelepasan. Penemu duga sedang menguji cara anda menilai bukti, mempengaruhi pasukan tanpa kuasa langsung, dan memulihkan penghantaran dengan selamat.

Konteks dan batasan

Gunakan pelepasan sebenar, peningkatan kebergantungan, atau semakan rantaian bekalan. Terangkan bukti yang wujud, perkara yang tidak diketahui, betapa singkatnya tempoh pelepasan, dan kuasa yang anda miliki. Jangan samakan ketiadaan tandatangan dengan kod berniat jahat, dan jangan kemukakan bukti yang ditambah kemudian seolah-olah ia telah wujud pada masa itu.

Perkara yang diuji oleh penemu duga

Kemahiran teras ialah penilaian bukti dan komunikasi risiko: bezakan "binaan berjaya" daripada "binaan datang melalui proses yang dibenarkan," kemudian tentukan gate menggunakan digest yang boleh disahkan, tandatangan, identiti dan cap masa. GitHub mendokumenkan artifact attestations sebagai cara untuk menetapkan tempat dan cara perisian dibina, dengan pengesahan kriptografi bagi tandatangan dan identiti penandatangan; Google SRE menekankan rekod keputusan berasaskan fakta dan kerja susulan yang menambah baik sistem.

Jelaskan perkara ini terlebih dahulu:

  • Adakah pelepasan itu perkhidmatan dalaman, pakej yang boleh dimuat turun pelanggan, atau imej kontena?
  • Adakah jurang itu melibatkan tandatangan, identiti binaan, pautan sumber, SBOM, atau ikatan antara bukti-bukti tersebut?
  • Siapa yang boleh meluluskan pelepasan, tindakan mana yang boleh diundur (reversible), dan bilakah keputusan perlu dibuat?
  • Bolehkah anda mengehadkan skop, mengekalkan versi terdahulu, atau menghasilkan binaan semula yang boleh diaudit terlebih dahulu?

Jawapan 30 saat

Gunakan STAR-L: Situasi menyatakan matlamat pelepasan dan jurang bukti; Tugas menamakan hasil pengguna atau pematuhan yang anda lindungi; Tindakan menerangkan cara anda menyemak digest, tandatangan dan identiti aliran kerja, mencadangkan gate berperingkat, serta menyelaraskan pengumpulan bukti; Keputusan memberikan kelewatan, skop dan perubahan risiko; Pembelajaran menerangkan cara semakan bukti baharu dimasukkan ke dalam saluran paip (pipeline).

Panduan mendalam langkah demi langkah

  1. Bekukan kesimpulan: rekod digest artifak calon, keputusan ujian, aliran kerja binaan, dan bukti sedia ada, dengan mengasingkan fakta daripada hipotesis.
  2. Tentukan bukti minimum: digest mesti sepadan dengan objek pelepasan, dan bukti mesti mengikat repositori, komit, aliran kerja, dan identiti penandatangan; tandakan kes sebagai Tidak Diketahui apabila mana-mana pautan hilang.
  3. Tawarkan pilihan berperingkat: sekat artifak berisiko tinggi; untuk artifak berisiko rendah kekalkan versi lama atau gunakan canary dalaman kecil, tanpa memintas rekod audit.
  4. Sahkan bersama: kongsi satu senarai semak bukti dengan pemilik binaan, pelepasan, keselamatan dan perniagaan, dengan menetapkan pemilik dan tarikh akhir bagi setiap item.
  5. Pulihkan dan jejak: lepaskan hanya artifak yang sepadan dengan digest selepas pengesahan, rekodkan sebab pengecualian, pelulus dan tindakan susulan.

Contoh jawapan

"Satu pembetulan segera telah lulus setiap ujian, tetapi sistem pelepasan tidak dapat mengambil tandatangan yang terikat pada SHA komit. Saya merekodkan digest imej, keputusan ujian dan log binaan terlebih dahulu, mengesahkan bahawa masalahnya ialah bukti yang hilang dan bukannya ketidakpadanan digest. Oleh kerana versi tersebut melibatkan pelanggan, saya mencadangkan untuk menjeda pelepasan luaran sambil mengekalkan versi lama dan mencipta canary dalaman. Saya bekerjasama dengan pasukan binaan untuk menambah identiti aliran kerja dan menandatangani, meminta bahagian keselamatan mengesahkan tandatangan dengan kelayakan bebas, dan bersetuju dengan masa pemulihan terkini bersama pemilik pelepasan. Pelepasan telah ditangguhkan selama 90 minit; canary dan rollback selesai seperti yang dirancang. Kami kemudiannya menjadikan pemadanan digest, pengesahan tandatangan dan kelulusan pengecualian sebagai gate wajib. Saya belajar untuk mengekod gate bukti sebagai semakan automatik sebelum krisis, meninggalkan pertimbangan manusia hanya untuk pengecualian yang didokumenkan."

Kesilapan biasa

  • Menganggap suite ujian yang hijau (lulus) sebagai bukti yang mencukupi untuk punca yang dipercayai.
  • Mengatakan "tambah tandatangan" tanpa menerangkan apa yang diikatnya, siapa yang menandatangani, atau cara ia disahkan.
  • Menggunakan risiko keselamatan untuk membatalkan matlamat perniagaan tanpa pilihan versi lama, canary, atau tarikh akhir.
  • Menggambarkan pasukan binaan sebagai penghalang dan bukannya menyelaraskan usaha pengesahan bersama.
  • Hanya melaporkan sama ada pelepasan berjaya, tanpa kos kelewatan, skop, atau gate susulan.

Jawapan yang mantap mempunyai garis masa berfakta, membezakan digest artifak, punca binaan dan identiti penandatangan, mencadangkan pilihan boleh undur yang dipadankan dengan risiko, menerangkan pengaruh tanpa kuasa, dan mengukur hasilnya. Jawapan yang lemah kekal pada tahap "meningkatkan keselamatan" atau menganggap intuisi peribadi sebagai bukti.

Soalan susulan dan jawapan

Bagaimana jika pemilik perniagaan meminta anda membuat penghantaran sekarang dan menambah bukti kemudian?

Sahkan sasaran pelepasan dan impak senario terburuk, kemudian cadangkan pilihan boleh undur seperti mengekalkan versi lama, canary dalaman, atau skop yang lebih sempit. Jika pengecualian masih diperlukan, rekodkan item yang belum disahkan, pelulus, tarikh akhir, dan syarat rollback; jangan labelkan pengecualian itu sebagai patuh.

Jika tandatangan sah tetapi komit berasal daripada repositori atau cawangan yang tidak diluluskan, bolehkah anda membuat penghantaran?

Bukan berdasarkan kesahan tandatangan semata-mata. Sahkan identiti penandatangan, repositori, komit, aliran kerja, dan persekitaran mengikut dasar; sebarang kegagalan ikatan akan dialihkan untuk semakan atau menyekat pelepasan.

Bagaimanakah anda menunjukkan bahawa gate baharu ini tidak menghasilkan masa menunggu yang tidak berkesudahan?

Sediakan semakan automatik, pemilik dan tarikh akhir bagi setiap item bukti. Jejak sekatan, purata masa pemulihan, dan kadar pengecualian; semak setiap pengecualian dan kurangkan masa menunggu manual dari semasa ke semasa.

Senarai semak temu duga

Pengajaran satu ayat

Tingkatkan taraf daripada "binaan telah lulus" kepada "artifak, asal usul, identiti dan keputusan boleh disahkan," kemudian gunakan pilihan boleh undur untuk mengimbangi penghantaran dan risiko.

Sumber awam

Soalan berkaitan