Defender CLI-Setup für agentische Codesicherheit (private Vorschau)

Verwenden Sie Defender CLI-Authentifizierung, um agentische Codescans lokal oder in CI/CD-Pipelines auszuführen.

Authentifizierungsoptionen

Agentic Code Security unterstützt zwei Defender CLI-Authentifizierungsmethoden:

  • App-basierte Authentifizierung: Verwenden Sie diese Option für CI/CD-Pipelines und andere nicht interaktive Automatisierungen.
  • Interaktive Authentifizierung: Verwenden Sie diese Option für lokale Terminalüberprüfungen durch angemeldete Benutzer.

Erforderliche Berechtigungen

Die erforderlichen Berechtigungen hängen von Ihrer Authentifizierungsmethode ab. Informationen zum Zuweisen von Defender Unified RBAC-Berechtigungen finden Sie unter Zuweisen von Berechtigungen zu Benutzern mithilfe von Defender RBAC.

Authentifizierungsmethode Erforderliche Berechtigungen
App-basierte Authentifizierung Anwendungsadministratorrolle in Microsoft Entra ID, um die App zu registrieren und API-Berechtigungen hinzuzufügen. Rolle des globalen Administrators zum Erteilen der Administratorzustimmung. Für die App-Registrierung ist die AIScan.enabled-Berechtigung zum Ausführen von KI-Scans und AIScan.Upload erforderlich, um Scanergebnisse hochzuladen.
Interaktive Authentifizierung Rolle "Sicherheitsadministrator" in Microsoft Entra ID. Weisen Sie in Microsoft Defender einheitlichen RBAC die erforderlichen Berechtigungen zum Ausführen von Scans, zum Hochladen von Scanergebnissen und zum Anzeigen oder Verwalten von Scanergebnissen zu.

Installieren Sie bei Bedarf die Microsoft Defender Code-Unternehmensanwendung.

Dieser Schritt ist für beide Authentifizierungsmethoden erforderlich. Das Skript installiert die Microsoft Defender Code-Erstanbieter-App auf Ihrem Mandanten und erteilt Administratorzustimmungen für Benutzer, die die CLI lokal ausführen.

Note

Für Kunden mit einer E5-Lizenz wird die Microsoft Defender Code-App während des MDASH-Onboardings automatisch bereitgestellt. Das Ausführen dieses Skripts ist nicht erforderlich. Wenn Ihr Mandant nicht über eine E5-Lizenz verfügt, führen Sie die folgenden Schritte aus.

  1. Installieren Sie Azure CLI, wenn sie noch nicht installiert ist.

    winget install -e --id Microsoft.AzureCLI
    
  2. Kopieren Sie das Administratorzustimmungsskript, und speichern Sie es unter Grant-DefenderAdminConsent.ps1. Weitere Informationen finden Sie unter Microsoft Defender Code admin consent script.

  3. Führen Sie das gespeicherte Skript mit Ihrer Mandanten-ID aus.

    ./Grant-DefenderAdminConsent.ps1 -TenantId <tenant-id>
    
  4. Schließen Sie den Azure Anmeldeablauf ab. Kopieren Sie den in Azure CLI angezeigten Code, und melden Sie sich mit der umgeleiteten URL an.

  5. Überprüfen Sie, ob die Anwendung installiert wurde:

    1. Wechseln Sie in Microsoft Entra ID zu "Übersicht".
    2. Durchsuchen Sie Ihren Mandanten nach Microsoft Defender Code.
    3. Vergewissern Sie sich, dass die Anwendung unter Enterprise-Anwendungen angezeigt wird.

Verwenden der appbasierten Authentifizierung

Verwenden Sie die appbasierte Authentifizierung, um Defender CLI-Scans in CI/CD-Pipelines auszuführen.

Voraussetzungen

  • Anwendungsadministratorrolle in Microsoft Entra ID.
  • Globale Administratorrolle verfügbar, um die erforderlichen Berechtigungen zu genehmigen.
  • Berechtigung, die Mandanten-ID und die Client-ID der App-Registrierung anzuzeigen sowie ein Clientgeheimnis zu erstellen oder abzurufen.
  • Azure CLI installiert.

Erstellen einer Microsoft Entra-App

  1. Melden Sie sich beim Azure-Portal an.
  2. Suchen Sie nach App-Registrierungen und wählen Sie die Option aus.
  3. Wählen Sie Neue Registrierung aus.
  4. Geben Sie einen Namen für Ihre Anwendung ein, und wählen Sie dann "Registrieren" aus.

API Berechtigungen hinzufügen

  1. Erweitern Sie in der neuen App-Registrierung Verwalten im linken Navigationsbereich.
  2. Wählen Sie API-Berechtigungen>"Berechtigung hinzufügen" aus.
  3. Wählen Sie Von meiner Organisation verwendete APIs aus.
  4. Suchen und wählen Sie Microsoft Defender Code aus.
  5. Wählen Sie Anwendungsberechtigungen.
  6. Fügen Sie die benötigten Berechtigungen hinzu:
    • Um Benutzern das Ausführen von KI-Scans zu ermöglichen, wählen Sie "AIScan.enabled" aus.
    • Um Benutzern das Hochladen von AI-Scanergebnissen in Defender zu ermöglichen, wählen Sie "AIScan.Upload" aus.
  7. Wählen Sie "Berechtigungen hinzufügen" aus.

Note

Die AIScan.View-Rolle wirkt sich derzeit nicht auf Berechtigungen aus.

Ein globaler Administrator muss die Zustimmung für die Berechtigungen erteilen. Wenn die Schaltfläche Administratorzustimmung erteilen nicht verfügbar ist, verfügen Sie nicht über die Rolle des globalen Administrators.

  1. Wählen Sie auf der Seite "API-Berechtigungen " die Option "Administratorzustimmung erteilen" aus.
  2. Bestätigen Sie, wenn Sie dazu aufgefordert werden.

Geheimen Clientschlüssel hinzufügen

  1. Wählen Sie in Ihrer App-Registrierung Zertifikate und geheime Schlüssel>"Neuer geheimer Clientschlüssel" aus.
  2. Geben Sie eine Beschreibung und ein Ablaufdatum ein, und wählen Sie dann "Hinzufügen" aus.
  3. Speichern Sie den geheimen Wert an einem sicheren Speicherort. Sie können es nicht mehr anzeigen, nachdem Sie die Seite verlassen haben.
  4. Notieren Sie die Anwendungs-ID (Client) und Verzeichnis-ID (Mandant) auf der Seite Übersicht der App-Registrierung.

Anmeldeinformationen für CI/CD konfigurieren

Um Defender CLI in einer Pipeline zu konfigurieren, fügen Sie die folgenden Werte als verschlüsselte geheime Schlüssel in Ihrer CI/CD-Plattform hinzu, und machen sie dann als Umgebungsvariablen im Workflow- oder Pipelineauftrag verfügbar, der den Scan ausführt:

DEFENDER_ASPM_TENANT_ID
DEFENDER_ASPM_CLIENT_ID
DEFENDER_ASPM_CLIENT_SECRET

Um DEFENDER_ASPM_TENANT_ID und DEFENDER_ASPM_CLIENT_ID zu finden, öffnen Sie die App-Registrierung in Microsoft Entra ID und kopieren Sie die Werte Verzeichnis-ID (Mandanten-ID) und Anwendungs-ID (Client-ID) von der Seite Übersicht.

Um DEFENDER_ASPM_CLIENT_SECRET zu erhalten, erstellen Sie in derselben App-Registrierung ein neues Clientgeheimnis, kopieren Sie den Geheimniswert unmittelbar nach seiner Erstellung, und speichern Sie ihn sicher im Geheimspeicher Ihrer Pipeline.

Important

Checken Sie dieses Geheimnis nicht in die Versionsverwaltung ein und nehmen Sie es nicht in Workflow-Protokolle auf. Rotieren Sie Secrets regelmäßig und ersetzen Sie sie, bevor sie ablaufen, um Fehler in der Pipeline zu vermeiden.

Verwenden der interaktiven Authentifizierung

Verwenden Sie diesen Ansatz, um Benutzern die Authentifizierung mit ihren Defender Anmeldeinformationen für lokale Defender CLI-Scans zu ermöglichen. Sie können stattdessen auch die appbasierte Authentifizierung verwenden.

Voraussetzungen

Bevor Sie die Defender CLI-Befehle ausführen können, stellen Sie sicher, dass Ihrem Konto mindestens eine der folgenden Berechtigungen zugewiesen wurde:

Festlegen der Mandantenumgebungsvariable

Legen Sie die Mandanten-ID fest, die für Defender interaktive Authentifizierung in Ihrer Shell als Umgebungsvariable verwendet wird, bevor Sie sich anmelden. Dadurch wird sichergestellt, dass Azure CLI die Geräteanmeldung für den richtigen Microsoft Entra Mandanten anfordert.

DEFENDER_DFD_TENANT_ID=<tenant-id>

Anmelden mit Azure CLI

Führen Sie den folgenden Befehl aus, um einen Gerätecode-Anmeldeablauf für Defender interaktive Authentifizierung zu starten. Der Bereichswert fordert die Defender interaktive Anmeldeberechtigung an, und der Befehl ermöglicht die Anmeldung, auch wenn dem Konto kein Azure Abonnement zugeordnet ist.

az login \
  --tenant <DEFENDER_DFD_TENANT_ID> \
  --scope c2fd607e-fe6e-41bd-ae58-08e2f24014aa/Defender.InteractiveLogin \
  --allow-no-subscriptions \
  --use-device-code

Schließen Sie die Anmeldung mit dem Gerätecode ab

  1. Kopieren Sie den in der Konsole angezeigten Gerätecode, und öffnen Sie dann die Geräteanmeldungsseite in Ihrem Browser.
  2. Melden Sie sich mit einem Konto an, das Zugriff auf den angegebenen Mandanten hat.
  3. Fügen Sie den Gerätecode ein, wenn Sie dazu aufgefordert werden, und schließen Sie den Authentifizierungsfluss ab.
  4. Kehren Sie zur Konsole zurück, und warten Sie, bis die Azure CLI Sitzung abgeschlossen ist.

Nächste Schritte