Verificatie en autorisatie
Elke REST API-oproep die wordt uitgevoerd op basis van een IoT Central-toepassing moet een Autorisatie-header bevatten. De autorisatieheader moet een API-token of een AAD Bearer-token bevatten. Deze tokens worden door IoT Central gebruikt om te bepalen wie de aanroeper is en waartoe ze toegang hebben binnen de toepassing.
API-token
API-tokens zijn bedoeld voor service-naar-servicecommunicatie, zonder een aangemelde gebruikerscontext. U kunt een API-token maken in uw toepassing en deze een rol toewijzen om toegang te verlenen tot resources in uw toepassing.
Een API-token maken en gebruiken:
Open uw IoT Central-toepassing in de browser.
Ga naar Beheer/API-tokens
Klik op Token genereren. U wordt gevraagd deze een naam te geven en een rol te kiezen. De rol bepaalt wat een client die dit token gebruikt, gemachtigd is om te doen in deze toepassing.
Genereer het token en kopieer de waarde. De waarde is een geheim en wordt slechts eenmaal weergegeven.
Wanneer u een API-aanvraag maakt, voegt u een header toe die er als volgt uitziet:
Headernaam Headerwaarde Autorisatie <WAARDE VAN API-token>
Standaard zijn er drie rollen beschikbaar in uw toepassing. Meer informatie over het maken van nieuwe rollen.
U kunt ook programmatisch nieuwe API-tokens maken. Als u de API-aanvraag wilt indienen om een nieuw API-token te maken, hebt u een autorisatieheader nodig met een API-token of bearer met machtigingen voor het maken van nieuwe API-tokens. Zie de docs voor bewerkingen van API-tokens.
AAD Bearer-token
Een Bearer-token is gekoppeld aan een Azure Active Directory-gebruikersaccount dat is toegevoegd aan uw IoT Central-toepassing. U kunt een Bearer-token genereren in de Azure CLI-opdracht: az account get-access-token --resource https://apps.azureiotcentral.com
Maak een API-aanvraag met de volgende header:
Headernaam | Headerwaarde |
---|---|
Autorisatie | Bearer Bearer-tokenwaarde <> |
Wanneer u een Bearer-token gebruikt in API-aanvragen, krijgt de aanroeper hetzelfde toegangsniveau als de Azure Active Directory-gebruiker in de IoT Central-toepassing.
Verificatie van service-principal
Als u een AAD-service-principal wilt gebruiken voor verificatie met de API, moet u eerst de service-principal maken. U moet de tenant-id en object-id van uw service-principal ophalen:
- Ga naar Azure Portal -> Azure Active Directory -> Overzicht. De tenant-id kopiëren
- Ga naar Bedrijfstoepassingen. Maak een nieuwe toepassing of kies een bestaande toepassing. De object-id kopiëren
- Ga naar Azure Portal -> Azure Active Directory -> App-registraties -> uw app -> API-machtigingen. Klik op Een machtiging toevoegen -> API's die mijn organisatie gebruikt en zoek naar Microsoft IoT Central. Kies het item dat overeenkomt met deze exacte tekst.
- Selecteer de machtigingen user_impersonation en Application.ReadWrite.All en voeg deze toe.
- Selecteer Beheerderstoestemming verlenen voor uw directory.
Voeg ten slotte uw service-principal toe aan uw IoT Central-toepassing. Dit is nu mogelijk via de API's.
- Gebruik de API Gebruikers maken om deze service-principalgebruiker toe te voegen. Zorg ervoor dat u {tenantID} en {objectID} gebruikt bij het maken van de nieuwe gebruiker.
U kunt nu het Bearer-token gebruiken dat is gekoppeld aan deze service-principalgebruiker om API-aanvragen te doen, volgens dezelfde stappen als hierboven.
Volgende stappen
Probeer uw eerste API-aanvraag te doen