Hitelesítés és engedélyezés az Azure Spatial Anchors számára

Ebben a cikkben megismerheti, hogyan hitelesíthet az Azure Spatial Anchors szolgáltatásban az alkalmazásból vagy a webszolgáltatásból. Megismerheti azt is, hogyan vezérelheti a Térbeli horgonyfiókokhoz való hozzáférést az Azure szerepköralapú hozzáférés-vezérlésével (Azure RBAC) a Microsoft Entra-azonosítóban.

Figyelmeztetés:

Javasoljuk, hogy a gyors előkészítéshez használjon fiókkulcsokat, de csak a fejlesztés/prototípuskészítés során. Nem javasoljuk, hogy beágyazott fiókkulccsal szállítsa az alkalmazást éles üzembe. Ehelyett használja a következőben ismertetett, felhasználó- vagy szolgáltatásalapú Microsoft Entra hitelesítési módszereket.

Áttekintés

Diagram that shows an overview of authentication to Azure Spatial Anchors.

Egy adott Azure Spatial Anchors-fiók eléréséhez az ügyfeleknek először be kell szereznie egy hozzáférési jogkivonatot az Azure Mixed Reality Security Token Service-ből (STS). Az STS-ből beszerzett tokenek élettartama 24 óra. Ezek olyan információkat tartalmaznak, amelyeket a Spatial Anchors szolgáltatások használnak a fiók engedélyezési döntéseinek meghozatalához, és biztosítják, hogy csak a jogosult tagok férhessenek hozzá a fiókhoz.

A hozzáférési jogkivonatok a Microsoft Entra ID által kibocsátott fiókkulcsokért vagy jogkivonatokért cserébe is beszerezhetők.

A fiókkulcsokkal gyorsan megkezdheti az Azure Spatial Anchors szolgáltatás használatát. Mielőtt azonban éles környezetben helyezené üzembe az alkalmazást, javasoljuk, hogy frissítse az alkalmazást a Microsoft Entra-hitelesítés használatára.

A Microsoft Entra hitelesítési jogkivonatokat kétféleképpen szerezheti be:

  • Ha vállalati alkalmazást készít, és a vállalata a Microsoft Entra ID azonosítót használja identitásrendszerként, használhatja a felhasználóalapú Microsoft Entra-hitelesítést az alkalmazásban. Ezután hozzáférést adhat a Térbeli horgonyfiókokhoz a meglévő Microsoft Entra biztonsági csoportokkal. Közvetlenül a szervezet felhasználóinak is biztosíthat hozzáférést.
  • Ellenkező esetben azt javasoljuk, hogy szerezze be a Microsoft Entra-jogkivonatokat egy olyan webszolgáltatásból, amely támogatja az alkalmazást. Ezt a módszert éles alkalmazásokhoz javasoljuk, mert így elkerülheti az Azure Spatial Anchorshoz való hozzáférés hitelesítő adatainak beágyazását az ügyfélalkalmazásban.

Fiókkulcsok

Az első lépések legegyszerűbb módja, ha fiókkulcsokat használ az Azure Spatial Anchors-fiókhoz való hozzáféréshez. A fiókkulcsokat az Azure Portalon szerezheti be. Nyissa meg a fiókját, és válassza a Kulcsok lapot:

Screenshot that shows the Keys tab with the Copy button for the Primary key highlighted.

Két kulcs érhető el. Mindkettő egyszerre érvényes a Térbeli horgonyok fiókhoz való hozzáféréshez. Javasoljuk, hogy rendszeresen frissítse a fiók eléréséhez használt kulcsot. A két különálló érvényes kulcs lehetővé teszi a frissítések állásidő nélküli használatát. Alternatív megoldásként csak az elsődleges kulcsot és a másodlagos kulcsot kell frissítenie.

Az SDK beépített támogatást nyújt a fiókkulcsokkal történő hitelesítéshez. Csak be kell állítania a AccountKey tulajdonságot az cloudSession objektumon:

this.cloudSession.Configuration.AccountKey = @"MyAccountKey";

A tulajdonság beállítása után az SDK kezeli a hozzáférési jogkivonat fiókkulcsának cseréjét és az alkalmazáshoz szükséges tokenek gyorsítótárazását.

Microsoft Entra felhasználói hitelesítés

A Microsoft Entra-felhasználókat célzó alkalmazások esetében javasoljuk, hogy használjon Microsoft Entra-jogkivonatot a felhasználó számára. Ezt a jogkivonatot az MSAL használatával szerezheti be. Kövesse az alkalmazások regisztrálására vonatkozó rövid útmutató lépéseit, amelyek a következőket tartalmazzák:

Az Azure Portalon

  1. Regisztrálja az alkalmazást a Microsoft Entra ID-ban natív alkalmazásként. A regisztráció részeként meg kell határoznia, hogy az alkalmazás több-e. Meg kell adnia az alkalmazás számára engedélyezett átirányítási URL-címeket is.

  2. Lépjen az API engedélyek lapjára.

  3. Válassza az Engedély hozzáadása lehetőséget.

    1. Válassza a Vegyes valóság erőforrás-szolgáltató lehetőséget a szervezetem által használt API-kban.
    2. Válassza a Delegált engedélyek lehetőséget.
    3. Válassza a mixedreality.signin lehetőséget a mixedreality területen.
    4. Jelölje be az Engedélyek hozzáadása lehetőséget.
  4. Válassza a Rendszergazdai hozzájárulás megadása lehetőséget.

  5. Rendeljen asa RBAC-szerepkört ahhoz az alkalmazáshoz vagy felhasználókhoz, amelyeknek hozzáférést szeretne adni az erőforráshoz. Ha azt szeretné, hogy az alkalmazás felhasználói eltérő szerepkörrel rendelkezzenek az ASA-fiókhoz, regisztráljon több alkalmazást a Microsoft Entra-azonosítóban, és rendeljen hozzájuk egy külön szerepkört. Ezután implementálja az engedélyezési logikát, hogy a megfelelő szerepkört használja a felhasználók számára. A szerepkör-hozzárendelés részletes lépéseit az Azure Portalon elérhető Azure-szerepkörök hozzárendelése című témakörben találja.

A kódban

  1. Mindenképpen használja a saját Microsoft Entra-alkalmazás alkalmazásazonosítóját és átirányítási URI-ját az ügyfélazonosítóhoz és a RedirectUri-paraméterekhez az MSAL-ben.
  2. Adja meg a bérlői adatokat:
    1. Ha az alkalmazás csak a Saját szervezetet támogatja, cserélje le ezt az értéket a bérlőazonosítóra vagy a bérlő nevére. Például contoso.microsoft.com.
    2. Ha az alkalmazás bármely szervezeti címtárban támogatja a fiókokat, cserélje le ezt az értéket a szervezetekre.
    3. Ha az alkalmazás támogatja a Microsoft-fiók összes felhasználóját, cserélje le ezt az értéket a Common (Közös) értékre.
  3. A jogkivonat-kérelemben állítsa a hatókört a következőrehttps://sts.mixedreality.azure.com//.default: . Ez a hatókör azt jelzi a Microsoft Entra-azonosítónak, hogy az alkalmazás jogkivonatot kér a Mixed Reality biztonsági jogkivonat-szolgáltatáshoz (STS).

A lépések elvégzése után az alkalmazásnak rendelkeznie kell egy Microsoft Entra-jogkivonattal az MSAL-ból. Ezt a Microsoft Entra-jogkivonatot beállíthatja a authenticationToken felhőbeli munkamenet konfigurációs objektumaként:

this.cloudSession.Configuration.AuthenticationToken = @"MyAuthenticationToken";

Microsoft Entra szolgáltatáshitelesítés

Az Azure Spatial Anchorst éles környezetben használó alkalmazások üzembe helyezéséhez javasoljuk, hogy használjon egy háttérszolgáltatást, amely hitelesítési kérelmeket fog közvetíteni. A folyamat áttekintése:

Diagram that provides an overview of authentication to Azure Spatial Anchors.

Itt feltételezzük, hogy az alkalmazás a saját mechanizmusával hitelesíti a háttérszolgáltatást. (Például egy Microsoft-fiók, PlayFab, Facebook, Google-azonosító vagy egyéni felhasználónév és jelszó.) Miután a felhasználók hitelesítése megtörtént a háttérszolgáltatásban, a szolgáltatás lekérhet egy Microsoft Entra-jogkivonatot, kicserélheti az Azure Spatial Anchors hozzáférési jogkivonatára, és visszaküldheti azt az ügyfélalkalmazásba.

A Microsoft Entra hozzáférési jogkivonat lekérése az MSAL-en keresztül történik. Kövesse az alkalmazás regisztrálása rövid útmutatójának lépéseit, amelyek a következőket tartalmazzák:

Az Azure Portalon

  1. Az alkalmazás regisztrálása a Microsoft Entra-azonosítóban:
    1. Az Azure Portalon válassza a Microsoft Entra id, majd a Alkalmazásregisztrációk lehetőséget.
    2. Válassza az Új regisztráció lehetőséget.
    3. Adja meg az alkalmazás nevét, válassza a Webalkalmazás/API lehetőséget alkalmazástípusként, és adja meg a szolgáltatás hitelesítési URL-címét. Select Create.
  2. Az alkalmazásban válassza a Gépház, majd a Tanúsítványok és titkos kódok lapot. Hozzon létre egy új titkos ügyfélkulcsot, válasszon egy időtartamot, majd válassza a Hozzáadás lehetőséget. Ügyeljen arra, hogy mentse a titkos kulcs értékét. Fel kell vennie a webszolgáltatás kódjába.
  3. Rendeljen asa RBAC-szerepkört ahhoz az alkalmazáshoz vagy felhasználókhoz, amelyeknek hozzáférést szeretne adni az erőforráshoz. Ha azt szeretné, hogy az alkalmazás felhasználói eltérő szerepkörrel rendelkezzenek az ASA-fiókhoz, regisztráljon több alkalmazást a Microsoft Entra-azonosítóban, és rendeljen hozzájuk egy külön szerepkört. Ezután implementálja az engedélyezési logikát, hogy a megfelelő szerepkört használja a felhasználók számára. A szerepkör-hozzárendelés részletes lépéseit az Azure Portalon elérhető Azure-szerepkörök hozzárendelése című témakörben találja.

A kódban

Megjegyzés:

A Térbeli horgonyok mintaalkalmazások részeként elérhető szolgáltatásmintát használhatja.

  1. Az MSAL-ben mindenképpen használja a saját Microsoft Entra-alkalmazás alkalmazásazonosítóját, alkalmazáskulcsát és átirányítási URI-ját ügyfélazonosítóként, titkos kódként és RedirectUri-paraméterként.
  2. Állítsa be a bérlőazonosítót a saját Microsoft Entra-bérlőazonosítóra az MSAL szolgáltatói paraméterében.
  3. A jogkivonat-kérelemben állítsa a hatókört a következőrehttps://sts.mixedreality.azure.com//.default: .

A lépések elvégzése után a háttérszolgáltatás lekérhet egy Microsoft Entra-jogkivonatot. Ezután kicserélheti egy MR-jogkivonatra, amelyet vissza fog adni az ügyfélnek. Az MR-jogkivonat lekéréséhez a Microsoft Entra-jogkivonatot REST-hívással lehet lekérni. Íme egy mintahívás:

GET https://sts.mixedreality.azure.com/Accounts/35d830cb-f062-4062-9792-d6316039df56/token HTTP/1.1
Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1Ni<truncated>FL8Hq5aaOqZQnJr1koaQ
Host: sts.mixedreality.azure.com
Connection: Keep-Alive

HTTP/1.1 200 OK
Date: Sun, 24 Feb 2019 08:00:00 GMT
Content-Type: application/json; charset=utf-8
Content-Length: 1153
Accept: application/json
MS-CV: 05JLqWeKFkWpbdY944yl7A.0
{"AccessToken":"eyJhbGciOiJSUzI1NiIsImtpZCI6IjI2MzYyMTk5ZTI2NjQxOGU4ZjE3MThlM2IyMThjZTIxIiwidHlwIjoiSldUIn0.eyJqdGkiOiJmMGFiNWIyMy0wMmUxLTQ1MTQtOWEzNC0xNzkzMTA1NTc4NzAiLCJjYWkiOiIzNWQ4MzBjYi1mMDYyLTQwNjItOTc5Mi1kNjMxNjAzOWRmNTYiLCJ0aWQiOiIwMDAwMDAwMC0wMDAwLTAwMDAtMDAwMC0wMDAwMDAwMDAwMDAiLCJhaWQiOiIzNWQ4MzBjYi1mMDYyLTQwNjItOTc5Mi1kNjMxNjAzOWRmNTYiLCJhYW8iOi0xLCJhcHIiOiJlYXN0dXMyIiwicmlkIjoiL3N1YnNjcmlwdGlvbnMvNzIzOTdlN2EtNzA4NC00ODJhLTg3MzktNjM5Y2RmNTMxNTI0L3Jlc291cmNlR3JvdXBzL3NhbXBsZV9yZXNvdXJjZV9ncm91cC9wcm92aWRlcnMvTWljcm9zb2Z0Lk1peGVkUmVhbGl0eS9TcGF0aWFsQW5jaG9yc0FjY291bnRzL2RlbW9fYWNjb3VudCIsIm5iZiI6MTU0NDU0NzkwMywiZXhwIjoxNTQ0NjM0MzAzLCJpYXQiOjE1NDQ1NDc5MDMsImlzcyI6Imh0dHBzOi8vbXJjLWF1dGgtcHJvZC50cmFmZmljbWFuYWdlci5uZXQvIiwiYXVkIjoiaHR0cHM6Ly9tcmMtYW5jaG9yLXByb2QudHJhZmZpY21hbmFnZXIubmV0LyJ9.BFdyCX9UJj0i4W3OudmNUiuaGgVrlPasNM-5VqXdNAExD8acFJnHdvSf6uLiVvPiQwY1atYyPbOnLYhEbIcxNX-YAfZ-xyxCKYb3g_dbxU2w8nX3zDz_X3XqLL8Uha-rkapKbnNgxq4GjM-EBMCill2Svluf9crDmO-SmJbxqIaWzLmlUufQMWg_r8JG7RLseK6ntUDRyDgkF4ex515l2RWqQx7cw874raKgUO4qlx0cpBAB8cRtGHC-3fA7rZPM7UQQpm-BC3suXqRgROTzrKqfn_g-qTW4jAKBIXYG7iDefV2rGMRgem06YH_bDnpkgUa1UgJRRTckkBuLkO2FvA"}

Az Engedélyezési fejléc a következőképpen van formázva: Bearer <Azure_AD_token>

A válasz egyszerű szövegben tartalmazza az MR-jogkivonatot.

Ez az MR-jogkivonat ezután visszakerül az ügyfélhez. Az ügyfélalkalmazás ezután beállíthatja hozzáférési jogkivonatként a felhőbeli munkamenet konfigurációjában:

this.cloudSession.Configuration.AccessToken = @"MyAccessToken";

Azure szerepköralapú hozzáférés-vezérlő

A szolgáltatás alkalmazásainak, szolgáltatásainak vagy Microsoft Entra-felhasználóinak nyújtott hozzáférési szint szabályozásához szükség szerint hozzárendelheti ezeket a meglévő szerepköröket az Azure Spatial Anchors-fiókokhoz:

  • Térbeli horgonyfiók tulajdonosa. Az ilyen szerepkörrel rendelkező alkalmazások vagy felhasználók térbeli horgonyokat hozhatnak létre, lekérdezhetik és törölhetik őket. Ha fiókkulcsokkal hitelesíti a fiókját, a rendszer a térbeli horgonyfiók tulajdonosi szerepkörét rendeli hozzá a hitelesített taghoz.
  • Térbeli horgonyfiók közreműködője. Az ilyen szerepkörrel rendelkező alkalmazások vagy felhasználók térbeli horgonyokat hozhatnak létre, és lekérdezhetik őket, de nem törölhetik őket.
  • Térbeli horgonyok fiókolvasója. Az ilyen szerepkörrel rendelkező alkalmazások vagy felhasználók csak térbeli horgonyokat kérdezhetnek le. Nem hozhatnak létre újakat, nem törölhetnek meglévőket, és nem frissíthetik rajtuk a metaadatokat. Ezt a szerepkört általában olyan alkalmazásokhoz használják, amelyekben egyes felhasználók a környezetet űzik, míg mások csak a korábban a környezetben elhelyezett horgonyokat tudják visszahívni.

Következő lépések

Hozza létre az első alkalmazást az Azure Spatial Anchors használatával:

iOS