Megosztás a következőn keresztül:


Microsoft Tunnel for MAM iOS SDK fejlesztői útmutató

Megjegyzés:

Ez a funkció akkor érhető el, ha a Microsoft Intune 2. csomagját vagy a Microsoft Intune Suite-t bővítménylicencként adja hozzá. További információ: Az Intune Suite bővítmény képességeinek használata.

A Microsoft Tunnel for MAM iOS SDK fejlesztői útmutatója fejlesztőknek készült forrás. Segít a fejlesztőknek integrálni és konfigurálni az SDK-t egy iOS/iPadOS-alkalmazásba. A Microsoft Tunnel for MAM áttekintését az iOS-hez/iPadOS-hez készült Microsoft Tunnel – 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

A Microsoft Tunnel for MAM iOS SDK 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. A Microsoft Tunnel for MAM iOS SDK folytatása előtt győződjön meg arról, hogy a következő projektek sikeresen létrejönnek:

    1. iOS-hez készült Intune App SDK (megnyit egy GitHub-webhelyet): Legalább telepítse a 16.1.1-es verziót.

      Ezen a webhelyen tekintse át az iOS-hez készült Intune App SDK microsoftos licencfeltételeit ismertető fájlt is.

      A rekordok esetében őrizze meg a licencfeltételek másolatát. A Microsoft Tunnel for MAM 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.

    2. 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 for MAM iOS SDK-t (megnyit egy GitHub-webhelyet). Ez az SDK a cikk középpontjában áll.

    Fontos

    Az Intune rendszeresen kiadja a Microsoft Tunnel for MAM iOS SDK frissítéseit. Rendszeresen ellenőrizze a Microsoft Tunnel for MAM iOS SDK-t a frissítésekért. 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.

A Microsoft Tunnel for MAM iOS SDK 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:

Rajz a Microsoft Tunnel Gateway for MAM iOS/iPadOS architektúrához a Microsoft Intune-ban.

  1. Az alkalmazás első indításakor a microsoft tunnel for MAM SDK for iOS használatával jön létre kapcsolat.

  2. Az alagút lekéri az eszközhitelesítési jogkivonatot a Microsoft Entra-azonosítóból.

    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.

  3. Tcp Connect történik, amely egy TLS-kézfogás a jogkivonat és az alagútkiszolgáló között.

  4. 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.

  5. Amikor a mobilalkalmazás kapcsolatot létesít egy helyszíni vállalati erőforrással:

    1. A Microsoft Tunnel for MAM API a vállalati erőforráshoz való csatlakozásra vonatkozó kéréseket küld.
    2. 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.plistfá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

Az alábbi keretrendszerek tartalmazzák az Intune Microsoft Tunnel Gatewayjel 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:

  1. 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
  2. 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:

    Képernyő, amely bemutatja, hogyan adhat hozzá fájlokat az alkalmazásprojekthez az Xcode-ban macOS-eszközön.

  3. 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:

    Képernyőkép a keretrendszerek Xcode-ba történő beágyazását macOS-eszközön ábrázoló képernyőképről.

    Az alábbi példa mind a kilenc hozzáadott keretrendszert mutatja be:

    Képernyőkép az Xcode-ba beágyazott Összes Microsoft Tunnel-keretrendszerről macOS-eszközön.

  4. 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 (-):

    Képernyőkép, amely bemutatja, hogyan távolíthat el keretrendszereket a Bináris csatolása kódtárakkal az Xcode-ban macOS-eszközön.

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ás Microsoft Entra-alkalmazásregisztrációjában szereplő csomagazonosító megegyezik az alkalmazásprojekt csomagazonosítójával:

    A csomagazonosító ellenőrzése:

    1. Lépjen a PROJECT>TARGETS General (PROJEKTCÉLOK általános) elemre>.

    2. Válassza az Identitáscsomag>azonosítója lehetőséget:

      Képernyőkép a projekt, a célok, az általános és az identitás kiválasztásáról a csomagazonosító hozzáadásához az Xcode-ban macOS-eszközön.

  • 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 integrálta az iOS-hez készült Intune App SDK-t 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:

    1. Az iOS-hez készült Intune App SDK (kötelező előfeltétel) használatával hozzon létre egy info.plistArray 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 az Intune MAM SDK URL-sémáját.

      Az alábbi példa a lekérdezett URL-sémákat használó info.plist fájlt mutatja be:

      Képernyőkép a projekt, a célok, az információk és a lekérdezett URL-sémák értékeinek kiválasztásáról az Xcode-ban macOS-eszközön.

    2. 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:

      Képernyőkép a projekt, a célok, az információk és az URL-típusok kiválasztásáról az Xcode-ban macOS-eszközön.

  • 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:

    1. Nyissa meg a PROJEKT>CÉLOK információit>.

    2. 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óját, például https://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.

    Amikor integrálta az iOS-hez készült Intune App SDK-t 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 szótártulajdonság és a társított Microsoft Authentication Library-sztringek létrehozásához kövesse az Intune App SDK for iOS (kötelező előfeltétel) fejlesztői útmutatóját az MSAL-beállítások konfigurálása az Intune App SDK-hoz című útmutatóban.

    Az alábbi példa a konfigurált értékeket mutatja be:

    Képernyőkép a projekt, a célok, az információk és az IntuneMAMSetting kiválasztásáról az Xcode-ban macOS-eszközön.

3. lépés – A Bitcode kikapcsolása

  1. Lépjen a PROJECT>TARGETS>buildelési beállításaihoz.
  2. Válassza a Létrehozási beállítások>Bitkód engedélyezése lehetőséget.
  3. Válassza a Nem lehetőséget.

Képernyőkép a projekt, a célok, a buildbeállítások, a buildelési beállítások és a bitkód letiltásáról az Xcode-ban macOS-eszközön.

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á:

  1. Lépjen a PROJECT>TARGETS>aláírási & képességeihez.
  2. Válassza a Kulcslánc megosztása lehetőséget.
  3. A Kulcslánccsoportok listában adja hozzá a következőt: (+) com.microsoft.workplacejoin.

Képernyőkép a projekt, a célok, az aláírási & képességek, a kulcskarika megosztásáról és egy kulcskarikacsoport hozzáadásáról az Xcode-ban macOS-eszközön.

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:

  • A Microsoft Tunnel for MAM iOS SDK-val folytatott összes interakció egyetlen MicrosoftTunnelAPI objektumon keresztül kezelhető.
  • 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 MicrosoftTunnelAPImegismeréséhez használja a Microsoft Tunnel for MAM 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 a Microsoft Tunnel for MAM 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ányt MicrosoftTunnelAPI .

  • Connect – Lekéri a példányt, és engedélyezi a MicrosoftTunnelAPI 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 a MicrosoftTunnelAPI 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 az IntuneMAM vagy az MSAL-sel, ezt a onTokenRequired módszert kell implementálnia. Ez a metódus a és az IntuneMAMSettings 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 a kkövetkező jelöl: . Például kLoggingClassConnect 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 adatvédelemmel kapcsolatos konkrét útmutatásért tekintse meg a Microsoft Tunnel for MAM iOS SDK adatvédelmi dokumentációját (megnyit egy PDF-fájlt a GitHubon).

példa MAM-Tunnel naplódelegálási módszerre

Képernyőkép egy Microsoft Tunnel naplódelegálási módszerről az Xcode-ban macOS-eszközön.

Képernyőkép a Microsoft Tunnel-napló mintájának kimenetéről az Xcode-ban egy macOS-eszközön.

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:

Ha a Microsoft Tunnel for MAM iOS SDK-t mobilalkalmazásokba integrálja, a rendszer a következő adatokat gyűjti, amikor egy fejlesztő:

  • Engedélyezi az Intune MAM-telemetriamodult az alkalmazásban

Az összegyűjtött adatok a következő területeket tartalmazhatják:

  • Microsoft Tunnel a MAM SDK-hoz
  • 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
  • Rendszergazdai é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 a Microsoft Tunnel for MAM for iOS/iPadOS – Intune rendszergazdai útmutatóját.

Következő lépések

Microsoft Tunnel for MAM for iOS/iPadOS – Intune felügyeleti útmutató