Elle imzalama hatalara, gecikmelere ve anahtarın yanlış kişilerin elinde dolaşmasına açıktır. İmzalamayı derleme hattına taşımak tekrarlanabilir ve denetlenebilir bir süreç sağlar.
İmzalama adımını nereye koymalı?
- Derleme ve test: Kaynak koddan çıktı üretilir, testler geçer.
- İmzalama: İçerideki exe/dll dosyaları, ardından paket (msi, installer) imzalanır.
- Doğrulama: İmza ve zaman damgası otomatik denetlenir; başarısızsa hat durur.
- Yayın: Yalnızca imzalı ve doğrulanmış çıktı dağıtılır.
Anahtar güvenliği
Güncel kurallar gereği özel anahtarlar donanım korumalı ortamda tutulur. Fiziksel token CI ajanına takılamadığı için otomasyonda bulut HSM pratik çözümdür: USB token ve kargo gerektirmez, anahtar HSM'den ayrılmaz.
- API anahtarları ve kullanıcı bilgileri yalnızca platformun gizli değişken deposunda tutulmalıdır.
- İmzalama yetkisi sınırlı sayıda servis hesabına verilmelidir.
- Logların gizli değerleri maskelediğini kontrol edin.
Kötüye kullanımı önleme
- İmzalamayı yalnızca korumalı dal veya etiketlerde tetikleyin.
- Üretim imzası için elle onay kapısı ekleyin.
- Kim, ne zaman, hangi dosyayı imzaladı kayıtlarını saklayın.
- Kod incelemesinden geçmemiş değişikliklerin imzalanmasını engelleyin; imza "güvenilir" anlamına gelir.
Zaman damgası ve yeniden üretilebilirlik
Her imzada RFC 3161 zaman damgası kullanın; derleme ortamının sürümlerini sabitleyin.
Başlangıç için öneri
Önce tek bir ürünü elle doğrulanmış komutlarla imzalayın, ardından aynı komutları hatta taşıyın. Hat başarısız olursa imzasız çıktının yayımlanmaması için yayın adımını imzalama ve doğrulama adımlarına bağımlı yapın.
Sertifika düzeyi seçimi için kod imzalama, bulut HSM için Certum bulut kod imzalama sayfalarına bakabilirsiniz.