Kurz: Získání dat pomocí rozhraní API pro generování sestav Azure Active Directory s certifikáty

Rozhraní API pro generování sestav v Azure Active Directory (Azure AD) poskytují programový přístup k těmto datům prostřednictvím sady rozhraní API založených na REST. Tato rozhraní API můžete volat z nejrůznějších programovacích jazyků a nástrojů. Pokud chcete získat přístup k rozhraní API pro generování sestav Azure AD bez zásahu uživatele, musíte nakonfigurovat svůj přístup tak, aby se používají certifikáty.

V tomto kurzu se naučíte používat testovací certifikát pro přístup k rozhraní MS Graph API pro vytváření sestav. Testovací certifikáty nedoporučujeme používat v produkčním prostředí.

Požadavky

  1. Pokud chcete získat přístup k přihlašovacím datům, ujistěte se, že Azure Active Directory tenanta s licencí Premium (P1/P2). Informace o upgradu edice Azure Active Directory Premium najdete v tématu Začínáme s Azure Active Directory. Upozorňujeme, že pokud před upgradem nemáte žádná data aktivit, po upgradu na licenci Premium bude trvat několik dní, než se data v sestavách zobrazí.

  2. Vytvořte nebo přepněte na uživatelský účet v roli globálního správce, správce zabezpečení, čtenáře zabezpečení nebo čtenáře sestav pro tenanta.

  3. Pro přístup k rozhraní API pro generování sestav Azure Active Directory požadavky.

  4. Stáhněte a nainstalujte Azure AD PowerShell verze 2.

  5. Nainstalujte MSCloudIdUtils. Tento modul poskytuje několik rutin nástrojů, jako jsou:

    • Knihovny ADAL potřebné k ověřování
    • Přístupové tokeny od uživatele, klíče aplikace a certifikáty pomocí ADAL
    • Rozhraní Graph API zpracovávající stránkové výsledky
  6. Pokud modul používáte poprvé, spusťte Rutinu Install-MSCloudIdUtilsModule, jinak ji importujte pomocí příkazu Import-Module PowerShellu. Relace by měla vypadat podobně jako na této  obrazovce: Windows PowerShell

  7. K vytvoření testovacího certifikátu použijte rutinu PowerShellu New-SelfSignedCertificate.

    $cert = New-SelfSignedCertificate -Subject "CN=MSGraph_ReportingAPI" -CertStoreLocation "Cert:\CurrentUser\My" -KeyExportPolicy Exportable -KeySpec Signature -KeyLength 2048 -KeyAlgorithm RSA -HashAlgorithm SHA256
    
  8. Pomocí commandletu Export-Certificate ji exportujte do souboru certifikátu.

    Export-Certificate -Cert $cert -FilePath "C:\Reporting\MSGraph_ReportingAPI.cer"
    
    

Získání dat pomocí rozhraní API pro generování sestav Azure Active Directory s certifikáty

  1. Přejděte do Azure Portal,vyberte Azure Active Directory, pak vyberte Registrace aplikací a zvolte svou aplikaci ze seznamu.

  2. V okně & aplikace v části Spravovat vyberte Certifikáty a tajné kódy a vyberte Upload Certificate.

  3. Vyberte soubor certifikátu z předchozího kroku a vyberte Přidat.

  4. Poznamenejte si ID aplikace a kryptografický otisk certifikátu, který jste právě zaregistrovali ve své aplikaci. Pokud chcete zjistit kryptografický otisk, přejděte na stránce aplikace na portálu do části Certifikáty a & tajné kódy v části Spravovat. Kryptografický otisk bude v seznamu Certifikáty.

  5. Otevřete manifest aplikace v vloženém editoru manifestu a ověřte, že se vlastnost keyCredentials aktualizovala novými informacemi o certifikátu, jak je znázorněno níže –

    "keyCredentials": [
         {
             "customKeyIdentifier": "$base64Thumbprint", //base64 encoding of the certificate hash
             "keyId": "$keyid", //GUID to identify the key in the manifest
             "type": "AsymmetricX509Cert",
             "usage": "Verify",
             "value":  "$base64Value" //base64 encoding of the certificate raw data
         }
     ]
    
  6. Teď můžete pomocí tohoto certifikátu získat přístupový token pro rozhraní MS Graph API. Použijte rutinu Get-MSCloudIdMSGraphAccessTokenFromCert z modulu MSCloudIdUtils PowerShellu a předáte ID aplikace a kryptografický otisk, které jste získali v předchozím kroku.

    Snímek obrazovky zobrazuje okno PowerShellu s příkazem, který vytvoří přístupový token.

  7. Pomocí přístupového tokenu ve skriptu PowerShellu můžete dotazovat Graph API. Pomocí rutiny Invoke-MSCloudIdMSGraphQuery z nástroje MSCloudIDUtils můžete vytvořit výčet přihlášení a koncového bodu directoryAudits. Tato rutina zpracovává vícestránkové výsledky a odesílá je do kanálu PowerShellu.

  8. Dotazem na koncový bod directoryAudits načtěte protokoly auditu.

    Snímek obrazovky zobrazuje okno PowerShellu s příkazem k dotazování adresářeKonce koncového bodu Auditits pomocí přístupového tokenu z dřívější části tohoto postupu.

  9. Dotaz na koncový bod přihlášení pro načtení protokolů přihlašování.

    Snímek obrazovky zobrazuje okno PowerShellu s příkazem k dotazování koncového bodu přihlášení pomocí přístupového tokenu z dřívější části tohoto postupu.

  10. Teď se můžete rozhodnout tato data exportovat do sdíleného svazku clusteru a uložit je do systému SIEM. Můžete také zabalit váš skript do naplánované úlohy, abyste získávali data Azure AD z vašeho klienta pravidelně bez nutnosti ukládat klíče aplikace ve zdrojovém kódu.

Další kroky