Delen via


Een beperkt apparaat beveiligen met behulp van Microsoft Entra ID en Azure Maps REST API's

In deze handleiding wordt beschreven hoe u openbare toepassingen of apparaten beveiligt die geen geheimen veilig kunnen opslaan of browserinvoer kunnen accepteren. Deze typen toepassingen vallen onder de ioT-categorie (Internet of Things). Voorbeelden hiervan zijn Smart TV's en sensorgegevens die toepassingen verzenden.

Ga als volgende te werk om de verificatiegegevens van uw Azure Maps-account weer te geven in Azure Portal:

  1. Meld u aan bij het Azure-portaal.

  2. Navigeer naar het menu van Azure Portal. Selecteer Alle resources en selecteer vervolgens uw Azure Maps-account.

  3. Selecteer Verificatie onder Instellingen in het linkerdeelvenster.

    Schermopname van uw Azure Maps-verificatieopties in Azure Portal.

Er worden drie waarden gemaakt wanneer het Azure Maps-account wordt gemaakt. Ze worden gebruikt ter ondersteuning van twee typen verificatie in Azure Maps:

  • Microsoft Entra-verificatie: Het Client ID vertegenwoordigt het account dat moet worden gebruikt voor REST API-aanvragen. De Client ID waarde moet worden opgeslagen in de toepassingsconfiguratie en vervolgens moet deze worden opgehaald voordat u HTTP-aanvragen voor Azure Maps maakt die gebruikmaken van Microsoft Entra-verificatie.
  • Gedeelde sleutelverificatie: de Primary Key en Secondary Key worden gebruikt als de abonnementssleutel voor verificatie met gedeelde sleutels. Verificatie met gedeelde sleutels is afhankelijk van het doorgeven van de sleutel die door het Azure Maps-account wordt gegenereerd met elke aanvraag naar Azure Maps. U wordt aangeraden uw sleutels regelmatig opnieuw te genereren. Om de huidige verbindingen tijdens de regeneratie te behouden, worden er twee sleutels opgegeven. De ene sleutel kan in gebruik zijn en de andere sleutel opnieuw genereren. Als u de sleutels opnieuw genereert, dient u elke toepassing bij te werken die toegang heeft tot dit account om de nieuwe sleutels te kunnen gebruiken. Zie Verificatie met Azure Maps voor meer informatie

Een toepassingsregistratie maken in Microsoft Entra-id

Notitie

  • Leesvereisten: Scenario: Desktop-app die web-API's aanroept
  • In het volgende scenario wordt de apparaatcodestroom gebruikt, waarbij geen webbrowser nodig is om een token te verkrijgen.

Maak de toepassing op basis van het apparaat in Microsoft Entra-id om microsoft Entra-aanmelding in te schakelen, die toegang krijgt tot Azure Maps REST API's.

  1. Selecteer in Azure Portal, in de lijst met Azure-services, Microsoft Entra-id> App-registraties> Nieuwe registratie.

    Een schermopname van de toepassingsregistratie in Microsoft Entra-id.

  2. Voer een naam in, kies alleen Accounts in deze organisatiemap als het type Ondersteund account. Geef in omleidings-URI's openbare client/systeemeigen (mobiel en desktop) op en voeg deze vervolgens toe https://login.microsoftonline.com/common/oauth2/nativeclient aan de waarde. Zie de Microsoft Entra ID Desktop-app die web-API's aanroept: App-registratie voor meer informatie. Registreer vervolgens de toepassing.

    Een schermopname van de instellingen die worden gebruikt om een toepassing te registreren.

  3. Navigeer naar Verificatie en schakel De toepassing Behandelen in als een openbare client om verificatie van apparaatcode in te schakelen met Microsoft Entra-id.

    Een schermopname van de geavanceerde instellingen die worden gebruikt om de toepassing op te geven als een openbare client.

  4. Als u gedelegeerde API-machtigingen wilt toewijzen aan Azure Maps, gaat u naar de toepassing. Selecteer vervolgens API-machtigingen>Een machtiging toevoegen. Zoek en selecteer Azure Maps onder API's die mijn organisatie gebruikt.

    Een schermopname die laat zien waar u API-machtigingen aanvraagt.

  5. Schakel het selectievakje naast Access Azure Maps in en selecteer vervolgens Machtigingen toevoegen.

    Een schermopname die laat zien waar u de app-machtigingen opgeeft die u nodig hebt.

  6. Configureer op rollen gebaseerd toegangsbeheer van Azure (Azure RBAC) voor gebruikers of groepen. Zie Op rollen gebaseerde toegang verlenen aan gebruikers tot Azure Maps voor meer informatie.

  7. Voeg code toe voor het verkrijgen van een tokenstroom in de toepassing. Zie de apparaatcodestroom voor meer informatie over de implementatie. Bij het verkrijgen van tokens verwijst u naar het bereik: user_impersonation dat is geselecteerd in eerdere stappen.

    Tip

    Gebruik Microsoft Authentication Library (MSAL) om toegangstokens te verkrijgen. Zie de desktop-app die web-API's aanroept: codeconfiguratie in de Active Directory-documentatie voor meer informatie.

  8. Stel de HTTP-aanvraag samen met het verkregen token van Microsoft Entra ID en verzonden aanvraag met een geldige HTTP-client.

Voorbeeldaanvraag

Hier volgt een voorbeeld van een aanvraagtekst voor het uploaden van een eenvoudige Geofence die wordt weergegeven als een cirkelgeometrie met behulp van een middelpunt en een straal.

POST /mapData?api-version=2.0&dataFormat=geojson
Host: us.atlas.microsoft.com
x-ms-client-id: 30d7cc….9f55
Authorization: Bearer eyJ0e….HNIVN

De volgende voorbeeldtekst van de aanvraag bevindt zich in GeoJSON:

{
    "type": "FeatureCollection",
    "features": [{
        "type": "Feature",
        "geometry": {
            "type": "Point",
            "coordinates": [-122.126986, 47.639754]
        },
        "properties": {
            "geometryId": "001",
            "radius": 500
        }
    }]
}

Voorbeeld van antwoordheader

Operation-Location: https://us.atlas.microsoft.com/mapData/operations/{udid}?api-version=2.0
Access-Control-Expose-Headers: Operation-Location

Op rollen gebaseerde toegang verlenen aan gebruikers aan Azure Maps

U kunt op rollen gebaseerd toegangsbeheer van Azure (Azure RBAC) verlenen door een Microsoft Entra-groep of beveiligingsprincipaal toe te wijzen aan een of meer Azure Maps-roldefinities.

Zie Ingebouwde Azure Maps-roldefinities weergeven om de beschikbare Azure-roldefinities voor Azure Maps weer te geven.

Zie Azure-rollen toewijzen met behulp van Azure Portal voor gedetailleerde stappen over het toewijzen van een beschikbare Azure Maps-rol aan de gemaakte beheerde identiteit of de service-principal

Zie Microsoft Entra-groepen om de Azure Maps-app en resourcetoegang van een grote hoeveelheid gebruikers efficiënt te beheren.

Belangrijk

Als gebruikers zich mogen verifiëren bij een toepassing, moeten de gebruikers eerst worden gemaakt in Microsoft Entra-id. Zie Gebruikers toevoegen of verwijderen met behulp van Microsoft Entra ID voor meer informatie.

Zie Microsoft Entra-id voor meer informatie over het effectief beheren van een grote map voor gebruikers.

Waarschuwing

Ingebouwde azure Maps-roldefinities bieden een zeer grote autorisatietoegang tot veel Azure Maps REST API's. Zie Een aangepaste roldefinitie maken en de door het systeem toegewezen identiteit toewijzen aan de aangepaste roldefinitie om de toegang tot API's tot een minimum te beperken. Hierdoor heeft de toepassing de minste bevoegdheid nodig om toegang te krijgen tot Azure Maps.

Volgende stappen

Zoek de metrische gegevens over API-gebruik voor uw Azure Maps-account: