Alkalmazáskörnyezettel rendelkező Felhőhöz készült Microsoft Defender-alkalmazások elérése

Ez a lap azt ismerteti, hogyan hozhat létre alkalmazásokat, amelyek programozott hozzáférést kapnak Felhőhöz készült Defender-alkalmazásokhoz felhasználó nélkül. Ha programozott hozzáférésre van szüksége a Felhőhöz készült Defender-alkalmazásokhoz egy felhasználó nevében, olvassa el a Hozzáférés kérése felhasználói környezettel című témakört. Ha nem tudja biztosan, hogy melyik hozzáférésre van szüksége, tekintse meg az API-jogkivonatok kezelése oldalt.

Felhőhöz készült Microsoft Defender Alkalmazások számos programozott API-val teszik elérhetővé adatainak és műveleteinek nagy részét. Ezek az API-k segítenek a munkafolyamatok automatizálásában és az Felhőhöz készült Defender Apps képességein alapuló innovációban. Az API-hozzáféréshez OAuth2.0-hitelesítés szükséges. További információ: OAuth 2.0 Engedélyezési kódfolyamat.

Az API-k használatához általában a következő lépéseket kell elvégeznie:

  • Microsoft Entra-alkalmazás létrehozása.
  • Hozzáférési jogkivonat lekérése ezzel az alkalmazással.
  • A jogkivonat használatával érheti el Felhőhöz készült Defender Apps API-t.

Ez a cikk bemutatja, hogyan hozhat létre Microsoft Entra-alkalmazást, hogyan szerezhet be hozzáférési jogkivonatot Felhőhöz készült Microsoft Defender Alkalmazásokhoz, és hogyan érvényesítheti a jogkivonatot.

Alkalmazás létrehozása

  1. Jelentkezzen be az Azure-ba egy globális Rendszergazda istrator szerepkörrel rendelkező felhasználóval.

  2. Lépjen a Microsoft Entra id> Alkalmazásregisztrációk> New regisztrációhoz.

    Image of Microsoft Azure and navigation to application registration.

  3. A regisztrációs űrlapon válassza ki az alkalmazás nevét, majd válassza a Regisztráció lehetőséget.

  4. Ha engedélyezni szeretné, hogy az alkalmazás hozzáférjen Felhőhöz készült Defender-alkalmazásokhoz, és hozzárendelje az "Összes riasztás olvasása" engedélyhez, válassza az alkalmazásoldalon az API-engedélyek>hozzáadása engedély>API-k hozzáadása a szervezetem által használt> api-khoz, írja be a Microsoft Felhőappbiztonság, majd válassza a Microsoftot Felhőappbiztonság.

    Feljegyzés

    A Microsoft Felhőappbiztonság nem jelenik meg az eredeti listában. Kezdje el írni a nevét a szövegmezőbe, hogy megjelenjen. Mindenképpen írja be ezt a nevet, annak ellenére, hogy a termék neve mostantól Felhőhöz készült Defender Apps.

    add permission.

    • Válassza az Alkalmazásengedélyek>vizsgálata.Olvasás lehetőséget, majd az Engedélyek hozzáadása lehetőséget.

      app permission.

      Ki kell választania a megfelelő engedélyeket. A Investigation.Read csak egy példa. Egyéb engedélyhatókörökért lásd : Támogatott engedélyhatókörök

      • Annak megállapításához, hogy melyik engedélyre van szüksége, tekintse meg a meghívni kívánt API Engedélyek szakaszát.
  5. Válassza a Rendszergazdai hozzájárulás megadása lehetőséget.

    Feljegyzés

    Minden alkalommal, amikor hozzáad egy engedélyt, meg kell adnia a rendszergazdai hozzájárulást az új engedély érvénybe lépéséhez.

    Grant permissions.

  6. Ha titkos kulcsot szeretne hozzáadni az alkalmazáshoz, válassza a Tanúsítványok > titkos kulcsok lehetőséget, válassza az Új ügyféltitkot, adjon hozzá egy leírást a titkos kódhoz, majd válassza a Hozzáadás lehetőséget.

    Feljegyzés

    A Hozzáadás lehetőség kiválasztása után válassza a létrehozott titkos kód értékének másolását. A kilépés után nem fogja tudni lekérni ezt az értéket.

    Image of create app key.

  7. Írja le az alkalmazásazonosítót és a bérlőazonosítót. Az alkalmazáslapon lépjen az Áttekintés lapra, és másolja ki az alkalmazás (ügyfél) azonosítóját és a címtár (bérlő) azonosítóját.

    Image of created app id.

  8. Csak Felhőhöz készült Microsoft Defender Alkalmazáspartnerek esetén. Állítsa be az alkalmazást több-bérlősre (a jóváhagyás után az összes bérlőben elérhető). Ez a harmadik féltől származó alkalmazásokhoz szükséges (például ha olyan alkalmazást hoz létre, amely több ügyfél bérlőjében való futtatásra szolgál). Ez nem szükséges, ha olyan szolgáltatást hoz létre, amelyet csak a bérlőjében szeretne futtatni (például ha saját használatra hoz létre egy alkalmazást, amely csak a saját adataival fog működni). Ha az alkalmazást több-bérlősre szeretné állítani:

    • Lépjen a Hitelesítés elemre, és adja hozzá https://portal.azure.com átirányítási URI-ként.

    • A lap alján, a Támogatott fióktípusok csoportban válassza ki a több-bérlős alkalmazáshoz tartozó bármely szervezeti címtáralkalmazásban lévő Fiókokat.

    Az alkalmazást minden olyan bérlőben jóvá kell hagyni, ahol használni szeretné. Ennek az az oka, hogy az alkalmazás az ügyfél nevében kommunikál az Felhőhöz készült Defender-alkalmazásokkal.

    Önnek (vagy az ügyfélnek, ha harmadik féltől származó alkalmazást ír) ki kell választania a hozzájárulási hivatkozást, és jóvá kell hagynia az alkalmazást. A hozzájárulást olyan felhasználóval kell elvégezni, aki rendszergazdai jogosultságokkal rendelkezik az Active Directoryban.

    A hozzájárulási hivatkozás a következőképpen jön létre:

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

    Ahol a 00000000-0000-0000-0000-000000000 helyére az alkalmazásazonosító kerül.

Kész! Sikeresen regisztrált egy alkalmazást! A jogkivonatok beszerzésére és érvényesítésére az alábbi példákban talál példákat.

Támogatott engedélytartományok

Engedély neve Leírás Támogatott műveletek
Investigation.read A tevékenységekkel és riasztásokkal kapcsolatos összes támogatott művelet végrehajtása a záró riasztások kivételével.
Megtekintheti az IP-tartományokat, de nem adhat hozzá, nem frissíthet vagy törölhet.

Hajtsa végre az összes entitásműveletet.
Tevékenységek listája, lekérés, visszajelzés
Riasztások listája, lekérése, megjelölés olvasottként/olvasatlanként
Entitások listája, lekérése, fa beolvasása
Alhálózatok listája
Investigation.manage A riasztások és IP-tartományok kezelése mellett minden investigation.read műveletet végrehajthat. Tevékenységek listája, lekérés, visszajelzés
Riasztások listája, lekérése, megjelölés olvasottként/olvasatlanként, bezárás
Entitások listája, lekérése, fa beolvasása
Alhálózatok listája, létrehozás/frissítés/törlés
Discovery.read A tevékenységekkel és riasztásokkal kapcsolatos összes támogatott művelet végrehajtása a záró riasztások kivételével.
Felderítési jelentések és kategóriák listázása.
Riasztások listája, lekérése, megjelölés olvasottként/olvasatlanként
Felderítési listajelentések, jelentéskategóriák listázása
Discovery.manage Discovery.read engedélyek
Riasztások bezárása, felderítési fájlok feltöltése és blokkszkriptek létrehozása
Riasztások listája, lekérése, megjelölés olvasottként/olvasatlanként, bezárás
Felderítési listajelentések, jelentéskategóriák listázása
Felderítési fájl feltöltése, blokkszkript létrehozása
Gépház.read IP-tartományok listázása. Alhálózatok listája
Gépház.manage IP-tartományok listázása és kezelése. Alhálózatok listája, létrehozás/frissítés/törlés

Hozzáférési jogkivonat lekérése

A Microsoft Entra-jogkivonatokkal kapcsolatos további információkért tekintse meg a Microsoft Entra oktatóanyagát.

A PowerShell használata

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

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

$resourceAppIdUri = '05a65629-4c1b-48c1-a78b-804c4abdd4af'
$oAuthUri = "https://login.microsoftonline.com/$TenantId/oauth2/token"
$authBody = [Ordered] @{
    resource = "$resourceAppIdUri"
    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

A C# használata

A következő kódot a NuGet Microsoft.Identity.Client 4.47.2-vel teszteltük.

  1. Hozzon létre egy új konzolalkalmazást.

  2. Telepítse a NuGet Microsoft.Identity.Client alkalmazást.

  3. Adja hozzá a következőket:

    using Microsoft.Identity.Client;
    
  4. Másolja és illessze be a következő kódot az alkalmazásba (ne felejtse el frissíteni a három változót: tenantId, appId, appSecret):

    string tenantId = "00000000-0000-0000-0000-000000000000"; // Paste your own tenant ID here
    string appId = "11111111-1111-1111-1111-111111111111"; // Paste your own app ID here
    string appSecret = "22222222-2222-2222-2222-222222222222"; // Paste your own app secret here for a test, and then store it in a safe place!
    const string authority = "https://login.microsoftonline.com";
    const string audience = "05a65629-4c1b-48c1-a78b-804c4abdd4af";
    
    IConfidentialClientApplication myApp = ConfidentialClientApplicationBuilder.Create(appId).WithClientSecret(appSecret).WithAuthority($"{authority}/{tenantId}").Build();
    
    List scopes = new List() { $"{audience}/.default" };
    
    AuthenticationResult authResult = myApp.AcquireTokenForClient(scopes).ExecuteAsync().GetAwaiter().GetResult();
    
    string token = authResult.AccessToken;
    

A Python használata

Tekintse meg a Pythonhoz készült Microsoft Authentication Library (MSAL) című témakört.

A Curl használata

Feljegyzés

Az alábbi eljárás feltételezi, hogy a Windows Curl már telepítve van a számítógépre.

  1. Nyisson meg egy parancssort, és állítsa CLIENT_ID az Azure-alkalmazásazonosítóra.
  2. Állítsa CLIENT_Standard kiadás CRET-et az Azure-alkalmazás titkos kódjára.
  3. Állítsa TENANT_ID annak az ügyfélnek az Azure-bérlőazonosítójára, aki az alkalmazást szeretné használni az Felhőhöz készült Defender-alkalmazások eléréséhez.
  4. Futtassa az alábbi parancsot:
curl -i -X POST -H "Content-Type:application/x-www-form-urlencoded" -d "grant_type=client_credentials" -d "client_id=%CLIENT_ID%" -d "scope=05a65629-4c1b-48c1-a78b-804c4abdd4af/.default" -d "client_secret=%CLIENT_SECRET%" "https://login.microsoftonline.com/%TENANT_ID%/oauth2/v2.0/token" -k

A választ a következő formában kapja meg:

{"token_type":"Bearer","expires_in":3599,"ext_expires_in":0,"access_token":"eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsIn <truncated> aWReH7P0s0tjTBX8wGWqJUdDA"}

A jogkivonat érvényesítése

Győződjön meg arról, hogy a megfelelő jogkivonatot kapta:

  1. Másolja és illessze be az előző lépésben kapott jogkivonatot a JWT-be annak dekódolásához.
  2. Ellenőrizze, hogy a kívánt engedélyekkel rendelkezik-e "szerepkörök" jogcím
  3. Az alábbi képen egy olyan dekódolt jogkivonat látható, amely egy alkalmazásból beszerzett, az összes Felhőhöz készült Microsoft Defender-alkalmazásszerepkörre vonatkozó engedélyekkel rendelkezik:

Image of token validation.

A jogkivonat használata az Felhőhöz készült Microsoft Defender Apps API eléréséhez

  1. Válassza ki a használni kívánt API-t. További információ: Felhőhöz készült Defender Apps API-k.
  2. Állítsa be az engedélyezési fejlécet a "Bearer {token}" címre küldött HTTP-kérelemben (a Tulajdonos az engedélyezési séma).
  3. A jogkivonat lejárati ideje egy óra. Több kérelmet is elküldhet ugyanazzal a jogkivonattal.

Az alábbi példa egy kérés küldésére, amely a riasztások listáját kéri le a C# használatával:

    var httpClient = new HttpClient();

    var request = new HttpRequestMessage(HttpMethod.Get, "https://portal.cloudappsecurity.com/cas/api/v1/alerts/");

    request.Headers.Authorization = new AuthenticationHeaderValue("Bearer", token);

    var response = httpClient.SendAsync(request).GetAwaiter().GetResult();

    // Do something useful with the response

Lásd még