Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
A KÖVETKEZŐRE VONATKOZIK: Minden API Management-szint
Ebben a cikkben megtudhatja, hogyan konfigurálhatja az Azure API Management példányt egy API védelmére, az OAuth 2.0 protokoll és a Microsoft Entra ID használatával.
Az API-engedélyezés elméleti áttekintését lásd : Hitelesítés és API-k engedélyezése az API Managementben.
Előfeltételek
A cikk lépéseinek végrehajtása előtt a következőkkel kell rendelkeznie:
- API Management-példány
- Közzétett API az API Management-példány használatával
- Egy Microsoft Entra bérlő
Áttekintés
Kövesse az alábbi lépéseket egy API védelméhez az API Managementben OAuth 2.0-hitelesítéssel a Microsoft Entra ID-val.
Regisztráljon egy alkalmazást (ebben a cikkben a backend-appot ) a Microsoft Entra ID-ban.
Az API eléréséhez a felhasználóknak vagy alkalmazásoknak egy érvényes OAuth-jogkivonatot kell beszerezniük és bemutatniuk, amely hozzáférést biztosít az alkalmazáshoz minden API-kéréshez.
Konfigurálja a validate-jwt szabályzatot az API Managementben. Ez a szabályzat ellenőrzi az egyes bejövő API-kérésekben megjelenített OAuth-jogkivonatot. Érvényes kérések továbbíthatók az API-nak.
Az OAuth-engedélyezési folyamatokkal és a szükséges OAuth-jogkivonatok létrehozásának módjával kapcsolatos részletek túlmutatnak a jelen cikk hatókörén. Általában egy külön ügyfélalkalmazással szerez be jogkivonatokat a Microsoft Entra ID-ból, amely engedélyezi az API-hoz való hozzáférést. További információkra mutató hivatkozásokért tekintse meg a kapcsolódó tartalomszakaszt .
Alkalmazás regisztrálása a Microsoft Entra-azonosítóban az API-t ábrázoló módon
Az Azure Portal használatával védje meg az API-t a Microsoft Entra-azonosítóval, először regisztráljon egy alkalmazást, amely az API-t képviseli.
Az alkalmazásregisztrációval kapcsolatos részletekért tekintse meg a rövid útmutatót: Alkalmazás konfigurálása webes API-k megjelenítéséhez.
Az Azure Portalon keresse meg és válassza ki a Alkalmazásregisztrációk.
Új regisztráció kiválasztása.
Amikor megjelenik az Alkalmazás regisztrálása lap, adja meg az alkalmazás regisztrációs adatait:
- A Név szakaszban adjon meg egy értelmes alkalmazásnevet, például a háttéralkalmazást. Ez a név megjelenik az alkalmazás felhasználói számára.
- A Támogatott fióktípusok szakaszban válasszon egy, a forgatókönyvnek megfelelő lehetőséget.
Hagyja üresen az Átirányítás URI szakaszt.
Válassza a Regisztráció elemet az alkalmazás létrehozásához.
Az Alkalmazás áttekintése lapon keresse meg az alkalmazás (ügyfél) azonosítójának értékét, és jegyezze fel későbbre.
Az oldalmenü Kezelés szakaszában válassza az API-k felfedése lehetőséget, és állítsa be az alkalmazásazonosító URI-ját az alapértelmezett értékkel. Ha egy külön ügyfélalkalmazást fejleszt, amely OAuth 2.0-jogkivonatokat szerez be a háttéralkalmazáshoz való hozzáféréshez, jegyezze fel ezt az értéket későbbre.
A Hatókör hozzáadása lap megjelenítéséhez válassza a Hatókör hozzáadása gombot:
- Adjon meg egy új hatókörnevet, a rendszergazdai hozzájárulás megjelenítendő nevét és a rendszergazdai hozzájárulás leírását.
- Győződjön meg arról, hogy az Engedélyezett hatókör állapota ki van jelölve.
A hatókör létrehozásához válassza a Hatókör hozzáadása gombot.
Ismételje meg az előző két lépést az API által támogatott összes hatókör hozzáadásához.
A hatókörök létrehozása után jegyezze fel őket későbbi használatra.
JWT érvényesítési szabályzat konfigurálása a kérések előzetes engedélyezéséhez
Az alábbi példaszabályzat a <inbound> szabályzatszakaszhoz hozzáadva ellenőrzi a célközönség jogcímének értékét egy, az Engedélyezés fejlécben található Microsoft Entra-azonosítóból beszerzett hozzáférési jogkivonatban. Hibaüzenetet ad vissza, ha a jogkivonat érvénytelen. Konfigurálja ezt a szabályzatot a forgatókönyvnek megfelelő szabályzat hatókörében.
-
openid-configAz URL-címben ezaad-tenanta Microsoft Entra-azonosító bérlőazonosítója. Keresse meg ezt az értéket az Azure Portalon, például a Microsoft Entra-erőforrás Áttekintés lapján. Az alábbi példa egy egybérlős Microsoft Entra-alkalmazást és egy v2-konfigurációs végpontot feltételez. - Az érték a
claimMicrosoft Entra ID-ban regisztrált háttéralkalmazás ügyfél-azonosítója.
<validate-jwt header-name="Authorization" failed-validation-httpcode="401" failed-validation-error-message="Unauthorized. Access token is missing or invalid.">
<openid-config url="https://login.microsoftonline.com/{aad-tenant}/v2.0/.well-known/openid-configuration" />
<audiences>
<audience>{audience-value - (ex:api://guid)}</audience>
</audiences>
<issuers>
<issuer>{issuer-value - (ex: https://sts.windows.net/{tenant id}/)}</issuer>
</issuers>
<required-claims>
<claim name="aud">
<value>{backend-app-client-id}</value>
</claim>
</required-claims>
</validate-jwt>
Feljegyzés
Az előző openid-config URL-cím a v2-végpontnak felel meg. A v1 openid-config végponthoz használja a következőt https://login.microsoftonline.com/{aad-tenant}/.well-known/openid-configuration: .
A szabályzatok konfigurálásáról további információt a Szabályzatok beállítása vagy szerkesztése című témakörben talál. A JWT-érvényesítések további testreszabásához tekintse meg a validate-jwt referenciát. A Microsoft Entra szolgáltatás által biztosított JWT érvényesítéséhez az API Management a szabályzatot validate-azure-ad-token is biztosítja.
Engedélyezési munkafolyamat
Egy felhasználó vagy alkalmazás jogkivonatot szerez be a Microsoft Entra-azonosítóból olyan engedélyekkel, amelyek hozzáférést biztosítanak a háttéralkalmazáshoz. Ha a v2-végpontot használja, győződjön meg arról, hogy a
accessTokenAcceptedVersiontulajdonság a háttéralkalmazás alkalmazásjegyzékében és a konfigurált ügyfélalkalmazásban van beállítva2.A jogkivonat az API-kérések engedélyezési fejlécében lesz hozzáadva az API Managementhez.
Az API Management a szabályzat használatával ellenőrzi a jogkivonatot
validate-jwt.Ha egy kérelem nem rendelkezik érvényes jogkivonattal, az API Management letiltja azt.
Ha egy kérés rendelkezik érvényes jogkivonattal, az átjáró továbbíthatja a kérést az API-nak.
Kapcsolódó tartalom
Ha többet szeretne megtudni egy alkalmazás felépítéséről és az OAuth 2.0 implementálásáról, tekintse meg a Microsoft Entra kódmintáit.
Az OAuth 2.0 felhasználói engedélyezésének az API Management fejlesztői portálon történő konfigurálására vonatkozó végpontok közötti példáért tekintse meg a fejlesztői portál tesztkonzoljának engedélyezését az OAuth 2.0 felhasználói engedélyezés konfigurálásával.
További információ a Microsoft Entra-azonosítóról és az OAuth2.0-ról.
A háttérszolgáltatás biztonságossá tételének egyéb módjai: Kölcsönös tanúsítványhitelesítés.