Mengapa VPN sumber terbuka ditolak dalam pengadaan
Peninjau yang menolak sumber terbuka biasanya melindungi sebuah persyaratan, bukan selera lisensi. Tanyakan yang mana, lalu hasilkan artefak yang menjawabnya.
Penolakan yang menyebut sumber terbuka jarang bergantung pada lisensi. Peninjau biasanya melindungi sebuah persyaratan: bahwa seseorang memelihara rilis yang diterapkan, bahwa build yang terpasang dapat diidentifikasi, bahwa penilaian mencakup apa yang dihubungkan, atau bahwa koneksi dapat dicabut. Perdebatan berikutnya biasanya menjawab pertanyaan yang tidak diajukan siapa pun.
Tanyakan persyaratan mana yang berlaku sebelum membela lisensi. Jawabannya menentukan dokumen mana yang Anda butuhkan.
Label bukan persyaratannya
Kode sumber yang dapat dibaca berarti implementasi yang diterbitkan dapat diperiksa. Itu tidak berarti seseorang telah memeriksanya, bahwa build di gateway sama dengan yang diterbitkan, atau bahwa pemelihara berutang perbaikan pada penerapan Anda. Masing-masing adalah klaim terpisah dengan pemilik terpisah, dan peninjau yang membutuhkan salah satunya tidak akan puas dengan yang lain. Menyebut klaim itu dengan lantang biasanya cukup untuk mengubah percakapan.
Kesalahan sebaliknya sama umumnya. Lisensi komersial tidak membuktikan bahwa dukungan mencakup fitur yang Anda andalkan, bahwa penilaian memeriksa komponen yang Anda terapkan, atau bahwa vendor akan mengirim perbaikan dalam jendela pemeliharaan Anda. Lisensi menjelaskan syarat distribusi, sedangkan keputusan pengadaan menyangkut ketergantungan. Bagaimanapun, lisensi adalah bagian paling tidak informatif dari jawaban.
Pisahkan juga klien dan layanan. Audit klien desktop tidak mengatakan apa pun tentang konfigurasi gateway mitra, penyedia identitasnya, atau cara operatornya menangani penghapusan akun. Bukti apa pun yang Anda kumpulkan harus sesuai dengan batas yang diminta untuk dipercaya oleh mitra.
Ubah kekhawatiran menjadi artefak
Minta penyetuju menyatakan persyaratan dalam satu kalimat, lalu sebutkan artefak yang akan memenuhinya. Penenangan yang samar adalah yang mengubah percakapan ini menjadi debat tentang ideologi.
| What the reviewer is protecting | Artifact that answers it | Who can sign it |
|---|---|---|
| The deployed release keeps getting fixes | Named maintainer, supported version list and the cadence for security releases | The operating team, with the maintainer's published policy attached |
| The build is the one that was reviewed | Package source, version string and the checksum or signature you verify at install | The team that builds or vendors the package |
| An assessment covers the right scope | Component and version assessed, findings raised, corrections made, retest date | Whoever performed the assessment |
| The access can be withdrawn | Identities granted, resources reachable, and the tested removal procedure | The service owner on the partner side |
NIST Secure Software Development Framework berguna di sini karena satu alasan sempit: ini membingkai percakapan pengadaan di sekitar kosakata bersama tentang praktik dan komunikasi pemasok. Itu mendukung permintaan bukti yang jelas alih-alih berdebat tentang label, dan ini bukan sertifikasi yang dilalui VPN tertentu.
Perhatikan apa yang dilakukan kolom tengah. Setiap baris meminta dokumen yang ada atau tidak ada, yang mengubah pendapat menjadi hasil yang dapat dihasilkan atau ditolak seseorang.
Pisahkan klien dari layanan
Kontrak dukungan untuk aplikasi klien bukan komitmen tentang server yang dijangkau lalu lintas Anda. Sebelum menyajikan bukti, tandai bagian mana dari jalur yang dioperasikan mitra dan bagian mana yang Anda operasikan atas namanya. Mencampur keduanya menghasilkan paket dokumen yang tampak menyeluruh dan tidak menjawab apa pun.
Jika penerapan itu milik Anda, mitra mungkin hanya perlu memercayai sebuah identitas dan aturan akses, yang merupakan permintaan jauh lebih kecil daripada memercayai seluruh rantai pasok perangkat lunak Anda. Jika penerapan itu miliknya, klien yang Anda sukai mungkin tidak relevan dan konfigurasi gateway menjadi pokoknya. Menentukan kasus mana yang Anda hadapi sebelum rapat kedua menghemat satu siklus tinjauan.
Lalu periksa pertanyaan operasional yang sebenarnya membuat tinjauan gagal: siapa yang menghapus akun, seberapa cepat, dan bukti apa yang ada sesudahnya. Penilaian yang didokumentasikan dengan indah tanpa prosedur penghapusan tetap merupakan temuan terbuka.
Akhiri dengan keputusan, bukan perdebatan
Akhiri pertukaran dengan hasil tertulis: versi yang diterima, kontrol yang melekat padanya, operator yang disebutkan, bukti yang masih kurang, dan tanggal jatuh temponya. Apa pun yang belum terselesaikan harus dicatat sebagai syarat, bukan diserap ke dalam pernyataan persetujuan umum.
Jika kebijakan menyebut produk yang disetujui secara spesifik, gunakan jalur pengecualian alih-alih membangun pengaturan paralel yang tidak diotorisasi siapa pun. Argumen teknis yang meyakinkan tidak memberikan izin, dan penerapan tidak resmi adalah temuan yang menunggu untuk ditemukan.
Jika sebuah persyaratan benar-benar tidak dapat dipenuhi, beralihlah ke alternatif yang disetujui dan katakan mengapa. Tujuan latihan ini adalah menetapkan apa yang dapat diandalkan organisasi, dan tidak yang jelas adalah hasil yang lebih baik daripada persetujuan yang tidak dapat dipertahankan siapa pun nanti.