Egyoldalas webalkalmazás védelme nem interaktív bejelentkezéssel

Biztonságossá teheti az egyoldalas webalkalmazást a Microsoft Entra-azonosítóval, még akkor is, ha a felhasználó nem tud bejelentkezni a Microsoft Entra-azonosítóba.

A nem interaktív hitelesítési folyamat létrehozásához először hozzon létre egy Azure-függvény biztonságos webszolgáltatást, amely felelős a hozzáférési jogkivonatok Microsoft Entra-azonosítóból való beszerzéséért. Ez a webszolgáltatás kizárólag az egyoldalas webalkalmazás számára érhető el.

Az Azure Térképek-fiókhitelesítés részleteinek megtekintése az Azure Portalon:

  1. Jelentkezzen be az Azure Portalra.

  2. Lépjen az Azure Portal menüjére. Válassza az Összes erőforrás lehetőséget, majd válassza ki az Azure Térképek-fiókját.

  3. A bal oldali panel Gépház területén válassza a Hitelesítés lehetőséget.

    Screenshot showing your Azure Maps authentication options in the Azure portal.

Az Azure Térképek-fiók létrehozásakor három érték jön létre. Az Azure Térképek kétféle hitelesítést támogatnak:

  • Microsoft Entra-hitelesítés: A Client ID REST API-kérésekhez használandó fiókot jelöli. Az Client ID értéket az alkalmazáskonfigurációban kell tárolni, majd le kell kérni, mielőtt az Azure Térképek Microsoft Entra-hitelesítést használó HTTP-kéréseket készítené.
  • Megosztott kulcs hitelesítése: A Secondary KeyPrimary Key megosztott kulcsos hitelesítéshez használt előfizetési kulcs. A megosztott kulcsos hitelesítés az Azure Térképek-fiók által létrehozott kulcs átadásán alapul, minden kéréssel együtt az Azure Térképek. Javasoljuk, hogy rendszeresen hozza létre újra a kulcsokat. A regeneráció során az aktuális kapcsolatok fenntartásához két kulcs van megadva. Az egyik kulcs használható, miközben újragenerálja a másikat. A kulcsok újragenerálása után az új kulcsok használatához frissítenie kell minden olyan alkalmazást, amely hozzáfér ehhez a fiókhoz. További információ: Hitelesítés az Azure Térképek

Tipp.

Az Azure Térképek támogathatja a felhasználói bejelentkezésből vagy interaktív folyamatokból származó hozzáférési jogkivonatokat. Interaktív folyamatokat használhat a hozzáférés-visszavonás és a titkos kódok kezelésének korlátozottabb hatóköréhez.

Azure-függvény létrehozása

Biztonságos webszolgáltatás-alkalmazás létrehozása, amely a Microsoft Entra-azonosítóhoz való hitelesítésért felelős:

  1. Hozzon létre egy függvényt az Azure Portalon. További információ: Az Azure Functions használatának első lépései.

  2. Konfigurálja a CORS-szabályzatot az Azure-függvényen úgy, hogy az egyoldalas webalkalmazás akadálymentes legyen. A CORS-szabályzat biztonságossá teszi a böngészőügyfeleket a webalkalmazás engedélyezett eredetéhez. További információ: CORS-funkció hozzáadása.

  3. Adjon hozzá egy rendszer által hozzárendelt identitást az Azure-függvényhez, amely lehetővé teszi egy szolgáltatásnév létrehozását a Microsoft Entra ID-hitelesítéshez.

  4. Szerepköralapú hozzáférés biztosítása a rendszer által hozzárendelt identitáshoz az Azure Térképek-fiókhoz. További információ: Szerepköralapú hozzáférés biztosítása.

  5. Írjon kódot az Azure-függvényhez az Azure-Térképek hozzáférési jogkivonatok beszerzéséhez a rendszer által hozzárendelt identitással az egyik támogatott mechanizmussal vagy a REST protokolllal. További információ: Jogkivonatok beszerzése az Azure-erőforrásokhoz.

    Íme egy példa REST protokollra:

    GET /MSI/token?resource=https://atlas.microsoft.com/&api-version=2019-08-01 HTTP/1.1
    Host: localhost:4141
    

    És íme egy példa válasz:

    HTTP/1.1 200 OK
    Content-Type: application/json
    
    {
        "access_token": "eyJ0eXAi…",
        "expires_on": "1586984735",
        "resource": "https://atlas.microsoft.com/",
        "token_type": "Bearer",
        "client_id": "..."
    }
    
  6. Konfigurálja a HttpTrigger Azure-függvény biztonságát:

    1. Függvényelérési kulcs létrehozása
    2. Biztonságos HTTP-végpont az azure-függvényhez éles környezetben.
  7. Webalkalmazás konfigurálása az Azure Térképek Web SDK-ban.

    //URL to custom endpoint to fetch Access token
    var url = 'https://{App-Name}.azurewebsites.net/api/{Function-Name}?code={API-Key}';
    
    var map = new atlas.Map('myMap', {
                center: [-122.33, 47.6],
                zoom: 12,
                language: 'en-US',
                view: "Auto",
            authOptions: {
                authType: "anonymous",
                clientId: "<insert>", // azure map account client id
                getToken: function(resolve, reject, map) {
                    fetch(url).then(function(response) {
                        return response.text();
                    }).then(function(token) {
                        resolve(token);
                    });
                }
            }
        });
    
        // use the following events to debug, you can remove them at any time.
        map.events.add("tokenacquired", function () {
            console.log("token acquired");
        });
        map.events.add("error", function (err) {
            console.log(JSON.stringify(err.error));
        });
    

Szerepköralapú hozzáférés biztosítása a felhasználók számára az Azure Térképek

Az Azure szerepköralapú hozzáférés-vezérlést (Azure RBAC) úgy adhat meg, ha egy Microsoft Entra-csoportot vagy biztonsági tagot rendel egy vagy több Azure-Térképek szerepkör-definícióhoz.

Az Azure Térképek elérhető Azure-szerepkördefinícióinak megtekintéséhez tekintse meg a beépített Azure-Térképek szerepkördefiníciókat.

Az elérhető Azure Térképek szerepkörök a létrehozott felügyelt identitáshoz vagy szolgáltatásnévhez való hozzárendelésének részletes lépéseit az Azure-szerepkörök hozzárendelése az Azure Portal használatával című témakörben találja.

Az Azure Térképek alkalmazás és a nagy mennyiségű felhasználó erőforrás-hozzáférésének hatékony kezeléséhez tekintse meg a Microsoft Entra-csoportokat.

Fontos

Ahhoz, hogy a felhasználók hitelesíthessenek egy alkalmazást, először létre kell hozniuk a felhasználókat a Microsoft Entra-azonosítóban. További információkért lásd: Felhasználók hozzáadása és törlése a Microsoft Entra ID-vel.

A nagy címtárak felhasználók számára történő hatékony kezeléséről a Microsoft Entra ID című témakörben olvashat.

Figyelmeztetés

Az Azure Térképek beépített szerepkördefiníciók nagyon nagy engedélyezési hozzáférést biztosítanak számos Azure Térképek REST API-hoz. Az API-k minimális hozzáférésének korlátozásához lásd : egyéni szerepkördefiníció létrehozása és a rendszer által hozzárendelt identitás hozzárendelése az egyéni szerepkör-definícióhoz. Ez lehetővé teszi az alkalmazás számára az Azure Térképek eléréséhez szükséges legkisebb jogosultságot.

További lépések

Az egyoldalas alkalmazásforgatókönyv további ismerete:

Keresse meg az Azure Térképek-fiókjához tartozó API-használati metrikákat:

További példák a Microsoft Entra ID és az Azure Térképek integrálására: