Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
iOS için Microsoft Intune App Wrapping Tool'i kullanarak uygulamanın kodunu değiştirmeden şirket içi iOS uygulamalarına yönelik Intune uygulama koruma ilkelerini etkinleştirin.
Araç, bir uygulamanın etrafında bir sarmalayıcı oluşturan bir macOS komut satırı uygulamasıdır. Bir uygulama işlendikten sonra, uygulama koruma ilkelerini ona dağıtarak uygulamanın işlevselliğini değiştirebilirsiniz.
Aracı indirmek için GitHub'da iOS için Microsoft Intune App Wrapping Tool'e bakın.
Not
Uygulamalarınızla Intune App Wrapping Tool kullanırken sorun yaşıyorsanız GitHub'da yardım isteği gönderin.
App Wrapping Tool için genel önkoşullar
TApp Wrapping ToolApp Wrapping Tool'ı çalıştırmadan önce bazı genel ön koşulları yerine getirmeniz gerekir:
GitHub'dan iOS için Microsoft Intune App Wrapping Tool indirin.
Xcode araç seti sürüm 16.0 veya üzeri yüklü olan bir macOS bilgisayar.
Şirketiniz veya bağımsız bir yazılım satıcınız (ISV) giriş iOS uygulamasını geliştirmeli ve imzalamalıdır.
Dosyanın uzantısı .ipa veya .app olmalıdır.
iOS 16.0 veya üstü için derlenmiş olmalıdır.
şifrelenemez.
Genişletilmiş dosya özniteliği yok.
Uygulamayı Intune App Wrapping Tool ile işlemeden önce yetkilendirmeleri ayarlayın. Yetkilendirmeler, uygulamaya normalde verilen izinlerin ötesinde daha fazla izin ve olanak sağlar. Talimatlar için Uygulama yetkilendirmelerini ayarlama bölümüne bakın.
- Sistem anahtarlığınızda geçerli imzalama sertifikalarının bulunduğundan emin olun. Uygulama kodu 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
- Sistem anahtarlığına ve oturum açma anahtarlığına ara sertifikaları yükleme
- Tüm ilgili sertifikaları kaldırma ve yeniden yükleme
Uygulamanızı Microsoft Entra IDMicrosoft Entra ID ile kaydedin
- Uygulamalarınızı Microsoft Entra IDMicrosoft Entra ID ile kaydedin. Daha fazla bilgi için bkz. Serve an application with the Microsoft kimlik platformuMicrosoft kimlik platformu.
- Uygulama ayarlarınıza özel yönlendirme URL'sini ekleyin. Daha fazla bilgi için bkz.
- Uygulamanıza, IntuneIntune MAM hizmetine erişim izni verin. Daha fazla bilgi için Uygulamanıza Intune Mobil Uygulama Yönetimi hizmetine erişim izni verme bölümüne bakın.
- Yukarıdaki değişiklikler tamamlandıktan sonra, IntuneIntune App Wrapping aracının en son sürümünü çalıştırın. Microsoft Kimlik Doğrulama Kitaplığı (MSAL) için uygulamalarınızı yapılandırın: Microsoft Entra uygulaması istemci kimliğini Intune App Wrapping Tool ile komut satırı parametrelerine ekleyin. Daha fazla bilgi için bkz: Komut satırı parametreleri.
Not
Parametreler -ac ve -ar gerekli parametrelerdir. Her uygulamanın bu parametrelerin benzersiz bir kümesine ihtiyacı vardır.
-aa yalnızca tek kiracılı uygulamalar için gereklidir.
- Uygulamayı dağıtın.
App Wrapping Tool için Apple Geliştirici ön koşulları
Sarmalanan uygulamaları yalnızca kuruluşunuzun kullanıcılarına dağıtmak için Apple Developer Enterprise Program'da bir hesabınızın ve Apple Developer hesabınıza bağlı uygulama imzalama için birkaç tüzel kişiliğin olması gerekir.
iOS uygulamalarını kuruluşunuzun kullanıcılarına dahili olarak dağıtma hakkında daha fazla bilgi edinmek için Apple Developer Enterprise Program Uygulamalarını Dağıtma resmi kılavuzunu okuyun.
TIntuneIntune tarafından sarılan uygulamaları dağıtmak için aşağıdakilere ihtiyacınız vardır:
Apple Developer Enterprise Program'a sahip bir geliştirici hesabı.
Geçerli Takım Tanımlayıcısı ile şirket içi ve geçici dağıtım imzalama sertifikası.
- İmzalama sertifikasının SHA1 karmasını Intune App Wrapping Tool için bir parametre olarak kullanmanız gerekir.
Şirket içi dağıtım sağlama profili.
Apple Developer Enterprise hesabı oluşturma
Sayfanın sağ üst kısmında Kaydol'u seçin.
Kaydolmak için ihtiyacınız olan kontrol listesini okuyun. Sayfanın alt kısmındaki Kaydınızı Başlatın'ı seçin.
Kuruluşunuzun Apple Hesabı ile oturum açın. Eğer bir hesabınız yoksa, Apple Hesabı Oluştur'u seçin.
Varlık Türünüzü seçin ve Devam'ı seçin.
Formu kuruluşunuzun bilgileriyle doldurun. Devam'ı seçin. Bu noktada Apple, kuruluşunuzu kaydetme yetkiniz olduğunu doğrulamak için sizinle bağlantı kurar.
Doğrulamadan sonra Lisansı Kabul Et'i seçin.
Lisansı kabul ettikten sonra, programı satın alıp etkinleştirerek bitirin.
Ekip temsilcisiyseniz (kuruluşunuz için Apple Developer Enterprise Programı'na katılan kişi), ekibinizi oluşturmak için ekip üyelerini davet edin ve roller atayın. Ekibinizi nasıl yöneteceğinizi öğrenmek için Geliştirici Hesabı Ekibinizi Yönetme ile ilgili Apple belgelerini okuyun.
Apple imzalama sertifikası oluşturma
Apple Geliştirici portalına gidin.
Sayfanın sağ üst kısmında Hesap'ı seçin.
Kurumsal Apple Hesabınızla oturum açın.
Sertifikalar, Kimlikler & Profiller'i seçin.
Sağ üst köşedeki
seçin. Bu eylem bir iOS sertifikası ekler.Üretim altında bir Şirket İçi ve Geçici sertifika oluşturmayı seçin.
Not
Uygulamayı dağıtmayı planlamıyorsanız ve yalnızca şirket içinde test etmek istiyorsanız, Üretim sertifikası yerine iOS Uygulama Geliştirme sertifikası kullanabilirsiniz. Geliştirme sertifikası kullanıyorsanız, mobil temel hazırlık profilinin uygulamayı yüklemeyi planladığınız cihazları içerdiğinden emin olun.
Sayfanın alt kısmındaki İleri'yi seçin.
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 önceki yönergeleri izleyin. macOS bilgisayarınızda Anahtar Zinciri Erişimi uygulamasını başlatın.
Ekranın üst kısmındaki macOS menüsünde Anahtar Zinciri Erişimi > Sertifika Yardımcısı > Sertifika yetkilisinden sertifika isteyin.
Sertifika imzalama isteği (CSR) dosyası oluşturmak için Apple geliştirici sitesindeki yönergeleri izleyin. CSR dosyasını macOS bilgisayarınıza kaydedin.
Apple geliştirici sitesine geri dönün. Devam'ı seçin. Ardından CSR dosyasını karşıya yükleyin.
Apple, imza sertifikanızı oluşturur. İndirin ve macOS bilgisayarınızda unutulmaz bir konuma kaydedin.
İndirdiğiniz sertifika dosyasına çift tıklayarak sertifikayı anahtarlığa ekleyin.
Anahtar Zinciri Erişimi'ni yeniden açın. Sağ üst kısımdaki arama çubuğunda sertifikanızın adını aratarak sertifikanızı bulun. Menüyü getirmek için öğeye sağ tıklayın ve Bilgi Al'ı seçin. Örnek ekranlarda üretim sertifikası yerine geliştirme sertifikası kullanıyoruz.
Bilgilendirici bir pencere görüntülenir. En alta kaydırın ve Parmak İzleri etiketinin altına bakın. TApp Wrapping ToolApp Wrapping Tool için "-c" bağımsız değişkeni olarak kullanmak üzere SHA1 dizesini (bulanıklaştırılmış) kopyalayın.
In-House Dağıtım Hazırlama profili oluşturma
Apple Geliştirici hesabı portalına Geri dön ve kurumsal Apple Hesabınızla oturum açın.
Sertifikalar, Kimlikler & Profiller'i seçin.
Sağ üst köşedeki
seçin. Bu eylem bir iOS sağlama profili ekler.Dağıtım altında bir Şirket içi sağlama profili oluşturmayı seçin.
Devam'ı seçin. Daha önce oluşturulan imzalama sertifikasını sağlama profiline bağladığınızdan emin olun.
Profilinizi (uzantılı
.mobileprovision) macOS bilgisayarınıza indirmek için adımları izleyin.Dosyayı anımsayacağınız bir konuma kaydedin. Bu dosya, App Wrapping ToolApp Wrapping Tool kullanılırken -p parametresi için kullanılır.
App Wrapping Tool indirin
TApp Wrapping ToolApp Wrapping Tool için GitHub'dan bir macOS bilgisayara dosyaları indirin.
iOS.dmg için Uygulama Kısıtlamaları Paketleyicisi Microsoft Intune 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.
App Wrapping Tool çalıştırma
Önemli
Intune düzenli olarak Intune App Wrapping Tool güncelleştirmeleri yayımlar. Güncelleştirmeler için iOS Intune App Wrapping Tool 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.
Terminal kullan
macOS Terminalini 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> -ac <client ID of input app> -ar <redirect URI of input app> [-aa <authority URI of input app>] [-b [<output app build string>]] [-v] [-e] [-x /<array of extension provisioning profile paths>] [-dt] [-dl] [-ds]
Not
Bazı parametreler aşağıdaki tabloda gösterildiği gibi isteğe bağlıdır.
Örnek: Aşağıdaki örnek komut, MyApp.ipa adlı uygulamada App Wrapping ToolApp Wrapping Tool'ı çalıştırır. İmzalama sertifikasının bir 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" -ac "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" -ar "msauth.myAppsBundleID://auth" -v
Komut satırı parametreleri
App Wrapping Tool 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ı dahil ederek App Wrapping ToolApp Wrapping Tool'ı ç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
| Özellik | Kullanımı |
|---|---|
-i |
<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 |
App Wrapping Tool 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ı'ndaki girişindeki İ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'sidir. Normalde, Microsoft Authenticator uygulamasının aracılı kimlik doğrulamasından sonra geri döneceği uygulamanın URL protokolü olabilir. |
-aa |
(Tek kiracılı uygulamalar için gereklidir) <Authority URI of the input app> yani https://login.microsoftonline.com/<tenantID>/ |
-v |
(İsteğe bağlı) Konsola ayrıntılı iletiler gönderir. Hata ayıklamak için bu bayrağı kullanın. |
-e |
(İsteğe bağlı) TApp Wrapping ToolApp Wrapping Tool'ın uygulamayı işlerken eksik yetkilendirmeleri kaldırmasını sağlamak için bu bayrağı kullanın. Daha fazla bilgi için bkz. Uygulama yetkilendirmelerini ayarlama. |
-xe |
(İsteğe bağlı) Uygulamadaki iOS uzantıları ve bunları kullanmak için hangi yetkilendirmelerin gerekli olduğu hakkındaki bilgileri yazdırır. Daha fazla bilgi 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 bu özelliği 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 (önerilmez) bağımsız değişken olmadan -b kullanın. Sarmalanan uygulamanın özel bir CFBundleVersion değerine 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 göre 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 girmek için plist kullanma. |
-dt |
(İsteğe bağlı) TMicrosoft IntuneMicrosoft Intune istemci verilerinin toplanmasını devre dışı bırak. |
-dl |
(İsteğe bağlı) MSAL ile tümleştirilmiş ve kendi MSAL günlük geri çağırmasını uygulayan uygulamalar için Intune günlüklerinden MSAL günlüklerini devre dışı bırakın. |
-ds |
(İsteğe bağlı) SFSafariViewController, SFAuthSession ve ASWebAuthenticationSession için Intune korumalarını devre dışı bırakın. |
-mp |
(İsteğe bağlı) <Path to a plist file containing MAM settings to merge into the wrapped app>. Kaydırma işlemi sırasında uygulamanın IntuneMAMSettings sözlüğüyle birleştirilecek özel IntuneIntune MAM SDK ayarları sağlamak için bu özelliği kullanın. Not: , , AutoEnrollOnLaunch, ve ContainingAppBundleId ayarlarıMultiIdentity, MAMPolicyRequiredApp Wrapping ToolApp Wrapping Tool tarafından otomatik olarak yapılandırıldıkları için -mp aracılığıyla desteklenmez. Kimlik doğrulama ayarları (ADALAuthority, ADALClientId, ADALRedirectUri) -mp aracılığıyla da desteklenmez ve -aa, -ac ve -ar komut satırı parametreleri kullanılarak yapılandırılmalıdır. |
Bağımsız değişkenleri girmek için plist kullanma
TApp Wrapping ToolApp Wrapping Tool'ı çalıştırmanın kolay bir yolu, tüm komut bağımsız değişkenlerini bir plist dosyasına koymaktır. Plist, form arabirimi kullanarak komut satırı bağımsız değişkenlerinizi girmek için kullanabileceğiniz XML'ye benzer bir dosya biçimidir.
IntuneMAMPackager/Contents/MacOS klasöründe, bir 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ı |
| Sağlama Profili Yolu | 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 | YANLIŞ | -v ile aynı |
| Eksik yetkilendirmeleri kaldırma | Boole | YANLIŞ | -e ile aynı |
| Varsayılan derleme güncelleştirmesini engelle | Boole | YANLIŞ | Bağımsız değişkenler olmadan -b kullanmaya eşdeğerdir |
| Derleme Dizesini Geçersiz Kıl | Dize | boş | Sarmalanan çıktı uygulamasının özel CFBundleVersion |
| Uzantı Sağlama Profili Yolları | Dize Dizisi | boş | Uygulama için bir dizi uzantı sağlama profili. |
| Telemetriyi Devre Dışı Bırak | Boole | YANLIŞ | -dt ile aynı |
| MSAL günlüğünü geçersiz kılmayı devre dışı bırakma | Boole | YANLIŞ | -dl ile aynı |
| MAM Ayarları Plist Yolu | Dize | boş | -mp ile aynı |
IntuneMAMPackager'ı tek bağımsız değişken olarak plist ile çalıştırın:
./IntuneMAMPackager –f Parameters.plist
Sarma sonrası
Kaydırma işlemi tamamlandıktan sonra "Uygulama başarıyla sarıldı" mesajı görüntülenecektir. Hata oluşursa, yardım için Hata iletileri'ne bakın.
Sarmalanan uygulama daha önce belirttiğiniz çıkış klasörüne kaydedilir. Uygulamayı IntuneIntune yönetim merkezine yükleyebilir ve bir mobil uygulama yönetim ilkesiyle ilişkilendirebilirsiniz.
Önemli
Sarmalanmış bir uygulamayı karşıya yüklerken, Intune'a daha eski (sarmalanmış veya yerel) bir sürüm 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 yükleyin ve eski sürümü silin.
Artık uygulamayı kullanıcı gruplarınıza dağıtabilir ve uygulama koruma ilkelerini uygulamaya hedefleyebilirsiniz. Uygulama, belirttiğiniz uygulama koruma ilkelerini kullanarak cihazda çalışır.
iOS uygulamamı Intune App Wrapping Tool ile ne sıklıkta yeniden sarmalamalıyım?
Uygulamalarınızı yeniden sarmanız gereken ana senaryolar şunlardır:
- Uygulamanın kendisi yeni bir sürüm yayınladı. Uygulamanın önceki sürümü sarmalanmış ve IntuneIntune yönetim merkezine yüklenmiştir.
- iOS için Intune App Wrapping Tool, önemli hata düzeltmelerini veya yeni, belirli Intune uygulama koruma ilkesi özelliklerini etkinleştiren yeni bir sürüm yayınladı. Yeni bir sürümün yayınlanması, iOS için Microsoft Intune App Wrapping Tool için GitHub deposu aracılığıyla her 6-8 haftada bir gerçekleşir.
iOS/iPadOS için uygulamayı, uygulamayı imzalamak için kullanılandan farklı bir sertifika veya sağlama profiliyle sarmalayabilirsiniz. Ancak, yeni sağlama profili uygulamada belirtilen yetkilendirmeleri içermiyorsa sarmalama işlemi başarısız olur. Uygulamadan eksik yetkilendirmeleri kaldıran "-e" komut satırı seçeneğini kullanırsanız, bu senaryoda kaydırmayı başarısız olmaya zorlamak uygulamada işlevin bozulmasına neden olabilir.
Yeniden sarma için bazı en iyi yöntemler şunlardır:
- Farklı bir sağlama profilinin önceki herhangi bir sağlama profili kadar gerekli tüm yetkilendirmelere sahip olduğundan emin olun.
Hata iletileri ve günlük dosyaları
Uygulama sarmalama aracıyla ilgili yaşadığınız 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. | Belirtilen giriş uygulama adının doğru olduğunu onaylayın. |
| Çı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ızdan emin olun. Sağlama profilinizde –p yetkilendirmeler eksik olabilir veya komut satırı seçeneği dahil edilmemiş olabilir. |
| Belirttiğiniz giriş uygulaması bulunamadı. Geçerli bir giriş uygulaması adı ve yolu belirtin. | Giriş uygulaması yolunuzun geçerli 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ş hazırlama profil 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. | Çıkış yolunun geçerli ve var olduğundan emin olun. |
| Çıkış uygulamasının .ipa uzantısı yok. | Yalnızca .app ve .ipa uzantılarına sahip uygulamalar App Wrapping Tool tarafından kabul edilir. Çıkış dosyanızın geçerli bir uzantıya sahip olduğundan emin olun. |
| Geçersiz imzalama sertifikası belirtilmiştir. 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ş olabilir ya da bir genel veya özel anahtarı eksik olabilir. Apple sertifikanız ve sağlama profiliniz Xcode'da bir uygulamayı doğru şekilde imzalamak için kullanılabiliyorsa, bunlar App Wrapping ToolApp Wrapping Tool için geçerlidir. Ayrıca, imzalama sertifikasının ana bilgisayar macOS makinesinin anahtarlığında benzersiz bir ada sahip olduğunu doğrulayın. Anahtarlıkta aynı sertifikanın birden çok sürümü varsa, araç bu hatayı döndürür. |
| Belirttiğiniz giriş uygulaması geçersiz. Geçerli bir uygulama belirtin. | Geçerli iOS uygulamanızın OR .app.ipa dosyası olarak derlendiğinden emin olun. |
| Belirttiğiniz giriş uygulaması şifrelenmiş. Geçerli, şifrelenmemiş bir uygulama belirtin. | App Wrapping Tool şifreli 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 Dosyası (PIE) uygulamaları, çalıştırıldığında rastgele bir bellek adresine yüklenebilir. Bu özellik, güvenlik avantajları sağlayabilir. Güvenlik avantajları hakkında daha fazla bilgi için Apple Geliştirici belgelerinize bakın. |
| Belirttiğiniz giriş uygulaması sarmalanır. Geçerli bir sarmalanmamış uygulama belirtin. | Araç zaten işlemişse bir uygulamayı işleyemezsiniz. 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ı için uygulamalar imzalanmalıdır. Sarmalanan 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ı yalnızca kabul eder ve .ipa uzantıları kabul eder.app. Giriş dosyanızın geçerli bir uzantıya sahip olduğundan ve OR .ipa dosyası olarak .app uyumlu olduğundan emin olun. |
| Belirttiğiniz giriş uygulaması sarmalanmıştır ve en son ilke şablonu sürümündedir. | App Wrapping Tool, mevcut bir sarılmış uygulamayı en son ilke şablonu sürümüyle yeniden sarmalamaz. |
| UYARI: SHA1 sertifika karması belirtmemişsiniz. Dağıtmadan önce sarmalanan uygulamanızın imzalandığından emin olun. | Komut satırı bayrağından sonra geçerli bir SHA1 karması belirttiğinizden –c emin olun. |
Sarmalanan uygulamalarınız için günlükler cihazdan toplanıyor
Sorun giderme sırasında sarmalanan uygulamalarınızın günlüklerini almak için aşağıdaki adımları kullanın.
- Cihazınızda iOS Ayarlar uygulamasına gidin ve LOB uygulamanızı seçin.
- Select Microsoft IntuneMicrosoft Intune.
- Ekran Tanılama Konsolu ayarını Açık konumuna getirin.
- LOB uygulamanızı başlatın.
- "Başlarken" bağlantısını seçin.
- 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üğe kaydetme işlevi, Intune App Wrapping Tool sürüm 7.1.13 veya üzeri ile sarmalanmış uygulamalar için etkinleştirilir.
Kilitlenme günlüklerinin sistemden toplanması
Uygulamanız, iOS istemci cihaz konsoluna yararlı bilgiler kaydediyor olabilir. Bu bilgiler, uygulamayla ilgili sorun yaşadığınızda ve sorunun App Wrapping Tool, TApp Wrapping Tool veya uygulamanın kendisiyle ilgili olup olmadığını belirlemeniz gerektiğinde kullanışlı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 çıktısını toplayın.
Sarmalanan uygulamalar, kullanıcılara uygulama kilitlendikten sonra günlükleri doğrudan cihazdan e-posta yoluyla gönderme seçeneği de sunar. Kullanıcılar, incelemeleri ve gerekirse Microsoft'a iletmeniz için günlükleri size gönderebilir.
Sertifika, sağlama profili ve kimlik doğrulama gereksinimleri
iOS için App Wrapping Tool, tam işlevselliği garanti etmek için karşılanması gereken bazı gereksinimlere sahiptir.
| gereklilik | Ayrıntılar |
|---|---|
| iOS sağlama profili | Eklemeden önce sağlama profilinin geçerli olduğundan emin olun. App Wrapping Tool, bir iOS uygulamasını işlerken sağlama profilinin süresinin dolup dolmadığını denetlemez. Süresi dolmuş bir sağlama profili belirtirseniz, uygulama sarmalama aracı bu profili içerir. Uygulama iOS cihazına yüklenene kadar bir sorun görmezsiniz. |
| iOS imzalama sertifikası | Belirtmeden önce, imzalama sertifikasının geçerli olduğundan emin olun. Araç, iOS uygulamaları işlenirken bir sertifikanın süresinin dolup dolmadığını kontrol etmez. Süresi dolmuş bir sertifikanın karması sağlanırsa, araç uygulamayı işler ve imzalar, ancak cihazlara yüklenemez. Sarmalanan uygulamayı imzalamak için sağlanan sertifikanın sağlama profilinde eşleştiğinden emin olun. Araç, sağlama profilinin sarmalanan uygulamayı imzalamak için sağlanan sertifika için bir eşleşmeye sahip olup olmadığını doğrulamaz. |
| Kimlik Doğrulama | Şifrelemenin çalışması için cihazın PIN'i olmalıdır. Sarmalanmış bir uygulamayı dağıttığınız cihazlarda, cihazdaki durum çubuğuna dokunulduğunda kullanıcının bir iş veya okul hesabıyla yeniden oturum açması gerekir. Sarmalanan bir uygulamada varsayılan ilke, yeniden başlatmada kimlik doğrulamasıdır. iOS, tüm dış bildirimleri (telefon araması gibi) uygulamadan çıkıp yeniden başlatarak ele alır. |
Uygulama yetkilendirmelerini ayarlama
Uygulamanızı sarmalamadan önce, uygulamaya bir uygulamanın normalde yapabileceğini aşan ekstra izinler ve yetenekler vermek için yetkilendirmeler verebilirsiniz. Uygulamanızdaki özel izinleri (örneğin, paylaşılan bir anahtar zincirine erişim) belirtmek için kod imzalama sırasında bir yetkilendirme dosyası kullanılır. Yetenekler olarak adlandırılan belirli uygulama hizmetleri, uygulama geliştirme sırasında Xcode içinde etkinleştirilir. Etkinleştirildikten sonra, özellikler yetkilendirmeler dosyanıza yansıtılır. Yetkilendirmeler ve özellikler hakkında daha fazla bilgi için iOS Geliştirici Kitaplığı'na İşlev Ekleme bölümüne bakın. Desteklenen özelliklerin tam listesi için bkz.
TApp Wrapping ToolApp Wrapping Tool for iOS için desteklenen özellikler
| Özellik | Açıklama | Önerilen kılavuz |
|---|---|---|
| Uygulama grupları | Birden çok uygulamanın paylaşılan kapsayıcılara erişmesine izin vermek ve uygulamalar arasında daha fazla 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'ı seçin. Uygulama grupları ekleyebilir veya var olanları seçebilirsiniz. |
Uygulama Gruplarını yapılandırırken ters Etki Alanı Adı Sistemi (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 koruması, dosyaları diskte şifrelenmiş biçimde depolamak için belirli cihazlarda bulunan yerleşik şifreleme donanımını kullanır. Uygulamanızın veri korumasını kullanabilmesi için sağlanması gerekir. | |
| Uygulama içi alışveriş | Uygulama içi satın alma, mağazaya bağlanmanızı ve kullanıcıdan gelen ödemeleri güvenli bir şekilde işlemenizi sağlayarak bir mağazayı doğrudan uygulamanıza yerleştirir. Gelişmiş işlevler veya uygulamanız tarafından kullanılabilen daha fazla içerik karşılığında ödeme almak için uygulama içi satın almayı kullanabilirsiniz. | |
| Anahtarlık paylaşımı | Anahtar zinciri paylaşımını etkinleştirmek, uygulamanızın anahtar zincirindeki 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ı altyapısını kullanarak özel bir sistem VPN yapılandırması oluşturmasına ve denetlemesine izin vermek için kişisel VPN'yi etkinleştirin. | |
| Anında iletme bildirimleri | Apple Anında İletilen Bildirim servisi (APNs), ön planda çalışmayan bir uygulamanın, kullanıcıyla ilgili bilgilere sahip olduğunu kullanıcıya 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 donatı yapılandırması | Kablosuz donatı yapılandırmasının etkinleştirilmesi, projenize Harici Donatı çerçevesini ekler ve uygulamanızın Made for iPhone (MFi) Wi-Fi aksesuarları ayarlamasına olanak tanır. |
Yetkilendirmeleri etkinleştirme adımları
Uygulamanızdaki özellikleri etkinleştirin:
a. Xcode'da uygulamanızın hedefine gidin ve Özellikler'i seçin.
b. Uygun özellikleri açın. Her işlev ve doğru değerlerin nasıl belirleneceği hakkında ayrıntılı bilgi için iOS Geliştirici Kitaplığı'na İşlev Ekleme bölümüne bakın.
c. İşlem sırasında oluşturduğunuz tüm kimlikleri not alın. Bu kimlikler değer olarak
AppIdentifierPrefixadlandırılabilir.d. Uygulamanızı derleyin ve kaydırılmak üzere 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 iOS için Intune App Wrapping Tool'ın Önkoşullarını Edinme bölümüne bakın.
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 (
AppIdentifierPrefixdeğerleri) sağlamanız gerekir.d. Sağlama profili sihirbazını bitirin ve dosyanızı indirin.
Tüm önkoşulları karşıladığınızdan emin olun ve ardından uygulamayı sarmalayın.
Yetkilendirmelerle ilgili sık karşılaşılan hataları giderme
iOS için App Wrapping Tool bir 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ı. | TUygulama Sarmalama AracıApp Wrapping Tool, uygulamadan ayıklanan yetkilendirme dosyasını okuyamıyor. Yetkilendirme dosyası hatalı biçimlendirilmiş olabilir. | Uygulamanızın yetkilendirme dosyasını inceleyin. Aşağıdaki yönergelerde bunun nasıl yapılacağı açıklanır. Yetkilendirme dosyasını incelerken, hatalı biçimlendirilmiş söz dizimi olup olmadığını denetleyin. Dosya XML biçiminde olmalıdır. |
| Sağlama profilinde yetkilendirmeler eksik (eksik yetkilendirmeler listeleniyor). Uygulamayı bu yetkilendirmelere sahip bir sağlama profiliyle yeniden paketleyin. | Sağlama profilinde etkinleştirilen yetkilendirmeler ile uygulamada etkinleştirilen özellikler arasında bir uyumsuzluk var. Bu uyuşmazlık, belirli özelliklerle (uygulama grupları ve anahtarlık erişimi gibi) ilişkilendirilmiş 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, App Wrapping Tool mümkünse kimlikleri değiştirir. Yeni bir sağlama profili oluşturduktan sonra hala bu hatayı alıyorsanız, parametreyi kullanarak uygulamadan yetkilendirmeleri kaldırmayı –e deneyebilirsiniz (bkz. Bir uygulamadan yetkilendirmeleri kaldırmak için parametreyi –e kullanma bölümü). |
İmzalanmış bir uygulamanın mevcut yetkilendirmelerini bulma
İmzalanmış 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 işlem, .app paketinizi içeren bir Payload klasörü oluşturur.
.app paketinizin gerçek adı olan
YourApp.app.app paketindeki yetkilendirmeleri kontrol etmek için codesign aracını kullanın.codesign -d --entitlements :- "Payload/YourApp.app"Uygulamanın yerleşik sağlama profilinin yetkilendirmelerini kontrol etmek 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, yetkilendirme dosyasında olmayan uygulamadaki tüm etkinleştirilmiş özellikleri kaldırır. Uygulama tarafından kullanılan özellikleri kaldırırsanız, uygulamanız bozulabilir. Eksik özellikleri kaldırabileceğiniz durumlara bir örnek, varsayılan olarak tüm özelliklere sahip olan ve satıcı tarafından üretilen bir uygulamadı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> -ac <client ID of input app> -ar <redirect URI of input app> -e
App Wrapping Tool için güvenlik ve gizlilik
TApp Wrapping ToolApp Wrapping Tool'ı 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 macOS makinesinin bunlara erişebildiğinden emin olun. Yol, IPsec veya SMB imzası aracılığıyla güvenli hale getirilmelidir.
Yönetim merkezine aktarılan kaydırılan uygulama, aracı çalıştırdığınız bilgisayarda olmalıdır. Dosya bir UNC yolundaysa, yönetim merkezini çalıştıran bilgisayardan erişilebilir olduğundan emin olun. Yol, IPsec veya SMB imzası aracılığıyla güvenli hale getirilmelidir.
TApp Wrapping ToolApp Wrapping Tool'ın GitHub deposundan indirildiği ortamın IPsec veya SMB imzası aracılığıyla güvenliğinin sağlanması gerekir.
İşlediğiniz uygulama, saldırılara karşı koruma sağlamak için güvenilir bir kaynaktan gelmelidir.
TApp Wrapping ToolApp Wrapping Tool'da belirttiğiniz çıkış klasörünün, özellikle uzak bir klasörse güvenli olduğundan emin olun.
Dosya 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 izin verebilir. Örneğin, bir kullanıcı uygulama verilerinin ekran görüntüsünü karşıya yüklemek için dosya yükleme iletişim kutusunu kullanabilir.
Cihazınızdaki belgeler klasörünü sarmalanmış bir uygulamanın içinden izlediğinizde adlı
.msftintuneapplauncherbir klasör görebilirsiniz. Bu dosyayı değiştirmeniz veya silmeniz, kısıtlanmış uygulamaların düzgün çalışmasını etkileyebilir.Özel URL şemalarını kaydetmek, belirli URL'lerin uygulamanıza yönlendirilmesine izin verir. iOS ve iPadOS, birden fazla uygulamanın aynı özel URL şemasını kaydetmesine izin verir ve hangi uygulamanın çağrılacağını OS belirler. Özel URL şeması çakışmalarını önlemeye yardımcı olacak öneriler ve hatalı biçimlendirilmiş URL'leri işlemeye yönelik güvenlik yönergeleri için Uygulamanız için özel URL şeması tanımlama adlı Apple belgelerine bakın.