Zabezpečení vstupního omezeného zařízení pomocí ROZHRANÍ REST API Microsoft Entra a Azure Mapy

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 Mapy na webu Azure Portal:

  1. Přihlaste se k portálu Azure.

  2. Přejděte do nabídky webu Azure Portal. Vyberte Všechny prostředky a pak vyberte svůj účet Azure Mapy.

  3. V části Nastavení v levém podokně vyberte Ověřování.

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

Při vytvoření účtu Azure Mapy se vytvoří tři hodnoty. Používají se k podpoře dvou typů ověřování v Azure Mapy:

  • Ověřování Microsoft Entra: Představuje Client ID účet, který se má použít pro požadavky rozhraní REST API. Hodnota Client ID by měla být uložená v konfiguraci aplikace a pak by se měla načíst před vytvořením požadavků HTTP, které používají ověřování Microsoft Entra, azure Mapy.
  • Ověřování pomocí sdíleného klíče: Klíč Secondary KeyPrimary 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 Mapy s každou žádostí do Azure Mapy. 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 Mapy

Vytvoření registrace aplikace v Microsoft Entra ID

Poznámka:

Vytvořte aplikaci založenou na zařízení v Microsoft Entra ID a povolte tak přihlášení Microsoft Entra, které má udělený přístup k rozhraním REST API služby Azure Mapy.

  1. Na webu Azure Portal v seznamu služeb Azure vyberte ID Microsoft Entra Registrace aplikací>> New registration.

    A screenshot showing application registration in Microsoft Entra ID.

  2. 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 .

    A screenshot showing the settings used to register an application.

  3. 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.

    A screenshot showing the advanced settings used to specify treating the application as a public client.

  4. Pokud chcete přiřadit delegovaná oprávnění rozhraní API k Azure Mapy, 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 Mapy.

    A screenshot showing where you request API permissions.

  5. Zaškrtněte políčko vedle položky Přístup k Azure Mapy a pak vyberte Přidat oprávnění.

    A screenshot showing where you specify the app permissions you require.

  6. 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 pro uživatele k Azure Mapy.

  7. 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.

  8. 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 k Azure Mapy

Řízení přístupu na základě role v 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 rolí Azure Mapy.

Pokud chcete zobrazit dostupné definice rolí Azure pro Azure Mapy, přečtěte si téma Zobrazení předdefinovaných definic rolí Azure Mapy.

Podrobný postup přiřazení dostupné role Azure Mapy 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 Mapy 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í

Azure Mapy předdefinované definice rolí poskytují velmi velký přístup k autorizaci mnoha rozhraním REST API azure Mapy. 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 Mapy s nejnižšími oprávněními.

Další kroky

Vyhledejte metriky využití rozhraní API pro váš účet Azure Mapy: