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


Oktatóanyag: Felhasználók hitelesítése és engedélyezése végpontok között az Azure App Service-ben

Az Azure App Service egy hatékonyan méretezhető, önjavító webes üzemeltetési szolgáltatás. Az App Service továbbá beépített támogatást nyújt a felhasználók hitelesítéséhez és engedélyezéséhez. Ebből az oktatóanyagból megtudhatja, hogyan gondoskodhat az alkalmazások védelméről az App Service-hitelesítés és -engedélyezés segítségével. Példaként egy Express.js használ, amely a nézetek előtérbeli nézeteit használja. Az App Service-hitelesítés és -engedélyezés támogatja az összes nyelvi futtatókörnyezetet, Ön pedig az oktatóanyag elvégzésével megismerheti, hogyan alkalmazhatja ezt a kívánt nyelvre.

Azure-alkalmazás Szolgáltatás egy nagymértékben skálázható, önjavító web hosting szolgáltatást biztosít a Linux operációs rendszer használatával. Az App Service továbbá beépített támogatást nyújt a felhasználók hitelesítéséhez és engedélyezéséhez. Ebből az oktatóanyagból megtudhatja, hogyan gondoskodhat az alkalmazások védelméről az App Service-hitelesítés és -engedélyezés segítségével. Nézetekkel rendelkező Express.js használ. Az App Service-hitelesítés és -engedélyezés támogatja az összes nyelvi futtatókörnyezetet, Ön pedig az oktatóanyag elvégzésével megismerheti, hogyan alkalmazhatja ezt a kívánt nyelvre.

Az oktatóanyagban a következőket sajátíthatja el:

  • Beépített hitelesítés és engedélyezés engedélyezése
  • Alkalmazások biztonságossá tétele a nem hitelesített kérelmek ellen
  • A Microsoft Entra ID használata identitásszolgáltatóként
  • Távoli alkalmazás elérése a bejelentkezett felhasználó nevében
  • Biztonságos szolgáltatások közötti hívások jogkivonat-hitelesítéssel
  • Hozzáférési kódok használata kiszolgálói kódból

Tipp.

A forgatókönyv elvégzése után folytassa a következő eljárással, amelyből megtudhatja, hogyan csatlakozhat hitelesített felhasználóként az Azure-szolgáltatásokhoz. Gyakori forgatókönyvek például az Azure Storage vagy egy adatbázis elérése olyan felhasználóként, aki adott képességekkel vagy adott táblákhoz vagy fájlokhoz való hozzáféréssel rendelkezik.

Ebben az eljárásban a hitelesítést a Azure-alkalmazás Szolgáltatás biztosítja az üzemeltetési platform rétegében. Telepítenie kell az előtér- és háttéralkalmazást, és konfigurálnia kell a webalkalmazás hitelesítését a sikeres használathoz.

Az elméleti diagram a webes felhasználótól az előtérbeli alkalmazáson át a háttéralkalmazásig történő hitelesítési folyamatot mutatja.

A felhasználói profil lekérése

Az előtérbeli alkalmazás úgy van konfigurálva, hogy biztonságosan használja a háttér API-t. Az előtérbeli alkalmazás microsoftos bejelentkezést biztosít a felhasználó számára, majd lehetővé teszi, hogy a felhasználó lekérje a hamis profilját a háttérrendszerből. Ez az oktatóanyag hamis profillal egyszerűsíti a forgatókönyv végrehajtásának lépéseit.

Mielőtt a forráskódot végrehajtanák az előtéren, az App Service beszúrja a hitelesített accessToken adatokat az App Service x-ms-token-aad-access-token fejlécéből. Az előtérbeli forráskód ezután hozzáfér, és elküldi az accessTokent a háttérkiszolgálónak, bearerToken hogy biztonságosan hozzáférjen a háttér API-hoz. A háttérkiszolgáló ellenőrzi a tulajdonost, mielőtt az átkerül a háttérrendszer forráskódjába. Miután a háttérrendszer forráskódja megkapta a bearerTokent, használható.

A sorozat következő cikkében a tulajdonostokent egy olyan jogkivonatra cseréljük, amely hatókörrel rendelkezik a Microsoft Graph API eléréséhez. A Microsoft Graph API visszaadja a felhasználó profiladatait.

Előfeltételek

Ha nem rendelkezik Azure-előfizetéssel, első lépésként hozzon létre egy ingyenes Azure-fiókot.

1. A mintaalkalmazás klónozása

  1. Az Azure Cloud Shellben futtassa a következő parancsot a mintaadattár klónozásához.

    git clone https://github.com/Azure-Samples/js-e2e-web-app-easy-auth-app-to-app
    

2. Alkalmazások létrehozása és üzembe helyezése

Hozza létre az erőforráscsoportot, a webalkalmazás-csomagot, a webalkalmazást, és helyezze üzembe egyetlen lépésben.

  1. Váltson az előtérbeli webalkalmazás könyvtárára.

    cd js-e2e-web-app-easy-auth-app-to-app/frontend
    
  2. Az előtérbeli webalkalmazás létrehozása és üzembe helyezése az az webapp up használatával. Mivel a webalkalmazás nevének globálisan egyedinek kell lennie, cserélje le <front-end-app-name> egy egyedi névre.

    az webapp up --resource-group myAuthResourceGroup --name <front-end-app-name> --plan myPlan --sku FREE --os-type Windows --location "West Europe" --runtime "NODE:16LTS"
    
  3. Váltson a háttérbeli webalkalmazás könyvtárára.

    cd ../backend
    
  4. Helyezze üzembe a háttérbeli webalkalmazást ugyanabban az erőforráscsoportban és alkalmazáscsomagban. Mivel a webalkalmazás nevének globálisan egyedinek kell lennie, cserélje le <back-end-app-name> a monogramok vagy számok egyedi készletére.

    az webapp up --resource-group myAuthResourceGroup --name <back-end-app-name> --plan myPlan --os-type Windows --location "West Europe" --runtime "NODE:16LTS"
    
  1. Váltson az előtérbeli webalkalmazás könyvtárára.

    cd frontend
    
  2. Az előtérbeli webalkalmazás létrehozása és üzembe helyezése az az webapp up használatával. Mivel a webalkalmazás nevének globálisan egyedinek kell lennie, cserélje le <front-end-app-name> a monogramok vagy számok egyedi készletére.

    az webapp up --resource-group myAuthResourceGroup --name <front-end-app-name> --plan myPlan --sku FREE --location "West Europe" --os-type Linux --runtime "NODE:16-lts"
    
  3. Váltson a háttérbeli webalkalmazás könyvtárára.

    cd ../backend
    
  4. Helyezze üzembe a háttérbeli webalkalmazást ugyanabban az erőforráscsoportban és alkalmazáscsomagban. Mivel a webalkalmazás nevének globálisan egyedinek kell lennie, cserélje le <back-end-app-name> a monogramok vagy számok egyedi készletére.

    az webapp up --resource-group myAuthResourceGroup --name <back-end-app-name> --plan myPlan --sku FREE --location "West Europe" --runtime "NODE:16-lts"
    

3. Alkalmazásbeállítás konfigurálása

Az előtérbeli alkalmazásnak ismernie kell a háttéralkalmazás API-kérésekhez tartozó URL-címét. Az alkalmazásbeállítás konfigurálásához használja az alábbi Azure CLI-parancsot. Az URL-címnek a következő formátumban https://<back-end-app-name>.azurewebsites.netkell lennie: .

az webapp config appsettings set --resource-group myAuthResourceGroup --name <front-end-app-name> --settings BACKEND_URL="https://<back-end-app-name>.azurewebsites.net"

4. A frontend meghívja a háttérrendszert

Keresse meg az előtéralkalmazást, és adja vissza a hamis profilt a háttérrendszerből. Ez a művelet ellenőrzi, hogy az előtér sikeresen lekérte-e a profilt a háttérrendszerből, és a háttérrendszer visszaadja a profilt.

  1. Nyissa meg az előtérbeli webalkalmazást egy böngészőben. https://<front-end-app-name>.azurewebsites.net

    Képernyőkép a böngészőről, amelyen az előtéralkalmazás látható a hitelesítés sikeres befejezése után.

  2. Válassza ki a Get user's profile hivatkozást.

  3. Tekintse meg a háttér-webalkalmazásból visszaadott hamis profilt.

    Képernyőkép a kiszolgálóról visszaadott hamis profillal rendelkező böngészőről.

    A withAuthentication hamis érték azt jelzi, hogy a hitelesítés még nincs beállítva.

5. Hitelesítés konfigurálása

Ebben a lépésben engedélyezi a hitelesítést és az engedélyezést a két webalkalmazáshoz. Ez az oktatóanyag a Microsoft Entra ID azonosítót használja identitásszolgáltatóként.

Az előtéralkalmazást a következőre is konfigurálhatja:

  • Az előtérbeli alkalmazás hozzáférésének biztosítása a háttéralkalmazáshoz
  • Az App Service konfigurálása használható jogkivonat visszaadására
  • Használja a jogkivonatot a kódban.

További információ: Microsoft Entra-hitelesítés konfigurálása az App Services-alkalmazáshoz.

Hitelesítés és engedélyezés engedélyezése háttéralkalmazáshoz

  1. Az Azure Portal menüjében válassza az Erőforráscsoportok lehetőséget, vagy keressen rá és válassza ki az Erőforráscsoportokat bármelyik lapról.

  2. Az erőforráscsoportokban keresse meg és válassza ki az erőforráscsoportot. Az Áttekintés területen válassza ki a háttéralkalmazást.

  3. A háttéralkalmazás bal oldali menüjében válassza a Hitelesítés, majd az Identitásszolgáltató hozzáadása lehetőséget.

  4. Az Identitásszolgáltató hozzáadása lapon válassza a Microsoftot identitásszolgáltatóként a Microsoft és a Microsoft Entra-identitások bejelentkezéséhez.

  5. Fogadja el az alapértelmezett beállításokat, és válassza a Hozzáadás lehetőséget.

    Képernyőkép a háttéralkalmazás bal oldali menüjéről, amelyen a Hitelesítés/Engedélyezés lehetőség van kiválasztva, a beállítások pedig a jobb oldali menüben.

  6. Megnyílik a Hitelesítési lap. Másolja a Microsoft Entra alkalmazás ügyfél-azonosítóját egy jegyzettömbbe. Erre az értékre később szüksége lesz.

    Képernyőkép a Microsoft Entra Beállítások ablakáról, amelyen a Microsoft Entra alkalmazás látható, és a Microsoft Entra Applications ablak, amelyen a másolandó ügyfélazonosító látható.

Ha itt abbahagyja, egy önálló alkalmazással rendelkezik, amelyet már az App Service hitelesítése és engedélyezése biztosít. A többi szakasz bemutatja, hogyan védheti meg a többalkalmazásos megoldást úgy, hogy a hitelesített felhasználót az előtérből a háttérrendszerbe "áramlik".

Hitelesítés és engedélyezés engedélyezése előtéralkalmazáshoz

  1. Az Azure Portal menüjében válassza az Erőforráscsoportok lehetőséget, vagy keressen rá és válassza ki az Erőforráscsoportokat bármelyik lapról.

  2. Az erőforráscsoportokban keresse meg és válassza ki az erőforráscsoportot. Az Áttekintés területen válassza ki az előtérbeli alkalmazás felügyeleti oldalát.

  3. Az előtéralkalmazás bal oldali menüjében válassza a Hitelesítés, majd az Identitásszolgáltató hozzáadása lehetőséget.

  4. Az Identitásszolgáltató hozzáadása lapon válassza a Microsoftot identitásszolgáltatóként a Microsoft és a Microsoft Entra-identitások bejelentkezéséhez.

  5. Fogadja el az alapértelmezett beállításokat, és válassza a Hozzáadás lehetőséget.

  6. Megnyílik a Hitelesítési lap. Másolja a Microsoft Entra alkalmazás ügyfél-azonosítóját egy jegyzettömbbe. Erre az értékre később szüksége lesz.

Előtérbeli alkalmazás hozzáférésének biztosítása a háttérrendszerhez

Most, hogy engedélyezve van a hitelesítés és az engedélyezés mindkét alkalmazás számára, mindkét alkalmazás AD-alkalmazáson alapul. A hitelesítés elvégzéséhez három dolgot kell elvégeznie:

  • Az előtérbeli alkalmazás hozzáférésének biztosítása a háttéralkalmazáshoz
  • Az App Service konfigurálása használható jogkivonat visszaadására
  • Használja a jogkivonatot a kódban.

Tipp.

Ha hibákba ütközik, és újrakonfigurálja az alkalmazás hitelesítési/engedélyezési beállításait, előfordulhat, hogy a jogkivonat-tároló nem hozza létre újból a jogkivonatokat az új beállításokból. A jogkivonatok újbóli létrehozásának biztosításához ki kell jelentkeznie, majd újból be kell jelentkeznie az alkalmazásba. Ennek egyszerű módja, hogy a böngészőt privát üzemmódban használja, és bezárja, majd újból megnyitja a böngészőt privát üzemmódban az alkalmazások beállításainak módosítása után.

Ebben a lépésben hozzáférést ad az előtérbeli alkalmazásnak a háttéralkalmazáshoz a felhasználó nevében. (Gyakorlatilag a frontend Az AD-alkalmazás a háttérrendszer AD-alkalmazásához való hozzáféréshez szükséges engedélyeket a felhasználó nevében.)

  1. Az előtéralkalmazás Hitelesítési lapján válassza ki az előtérbeli alkalmazás nevét az Identitásszolgáltató területen. Ez az alkalmazásregisztráció automatikusan létre lett hozva Önnek. Válassza ki az API-engedélyeket a bal oldali menüben.

  2. Válassza az Engedély hozzáadása lehetőséget, majd válassza a Saját API-k><háttéralkalmazás-neve lehetőséget.>

  3. A háttéralkalmazás Kérés API-engedélyeinek lapján válassza a Delegált engedélyek és user_impersonation lehetőséget, majd válassza az Engedélyek hozzáadása lehetőséget.

    Képernyőkép a Kérelem API engedélyeinek lapjáról, amelyen a Delegált engedélyek, user_impersonation és az Engedély hozzáadása gomb van kiválasztva.

Az App Service konfigurálása használható hozzáférési jogkivonat visszaadására

Az előtérbeli alkalmazás most már rendelkezik a szükséges engedélyekkel ahhoz, hogy bejelentkezett felhasználóként hozzáférjen a háttéralkalmazáshoz. Ebben a lépésben úgy konfigurálja az App Service-hitelesítést és -engedélyezést, hogy használható hozzáférési jogkivonatot biztosítson a háttérrendszer eléréséhez. Ehhez a lépéshez szüksége lesz a háttérrendszer ügyfélazonosítójára, amelyet a háttéralkalmazás hitelesítésének és engedélyezésének engedélyezéséből másolt ki.

A Cloud Shellben futtassa az alábbi parancsokat az előtérbeli alkalmazásban a scope paraméter hitelesítési beállításhoz identityProviders.azureActiveDirectory.login.loginParametersvaló hozzáadásához. Cserélje le az előtér-alkalmazás nevét> és <a háttérbeli ügyfél-azonosítót>.<

az extension add --name authV2
authSettings=$(az webapp auth show -g myAuthResourceGroup -n <front-end-app-name>)
authSettings=$(echo "$authSettings" | jq '.properties' | jq '.identityProviders.azureActiveDirectory.login += {"loginParameters":["scope=openid offline_access api://<back-end-client-id>/user_impersonation"]}')
az webapp auth set --resource-group myAuthResourceGroup --name <front-end-app-name> --body "$authSettings"

A parancsok hatékonyan hozzáadnak egy tulajdonságot loginParameters további egyéni hatókörökkel. Íme a kért hatókörök magyarázata:

  • openid az App Service alapértelmezés szerint már kéri. További információ: OpenID Connect Scopes.
  • offline_access itt találja a kényelem érdekében (abban az esetben, ha frissíteni szeretné a jogkivonatokat).
  • api://<back-end-client-id>/user_impersonation egy közzétett API a háttéralkalmazás-regisztrációban. Ez a hatókör ad egy JWT-jogkivonatot, amely a háttéralkalmazást token-célközönségként tartalmazza.

Tipp.

  • A api://<back-end-client-id>/user_impersonation hatókör az Azure Portalon való megtekintéséhez nyissa meg a háttéralkalmazás Hitelesítési lapját, kattintson az Identitásszolgáltató alatti hivatkozásra, majd a bal oldali menüBen kattintson az API közzététele parancsra.
  • A szükséges hatókörök webes felületen való konfigurálásához tekintse meg a Microsoft hitelesítési jogkivonatok frissítésére vonatkozó lépéseit.
  • Egyes hatókörökhöz rendszergazdai vagy felhasználói hozzájárulás szükséges. Ez a követelmény miatt a hozzájáruláskérési oldal akkor jelenik meg, amikor egy felhasználó bejelentkezik az előtérbeli alkalmazásba a böngészőben. A hozzájárulási oldal elkerülése érdekében adja hozzá az előtér alkalmazásregisztrációját engedélyezett ügyfélalkalmazásként az Api-lap közzététele lapon az Ügyfélalkalmazás hozzáadása és az előtér alkalmazásregisztrációjának ügyfélazonosítója megadásával.

Az alkalmazások konfigurálása kész. Az előtér most már készen áll a háttérrendszer megfelelő hozzáférési jogkivonattal való elérésére.

A hozzáférési jogkivonat más szolgáltatókhoz való konfigurálásáról további információt az identitásszolgáltatói jogkivonatok frissítése című témakörben talál.

6. Konfigurálja a háttéralkalmazást úgy, hogy csak az előtér App Service-ből fogadjon el jogkivonatot

A háttéralkalmazást úgy is konfigurálnia kell, hogy csak az előtér App Service-ből fogadjon el jogkivonatot. Ha ezt nem teszi meg, "403: Tiltott hiba" jelenhet meg, ha a jogkivonatot az előtérből a háttérrendszerbe továbbítja.

Ezt ugyanazzal az Azure CLI-folyamattal állíthatja be, amelyet az előző lépésben használt.

  1. Kérje le az appId előtérbeli App Service-t (ezt az előtér App Service "Hitelesítés" paneljén érheti el).

  2. Futtassa a következő Azure CLI-t, és helyettesítse az és <front-end-app-id>a <back-end-app-name> .

authSettings=$(az webapp auth show -g myAuthResourceGroup -n <back-end-app-name>)
authSettings=$(echo "$authSettings" | jq '.properties' | jq '.identityProviders.azureActiveDirectory.validation.defaultAuthorizationPolicy.allowedApplications += ["<front-end-app-id>"]')
az webapp auth set --resource-group myAuthResourceGroup --name <back-end-app-name> --body "$authSettings"

authSettings=$(az webapp auth show -g myAuthResourceGroup  -n <back-end-app-name>)
authSettings=$(echo "$authSettings" | jq '.properties' | jq '.identityProviders.azureActiveDirectory.validation.jwtClaimChecks += { "allowedClientApplications": ["<front-end-app-id>"]}')
az webapp auth set --resource-group myAuthResourceGroup --name <back-end-app-name> --body "$authSettings"

7. A frontend meghívja a hitelesített háttérrendszert

Az előtérbeli alkalmazásnak a megfelelő user_impersonation hatókörrel kell átadnia a felhasználó hitelesítését a háttérrendszernek. Az alábbi lépések a mintában megadott kódot tekintik át ehhez a funkcióhoz.

Az előtérbeli alkalmazás forráskódjának megtekintése:

  1. Az előtérbeli App Service-beszúrt x-ms-token-aad-access-token fejléc használatával programozott módon lekérheti a felhasználó accessTokenjét.

    // ./src/server.js
    const accessToken = req.headers['x-ms-token-aad-access-token'];
    
  2. Használja az accessTokent a Authentication fejlécben értékként bearerToken .

    // ./src/remoteProfile.js
    // Get profile from backend
    const response = await fetch(remoteUrl, {
        cache: "no-store", // no caching -- for demo purposes only
        method: 'GET',
        headers: {
            'Authorization': `Bearer ${accessToken}`
        }
    });
    if (response.ok) {
        const { profile } = await response.json();
        console.log(`profile: ${profile}`);
    } else {
        // error handling
    }
    

    Ez az oktatóanyag egy hamis profilt ad vissza a forgatókönyv egyszerűsítése érdekében. A sorozat következő oktatóanyaga bemutatja, hogyan cserélhet a háttérbeli tulajdonosTokent egy új jogkivonatra egy alsóbb rétegbeli Azure-szolgáltatás, például a Microsoft Graph hatókörével.

7. A háttérrendszer visszaadja a profilt az előtérnek

Ha az előtérről érkező kérés nincs engedélyezve, a háttéralkalmazás elutasítja a kérést egy 401 HTTP-hibakóddal , mielőtt a kérés eléri az alkalmazás kódját. A háttérkód elérésekor (mivel az egy engedélyezett jogkivonatot is tartalmaz), bontsa ki a tulajdonosTokent az accessToken lekéréséhez.

Tekintse meg a háttéralkalmazás forráskódját:

// ./src/server.js
const bearerToken = req.headers['Authorization'] || req.headers['authorization'];

if (bearerToken) {
    const accessToken = bearerToken.split(' ')[1];
    console.log(`backend server.js accessToken: ${!!accessToken ? 'found' : 'not found'}`);

    // TODO: get profile from Graph API
    // provided in next article in this series
    // return await getProfileFromMicrosoftGraph(accessToken)

    // return fake profile for this tutorial
    return {
        "displayName": "John Doe",
        "withAuthentication": !!accessToken ? true : false
    }
}

8. Keresse meg az alkalmazásokat

  1. Használja az előtérbeli webhelyet egy böngészőben. Az URL-cím formátuma a következő https://<front-end-app-name>.azurewebsites.net/: .

  2. A böngésző kéri a hitelesítést a webalkalmazáshoz. Fejezze be a hitelesítést.

    Képernyőkép a böngészőhitelesítés előugró ablakáról, amely engedélyeket kér.

  3. A hitelesítés befejezése után az előtérbeli alkalmazás visszaadja az alkalmazás kezdőlapját.

    Képernyőkép a böngészőről, amelyen az előtéralkalmazás látható a hitelesítés sikeres befejezése után.

  4. Válassza ki Get user's profile. Ez átadja a tulajdonosi jogkivonatban lévő hitelesítést a háttérrendszernek.

  5. A háttérrendszer vége a hamis , keményen kódolt profilnévvel válaszol: John Doe.

    Képernyőkép a webböngészőről, amelyen az előtéralkalmazás látható, miután sikeresen lekérte a hamis profilt a háttéralkalmazásból.

    Az withAuthentication igaz érték azt jelzi, hogy a hitelesítés még be van állítva.

9. Erőforrások megtisztítása

Az előző lépésekben Azure-erőforrásokat hozott létre egy erőforráscsoportban.

  1. Törölje az erőforráscsoportot az alábbi parancs futtatásával a Cloud Shellben. A parancs futtatása egy percig is eltarthat.

    az group delete --name myAuthResourceGroup
    
  2. Használja a hitelesítési alkalmazások ügyfél-azonosítóját, amelyet korábban a háttér- és előtéralkalmazások szakaszaiban Enable authentication and authorization talált és jegyezett fel.

  3. Az előtér- és háttéralkalmazások alkalmazásregisztrációinak törlése.

    # delete app - do this for both frontend and backend client ids
    az ad app delete <client-id>
    

Gyakori kérdések

Hogyan tesztelje ezt a hitelesítést a helyi fejlesztőgépemen?

Ebben az eljárásban a hitelesítést a Azure-alkalmazás Szolgáltatás biztosítja az üzemeltetési platform rétegében. Nincs egyenértékű emulátor. A hitelesítés használatához mindegyikhez telepítenie kell az előtér- és háttéralkalmazást, valamint a konfigurációs hitelesítést.

Az alkalmazás nem jelenít meg hamis profilt, hogyan lehet hibakeresést végezni?

Az előtérbeli és a háttéralkalmazások útvonalai is segítenek /debug a hitelesítés hibakeresésében, ha az alkalmazás nem adja vissza a hamis profilt. Az előtérbeli hibakeresési útvonal biztosítja a kritikus fontosságú elemet az ellenőrzéshez:

  • Környezeti változók:
    • A BACKEND_URL beállítás helyesen van konfigurálva.https://<back-end-app-name>.azurewebsites.net Ne foglalja bele a záró perjelet vagy az útvonalat.
  • HTTP-fejlécek:
    • A x-ms-token-* fejlécek be lesznek adva.
  • Megjelenik a bejelentkezett felhasználó Microsoft Graph-profilneve.
  • Az előtérbeli alkalmazás hatóköre a jogkivonathoz rendelkezikuser_impersonation. Ha a hatókör nem tartalmazza ezt, az időzítéssel kapcsolatos probléma lehet. Ellenőrizze az előtérbeli alkalmazás login paramétereit az Azure-erőforrásokban. Várjon néhány percet a hitelesítés replikációjára.

Az alkalmazás forráskódja megfelelően lett üzembe helyezve az egyes webalkalmazásokban?

  1. A webalkalmazás Azure Portalján válassza a Fejlesztői eszközök –> Speciális eszközök, majd az Ugrás lehetőséget>. Ekkor megnyílik egy új böngészőlap vagy ablak.

  2. Az új böngészőlapon válassza a Tallózás könyvtár –> Webhely wwwroot lehetőséget.

  3. Ellenőrizze, hogy az alábbiak szerepelnek-e a könyvtárban:

    • package.json
    • node_modules.tar.gz
    • /src/index.js
  4. Ellenőrizze, hogy a package.json tulajdonsága name megegyezik-e a webnévvel, vagy frontend backend.

  5. Ha módosította a forráskódot, és újra üzembe kell helyeznie, használja az az webappot abból a könyvtárból, amely az alkalmazás package.json fájlját használja.

Helyesen indult el az alkalmazás

Mindkét webalkalmazásnak vissza kell adnia valamit, amikor a kezdőlapot kérik. Ha nem tudja elérni /debug egy webalkalmazást, az alkalmazás nem indult el megfelelően. Tekintse át a webalkalmazás hibanaplóit.

  1. A webalkalmazás Azure Portalján válassza a Fejlesztői eszközök –> Speciális eszközök, majd az Ugrás lehetőséget>. Ekkor megnyílik egy új böngészőlap vagy ablak.
  2. Az új böngészőlapon válassza a Tallózás könyvtár –> Üzembehelyezési naplók lehetőséget.
  3. Tekintse át az egyes naplókat a jelentett problémák megkereséséhez.

Az előtérbeli alkalmazás képes beszélni a háttéralkalmazással?

Mivel az előtérbeli alkalmazás kiszolgálói forráskódból hívja meg a háttéralkalmazást, ez nem látható a böngésző hálózati forgalmában. A háttérprofil-kérelem sikerességének meghatározásához használja az alábbi listát:

  • A háttér-webalkalmazás minden hibát visszaad az előtérbeli alkalmazásnak, ha el lett érve. Ha nem sikerült elérni, az előtérbeli alkalmazás jelenti az állapotkódot és az üzenetet.
    • 401: A felhasználó nem megfelelően adta át a hitelesítést. Ez azt jelezheti, hogy a hatókör nincs megfelelően beállítva.
    • 404: A kiszolgáló URL-címe nem egyezik meg a kiszolgáló által megadott útvonalsal
  • A háttéralkalmazás streamelési naplóinak használatával figyelheti a felhasználói profil előtér-kérését. A forráskódban console.log hibakeresési információk találhatók, amelyekkel megállapítható, hogy hol történt a hiba.

Mi történik, ha az előtérbeli jogkivonat lejár?

A hozzáférési jogkivonatok bizonyos idő elteltével lejárnak. A hozzáférési jogkivonatok frissítéséről a felhasználók újbóli hitelesítésének megkövetelése nélkül az identitásszolgáltatói jogkivonatok frissítése című témakörben olvashat.

Ha böngészőalapú alkalmazással rendelkezem az előtéralkalmazásban, közvetlenül a háttérrendszerrel is beszélhetek?

Ehhez a megközelítéshez a kiszolgálókódnak át kell adnia a hozzáférési jogkivonatot az ügyfélböngészőben futó JavaScript-kódnak. Mivel a böngészőben nincs mód a hozzáférési jogkivonat védelmére, ez nem ajánlott módszer. Jelenleg a Háttérrendszer előtérbeli mintája ajánlott. Ha az oktatóanyagban szereplő példára alkalmaznánk, az előtér-alkalmazás böngészőkódja egy hitelesített munkamenetben api-hívásokat indítana a kiszolgáló kódjára közvetítőként, az előtérbeli alkalmazás kiszolgálókódja pedig az api-hívásokat a háttéralkalmazásba a fejlécértékkel, mint tulajdonosi jogkivonattal x-ms-token-aad-access-token indítaná el. A böngészőkódból a kiszolgálókódba irányuló összes hívást a hitelesített munkamenet már védi.

Következő lépések

Az alábbiak elvégzését ismerte meg:

  • Beépített hitelesítés és engedélyezés engedélyezése
  • Alkalmazások biztonságossá tétele a nem hitelesített kérelmek ellen
  • A Microsoft Entra ID használata identitásszolgáltatóként
  • Távoli alkalmazás elérése a bejelentkezett felhasználó nevében
  • Biztonságos szolgáltatások közötti hívások jogkivonat-hitelesítéssel
  • Hozzáférési kódok használata kiszolgálói kódból

Folytassa a következő oktatóanyagtal, amelyből megtudhatja, hogyan használhatja a felhasználó identitását egy Azure-szolgáltatás eléréséhez.