SSL Sertifikası

iOS Uygulama İmzalama

iOS uygulamaları Apple tarafından verilen sertifika ve provisioning profile ile imzalanır. Akışı ve sık hataları özetliyoruz.

iOS uygulamaları yalnızca Apple'ın kendi sertifika altyapısıyla imzalanır. Dışarıdan bir CA'dan alınan OV/EV kod imzalama sertifikası iOS paketlerinde kullanılamaz; imza sertifikası Apple Developer Program üyeliği üzerinden oluşturulur.

Temel bileşenler

  • Sertifika: Apple Development (test) ve Apple Distribution (yayın) türleri.
  • App ID / Bundle ID: uygulamanın benzersiz tanımlayıcısı.
  • Provisioning profile: sertifika, App ID, yetkiler ve (geliştirme için) cihaz listesini birbirine bağlar.

Adımlar

  1. Mac'te anahtar zinciri erişiminden veya Xcode'dan sertifika isteği (CSR) oluşturun.
  2. Developer portalında sertifikayı oluşturup indirin ve anahtar zincirine ekleyin.
  3. Uygun provisioning profile'ı oluşturun veya Xcode'un otomatik imzalamasını kullanın.
  4. Xcode'da Archive alıp App Store Connect'e yükleyin.

Komut satırından kontrol

security find-identity -v -p codesigning
codesign -dv --verbose=4 Uygulama.app
security cms -D -i embedded.mobileprovision

İlk komut kullanılabilir imza kimliklerini listeler. Son komut profilin içeriğini gösterir.

Sık hatalar

  • "No signing certificate found": özel anahtar yüklü Mac'te değil; sertifikayı .p12 olarak dışa aktarıp diğer makineye alın.
  • Profilin süresi dolmuş veya sertifikayla eşleşmiyor.
  • Bundle ID ile profildeki App ID uyuşmuyor.

CI ortamında imzalama

Otomatik derleme makinesinde sertifikayı geçici bir anahtar zincirine aktarıp iş bitince silmek yaygın yaklaşımdır. .p12 dosyası ve parolası gizli değişken olarak saklanmalı, günlüklere yazılmamalıdır. Sertifikalar ve profillerin son kullanma tarihini takvime ekleyin; süresi dolan bir profil, yayın günü derlemenin başarısız olmasına neden olabilir.

CI ortamında .p12 dosyasını ve parolasını gizli değişkenlerde tutun. Masaüstü yazılımınız için Windows imzası gerekiyorsa kod imzalama sertifikalarına bakın; konuyla ilgili diğer yazılar bilgi bankasında.

Özet: iOS imzalama tamamen Apple'ın sertifika ve profil sistemi üzerinden yürür. Sertifika, profil ve Bundle ID üçlüsünün uyumu sağlandığında imzalama hatalarının büyük kısmı ortadan kalkar.

Bu makale faydalı oldu mu?

Bu konuyla ilgili SSL sertifikaları

Makalede geçen sertifika türlerine uygun ürünler.

Makale Ara

Kod İmzalama Sertifikaları

Yardıma mı İhtiyacınız Var?

Aradığınızı bulamadıysanız destek ekibimiz size yardımcı olabilir.

Destek Talebi Aç