Microsoft Tunnel mobilalkalmazás-kezeléshez iOS SDK fejlesztői útmutatója
Megjegyzés:
Ez a képesség akkor érhető el, ha Microsoft Intune 2. csomag vagy Microsoft Intune Suite bővítménylicencként adja hozzá. További információ: A Intune Suite bővítmény képességeinek használata.
Az Microsoft Tunnel mobilalkalmazás-kezeléshez iOS SDK fejlesztői útmutatója fejlesztőknek készült erőforrás. Segít a fejlesztőknek integrálni és konfigurálni az SDK-t egy iOS/iPadOS-alkalmazásba. A Microsoft Tunnel mobilalkalmazás-kezeléshez áttekintését az iOS/iPadOS Microsoft Tunnel mobilalkalmazás-kezeléshez – Intune rendszergazdai útmutatóban találja.
Ez az útmutató az Xcode-alkalmazásprojekt integrációs folyamatának különböző részeit ismerteti, beleértve a keretrendszerek telepítését, a fájl konfigurálását, a info.plist
buildbeállításokat, a kulcsmegosztást és az SDK delegált metódusainak implementálását.
Ezek az összetevők kritikus fontosságúak az iOS/iPadOS-alkalmazások fejlesztése során. A fejlesztőknek tisztában kell lenniük az SDK-összetevők közötti navigálás és konfigurálás módjával. Ha most ismerkedik az Xcode és az iOS/iPadOS alkalmazásfejlesztéssel, ez az útmutató segíthet. Áttekintést nyújt arról, hogy hol találhatók a különböző SDK-összetevők, és hogyan használhatók ezek az elemek az alkalmazásprojektekben.
Ez a funkció az alábbiakra vonatkozik:
- iOS/iPadOS
Az SDK-adattárban található elemek
Az SDK-adattár a következő keretrendszereket tartalmazza. Ezeket a keretrendszereket egy későbbi lépésben fogja hozzáadni az alkalmazásprojekthez:
crypto.xcframework
MCPCommon.xcframework
MCPCore.xcframework
MCPPluginUnencryptedFile.xcframework
MicrosoftTunnelApi.xcframework
MSTAPNextPluginSecurityOpenssl.xcframework
MSTAPNextPluginSwiftSupport.xcframework
MSTAPNextPluginVpnMicrosoftTunnel.xcframework
ssl.xcframework
Előfeltételek
Az iOS SDK Microsoft Tunnel mobilalkalmazás-kezeléshez használatához a következő előfeltételek szükségesek:
Egy macOS rendszerű számítógép, amelyen telepítve van az Xcode 14.0 vagy újabb
Az üzletági (LOB) iOS-/iPadOS-alkalmazásnak iOS/iPadOS 14.0-s vagy újabb verzióra kell irányulnia.
Két GitHub SDK-t kell letöltenie, és integrálnia kell az iOS-alkalmazással az Xcode-ban. Az iOS SDK Microsoft Tunnel mobilalkalmazás-kezeléshez folytatása előtt győződjön meg arról, hogy a következő projektek sikeresen létrejönnek:
Intune App SDK for iOS (megnyit egy GitHub-webhelyet): Telepítse legalább a 16.1.1-es verziót.
Ezen a webhelyen tekintse át az iOS-hez készült App SDK-Intune Microsoft licencfeltételeit is.
A rekordok esetében őrizze meg a licencfeltételek másolatát. A Microsoft Tunnel mobilalkalmazás-kezeléshez iOS SDK letöltésével és használatával elfogadja a licencfeltételeket. Ha nem fogadja el a licencfeltételeket, ne használja a szoftvert.
Microsoft Authentication Library (MSAL) ( megnyit egy GitHub-webhelyet): Telepítse legalább az 1.2.3-at.
Telepítse és állítsa be a Microsoft Tunnel mobilalkalmazás-kezeléshez iOS SDK-t (megnyit egy GitHub-webhelyet). Ez az SDK a cikk középpontjában áll.
Fontos
Intune rendszeresen ad ki frissítéseket az Microsoft Tunnel mobilalkalmazás-kezeléshez iOS SDK-hoz. Rendszeresen ellenőrizze az iOS SDK Microsoft Tunnel mobilalkalmazás-kezeléshez a frissítéseket. Adja hozzá ezeket a frissítéseket a szoftverfejlesztési kiadási ciklushoz. Meg szeretne győződni arról, hogy alkalmazásai támogatják a Microsoft Tunnel Gateway frissítéseit és funkciófejlesztéseit.
Az iOS SDK Microsoft Tunnel mobilalkalmazás-kezeléshez működése
A MAM iOS SDK alagútja lehetővé teszi, hogy az iOS/iPadOS-alkalmazások "alkalmazáson belüli" VPN-kapcsolatot hozzanak létre. A VPN-kapcsolat csak az alkalmazásban létezik.
Összefoglalva, az alkalmazáson belüli VPN-kapcsolatok a következők:
- Különálló, nem eszközszintű VPN-kapcsolatok
- Hatóköre csak az alkalmazás hálózati rétegére terjed ki
Amikor egy alkalmazás hálózati hívást kezdeményez, az SDK elfogja a hálózati hívást, és létrehozza a VPN-kapcsolatot. Ez az alkalmazáson belüli VPN-kapcsolat nem jelenik meg a Beállítások alkalmazásban az iOS/iPadOS-eszközön.
Architektúra: Tunnel for MAM iOS SDK
Az alábbi kép egy olyan felügyelt alkalmazás folyamatát ismerteti, amely sikeresen integrálva van a Tunnel for MAM iOS SDK-val:
Az alkalmazás első indításakor a kapcsolat az iOS-hez készült Microsoft Tunnel mobilalkalmazás-kezeléshez SDK használatával jön létre.
Az alagút lekér egy eszközhitelesítési jogkivonatot Microsoft Entra ID.
Ha az eszköz egy másik MAM-kompatibilis alkalmazásba, például az Outlookba, az Edge-be vagy a Microsoft 365 mobilalkalmazásba jelentkezett be, akkor előfordulhat, hogy az eszköz már rendelkezik Microsoft Entra hitelesítési jogkivonattal. Ha már létezik érvényes hitelesítési jogkivonat, akkor a rendszer a meglévő jogkivonatot használja.
Tcp Connect történik, amely egy TLS-kézfogás a jogkivonat és az alagútkiszolgáló között.
Ha az UDP engedélyezve van a Microsoft Tunnel Gatewayen, akkor DTLS-t használó adatcsatorna-kapcsolat jön létre. Ha az UDP le van tiltva, akkor a TCP létrehozza az adatcsatornát az Alagútátjáró felé.
További információkért tekintse meg a TCP- és UDP-megjegyzéseket a Microsoft Tunnel áttekintés – architektúra című szakaszában.
Amikor a mobilalkalmazás kapcsolatot létesít egy helyszíni vállalati erőforrással:
- A Microsoft Tunnel mobilalkalmazás-kezeléshez API a vállalati erőforráshoz való csatlakozást kéri.
- A rendszer létrehoz és elküld egy titkosított webes kérést a vállalati erőforrásnak.
Xcode-feladatok
Ez a szakasz felsorolja és ismerteti a teljesítendő Xcode-feladatokat, beleértve a következőket:
- Keretrendszerek és kódtárak hozzáadása
- Tekintse át és frissítse az alábbi funkciókat:
-
info.plist
fájl - Buildbeállítások
- Kulcskarika megosztása
-
- A minták használatával frissítse az Xcode AppDelegate projektet, és adjon hozzá egy Microsoft Tunnel delegált fájlt
1. lépés – A keretrendszerek és kódtárak hozzáadása
A következő keretrendszerek tartalmazzák a Microsoft Tunnel Gateway Intune való kommunikációhoz szükséges API-kat és delegálási módszereket. Implementálják a Microsoft Tunnel VPN-funkcióit az alkalmazásban.
A MAM iOS SDK alagútjának engedélyezéséhez kövesse az alábbi lépéseket:
Töltse le és csomagolja ki a Tunnel for MAM iOS SDK-t egy macOS-számítógép egyik mappájába. Ez a feladat az Előfeltételek listában is szerepel.
Másolja a következő kilenc keretrendszert az Xcode alkalmazásprojekt-keretrendszerek mappájába:
crypto.xcframework
MCPCommon.xcframework
MCPCore.xcframework
MCPPluginUnencryptedFile.xcframework
MicrosoftTunnelApi.xcframework
MSTAPNextPluginSecurityOpenssl.xcframework
MSTAPNextPluginSwiftSupport.xcframework
MSTAPNextPluginVpnMicrosoftTunnel.xcframework
ssl.xcframework
Az Xcode-projektben válassza ki az alkalmazásprojektEt >Fájlok hozzáadása lehetőséget. Az alábbi példában fájlokat adunk hozzá egy "Flash Chat" nevű alkalmazásprojekthez:
A PROJECTTARGETS (PROJEKT >CÉLOK) területen válassza a Build Phases Embed Frameworks (Létrehozási fázisok>beágyazási keretrendszerek) lehetőséget. Adja hozzá (+) mind a kilenc keretrendszert:
Az alábbi példa mind a kilenc hozzáadott keretrendszert mutatja be:
A PROJECT>TARGETS területen válassza a Build PhasesLink Binary with Libraries (Létrehozási fázisok> bináris csatolása kódtárakkal) lehetőséget. A listában csak a
MicrosoftTunnelApi.xcframework
keretrendszert kell hozzáadni. Ha más keretrendszerek is szerepelnek a listában, távolítsa el őket a mínuszjellel (-):
2. lépés – A info.plist
fájl frissítése
info.plist
Az Xcode-alkalmazásprojektben erősítse meg a következő beállításokat:
Csomagazonosító: Győződjön meg arról, hogy az iOS-mobilalkalmazáshoz tartozó alkalmazásregisztráció Microsoft Entra csomagazonosítója megegyezik az alkalmazásprojekt csomagazonosítójával:
A csomagazonosító ellenőrzése:
URL-típusok: APROJEKTCÉLOK> területen válassza az Információ lehetőséget.
Az URL-típusok között győződjön meg arról, hogy a
$(PRODUCT_BUNDLE_IDENTIFIER)
változó létezik. Amikor az iOS-hez készült Intune App SDK-t integrálta az alkalmazásprojekttel (ez egy kötelező előfeltétel), létre kell hoznia ezt a változót.Ha a változó nem található, akkor hozzá kell adnia:
Az iOS-hez készült Intune App SDK (kötelező előfeltétel) használatával hozzon létre egy
info.plist
Array tulajdonságot, és nevezze el lekérdezett URL-sémáknak.Adja hozzá az iOS-hez készült Intune App SDK fejlesztői útmutatójának 5. lépésében felsorolt sztringelemeket. Ez a lépés létrehozza a Intune MAM SDK URL-sémákat.
Az alábbi példa a lekérdezett URL-sémákat használó info.plist fájlt mutatja be:
Adja hozzá a változót
$(PRODUCT_BUNDLE_IDENTIFIER)
.Az alábbi példa az URL-típusok változót
$(PRODUCT_BUNDLE_IDENTIFIER)
mutatja be:
IntuneMAMSettings: Győződjön meg arról, hogy a következő MSAL-beállítások vannak konfigurálva a megfelelő Microsoft Entra alkalmazásregisztrációs értékekkel:
Nyissa meg a PROJEKT>CÉLOK információit>.
Válassza az IntuneMAMSettings lehetőséget. Erősítse meg a beállításokat:
-
ADALAuthority
: Adja meg a Microsoft Entra bérlőazonosítót, példáulhttps://login.microsoftonline.com/USE_YOUR_ Directory (tenant) ID
: . -
ADALClientId
: Adja meg az alkalmazás ügyfél-azonosítóját. -
ADALRedirectUri
: Írja be a következőt:msauth.$(PRODUCT_BUNDLE_IDENTIFIER):/auth
.
-
Ha az iOS-hez készült Intune App SDK-t integrálta az alkalmazásprojekttel (ez kötelező előfeltétel), ezeket a beállításokat konfigurálni kell.
Ha ezek a beállítások nincsenek konfigurálva, akkor konfigurálnia kell őket. Az IntuneMAMSettings
info.plist
Dictionary tulajdonság és a társított Microsoft Authentication Library-sztringek létrehozásához kövesse az Intune iOS-hez készült App SDK (kötelező előfeltétel) fejlesztői útmutatóját az MSAL-beállítások konfigurálása Intune App SDK-hoz című témakörben.Az alábbi példa a konfigurált értékeket mutatja be:
3. lépés – A Bitcode kikapcsolása
- Lépjen a PROJECT>TARGETS>buildelési beállításaihoz.
- Válassza a Létrehozási beállítások>Bitkód engedélyezése lehetőséget.
- Válassza a Nem lehetőséget.
4. lépés – Kulcsláncmegosztás hozzáadása
Előfordulhat, hogy a kulcskarika megosztása jelen van az alkalmazásprojektben. Ha nincs ott, adja hozzá:
- Lépjen a PROJECT>TARGETS>aláírási & képességeihez.
- Válassza a Kulcslánc megosztása lehetőséget.
- A Kulcslánccsoportok listában adja hozzá a következőt: (+)
com.microsoft.workplacejoin
.
5. lépés – Az SDK integrálása az alkalmazással
✔️ Használja a mintaalkalmazástTunnelMAMTestApp2.xcproject
.
Az üzletági alkalmazástól és annak implementálásától/rendeltetésétől függően a használata MicrosoftTunnelApi
eltérő lehet. Az SDK alkalmazással való integrálása során néhány alapvető funkciót érdemes tudni:
- Az Microsoft Tunnel mobilalkalmazás-kezeléshez iOS SDK-val folytatott összes interakció egyetlen
MicrosoftTunnelAPI
objektumon keresztül történik. - Az
MicrosoftTunnelAPI
objektum egy interfészt megvalósítóMicrosoftTunnelDelegate
delegált használatával kommunikál az alkalmazással.
A Microsoft Tunnel-delegált megírásának és inicializálásának MicrosoftTunnelAPI
megismeréséhez használja az Microsoft Tunnel mobilalkalmazás-kezeléshez iOS SDK mintaalkalmazásokat (megnyit egy GitHub-webhelyet).
A mintaalkalmazásokban az AppDelegate Xcode projekt a következőt jeleníti meg:
- MSAL URL-visszahívások kezelése
- Az Alagúthoz szükséges regisztrációs és inicializálási folyamat elindítása
Elsőként nyissa meg a TunnelMAMTestApp2.xcproject
mintaalkalmazást, és tekintse meg az AppDelegate & MicrosoftTunnelDelegate elemet az alkalmazásprojektben.
Mintaalkalmazások
✔️ Töltse le Microsoft Tunnel mobilalkalmazás-kezeléshez iOS SDK-mintaalkalmazásokat (megnyit egy GitHub-webhelyet).
Ezek a mintaalkalmazások segíthetnek a kezdésben és a különböző forgatókönyvek lefedésében.
MicrosoftTunnelAPI-metódusok
A MicrosoftTunnelAPI
a következő módszereket tartalmazza:
Initialize
– Ellenőrzi és beállítja a VPN-konfigurációkat, beállítja a naplózást, és beállítja a példánytMicrosoftTunnelAPI
.Connect
– Lekéri a példányt, és engedélyezi aMicrosoftTunnelAPI
hálózati forgalom elfogását. Ha az API nem inicializálva van, hibaüzenet jelenik meg.Disconnect
– Lekéri a példányt, és letiltja aMicrosoftTunnelAPI
hálózati forgalom elfogását. Ha az API nem inicializálva van, hibaüzenet jelenik meg.onTokenRequired
–Szabadon választható. Ha az alkalmazás már integrálva van azIntuneMAM
vagy az MSAL-sel, ezt aonTokenRequired
módszert kell implementálnia. Ez a metódus a és azIntuneMAMSettings
MSAL használatával szerez be érvényes hitelesítési jogkivonatot a Microsoft Tunnel Gatewayhez való csatlakozáshoz.Logging
– Vannak különböző naplózási osztályok, amelyeket ak
következő jelöl: . PéldáulkLoggingClassConnect
létrehoz egy naplózási kimenetet az Xcode-konzolon. Ezek a naplózási konfigurációs kulcsok hozzáadhatók a delegált konfigurációhoz. A mintaalkalmazásokban példákat láthat ezekre a naplózási osztályokra.kLoggingClassInternal
kLoggingClassConnect
kLoggingClassPacket
kLoggingClassSocket
kLoggingClassHttp
kLoggingClassIntune
kLoggingClassMobileAccess
kLoggingSeverityDebug
kLoggingSeverityInfo
kLoggingSeverityWarn
kLoggingSeverityMinor
kLoggingSeverityMajor
kLoggingSeverityCrit
Figyelmeztetés
Ne használjon hibakeresési kulcsokat az üzembe helyezett alkalmazásokban. A kulcsok képesek a felhasználó azonosítására alkalmas információk és biztonsági adatok naplózására és megjelenítésére.
Naplózás iOS/iPadOS LOB-alkalmazásokon
Az SDK integrálása nem engedélyezi automatikusan a naplózást. A fejlesztőnek hozzá kell adnia a megfelelő kódot a naplózási delegált keretrendszer implementálásához és a megfelelő naplózási hívások indításához. Az adott implementáció az SDK-tól és a fejlesztő követelményeitől függően változik.
A fejlesztőnek:
Győződjön meg arról, hogy nem tartalmaznak ügyfélazonosításra alkalmas vagy végfelhasználói személyes adatokat a naplózásban. Meg kell felelniük az adatvédelmi előírásoknak.
Konzultáljon a vállalat/szervezet adatvédelmi csapatával, és működjön együtt vele. Az adatvédelmi csapat útmutatást nyújthat a naplózható megfelelő adatokhoz és a bizalmas adatok megfelelő kezelési módjaihoz.
Figyelmeztetés
A naplózással és az adatvédelemmel kapcsolatos konkrét útmutatásért tekintse meg az iOS SDK Microsoft Tunnel mobilalkalmazás-kezeléshez adatvédelmi dokumentációját (pdf-fájlt nyit meg a GitHubon).
példa MAM-Tunnel naplódelegálási módszerre
A Microsoft Tunnel for Mobile Application Management adatvédelmi információi
Az Ön adatainak védelme fontos számunkra. Tekintse át az alábbi, adatvédelemmel kapcsolatos online dokumentációt:
- A Microsoft adatvédelmi nyilatkozata
- Adatvédelem és személyes adatok a Intune
- Adattárolás és -feldolgozás Intune
Az Microsoft Tunnel mobilalkalmazás-kezeléshez iOS SDK mobilalkalmazásokba való integrálásakor a rendszer a következő adatokat gyűjti, amikor egy fejlesztő:
- Engedélyezi a Intune MAM-telemetriai modult az alkalmazásban
Az összegyűjtött adatok a következő területeket tartalmazhatják:
- Microsoft Tunnel mobilalkalmazás-kezeléshez SDK-verzió
- A Microsoft által létrehozott felhasználói adatok
- Eszközazonosító
- Hardver- és szoftverinformációk
- Eszköz készítése
- Eszközmodell
- Eszköz operációs rendszerének verziója
- Rendszergazda és fiókadatok
- Intune bérlőazonosító
- Microsoft Entra bérlőazonosító
- Használat mérése:
- VPN-inicializálás
- VPN-csatlakozási és leválasztási események
- Hibainformációk
- A VPN-kapcsolat sikertelenségével kapcsolatos hibák
A rendszer nem gyűjt felhasználóazonosításra alkalmas adatokat.
Fontos
Fejlesztőként az SDK integrálásakor fontos, hogy ne tartalmazzon felhasználó azonosítására alkalmas adatokat, amikor kóddal kezeli és rögzíti az üzeneteket az alkalmazásban.
Ismert problémák
További ismert problémákért tekintse meg az iOS/iPadOS Microsoft Tunnel mobilalkalmazás-kezeléshez – Intune rendszergazdai útmutatót.
Következő lépések
iOS/iPadOS Microsoft Tunnel mobilalkalmazás-kezeléshez – Intune rendszergazdai útmutató