Webalkalmazás védelme felhasználói bejelentkezéssel
Az alábbi útmutató egy webkiszolgálókon üzemeltetett alkalmazásra vonatkozik, több üzleti forgatókönyvet tart fenn, és üzembe helyezi a webkiszolgálókon. Az alkalmazásnak meg kell felelnie annak a követelménynek, hogy csak a Microsoft Entra-felhasználók számára biztosítson védett erőforrásokat. A forgatókönyv célja, hogy lehetővé tegye a webalkalmazás számára a Microsoft Entra ID-hitelesítést, és meghívja az Azure Maps REST API-kat a felhasználó nevében.
Az Azure Maps-fiók hitelesítési adatainak megtekintése az Azure Portalon:
Jelentkezzen be az Azure Portalra.
Lépjen az Azure Portal menüjére. Válassza az Összes erőforrás lehetőséget, majd válassza ki az Azure Maps-fiókját.
A bal oldali panel Beállítások csoportjában válassza a Hitelesítés lehetőséget.
Az Azure Maps-fiók létrehozásakor három érték jön létre. Két típusú hitelesítést támogatnak az Azure Mapsben:
- Microsoft Entra-hitelesítés: A
Client ID
REST API-kérésekhez használandó fiókot jelöli. AzClient ID
értéket az alkalmazáskonfigurációban kell tárolni, majd le kell kérni, mielőtt Microsoft Entra-hitelesítést használó Azure Maps HTTP-kéréseket hajtanak létre. - Megosztott kulcs hitelesítése: A
Secondary Key
Primary Key
megosztott kulcsos hitelesítéshez használt előfizetési kulcs. A megosztott kulcsos hitelesítés az Azure Maps-fiók által létrehozott kulcs átadásán alapul, minden kéréssel együtt az Azure Mapsnek. 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 Maps használatával
Alkalmazásregisztráció létrehozása a Microsoft Entra-azonosítóban
Ahhoz, hogy a felhasználók bejelentkezhessenek, létre kell hoznia a webalkalmazást a Microsoft Entra-azonosítóban. Ez a webalkalmazás ezután delegálja a felhasználók hozzáférését az Azure Maps REST API-khoz.
Az Azure Portalon az Azure-szolgáltatások listájában válassza a Microsoft Entra ID> Alkalmazásregisztrációk> New regisztrációt.
Adjon meg egy nevet, válasszon egy támogatási fióktípust, adjon meg egy átirányítási URI-t, amely azt az URL-címet jelöli, amelyre a Microsoft Entra ID kiadja a jogkivonatot, amely a térképvezérlőt futtató URL-cím. További információ: Microsoft Entra ID Scenario: Web App, amely bejelentkezik a felhasználókba. Hajtsa végre a Microsoft Entra-forgatókönyvben megadott lépéseket.
Miután az alkalmazásregisztráció befejeződött, ellenőrizze, hogy az alkalmazás bejelentkezése működik-e a felhasználók számára. A bejelentkezés után az alkalmazás delegált hozzáférést kaphat az Azure Maps REST API-khoz.
Ha delegált API-engedélyeket szeretne hozzárendelni az Azure Mapshez, lépjen az alkalmazáshoz, és válassza az API-engedélyek>hozzáadása engedélyt. válassza az Azure Maps lehetőséget a szervezetem által használt API-kban.
Jelölje be az Access Azure Maps melletti jelölőnégyzetet, majd válassza az Engedélyek hozzáadása lehetőséget.
Engedélyezze a webalkalmazásnak, hogy meghívja az Azure Maps REST API-kat az alkalmazásregisztráció alkalmazástitkosítással történő konfigurálásával. Részletes lépéseket a webes API-kat hívó webalkalmazás: Alkalmazásregisztráció című témakörben talál. A felhasználó nevében a Microsoft Entra hitelesítéséhez titkos kód szükséges. Az alkalmazásregisztrációs tanúsítványt vagy titkos kulcsot biztonságos tárolóban kell tárolni, hogy a webalkalmazás lekérhesse a Microsoft Entra-azonosítóhoz való hitelesítéshez szükséges adatokat.
- Ez a lépés kihagyható, ha az alkalmazás már rendelkezik Microsoft Entra-alkalmazásregisztrációval és titkos kóddal.
Tipp.
Ha az alkalmazást Azure-környezetben üzemeltetik, javasoljuk, hogy felügyelt identitásokat használjon az Azure-erőforrásokhoz és egy Azure Key Vault-példányt a titkos kódok eléréséhez egy hozzáférési jogkivonat beszerzésével az Azure Key Vault titkos kulcsainak vagy tanúsítványainak eléréséhez. Ha az Azure Key Vaulthoz szeretne csatlakozni a titkos kódok lekéréséhez, tekintse meg a felügyelt identitáson keresztüli kapcsolódást ismertető oktatóanyagot.
Implementáljon egy biztonságos jogkivonatvégpontot az Azure Maps Web SDK-hoz egy jogkivonat eléréséhez.
- A minta jogkivonat-vezérlővel kapcsolatban lásd az Azure Maps Microsoft Entra AZONOSÍTÓ-mintáit.
- Nem AspNetCore-implementációról vagy másról a Microsoft Entra dokumentációjában talál további információt az alkalmazás jogkivonatának beszerzése című témakörben.
- A biztonságos jogkivonat végpontja felelős egy hozzáférési jogkivonat visszaadása a hitelesített és jogosult felhasználó számára az Azure Maps REST API-k meghívásához.
Az Azure szerepköralapú hozzáférés-vezérlésének (Azure RBAC) felhasználókhoz vagy csoportokhoz való konfigurálásához tekintse meg a szerepköralapú hozzáférés biztosítását a felhasználók számára.
Konfigurálja a webalkalmazás lapját az Azure Maps Web SDK-val a biztonságos jogkivonat-végpont eléréséhez.
var map = new atlas.Map("map", {
center: [-122.33, 47.64],
zoom: 12,
language: "en-US",
authOptions: {
authType: "anonymous",
clientId: "<insert>", // azure map account client id
getToken: function (resolve, reject, map) {
var xhttp = new XMLHttpRequest();
xhttp.open("GET", "/api/token", true); // the url path maps to the token endpoint.
xhttp.onreadystatechange = function () {
if (this.readyState === 4 && this.status === 200) {
resolve(this.responseText);
} else if (this.status !== 200) {
reject(this.responseText);
}
};
xhttp.send();
}
}
});
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 Mapshez
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 Maps-szerepkördefinícióhoz.
Az Azure Mapshez elérhető Azure-szerepkördefiníciók megtekintéséhez tekintse meg a beépített Azure Maps-szerepkördefiníciókat.
Az elérhető Azure Maps-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 Maps-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ó: Felhasználók hozzáadása vagy törlése a Microsoft Entra-azonosítóval.
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 Maps beépített szerepkördefiníciói nagyon nagy engedélyezési hozzáférést biztosítanak számos Azure Maps 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 Maps eléréséhez szükséges legkisebb jogosultságot.
Következő lépések
A webalkalmazás-forgatókönyv további ismerete:
Az Azure Maps-fiók API-használati metrikáinak megkeresése:
Ismerje meg a Microsoft Entra ID és az Azure Maps integrálását bemutató példákat: