Een app maken voor toegang tot Microsoft Defender voor Eindpunt zonder een gebruiker

Wanneer u Microsoft Defender voor Eindpunt API's gebruikt, hebt u mogelijk toegang nodig tot Microsoft Defender voor Eindpunt zonder gebruiker. U wilt bijvoorbeeld een service maken die op de achtergrond wordt uitgevoerd en namens uw organisatie communiceert met Defender voor Eindpunt. Als u achtergrondservicetoegang nodig hebt zonder een aangemelde gebruiker, maakt u een toepassing die toegang heeft tot Defender voor Eindpunt zonder een gebruiker.

In dit artikel wordt beschreven hoe u een toepassing registreert in Microsoft Entra ID, deze machtigingen alleen voor apps verleent en een toegangstoken ophaalt voor Defender voor toegang tot de Eindpunt-API. Voor API-toegang is een OAuth 2.0-clientreferentiestroom vereist.

Vereisten

Als u een app-registratie in Azure wilt maken, hebt u een Microsoft Entra rol nodig met app-registratiemachtigingen waarmee apps kunnen worden gemaakt, zoals toepassingsbeheerder.

Stap 1: een app maken in Azure

Voer de volgende stappen uit om een app te registreren en api-machtigingen toe te kennen in Azure:

  1. Meld u aan bij Azure Portal.

  2. Zoek naar App-registraties en navigeer naar App-registraties.

  3. Selecteer Nieuwe registratie.

  4. Kies een naam voor uw toepassing en selecteer vervolgens Registreren.

  5. Ga op de pagina van uw toepassing naar API-machtigingen beheren > Machtigings-API's > toevoegen > die mijn organisatie gebruikt.

  6. Zoek op de pagina API-machtigingen aanvragen naar WindowsDefenderATP en selecteer deze.

  7. Selecteer het type machtigingen dat u nodig hebt en selecteer vervolgens Machtigingen toevoegen.

    • Gedelegeerde machtigingen : meld u aan met uw app alsof u een gebruiker bent.

    • Toepassingsmachtigingen : toegang tot de API als een service.

  8. Selecteer de juiste machtigingen voor uw app. Als u wilt bepalen welke machtiging u nodig hebt, bekijkt u de sectie Machtigingen in de API die u aanroept. Hier volgen twee voorbeelden:

  9. Selecteer Machtiging toevoegen.

Stap 2: een geheim toevoegen aan uw app

In de volgende stappen wordt beschreven hoe u uw app verifieert met behulp van een app-geheim. Als u uw app met een certificaat wilt verifiëren, raadpleegt u Een zelfondertekend openbaar certificaat maken om uw toepassing te verifiëren.

  1. Selecteer op de toepassingspagina Certificaten & geheimen>Nieuw clientgeheim.

  2. Voeg in het deelvenster Een clientgeheim toevoegen een beschrijving en vervaldatum toe.

  3. Kies Toevoegen.

  4. Kopieer de waarde van het geheim dat u hebt gemaakt. U kunt deze waarde niet meer ophalen nadat u de pagina hebt verlaten.

  5. Kopieer op de pagina Overzicht van uw app de Toepassings-id (client-id) en Map-id (tenant-id). U hebt deze id nodig om uw app te verifiëren.

  6. Noteer uw toepassings-id en uw tenant-id. Ga op de toepassingspagina naar Overzicht en kopieer het volgende.

multitenant-apps

Microsoft Defender voor Eindpunt partners moeten hun apps instellen op meerdere tenants. Stel uw app in op een app met meerdere tenants als u van plan bent een app te maken die wordt uitgevoerd in tenants van meerdere klanten.

  1. Ga op de pagina Azure app naar Verificatie beheren>.

  2. Een platform toevoegen.

  3. Selecteer in het deelvenster Platforms configurerende optie Web.

  4. Voeg toe https://portal.azure.com aan omleidings-URI's en selecteer Configureren.

  5. Selecteer in de opties Ondersteunde accounttypende optie Accounts in een organisatiemap en selecteer Opslaan.

Zodra u uw app hebt uitgevoerd, moet deze worden goedgekeurd in elke tenant waar u deze wilt gebruiken. Dit komt doordat uw toepassing namens uw klant communiceert met Defender voor Eindpunt. U of uw klant moet de toestemmingslink selecteren en uw app goedkeuren. Geef toestemming met een gebruiker die beheerdersbevoegdheden heeft.

Zo maakt u de toestemmingslink. Wanneer een tenantbeheerder deze URL bezoekt, wordt de Microsoft identity platform toestemmingsstroom geopend, zodat de tenant van de klant de app kan autoriseren. Vervang 00000000-0000-0000-0000-000000000000 door uw app-id.

https://login.microsoftonline.com/common/oauth2/authorize?prompt=consent&client_id=00000000-0000-0000-0000-000000000000&response_type=code&sso_reload=true

Een toegangstoken ophalen

De volgende methoden laten zien hoe u het toegangstoken van uw app kunt ophalen.

Tip

Voor sommige Microsoft Defender voor Eindpunt-API's zijn nog steeds toegangstokens vereist die zijn uitgegeven voor de verouderde resource https://api.securitycenter.microsoft.com. Als de tokendoelgroep niet overeenkomt met de resource die door de API wordt verwacht, mislukken aanvragen met 403 Forbidden, zelfs als het API-eindpunt gebruikmaakt https://api.security.microsoft.comvan . Gebruik https://api.securitycenter.microsoft.com als de resource of scope wanneer u tokens ophaalt.

# This script acquires the App Context Token and stores it in the variable $token for later use.
# Paste your Tenant ID, App ID, and App Secret (App key) into the quotes below.

$tenantId = '' ### Paste your tenant ID here
$appId = '' ### Paste your Application ID here
$appSecret = '' ### Paste your Application key here

$sourceAppIdUri = 'https://api.securitycenter.microsoft.com/.default'
$oAuthUri = "https://login.microsoftonline.com/$TenantId/oauth2/v2.0/token"
$authBody = [Ordered] @{
    scope = "$sourceAppIdUri"
    client_id = "$appId"
    client_secret = "$appSecret"
    grant_type = 'client_credentials'
}
$authResponse = Invoke-RestMethod -Method Post -Uri $oAuthUri -Body $authBody -ErrorAction Stop
$token = $authResponse.access_token
$token