Zabezpečení vstupního omezeného zařízení pomocí ROZHRANÍ REST API Služby Microsoft Entra a Rozhraní REST API služby Azure Maps
Tato příručka popisuje, jak zabezpečit veřejné aplikace nebo zařízení, která nemůžou bezpečně ukládat tajné kódy nebo přijímat vstup prohlížeče. Tyto typy aplikací spadají do kategorie Internetu věcí (IoT). Mezi příklady patří inteligentní televizory a data snímačů generující aplikace.
Zobrazení podrobností o ověřování účtu Azure Maps na webu Azure Portal:
Přihlaste se k portálu Azure.
Přejděte do nabídky webu Azure Portal. Vyberte Všechny prostředky a pak vyberte svůj účet Azure Maps.
V části Nastavení v levém podokně vyberte Ověřování.
Při vytváření účtu Azure Maps se vytvoří tři hodnoty. Používají se k podpoře dvou typů ověřování v Azure Maps:
- Ověřování Microsoft Entra: Představuje
Client ID
účet, který se má použít pro požadavky rozhraní REST API. HodnotaClient ID
by měla být uložena v konfiguraci aplikace a pak by se měla načíst před vytvořením požadavků HTTP služby Azure Maps, které používají ověřování Microsoft Entra. - Ověřování pomocí sdíleného klíče: Klíč
Secondary Key
Primary Key
předplatného se používá pro ověřování pomocí sdíleného klíče. Ověřování pomocí sdíleného klíče spoléhá na předání klíče vygenerovaného účtem Azure Maps s každou žádostí do Azure Maps. Doporučujeme pravidelně obnovovat klíče. Pro zachování aktuálních připojení během regenerace jsou k dispozici dva klíče. Při opětovném vygenerování druhého klíče je možné použít jeden klíč. Při každém vygenerování klíče je nutné aktualizovat všechny aplikace, které k tomuto účtu přistupují, aby používaly nový klíč. Další informace najdete v tématu Ověřování pomocí Azure Maps.
Vytvoření registrace aplikace v Microsoft Entra ID
Poznámka:
- Předpoklady ke čtení: Scénář: Desktopová aplikace, která volá webová rozhraní API
- Následující scénář používá tok kódu zařízení, který nezahrnuje webový prohlížeč k získání tokenu.
Vytvořte aplikaci založenou na zařízení v Microsoft Entra ID, která povolí přihlášení Microsoft Entra, které má udělený přístup k rozhraním REST API služby Azure Maps.
Na webu Azure Portal v seznamu služeb Azure vyberte ID Microsoft Entra Registrace aplikací>> New registration.
Zadejte název a jako typ podporovaného účtu zvolte v tomto adresáři organizace účty. V identifikátorech URI pro přesměrování zadejte veřejný klient / nativní (mobilní &desktop) a pak přidejte
https://login.microsoftonline.com/common/oauth2/nativeclient
hodnotu. Další informace najdete v desktopové aplikaci Microsoft Entra ID , která volá webová rozhraní API: registrace aplikace. Pak aplikaci zaregistrujte .Přejděte do části Ověřování a povolte aplikaci Jako veřejný klient a povolte ověřování kódu zařízení pomocí Microsoft Entra ID.
Pokud chcete přiřadit delegovaná oprávnění rozhraní API k Azure Maps, přejděte do aplikace. Pak vyberte oprávnění>rozhraní API Přidat oprávnění. V části Rozhraní API, která moje organizace používá, vyhledejte a vyberte Azure Maps.
Zaškrtněte políčko vedle accessu ke službě Azure Maps a pak vyberte Přidat oprávnění.
Nakonfigurujte řízení přístupu na základě role v Azure (Azure RBAC) pro uživatele nebo skupiny. Další informace najdete v tématu Udělení přístupu na základě role uživatelům ke službě Azure Maps.
Přidejte kód pro získání toku tokenu v aplikaci, kde najdete podrobnosti implementace v části Tok kódu zařízení. Při získávání tokenů odkazujte na obor,
user_impersonation
který byl vybrán v předchozích krocích.Tip
K získání přístupových tokenů použijte knihovnu MSAL (Microsoft Authentication Library). Další informace najdete v tématu Desktopová aplikace, která volá webová rozhraní API: Konfigurace kódu v dokumentaci ke službě Active Directory.
Vytvořte požadavek HTTP s získaným tokenem z ID Microsoft Entra a odešlete požadavek s platným klientem HTTP.
Ukázkový požadavek
Tady je ukázkový text požadavku pro nahrání jednoduché geofence reprezentované jako geometrie kruhu pomocí středového bodu a poloměru.
POST /mapData?api-version=2.0&dataFormat=geojson
Host: us.atlas.microsoft.com
x-ms-client-id: 30d7cc….9f55
Authorization: Bearer eyJ0e….HNIVN
V GeoJSONu je následující ukázkový text požadavku:
{
"type": "FeatureCollection",
"features": [{
"type": "Feature",
"geometry": {
"type": "Point",
"coordinates": [-122.126986, 47.639754]
},
"properties": {
"geometryId": "001",
"radius": 500
}
}]
}
Ukázková hlavička odpovědi
Operation-Location: https://us.atlas.microsoft.com/mapData/operations/{udid}?api-version=2.0
Access-Control-Expose-Headers: Operation-Location
Udělení přístupu na základě role uživatelům službě Azure Maps
Řízení přístupu na základě role Azure (Azure RBAC) můžete udělit přiřazením skupiny Microsoft Entra nebo objektu zabezpečení k jedné nebo více definicím role Azure Maps.
Informace o dostupných definicích rolí Azure pro Azure Maps najdete v tématu Zobrazení předdefinovaných definic rolí Azure Maps.
Podrobný postup přiřazení dostupné role Azure Maps k vytvořené spravované identitě nebo instančnímu objektu najdete v tématu Přiřazení rolí Azure pomocí webu Azure Portal.
Pokud chcete efektivně spravovat aplikaci Azure Maps a přístup k prostředkům velkého množství uživatelů, podívejte se na skupiny Microsoft Entra.
Důležité
Aby se uživatelé mohli ověřovat v aplikaci, musí být uživatelé nejprve vytvořeni v Microsoft Entra ID. Další informace naleznete v tématu Přidání nebo odstranění uživatelů pomocí Microsoft Entra ID.
Informace o efektivní správě velkého adresáře pro uživatele najdete v tématu Microsoft Entra ID.
Upozorňující
Předdefinované definice rolí služby Azure Maps poskytují velmi rozsáhlý přístup k autorizaci mnoha rozhraním REST API služby Azure Maps. Pokud chcete omezit přístup k rozhraním API na minimum, přečtěte si téma Vytvoření vlastní definice role a přiřazení identity přiřazené systémem k definici vlastní role. To umožňuje aplikaci přístup ke službě Azure Maps s nejnižšími oprávněními nezbytnými.
Další kroky
Vyhledejte metriky využití rozhraní API pro váš účet Azure Maps: