MAM için Microsoft Tunnel iOS SDK geliştirici kılavuzu
Not
Bu özellik, Microsoft Intune Plan 2 veya Microsoft Intune Suite eklenti lisansı olarak eklediğinizde kullanılabilir. Daha fazla bilgi için bkz. Intune Paketi eklenti özelliklerini kullanma.
MAM için Microsoft Tunnel iOS SDK geliştirici kılavuzu, geliştiriciler için bir kaynaktır. Geliştiricilerin SDK'yi bir iOS/iPadOS uygulamasıyla tümleştirmesine ve yapılandırmasına yardımcı olur. MAM için Microsoft Tunnel genel bakış için iOS/iPadOS için MAM için Microsoft Tunnel - Intune yönetici kılavuzu'na gidin.
Bu kılavuz, Xcode uygulama projenizdeki tümleştirme işleminin çerçeveleri yükleme, dosyayı yapılandırma info.plist
, derleme ayarları, anahtar paylaşımı ve SDK'nın temsilci yöntemlerini uygulama gibi farklı bölümlerini kapsar.
Bu bileşenler, bir iOS/iPadOS uygulamasının geliştirilmesinde kritik öneme sahiptir. Geliştiricilerin SDK bileşenlerinde gezinmeyi ve yapılandırmayı anlaması gerekir. Xcode ve iOS/iPadOS uygulama geliştirme konusunda yeniyseniz bu kılavuz yardımcı olabilir. Farklı SDK bileşenlerinin nerede bulunacağı ve bu öğelerin uygulama projelerinizde nasıl kullanılacağına ilişkin bir genel bakış sağlar.
Bu özellik şu platformlarda geçerlidir:
- iOS/iPadOS
SDK Deposundakiler
SDK deposu aşağıdaki çerçeveleri içerir. Bu çerçeveleri uygulama projenize sonraki bir adımda ekleyeceksiniz:
crypto.xcframework
MCPCommon.xcframework
MCPCore.xcframework
MCPPluginUnencryptedFile.xcframework
MicrosoftTunnelApi.xcframework
MSTAPNextPluginSecurityOpenssl.xcframework
MSTAPNextPluginSwiftSupport.xcframework
MSTAPNextPluginVpnMicrosoftTunnel.xcframework
ssl.xcframework
Önkoşullar
MAM için Microsoft Tunnel iOS SDK'sını kullanmak için aşağıdaki önkoşullar gereklidir:
Xcode 14.0 veya üzeri yüklü bir macOS bilgisayar
İş kolu (LOB) iOS/iPadOS uygulamanız iOS/iPadOS 14.0 veya daha yeni sürümler için hedeflenmelidir.
Xcode'da iOS uygulamanızla indirmeniz ve tümleştirmeniz gereken iki GitHub SDK'sı vardır. MAM için Microsoft Tunnel iOS SDK'sı ile devam etmeden önce aşağıdaki projelerin başarıyla derlendiğinden emin olun:
iOS için Intune Uygulama SDK'sı (bir GitHub sitesi açar): En azından 16.1.1 sürümünü yükleyin.
Bu sitede, iOS dosyası için Microsoft Lisans Koşulları Intune Uygulama SDK'sını da gözden geçirin.
Kayıtlarınız için lisans koşullarının bir kopyasını saklayın. MAM için Microsoft Tunnel iOS SDK'sını indirip kullanarak lisans koşullarını kabul etmiş olursunuz. Lisans koşullarını kabul etmezseniz yazılımı kullanmayın.
Microsoft Kimlik Doğrulama Kitaplığı (MSAL) (GitHub sitesi açar): En azından 1.2.3 sürümünü yükleyin.
MAM için Microsoft Tunnel iOS SDK'sını yükleyin ve ayarlayın (GitHub sitesini açar). Bu SDK, bu makalenin odak noktasıdır.
Önemli
Intune, MAM için Microsoft Tunnel iOS SDK'sına yönelik güncelleştirmeleri düzenli olarak yayımlar. Düzenli olarak güncelleştirmeler için MAM için Microsoft Tunnel iOS SDK'sını denetleyin. Bu güncelleştirmeleri yazılım geliştirme sürüm döngünüze ekleyin. Uygulamalarınızın Microsoft Tunnel Gateway güncelleştirmelerini ve özellik geliştirmelerini desteklediğinden emin olmak istiyorsunuz.
MAM için Microsoft Tunnel iOS SDK'sı nasıl çalışır?
MAM iOS SDK tüneli, iOS/iPadOS uygulamalarının "uygulama içi" VPN bağlantısı kurmasını sağlar. VPN bağlantısı yalnızca uygulama içinde bulunur.
Özetlemek gerekirse, bu uygulama içi VPN bağlantıları şunlardır:
- Ayrık, cihaz düzeyinde VPN bağlantıları değil
- Kapsamı yalnızca uygulama ağ katmanına göre belirlenmiş
Bir uygulama ağ çağrısı yaptığında SDK, ağ çağrısını durdurur ve VPN bağlantısını kurar. Bu uygulama içi VPN bağlantısı, iOS/iPadOS cihazındaki Ayarlar uygulamasında gösterilmez.
Mimari: MAM iOS SDK tüneli
Aşağıdaki görüntüde, MAM iOS SDK'sı için Tunnel ile başarıyla tümleştirilmiş yönetilen bir uygulamadan gelen akış açıklanmaktadır:
Uygulamanın ilk başlatılmasından sonra, iOS için MAM için Microsoft Tunnel SDK'sı kullanılarak bir bağlantı yapılır.
Tünel, Microsoft Entra ID'dan bir cihaz kimlik doğrulama belirteci alır.
Cihaz Outlook, Edge veya Microsoft 365 mobil uygulaması gibi başka bir MAM özellikli uygulamada oturum açtıysa, cihazın zaten bir Microsoft Entra kimlik doğrulama belirteci olabilir. Geçerli bir kimlik doğrulama belirteci zaten varsa, mevcut belirteç kullanılır.
Belirteç ve tünel sunucusu arasında tls el sıkışması olan bir TCP Connect gerçekleşir.
Microsoft Tunnel Gateway'de UDP etkinleştirildiyse DTLS kullanılarak bir veri kanalı bağlantısı yapılır. UDP devre dışı bırakılırsa TCP, tünel ağ geçidine veri kanalını oluşturur.
Daha fazla bilgi için Microsoft Tunnel'a genel bakış - mimarisindeki TCP ve UDP notlarına gidin.
Mobil uygulama şirket içi bir şirket kaynağına bağlantı yaptığında:
- MAM için Microsoft Tunnel API'leri şirket kaynağına bağlanma isteğinde bulunur.
- Şifrelenmiş bir web isteği oluşturulur ve şirket kaynağına gönderilir.
Xcode Görevleri
Bu bölümde, tamamlamanız gereken Xcode görevleri listelenir ve açıklanır; örneğin:
- Çerçeveleri ve kitaplıkları ekleme
- Aşağıdaki özellikleri gözden geçirin ve güncelleştirin:
-
info.plist
dosya - Derleme ayarları
- Anahtarlık paylaşımı
-
- Xcode AppDelegate projesini güncelleştirmek ve bir Microsoft Tunnel temsilci dosyası eklemek için örnekleri kullanın
1. Adım - Çerçeveleri ve kitaplıkları ekleme
Aşağıdaki çerçeveler, Intune Microsoft Tunnel Gateway ile iletişim kurmak için gerekli API'leri ve temsilci yöntemlerini içerir. Uygulama içinde Microsoft Tunnel VPN özelliklerini uygular.
MAM iOS SDK'sı için Tünel'i etkinleştirmek için aşağıdaki adımları kullanın:
MAM iOS SDK tüneli'ni indirin ve macOS bilgisayardaki bir klasöre ayıklayın. Bu görev Önkoşullar bölümünde de listelenir.
Aşağıdaki dokuz çerçeveyi Xcode uygulaması proje çerçeveleri klasörüne kopyalayın:
crypto.xcframework
MCPCommon.xcframework
MCPCore.xcframework
MCPPluginUnencryptedFile.xcframework
MicrosoftTunnelApi.xcframework
MSTAPNextPluginSecurityOpenssl.xcframework
MSTAPNextPluginSwiftSupport.xcframework
MSTAPNextPluginVpnMicrosoftTunnel.xcframework
ssl.xcframework
Xcode projesinde uygulama projenizi >Dosya ekle'yi seçin. Aşağıdaki örnekte, dosyalar "Flash Chat" adlı bir uygulama projesine eklenir:
PROJECT>TARGETS bölümünde Derleme Aşamaları Ekleme Çerçeveleri'ne>tıklayın. Dokuz çerçevenin tümünü ekleyin (+):
Aşağıdaki örnekte eklenen dokuz çerçevenin tümü gösterilmektedir:
PROJECT>TARGETS bölümünde Derleme Aşamaları Kitaplıklarla>İkili Bağlantı'yı seçin. Listeye yalnızca
MicrosoftTunnelApi.xcframework
çerçeve eklenmelidir. Başka çerçeveler listeleniyorsa, eksiyi (-) kullanarak bunları kaldırın:
2. Adım - Dosyayı güncelleştirme info.plist
info.plist
Xcode uygulaması projesinde aşağıdaki ayarları onaylayın:
Paket Kimliği: iOS mobil uygulaması için Microsoft Entra Uygulama kaydında listelenen Paket Kimliğinin uygulama projenizde aynı Paket Kimliği olduğundan emin olun:
Paket Kimliğini denetlemek için:
URL Türleri: PROJECT>TARGETS'daBilgi'yi seçin.
URL Türleri'nde değişkenin
$(PRODUCT_BUNDLE_IDENTIFIER)
orada olduğunu onaylayın. iOS için Intune Uygulama SDK'sını uygulama projenizle tümleştirdiğinizde (gerekli bir önkoşul), bu değişkenin oluşturulmuş olması gerekir.Değişken orada değilse, bunu eklemeniz gerekir:
iOS için Intune Uygulama SDK'sını kullanarak (gerekli bir önkoşul), bir
info.plist
Dizi özelliği oluşturun ve sorgulanan URL Düzenleri olarak adlandırın.iOS için Intune Uygulama SDK'sı geliştirici kılavuzu – 5. Adım'da listelenen dize öğelerini ekleyin. Bu adım Intune MAM SDK URL düzenlerini oluşturur.
Aşağıdaki örnekte Sorgulanan URL Düzenleri kullanılarak info.plist gösterilmektedir:
değişkenini
$(PRODUCT_BUNDLE_IDENTIFIER)
ekleyin.Aşağıdaki örnekte URL Türleri'ndeki değişken gösterilmektedir
$(PRODUCT_BUNDLE_IDENTIFIER)
:
IntuneMAMSettings: Aşağıdaki MSAL ayarlarının uygun Microsoft Entra uygulama kayıt değerleriyle yapılandırıldığını onaylayın:
PROJECT>TARGETS>Info'ya gidin.
IntuneMAMSettings'i seçin. Ayarlarınızı onaylayın:
-
ADALAuthority
: gibihttps://login.microsoftonline.com/USE_YOUR_ Directory (tenant) ID
Microsoft Entra kiracı kimliğini girin. -
ADALClientId
: Uygulama istemci kimliğini girin. -
ADALRedirectUri
: girinmsauth.$(PRODUCT_BUNDLE_IDENTIFIER):/auth
.
-
iOS için Intune Uygulama SDK'sını uygulama projenizle tümleştirdiğinizde (gerekli bir önkoşul), bu ayarların yapılandırılmış olması gerekir.
Bu ayarlar yapılandırılmamışsa bunları yapılandırmanız gerekir. IntuneMAMSettings
info.plist
Sözlük özelliğini ve ilişkili Microsoft Kimlik Doğrulama Kitaplığı dizelerini oluşturmak için, Intune Intune Uygulama SDK'sı için MSAL ayarlarını yapılandırma makalesindeki iOS için uygulama SDK'sı (gerekli önkoşul) geliştirici kılavuzunu izleyin.Aşağıdaki örnekte yapılandırılan bu değerler gösterilmektedir:
3. Adım - Bitcode'u kapatma
- PROJECT>TARGETS>Derleme ayarları'na gidin.
- Derleme seçenekleri>Bit kodunu etkinleştir'i seçin.
- Hayır'ı seçin.
4. Adım - Anahtarlık paylaşımı ekleme
Anahtarlık paylaşımı uygulama projesinde mevcut olabilir veya olmayabilir. Orada değilse ekleyin:
- PROJECT>TARGETS>İmzalama & Özellikleri'ne gidin.
- Anahtarlık paylaşımı'nı seçin.
-
Anahtarlık Grupları listesinde ekleyin (+)
com.microsoft.workplacejoin
.
5. Adım - SDK'yi uygulamanızla tümleştirme
✔️ TunnelMAMTestApp2.xcproject
Örnek uygulamayı kullanın.
LOB uygulamasına ve uygulamanın/hedeflenen amacına bağlı olarak, uygulamasının MicrosoftTunnelApi
kullanımı farklılık gösterebilir. SDK'yi uygulamanızla tümleştirdiğinizde bilmeniz gereken bazı temel işlevler vardır:
- MAM için Microsoft Tunnel iOS SDK'sı ile tüm etkileşimler tek bir
MicrosoftTunnelAPI
nesne üzerinden işlenir. - nesnesi,
MicrosoftTunnelAPI
arabirim uygulayan bir temsilci kullanarak uygulamayla etkileşim kurarMicrosoftTunnelDelegate
.
Microsoft Tunnel temsilcisinin nasıl yazıldığını ve nasıl başlatıldığını MicrosoftTunnelAPI
anlamak için MAM için Microsoft Tunnel iOS SDK örnek uygulamalarını kullanın (GitHub sitesini açar).
Örnek uygulamalarda AppDelegate Xcode projesi şunları gösterir:
- MSAL URL geri çağırmalarını işleme
- Tunnel için gereken kayıt ve başlatma işlemini başlatma
Başlamak için örnek uygulamayı açın TunnelMAMTestApp2.xcproject
ve uygulama projesinde AppDelegate & MicrosoftTunnelDelegate'e bakın.
Örnek uygulamalar
✔️ MAM için Microsoft Tunnel iOS SDK örnek uygulamalarından indirin (GitHub sitesini açar).
Bu örnek uygulamalar, kullanmaya başlamanıza ve farklı senaryoları ele almanıza yardımcı olabilir.
MicrosoftTunnelAPI yöntemleri
MicrosoftTunnelAPI
aşağıdaki yöntemleri içerir:
Initialize
– VPN yapılandırmalarını denetler ve ayarlar, günlüğe kaydetmeyi ayarlar ve örneği ayarlarMicrosoftTunnelAPI
.Connect
– Örneği alırMicrosoftTunnelAPI
ve ağ trafiğinin kesilmesini etkinleştirir. API başlatılmamışsa bir hata gösterilir.Disconnect
- Örneği alırMicrosoftTunnelAPI
ve ağ trafiği kesmeyi devre dışı bırakır. API başlatılmamışsa bir hata gösterilir.onTokenRequired
–Opsiyonel. Uygulamanız zaten veya MSAL ileIntuneMAM
tümleştirildiyse buonTokenRequired
yöntemi uygulamanız gerekir. Bu yöntem, Microsoft Tunnel Gateway'eIntuneMAMSettings
bağlanmak için geçerli bir kimlik doğrulama belirteci almak için ve MSAL kullanır.Logging
– tarafındank
belirtilen bazı farklı günlük sınıfları vardır. Örneğin,kLoggingClassConnect
Xcode konsolunda günlük çıkışı oluşturur. Bu günlük yapılandırma anahtarları temsilci yapılandırmasına eklenebilir. Örnek uygulamalarda bu günlük sınıflarının bazı örnekleri vardır.kLoggingClassInternal
kLoggingClassConnect
kLoggingClassPacket
kLoggingClassSocket
kLoggingClassHttp
kLoggingClassIntune
kLoggingClassMobileAccess
kLoggingSeverityDebug
kLoggingSeverityInfo
kLoggingSeverityWarn
kLoggingSeverityMinor
kLoggingSeverityMajor
kLoggingSeverityCrit
Uyarı
Dağıtılan uygulamalarda hata ayıklama anahtarlarını kullanmayın. Anahtarlar, kullanıcı tarafından tanımlanabilir bilgileri ve güvenlik verilerini günlüğe kaydedebilir ve gösterebilir.
iOS/iPadOS LOB uygulamalarında oturum açma
SDK'nın tümleştirilmesi otomatik olarak günlüğe kaydetmeyi etkinleştirmez. Geliştiricinin günlük temsilcisi çerçevesini uygulamak ve uygun günlük çağrılarını yapmak için uygun kodu eklemesi gerekir. Belirli bir uygulama, SDK'ya ve geliştiricinin gereksinimlerine bağlı olarak değişir.
Geliştiricinin yapması gerekenler:
Günlüğe müşteri tarafından tanımlanabilen veya son kullanıcı kişisel verilerini eklemediklerinden emin olun. Gizlilik düzenlemelerine uymaları gerekir.
Kuruluşun şirket/kuruluş gizlilik ekibine başvurun ve bu ekiple çalışın. Gizlilik ekibi, günlüğe kaydedilebilecek uygun veriler ve hassas verileri işlemenin uygun yolları hakkında rehberlik sağlayabilir.
Uyarı
Günlüğe kaydetme ve veri gizliliğiyle ilgili belirli yönergeler için MAM için Microsoft Tunnel iOS SDK gizlilik belgelerine (GitHub'da bir PDF dosyası açar) başvurun.
MAM-Tunnel günlük temsilcisi yöntemi örneği
Mobil Uygulama Yönetimi için Microsoft Tunnel Gizlilik bilgileri
Gizliliğiniz bizim için önemlidir. Gizlilikle ilgili aşağıdaki çevrimiçi belgeleri gözden geçirin:
- Microsoft Gizlilik Bildirimi
- Intune'de gizlilik ve kişisel veriler
- Intune'de veri depolama ve işleme
MAM için Microsoft Tunnel iOS SDK'sını mobil uygulamalarla tümleştirirken, bir geliştirici tarafından aşağıdaki veriler toplanır:
- Uygulamadaki Intune MAM telemetri modülünü etkinleştirir
Toplanan veriler aşağıdaki alanları içerebilir:
- MAM için Microsoft Tunnel SDK sürümü
- Microsoft tarafından oluşturulan kullanıcı bilgileri
- Cihaz Kimliği
- Donanım ve yazılım bilgileri
- Cihaz yapma
- Cihaz modeli
- Cihaz işletim sistemi sürümü
- Yönetici ve hesap bilgileri
- kiracı kimliğini Intune
- kiracı kimliğini Microsoft Entra
- Kullanım ölçümü:
- VPN başlatma
- VPN bağlantısı ve bağlantı kesme olayları
- Hata bilgileri
- VPN bağlantısı hatasıyla ilgili hatalar
Kullanıcı tanımlanabilir bilgi toplanmaz.
Önemli
Bir geliştirici olarak, SDK'yı tümleştirirken uygulamanızdaki iletileri ele almak ve yakalamak için kod kullanırken kullanıcı tarafından tanımlanabilir veri eklememek önemlidir.
Bilinen sorunlar
Daha bilinen sorunlar için iOS/iPadOS için MAM için Microsoft Tunnel - Intune yönetici kılavuzuna gidin.
Sonraki adımlar
iOS/iPadOS için MAM için Microsoft Tunnel - Intune yönetici kılavuzu