Kod İmzalama Sertifikaları Artık Çok Daha Uygun! — EV ve OV Kod İmzalama sertifikalarında özel kampanya fiyatları!
Anasayfa İletişim
Platform Rehberleri

macOS Uygulama İmzalama ve Notarization İşlemi

macOS uygulamalarınızı Apple Developer sertifikası ile imzalama ve Apple Notarization servisinden geçirme rehberi.

14 dk okuma

macOS Gatekeeper ve Zorunlu İmzalama

Apple'ın Gatekeeper güvenlik teknolojisi, macOS Catalina ve sonraki sürümlerde tüm dağıtılan yazılımların imzalanmış ve notarize edilmiş olmasını gerektirir. İmzasız uygulamalar çalıştırılamaz veya kullanıcı ciddi uyarılarla karşılaşır.

Apple Developer Sertifikası Türleri

  • Developer ID Application: Mac App Store dışında dağıtılan uygulamalar için
  • Developer ID Installer: Yükleyici paketleri (.pkg) için
  • Mac App Distribution: Mac App Store'a gönderilen uygulamalar için

Codesign ile İmzalama

macOS'ta uygulama imzalama codesign komutu ile yapılır:

codesign --deep --force --verify --verbose --sign "Developer ID Application: Sirket Adi (TEAMID)" uygulama.app --options runtime

Framework ve Dylib İmzalama

Uygulamanızın içerdiği tüm framework, dylib ve plugin dosyaları da ayrıca imzalanmalıdır. --deep parametresi bu işlemi otomatik yapar ancak büyük projelerde her bileşeni ayrı imzalamak daha güvenilirdir.

Notarization İşlemi

İmzalama sonrası uygulamanızı Apple'ın Notary Service'ine göndermeniz gerekir:

# ZIP olarak paketleme
ditto -c -k --keepParent uygulama.app uygulama.zip

# Notarization gönderimi
xcrun notarytool submit uygulama.zip --apple-id "email@sirket.com" --team-id TEAMID --password "app-specific-password" --wait

Notarization başarılı olduğunda:

# Staple işlemi - notarization biletini uygulamaya ekle
xcrun stapler staple uygulama.app

Hardened Runtime

macOS 10.14.5+ için hardened runtime etkinleştirilmesi zorunludur. Bu, uygulamanızın belirli güvenlik kısıtlamalarına uymasını sağlar. Gerekli entitlements dosyası ile yapılandırılır.

CI/CD ile Otomatik İmzalama

Xcode Cloud, GitHub Actions veya Jenkins kullanarak macOS build pipeline'ınızda otomatik imzalama ve notarization işlemi kurabilirsiniz. Sertifika ve profiller CI/CD ortamına güvenli şekilde aktarılmalıdır.

Bu yazıyı paylaş
Yazar

Ali Yiğit

Yorumlar

Henüz yorum yapılmamış. İlk yorumu siz yapın!

Yorum Yaz