Intune Uygulama Sarmalama Aracı ile iOS uygulamalarını uygulama koruma ilkeleri için hazırlama
Uygulamanın kodunu değiştirmeden şirket içi iOS uygulamaları için Intune uygulama koruma ilkelerini etkinleştirmek için iOS için Microsoft Intune Uygulama Sarmalama Aracı'nı kullanın.
Araç, bir uygulamanın çevresinde sarmalayıcı oluşturan bir macOS komut satırı uygulamasıdır. Bir uygulama işlendikten sonra uygulama koruma ilkelerini dağıtarak uygulamanın işlevselliğini değiştirebilirsiniz.
Aracı indirmek için bkz. GitHub'da iOS için Microsoft Intune Uygulama Sarmalama Aracı .
Not
Uygulamalarınızda Intune Uygulama Sarmalama Aracı'nı kullanırken sorun yaşıyorsanız GitHub'da yardım isteği gönderin.
Uygulama Sarmalama Aracı için genel önkoşullar
Uygulama Sarmalama Aracı'nı çalıştırmadan önce bazı genel önkoşulları yerine getirmeniz gerekir:
GitHub'dan iOS için Microsoft Intune Uygulama Sarmalama Aracı'nı indirin.
Xcode araç takımı sürüm 14.0 veya üzeri yüklü bir macOS bilgisayar.
Giriş iOS uygulaması, şirketiniz veya bağımsız bir yazılım satıcısı (ISV) tarafından geliştirilmeli ve imzalanmalıdır.
Giriş uygulaması dosyasının uzantısı .ipa veya .app olmalıdır.
Giriş uygulamasının iOS 14.0 veya üzeri için derlenmiş olması gerekir.
Giriş uygulaması şifrelenemez.
Giriş uygulamasının genişletilmiş dosya öznitelikleri olamaz.
Giriş uygulamasının, Intune Uygulama Sarmalama Aracı tarafından işlenmeden önce ayarlanmış yetkilendirmeleri olmalıdır. Yetkilendirmeler , uygulamaya normalde verilenlerin ötesinde daha fazla izin ve özellik sağlar. Yönergeler için bkz. Uygulama yetkilendirmelerini ayarlama .
- Sistem anahtar zincirinizde geçerli imzalama sertifikaları olduğundan emin olun. Uygulama kod imzalama sorunlarınız varsa çözmek için aşağıdaki adımları kullanın:
- Tüm ilgili sertifikalar için güven ayarlarını sıfırlama
- Ara sertifikaları sistem anahtar zincirine yükleme ve oturum açma anahtar zinciri
- tüm ilgili sertifikaları kaldırma ve yeniden yükleme
Uygulamanızı Microsoft Entra Id ile kaydetme
- Uygulamalarınızı Microsoft Entra Id ile kaydedin. Daha fazla bilgi için bkz. Microsoft kimlik platformuna uygulama kaydetme.
- Uygulama ayarlarınıza özel yeniden yönlendirme URL'sini ekleyin. Daha fazla bilgi için bkz . MSAL'yi yapılandırma.
- Uygulamanızın Intune MAM hizmetine erişmesini sağlayın. Daha fazla bilgi için bkz. Uygulamanızın Intune Mobil Uygulama Yönetimi hizmetine erişmesini sağlama.
- Yukarıdaki değişiklikler tamamlandıktan sonra Intune Uygulama Sarmalama aracının en son sürümünü çalıştırın. Uygulamalarınızı Microsoft Kimlik Doğrulama Kitaplığı (MSAL) için yapılandırma: Intune Uygulama Sarmalama Aracı ile komut satırı parametrelerine Microsoft Entra uygulama istemci kimliğini ekleyin. Daha fazla bilgi için bkz. Komut satırı parametreleri.
Not
ve -ar
parametreleri -ac
gerekli parametrelerdir. Her uygulama için bu parametrelerin benzersiz bir kümesi gerekir.
-aa
yalnızca tek kiracılı uygulamalar için gereklidir.
- Uygulamayı dağıtın.
Uygulama Sarmalama Aracı için Apple Geliştirici önkoşulları
Sarmalanmış uygulamaları yalnızca kuruluşunuzun kullanıcılarına dağıtmak için , Apple Geliştirici Kurumsal Programı'na ve Apple Geliştirici hesabınıza bağlı uygulama imzalamaya yönelik çeşitli varlıklara sahip bir hesaba ihtiyacınız vardır.
iOS uygulamalarını kuruluşunuzun kullanıcılarına dahili olarak dağıtma hakkında daha fazla bilgi edinmek için Apple Geliştirici Kurumsal Program Uygulamalarını Dağıtma resmi kılavuzunu okuyun.
Intune tarafından sarmalanan uygulamaları dağıtmak için aşağıdakilere ihtiyacınız olacaktır:
Apple Geliştirici Kurumsal Programı ile bir geliştirici hesabı.
Geçerli Takım Tanımlayıcısı ile şirket içi ve geçici dağıtım imzalama sertifikası.
- Intune Uygulama Sarmalama Aracı'na parametre olarak imzalama sertifikasının SHA1 karması gerekir.
Şirket içi dağıtım sağlama profili.
Apple Developer Enterprise hesabı oluşturma adımları
Sayfanın sağ üst kısmında Kaydet'e tıklayın.
Kaydetmeniz gerekenler denetim listesini okuyun. Sayfanın alt kısmındaki Kaydınızı Başlat'a tıklayın.
Kuruluşunuzun Apple Kimliği ile oturum açın. Yoksa Apple Kimliği Oluştur'a tıklayın.
Varlık Türünüzü seçin ve Devam'a tıklayın.
Formu kuruluşunuzun bilgileriyle doldurun. Devam'ı tıklatın. Bu noktada Apple, kuruluşunuzu kaydetme yetkinizin olduğunu doğrulamak için sizinle iletişim kurar.
Doğrulamadan sonra Lisansı Kabul Et'e tıklayın.
Lisans kabul ettikten sonra , programı satın alarak ve etkinleştirerek tamamlayın.
Ekip aracısıysanız (kuruluşunuz adına Apple Geliştirici Kurumsal Programı'na katılan kişi), ekip üyelerini davet ederek ve roller atayarak önce ekibinizi oluşturun. Ekibinizin nasıl yönetileceğini öğrenmek için Geliştirici Hesabı Ekibinizi Yönetme hakkındaki Apple belgelerini okuyun.
Apple imzalama sertifikası oluşturma adımları
Apple Geliştirici portalına gidin.
Sayfanın sağ üst kısmında Hesap'a tıklayın.
Kuruluş Apple kimliğiniz ile oturum açın.
Sertifikalar, Kimlikler & Profiller'e tıklayın.
iOS sertifikası eklemek için sağ üst köşedeki oturum açın.
Üretim altında şirket içi ve geçici sertifika oluşturmayı seçin.
Not
Uygulamayı dağıtmayı planlamıyorsanız ve yalnızca dahili olarak test etmek istiyorsanız, Üretim sertifikası yerine bir iOS Uygulama Geliştirme sertifikası kullanabilirsiniz. Geliştirme sertifikası kullanıyorsanız, mobil sağlama profilinin uygulamanın yükleneceği cihazlara başvurduğundan emin olun.
Sayfanın alt kısmındaki İleri'ye tıklayın.
macOS bilgisayarınızda AnahtarLık Erişimi uygulamasını kullanarak Sertifika İmzalama İsteği (CSR) oluşturma yönergelerini okuyun.
Sertifika İmzalama İsteği oluşturmak için yukarıdaki yönergeleri izleyin. macOS bilgisayarınızda AnahtarLık Erişimi uygulamasını başlatın.
Ekranın üst kısmındaki macOS menüsünde Anahtarlık Erişim > Sertifika Yardımcısı > Sertifika Yetkilisinden Sertifika İste'ye gidin.
CsR dosyası oluşturma hakkında yukarıdaki Apple geliştirici sitesindeki yönergeleri izleyin. CSR dosyasını macOS bilgisayarınıza kaydedin.
Apple geliştirici sitesine dönün. Devam'ı tıklatın. Ardından CSR dosyasını karşıya yükleyin.
Apple, imzalama sertifikanızı oluşturur. İndirin ve macOS bilgisayarınızda unutulmaz bir konuma kaydedin.
Sertifikayı anahtarlığa eklemek için indirdiğiniz sertifika dosyasına çift tıklayın.
Anahtarlık Erişimi'ni yeniden açın. Sağ üst arama çubuğunda adını arayarak sertifikanızı bulun. Menüyü açmak için öğeye sağ tıklayın ve Bilgi Al'a tıklayın. Örnek ekranlarda üretim sertifikası yerine geliştirme sertifikası kullanıyoruz.
Bilgilendirici bir pencere görüntülenir. Ekranı aşağı kaydırın ve Parmak İzleri etiketinin altına bakın. Sha1 dizesini (bulanık) kopyalayarak Uygulama Sarmalama Aracı için "-c" bağımsız değişkeni olarak kullanın.
In-House Dağıtım Sağlama profili oluşturma adımları
Apple Geliştirici hesabı portalına geri dönün ve kurumsal Apple kimliğiniz ile oturum açın.
Sertifikalar, Kimlikler & Profiller'e tıklayın.
iOS sağlama profili eklemek için sağ üst köşedeki oturum açın.
Dağıtım altında Bir Şirket İçi sağlama profili oluşturmayı seçin.
Devam'ı tıklatın. Önceden oluşturulan imzalama sertifikasını sağlama profiline bağladığından emin olun.
Profilinizi (.mobileprovision uzantısıyla) macOS bilgisayarınıza indirmek için adımları izleyin.
Dosyayı akılda kalıcı bir konuma kaydedin. Bu dosya Uygulama Sarmalama Aracı kullanılırken -p parametresi için kullanılır.
Uygulama Sarmalama Aracı'nı indirin
Uygulama Sarmalama Aracı dosyalarını GitHub'dan macOS bilgisayara indirin.
iOS.dmg için Microsoft Intune Uygulama Kısıtlamaları Paketleyicisi'ne çift tıklayın. Son Kullanıcı Lisans Sözleşmesi'ni (EULA) içeren bir pencere görüntülenir. Belgeyi dikkatle okuyun.
Paketi bilgisayarınıza bağlayan EULA'yı kabul etmek için Kabul Et'i seçin.
Uygulama Sarmalama Aracı'nı çalıştırma
Önemli
Intune, Intune Uygulama Sarmalama Aracı güncelleştirmelerini düzenli olarak yayımlar. Güncelleştirmeler için iOS için Intune Uygulama Sarmalama Aracı'nı düzenli olarak denetleyin ve uygulamalarınızın en son Uygulama Koruma İlkesi ayarlarını desteklediğinden emin olmak için yazılım geliştirme sürüm döngünüze dahil edin.
Terminali kullanma
macOS Terminali'ni açın ve aşağıdaki komutu çalıştırın:
/Volumes/IntuneMAMAppPackager/IntuneMAMPackager/Contents/MacOS/IntuneMAMPackager -i /<path of input app>/<app filename> -o /<path to output folder>/<app filename> -p /<path to provisioning profile> -c <SHA1 hash of the certificate> [-b [<output app build string>]] [-v] [-e] [-x /<array of extension provisioning profile paths>]
Not
Aşağıdaki tabloda gösterildiği gibi bazı parametreler isteğe bağlıdır.
Örnek: Aşağıdaki örnek komut, Uygulama Sarmalama Aracı'nı MyApp.ipa adlı uygulamada çalıştırır. İmzalama sertifikasının sağlama profili ve SHA-1 karması belirtilir ve sarmalanan uygulamayı imzalamak için kullanılır. Çıkış uygulaması (MyApp_Wrapped.ipa) oluşturulur ve Masaüstü klasörünüzde depolanır.
./IntuneMAMPackager/Contents/MacOS/IntuneMAMPackager -i ~/Desktop/MyApp.ipa -o ~/Desktop/MyApp_Wrapped.ipa -p ~/Desktop/My_Provisioning_Profile_.mobileprovision -c "12 A3 BC 45 D6 7E F8 90 1A 2B 3C DE F4 AB C5 D6 E7 89 0F AB" -v true
Komut satırı parametreleri
Uygulama Sarmalama Aracı ile aşağıdaki komut satırı parametrelerini kullanabilirsiniz:
Örnek: Aşağıdaki örnek komut, bir uygulamayı tek bir kiracı içinde kullanmak üzere sarmalarken gerekli komutları birleştiren Uygulama Sarmalama Aracı'nı çalıştırır.
./IntuneMAMPackager/Contents/MacOS/IntuneMAMPackager -i ~/Desktop/MyApp.ipa -o ~/Desktop/MyApp_Wrapped.ipa -p ~/Desktop/My_Provisioning_Profile_.mobileprovision -c "12 A3 BC 45 D6 7E F8 90 1A 2B 3C DE F4 AB C5 D6 E7 89 0F AB" -aa https://login.microsoftonline.com/<tenantID> -ac "Client ID of the input app if the app uses the Microsoft Authentication Library" -ar "Redirect/Reply URI of the input app if the app uses the Microsoft Authentication Library" -v true
Mülk | Nasıl kullanılır? |
---|---|
-ben |
<Path of the input native iOS application file> . Dosya adı .app veya .ipa ile bitmelidir. |
-o | <Path of the wrapped output application> |
-p | <Path of your provisioning profile for iOS apps> |
-c | <SHA1 hash of the signing certificate> |
-h | Uygulama Sarmalama Aracı için kullanılabilir komut satırı özellikleri hakkında ayrıntılı kullanım bilgilerini gösterir. |
-Ac |
<Client ID of the input app if the app uses the Microsoft Authentication Library> Bu, uygulamanızın Uygulama Kaydı dikey penceresindeki listesinde yer alan İstemci Kimliği alanındaki GUID'dir. |
-Ar |
<Redirect/Reply URI of the input app if the app uses the Microsoft Authentication Library> Bu, Uygulama Kaydınızda yapılandırılan Yeniden Yönlendirme URI'dir. Genellikle Microsoft Authenticator uygulamasının aracılı kimlik doğrulamasından sonra döndüreceği uygulamanın URL protokolü olur. |
-Acar | (Tek kiracılı uygulamalar için gereklidir) <Authority URI of the input app> örneğin https://login.microsoftonline.com/<tenantID>/ |
-v | (İsteğe bağlı) Konsola ayrıntılı iletilerin çıkışını alır. Hataların hatalarını ayıklamak için bu bayrağın kullanılması önerilir. |
-e | (İsteğe bağlı) Uygulama Sarmalama Aracı'nın uygulamayı işlerken eksik yetkilendirmeleri kaldırmasını sağlamak için bu bayrağı kullanın. Daha fazla ayrıntı için bkz. Uygulama yetkilendirmelerini ayarlama . |
-Xe | (İsteğe bağlı) Uygulamadaki iOS uzantıları ve bunları kullanmak için gereken yetkilendirmeler hakkındaki bilgileri yazdırır. Daha fazla ayrıntı için bkz. Uygulama yetkilendirmelerini ayarlama . |
-x | (İsteğe bağlı) <An array of paths to extension provisioning profiles> . Uygulamanızın uzantı sağlama profillerine ihtiyacı varsa bunu kullanın. |
-b | (İsteğe bağlı) Sarmalanan çıkış uygulamasının giriş uygulamasıyla aynı paket sürümüne sahip olmasını istiyorsanız bağımsız değişken olmadan -b kullanın (önerilmez). Sarmalanan uygulamanın özel bir CFBundleVersion'a sahip olmasını istiyorsanız kullanın -b <custom bundle version> . Özel bir CFBundleVersion belirtmeyi seçerseniz, yerel uygulamanın CFBundleVersion değerini 1.0.0 -> 1.0.1 gibi en az önemli bileşene kadar artırmak iyi bir fikirdir. |
-f | (İsteğe bağlı) <Path to a plist file specifying arguments.> -i, -o ve - p gibi IntuneMAMPackager özelliklerinin geri kalanını belirtmek için plist şablonunu kullanmayı seçerseniz plist dosyasının önünde bu bayrağı kullanın. Bkz. Bağımsız değişkenleri giriş yapmak için plist kullanma. |
-Dt | (İsteğe bağlı) Microsoft Intune istemci telemetrisi koleksiyonunu devre dışı bırakın. |
-Dl | (İsteğe bağlı) MSAL ile tümleştirilmiş uygulamalar için INtune günlüklerinden MSAL günlüklerini devre dışı bırakın ve kendi MSAL günlük geri çağırmasını uygulayın. |
Bağımsız değişkenleri giriş yapmak için plist kullanma
Uygulama Sarmalama Aracı'nı çalıştırmanın kolay bir yolu, tüm komut bağımsız değişkenlerini bir plist dosyasına yerleştirmektir. Plist, komut satırı bağımsız değişkenlerinizi form arabirimi kullanarak giriş yapmak için kullanabileceğiniz XML'e benzer bir dosya biçimidir.
IntuneMAMPackager/Contents/MacOS klasöründe metin düzenleyicisi veya Xcode ile açın Parameters.plist
(boş bir plist şablonu). Aşağıdaki anahtarlar için bağımsız değişkenlerinizi girin:
Plist tuşu | Tür | Varsayılan Değer | Notlar |
---|---|---|---|
Giriş Uygulama Paketi Yolu | Dize | boş | -i ile aynı |
Çıkış Uygulama Paketi Yolu | Dize | boş | -o ile aynı |
Profil Yolu Sağlama | Dize | boş | -p ile aynı |
SHA-1 Sertifika Karması | Dize | boş | -c ile aynı |
MSAL Yetkilisi | Dize | boş | -aa ile aynı |
MSAL İstemci Kimliği | Dize | boş | -ac ile aynı |
MSAL Yanıt URI'si | Dize | boş | -ar ile aynı |
Ayrıntılı Etkin | Boole | false | -v ile aynı |
Eksik Yetkilendirmeleri Kaldır | Boole | false | -e ile aynı |
Varsayılan Derleme Güncelleştirmesini Engelle | Boole | false | Bağımsız değişkenler olmadan -b kullanmaya eşdeğer |
Derleme Dizesini Geçersiz Kılma | Dize | boş | Sarmalanan çıkış uygulamasının özel CFBundleVersion |
Uzantı Sağlama Profili Yolları | Dize dizisi | boş | Uygulama için bir uzantı sağlama profilleri dizisi. |
Telemetriyi Devre Dışı Bırak | Boole | false | -dt ile aynı |
MSAL Günlüğünü Geçersiz Kılmayı Devre Dışı Bırak | Boole | false | -dl ile aynı |
IntuneMAMPackager'ı tek bağımsız değişken olarak plist ile çalıştırın:
./IntuneMAMPackager –f Parameters.plist
Sarmalama sonrası
Sarmalama işlemi tamamlandıktan sonra "Uygulama başarıyla sarmalandı" iletisi görüntülenir. Bir hata oluşursa yardım için hata iletileri bölümüne bakın.
Sarmalanan uygulama daha önce belirttiğiniz çıkış klasörüne kaydedilir. Uygulamayı Intune yönetim merkezine yükleyebilir ve bir mobil uygulama yönetimi ilkesiyle ilişkilendirebilirsiniz.
Önemli
Sarmalanmış bir uygulamayı karşıya yüklerken, eski bir (sarmalanmış veya yerel) sürüm Intune'a zaten dağıtılmışsa uygulamanın eski bir sürümünü güncelleştirmeyi deneyebilirsiniz. Bir hatayla karşılaşırsanız uygulamayı yeni bir uygulama olarak karşıya yükleyin ve eski sürümü silin.
Artık uygulamayı kullanıcı gruplarınıza, hedef uygulama koruma ilkelerini de uygulamaya dağıtabilirsiniz. Uygulama, belirttiğiniz uygulama koruma ilkelerini kullanarak cihazda çalışır.
Intune Uygulama Sarmalama Aracı ile iOS uygulamamı ne sıklıkta yeniden yazmam gerekir?
Uygulamalarınızı yeniden yazmanız gereken ana senaryolar şunlardır:
- Uygulamanın kendisi yeni bir sürüm yayımladı. Uygulamanın önceki sürümü kaydırıldı ve Intune yönetim merkezine yüklendi.
- iOS için Intune Uygulama Sarmalama Aracı, önemli hata düzeltmelerini veya yeni, belirli Intune uygulama koruma ilkesi özelliklerini etkinleştiren yeni bir sürüm yayımladı. Bu durum , iOS için Microsoft Intune Uygulama Sarmalama Aracı için GitHub deposunda 6-8 hafta geçtikten sonra gerçekleşir.
iOS/iPadOS için, uygulamayı imzalamak için kullanılan özgün sertifika/sağlama profilinden farklı bir sertifika/sağlama profiliyle sarmalama mümkün olsa da, uygulamada belirtilen yetkilendirmeler yeni sağlama profiline dahil değilse sarmalama başarısız olur. Uygulamadan eksik yetkilendirmeleri kaldıran "-e" komut satırı seçeneğinin kullanılması, sarmalamanın bu senaryoda başarısız olmaması için zorlanması uygulamada işlevselliğin bozulmasına neden olabilir.
Yeniden yazma için en iyi uygulamalardan bazıları şunlardır:
- Farklı bir sağlama profilinin önceki herhangi bir sağlama profili gibi gerekli tüm yetkilendirmelere sahip olduğundan emin olmak.
Hata iletileri ve günlük dosyaları
Uygulama sarmalama aracıyla ilgili sorunları gidermek için aşağıdaki bilgileri kullanın.
Yaygın hata iletileri
Uygulama sarmalama aracı başarıyla tamamlanamazsa, konsolda aşağıdaki hata iletilerinden biri görüntülenir:
Hata iletisi | Daha fazla bilgi |
---|---|
Geçerli bir iOS sağlama profili belirtmeniz gerekir. | Sağlama profiliniz geçerli olmayabilir. Cihazlar için doğru izinlere sahip olduğunuzdan ve profilinizin geliştirme veya dağıtımı doğru şekilde hedeflediğinden emin olun. Sağlama profilinizin süresi de dolmuş olabilir. |
Geçerli bir giriş uygulaması adı belirtin. | Belirttiğiniz giriş uygulaması adının doğru olduğundan emin olun. |
Çıkış uygulaması için geçerli bir yol belirtin. | Belirttiğiniz çıkış uygulamasının yolunun var olduğundan ve doğru olduğundan emin olun. |
Geçerli bir giriş sağlama profili belirtin. | Geçerli bir sağlama profili adı ve uzantısı sağladığınıza emin olun. Sağlama profilinizde eksik yetkilendirmeler olabilir veya –p komut satırı seçeneğini eklememiş olabilirsiniz. |
Belirttiğiniz giriş uygulaması bulunamadı. Geçerli bir giriş uygulaması adı ve yolu belirtin. | Giriş uygulama yolunuzun geçerli olduğundan ve mevcut olduğundan emin olun. Giriş uygulamasının bu konumda bulunduğundan emin olun. |
Belirttiğiniz giriş sağlama profili dosyası bulunamadı. Geçerli bir giriş sağlama profili dosyası belirtin. | Giriş sağlama dosyasının yolunun geçerli olduğundan ve belirttiğiniz dosyanın var olduğundan emin olun. |
Belirttiğiniz çıkış uygulaması klasörü bulunamadı. Çıkış uygulaması için geçerli bir yol belirtin. | Belirttiğiniz çıkış yolunun geçerli olduğundan ve mevcut olduğundan emin olun. |
Çıkış uygulamasında .ipa uzantısı yoktur. | Yalnızca .app ve .ipa uzantılarına sahip uygulamalar Uygulama Sarmalama Aracı tarafından kabul edilir. Çıkış dosyanızın geçerli bir uzantısı olduğundan emin olun. |
Geçersiz bir imzalama sertifikası belirtildi. Geçerli bir Apple imzalama sertifikası belirtin. | Apple geliştirici portalından doğru imzalama sertifikasını indirdiğinizden emin olun. Sertifikanızın süresi dolmuş veya ortak veya özel anahtar eksik olabilir. Apple sertifikanız ve sağlama profiliniz Xcode'da bir uygulamayı doğru şekilde imzalamak için kullanılabiliyorsa Uygulama Sarmalama Aracı için geçerlidir. Ayrıca, imzalama sertifikasının konak macOS makinesinin anahtar zincirinde benzersiz bir ada sahip olduğunu doğrulayın. Anahtarlık içinde aynı sertifikanın birden çok sürümü varsa bu hata döndürülebilir. |
Belirttiğiniz giriş uygulaması geçersiz. Geçerli bir uygulama belirtin. | .app veya .ipa dosyası olarak derlenmiş geçerli bir iOS uygulamanız olduğundan emin olun. |
Belirttiğiniz giriş uygulaması şifrelenir. Geçerli bir şifrelenmemiş uygulama belirtin. | Uygulama Sarmalama Aracı şifrelenmiş uygulamaları desteklemez. Şifrelenmemiş bir uygulama sağlayın. |
Belirttiğiniz giriş uygulaması, Konumdan Bağımsız Yürütülebilir (PIE) biçiminde değil. PIE biçiminde geçerli bir uygulama belirtin. | Konum Bağımsız Yürütülebilir (PIE) uygulamaları çalıştırıldığında rastgele bir bellek adresine yüklenebilir. Bunun güvenlik avantajları olabilir. Güvenlik avantajları hakkında daha fazla bilgi için Apple Geliştirici belgelerinize bakın. |
Belirttiğiniz giriş uygulaması zaten sarmalanmış. Geçerli bir sarmalanmamış uygulama belirtin. | Araç tarafından zaten işlenmiş bir uygulamayı işleyemezsiniz. Bir uygulamayı yeniden işlemek istiyorsanız, uygulamanın özgün sürümünü kullanarak aracı çalıştırın. |
Belirttiğiniz giriş uygulaması imzalı değil. Geçerli bir imzalı uygulama belirtin. | Uygulama sarmalama aracı, uygulamaların imzalı olmasını gerektirir. Sarmalanmış bir uygulamayı imzalamayı öğrenmek için geliştirici belgelerinize bakın. |
Belirttiğiniz giriş uygulaması .ipa veya .app biçiminde olmalıdır. | Uygulama sarmalama aracı tarafından yalnızca .app ve .ipa uzantıları kabul edilir. Giriş dosyanızın geçerli bir uzantısı olduğundan ve .app veya .ipa dosyası olarak derlendiğinden emin olun. |
Belirttiğiniz giriş uygulaması zaten sarmalanmış ve en son ilke şablonu sürümünde. | Uygulama Sarmalama Aracı, mevcut sarmalanmış bir uygulamayı en son ilke şablonu sürümüyle yeniden sarmalamaz. |
UYARI: SHA1 sertifika karması belirtmediyseniz. Dağıtmadan önce sarmalanan uygulamanızın imzalandığından emin olun. | –c komut satırı bayrağını izleyerek geçerli bir SHA1 karması belirttiğinizden emin olun. |
Cihazdan sarmalanmış uygulamalarınız için günlükleri toplama
Sorun giderme sırasında sarmalanan uygulamalarınız için günlükleri almak için aşağıdaki adımları kullanın.
- Cihazınızdaki iOS Ayarları uygulamasına gidin ve LOB uygulamanızı seçin.
- Microsoft Intune'u seçin.
- Tanılama Konsolunu Görüntüle ayarını Açık olarak değiştirin.
- LOB uygulamanızı başlatın.
- "Başlarken" bağlantısına tıklayın.
- Artık günlükleri doğrudan Microsoft'a gönderebilir veya cihazdaki başka bir uygulama aracılığıyla paylaşabilirsiniz.
Not
Günlük işlevi, Intune Uygulama Sarmalama Aracı sürüm 7.1.13 veya üzeri ile sarmalanmış uygulamalar için etkinleştirilir.
Sistemden kilitlenme günlüklerini toplama
Uygulamanız yararlı bilgileri iOS istemci cihaz konsoluna günlüğe kaydedilebilir. Bu bilgiler, uygulamayla ilgili sorun yaşıyorsanız ve sorunun Uygulama Sarmalama Aracıyla mı yoksa uygulamanın kendisiyle mi ilgili olduğunu belirlemeniz gerektiğinde yararlıdır. Bu bilgileri almak için aşağıdaki adımları kullanın:
Uygulamayı çalıştırarak sorunu yeniden oluşturun.
Apple'ın Dağıtılan iOS Uygulamalarında Hata Ayıklama yönergelerini izleyerek konsol çıkışını toplayın.
Sarmalanan uygulamalar ayrıca kullanıcılara uygulama kilitlendikten sonra günlükleri doğrudan cihazdan e-postayla gönderme seçeneği sunar. Kullanıcılar gerekirse günlükleri incelemeniz ve Microsoft'a iletmeniz için size gönderebilir.
Sertifika, sağlama profili ve kimlik doğrulama gereksinimleri
iOS için Uygulama Sarmalama Aracı,tam işlevselliği garanti etmek için karşılanması gereken bazı gereksinimlere sahiptir.
Gereksinim | Ayrıntılar |
---|---|
iOS sağlama profili | Eklemeden önce sağlama profilinin geçerli olduğundan emin olun. Uygulama Sarmalama Aracı, bir iOS uygulamasını işlerken sağlama profilinin süresinin dolup dolmadığını denetlemez. Süresi dolmuş bir sağlama profili belirtilirse, uygulama sarmalama aracı süresi dolan sağlama profilini içerir ve uygulama bir iOS cihazına yükleninceye kadar bir sorun olduğunu bilmezsiniz. |
iOS imzalama sertifikası | İmzalama sertifikasını belirtmeden önce geçerli olduğundan emin olun. Araç, iOS uygulamalarını işlerken sertifikanın süresinin dolup dolmadığını denetlemez. Süresi dolmuş bir sertifikanın karması sağlanırsa araç uygulamayı işler ve imzalar, ancak cihazlara yüklenemiyor. Sarmalanan uygulamayı imzalamak için sağlanan sertifikanın sağlama profilinde bir eşleşme olduğundan emin olun. Araç, sağlama profilinin sarmalanan uygulamayı imzalamak için sağlanan sertifikayla eşleşip eşleşmediğini doğrulamaz. |
Kimlik Doğrulama | Şifrelemenin çalışması için bir cihazın PIN'i olmalıdır. Sarmalanmış bir uygulamayı dağıtmış olduğunuz cihazlarda, cihazdaki durum çubuğuna dokunarak kullanıcının iş veya okul hesabıyla yeniden oturum açması gerekir. Sarmalanan bir uygulamadaki varsayılan ilke , yeniden başlatıldığı zaman kimlik doğrulamasıdır. iOS, uygulamadan çıkıp yeniden başlatarak tüm dış bildirimleri (telefon araması gibi) işler. |
Uygulama yetkilendirmelerini ayarlama
Uygulamanızı sarmalamadan önce, uygulamaya bir uygulamanın normalde yapabileceklerini aşan ek izinler ve yetenekler verme yetkisi verebilirsiniz. Uygulamanızda özel izinler belirtmek için kod imzalama sırasında bir yetkilendirme dosyası kullanılır (örneğin, paylaşılan anahtar zincirine erişim). Özellik olarak adlandırılan belirli uygulama hizmetleri, uygulama geliştirme sırasında Xcode içinde etkinleştirilir. Etkinleştirildikten sonra özellikler yetkilendirme dosyanıza yansıtılır. Yetkilendirmeler ve özellikler hakkında daha fazla bilgi için bkz. iOS Geliştirici Kitaplığı'nda Özellik Ekleme . Desteklenen özelliklerin tam listesi için bkz . Desteklenen özellikler.
iOS için Uygulama Sarmalama Aracı için desteklenen özellikler
Özellik | Açıklama | Önerilen kılavuz |
---|---|---|
Uygulama grupları | Birden çok uygulamanın paylaşılan kapsayıcılara erişmesine ve uygulamalar arasında ek işlemler arası iletişime izin vermek için uygulama gruplarını kullanın. Uygulama gruplarını etkinleştirmek için Özellikler bölmesini açın ve Uygulama Grupları'ndaAÇIK'a tıklayın. Uygulama grupları ekleyebilir veya mevcut grupları seçebilirsiniz. |
Uygulama Gruplarını kullanırken ters DNS gösterimini kullanın: group.com.companyName.AppGroup |
Arka plan modları | Arka plan modlarını etkinleştirmek, iOS uygulamanızın arka planda çalışmaya devam etmesini sağlar. | |
Veri koruması | Veri koruması, iOS uygulamanız tarafından diskte depolanan dosyalara bir güvenlik düzeyi ekler. Veri koruma, dosyaları diskte şifrelenmiş bir biçimde depolamak için belirli cihazlarda bulunan yerleşik şifreleme donanımını kullanır. Veri korumasını kullanmak için uygulamanızın sağlanması gerekir. | |
Uygulama içi satın alma | Uygulama içi satın alma işlemi, mağazaya bağlanmanızı ve kullanıcıdan gelen ödemeleri güvenli bir şekilde işlemenizi sağlayarak mağazayı doğrudan uygulamanıza ekler. Gelişmiş işlevsellik veya uygulamanız tarafından kullanılabilir ek içerik için ödeme toplamak için uygulama içi satın alma özelliğini kullanabilirsiniz. | |
Anahtarlık paylaşımı | Anahtarlık paylaşımını etkinleştirmek, uygulamanızın anahtarlıktaki parolaları ekibiniz tarafından geliştirilen diğer uygulamalarla paylaşmasına olanak tanır. | Anahtarlık paylaşımını kullanırken ters DNS gösterimini kullanın: com.companyName.KeychainGroup |
Kişisel VPN | Uygulamanızın Ağ Uzantısı çerçevesini kullanarak özel bir sistem VPN yapılandırması oluşturmasına ve denetlemesine izin vermek için kişisel VPN'i etkinleştirin. | |
Anında iletme bildirimleri | Apple Anında İletme Bildirimi hizmeti (APN' ler), ön planda çalışmayan bir uygulamanın kullanıcıya, kullanıcıya bilgi içerdiğini bildirmesini sağlar. | Anında iletme bildirimlerinin çalışması için uygulamaya özgü bir sağlama profili kullanmanız gerekir. Apple geliştirici belgelerindeki adımları izleyin. |
Kablosuz aksesuar yapılandırması | Kablosuz aksesuar yapılandırmasının etkinleştirilmesi, Dış Donatı çerçevesini projenize ekler ve uygulamanızın MFi Wi-Fi donatıları ayarlamasına olanak tanır. |
Yetkilendirmeleri etkinleştirme adımları
Uygulamanızda özellikleri etkinleştirin:
a. Xcode'da uygulamanızın hedefine gidin ve Özellikler'e tıklayın.
b. Uygun özellikleri açın. Her özellik ve doğru değerlerin nasıl belirleneceği hakkında ayrıntılı bilgi için bkz. iOS Geliştirici Kitaplığı'nda Özellik Ekleme .
c. İşlem sırasında oluşturduğunuz tüm kimlikleri not edin. Bunlara değerler de denir
AppIdentifierPrefix
.d. Sarmalanacak uygulamanızı derleyin ve imzalayın.
Sağlama profilinizde yetkilendirmeleri etkinleştirin:
a. Apple Geliştirici Üye Merkezi'nde oturum açın.
b. Uygulamanız için bir sağlama profili oluşturun. Yönergeler için bkz. iOS için Intune Uygulama Sarmalama Aracı Önkoşullarını Alma.
c. Sağlama profilinizde, uygulamanızda sahip olduğunuz yetkilendirmelerin aynısını etkinleştirin. Uygulamanızın geliştirilmesi sırasında belirttiğiniz kimlikleri (
AppIdentifierPrefix
değerler) sağlamanız gerekir.d. Sağlama profili sihirbazını tamamlayın ve dosyanızı indirin.
Tüm önkoşulları karşıladığınızdan emin olun ve ardından uygulamayı sarmalayın.
Yetkilendirmelerle ilgili yaygın hataları giderme
iOS için Uygulama Sarmalama Aracı yetkilendirme hatası gösteriyorsa aşağıdaki sorun giderme adımlarını deneyin.
Sorun | Neden | Çözüm |
---|---|---|
Giriş uygulamasından oluşturulan yetkilendirmeler ayrıştırılamadı. | Uygulama Sarmalama Aracı, uygulamadan ayıklanan yetkilendirmeler dosyasını okuyamaz. Yetkilendirmeler dosyası yanlış biçimlendirilmiş olabilir. | Uygulamanızın yetkilendirmeler dosyasını inceleyin. Aşağıdaki yönergelerde bunun nasıl yapılacağı açıklanmaktadır. Yetkilendirmeler dosyasını incelerken, yanlış biçimlendirilmiş söz dizimini denetleyin. Dosya XML biçiminde olmalıdır. |
Sağlama profilinde yetkilendirmeler eksik (eksik yetkilendirmeler listelenir). Uygulamayı bu yetkilendirmelere sahip bir sağlama profiliyle yeniden paketleyin. | Sağlama profilinde etkinleştirilen yetkilendirmeler ile uygulamada etkinleştirilen özellikler arasında bir uyuşmazlık vardır. Bu uyuşmazlık, belirli özelliklerle (uygulama grupları ve anahtarlık erişimi gibi) ilişkili kimlikler için de geçerlidir. | Genel olarak, uygulamayla aynı özellikleri sağlayan yeni bir sağlama profili oluşturabilirsiniz. Profil ve uygulama arasındaki kimlikler eşleşmediğinde, mümkünse Uygulama Sarmalama Aracı kimliklerin yerini alır. Yeni bir sağlama profili oluşturduktan sonra da bu hatayı alıyorsanız, –e parametresini kullanarak uygulamadan yetkilendirmeleri kaldırmayı deneyebilirsiniz (bkz. Uygulamadan yetkilendirmeleri kaldırmak için –e parametresini kullanma bölümü). |
İmzalı bir uygulamanın mevcut yetkilendirmelerini bulma
İmzalı bir uygulamanın ve sağlama profilinin mevcut yetkilendirmelerini gözden geçirmek için:
.ipa dosyasını bulun ve uzantısını .zip olarak değiştirin.
.zip dosyasını genişletin. Bu, .app paketinizi içeren bir Payload klasörü oluşturur.
.app paketindeki yetkilendirmeleri denetlemek için birlikte tasarlama aracını kullanın; burada
YourApp.app
.app paketinizin gerçek adıdır.:codesign -d --entitlements :- "Payload/YourApp.app"
Uygulamanın ekli sağlama profilinin yetkilendirmelerini denetlemek için güvenlik aracını kullanın; burada
YourApp.app
.app paketinizin gerçek adıdır.security cms -D -i "Payload/YourApp.app/embedded.mobileprovision"
–e parametresini kullanarak uygulamadan yetkilendirmeleri kaldırma
Bu komut, uygulamadaki yetkilendirme dosyasında olmayan tüm etkin özellikleri kaldırır. Uygulama tarafından kullanılan özellikleri kaldırırsanız uygulamanızı bozabilir. Eksik özellikleri kaldırabileceğiniz bir örnek, varsayılan olarak tüm özelliklere sahip satıcı tarafından üretilen bir uygulamadadır.
./IntuneMAMPackager/Contents/MacOS/IntuneMAMPackager –i /<path of input app>/<app filename> -o /<path to output folder>/<app filename> –p /<path to provisioning profile> –c <SHA1 hash of the certificate> -e
Uygulama Sarmalama Aracı için güvenlik ve gizlilik
Uygulama Sarmalama Aracı'nı kullanırken aşağıdaki en iyi güvenlik ve gizlilik uygulamalarını kullanın.
İmzalama sertifikası, sağlama profili ve belirttiğiniz iş kolu uygulaması, uygulama sarmalama aracını çalıştırmak için kullandığınız macOS makinesinde olmalıdır. Dosyalar bir UNC yolundaysa, bunların macOS makinesinden erişilebilir olduğundan emin olun. Yol IPsec veya SMB imzalama yoluyla güvenli hale getirilmelidir.
Yönetim merkezine içeri aktarılan sarmalanmış uygulama, aracı çalıştırdığınız bilgisayarda olmalıdır. Dosya bir UNC yolundaysa, yönetim merkezini çalıştıran bilgisayarda erişilebilir olduğundan emin olun. Yol IPsec veya SMB imzalama yoluyla güvenli hale getirilmelidir.
Uygulama Sarmalama Aracı'nın GitHub deposundan indirildiği ortamın IPsec veya SMB imzalama yoluyla güvenliği sağlanmalıdır.
İşlediğiniz uygulamanın, saldırılara karşı koruma sağlamak için güvenilir bir kaynaktan gelmesi gerekir.
Özellikle uzak bir klasörse, Uygulama Sarmalama Aracı'nda belirttiğiniz çıkış klasörünün güvenliğinin sağlandığından emin olun.
Dosya karşıya yükleme iletişim kutusu içeren iOS uygulamaları, kullanıcıların uygulamaya uygulanan kısıtlamaları aşmasına, kesmesine, kopyalamasına ve yapıştırmasına olanak sağlayabilir. Örneğin, bir kullanıcı uygulama verilerinin ekran görüntüsünü karşıya yüklemek için dosya karşıya yükleme iletişim kutusunu kullanabilir.
Cihazınızdaki belgeler klasörünü sarmalanmış bir uygulama içinden izlediğinizde.msftintuneapplauncher adlı bir klasör görebilirsiniz. Bu dosyayı değiştirir veya silerseniz, kısıtlanmış uygulamaların doğru çalışmasını etkileyebilir.
Özel URL düzenlerinin kaydedilmesi belirli URL'lerin uygulamanıza yeniden yönlendirilmesini sağlar. iOS ve iPadOS, birden çok uygulamanın aynı özel URL düzenini kaydetmesine izin verir ve işletim sistemi hangi uygulamanın çağrıldığını belirler. Hatalı biçimlendirilmiş URL'leri işlemeye yönelik özel URL düzeni çakışmalarını ve güvenlik yönergelerini önlemeye yardımcı olacak öneriler için uygulamanız için özel bir URL şeması tanımlama apple belgelerine bakın.