Freigeben über


Hinzufügen mehrerer Tools zu Ihrem Agent

Wichtig

Einige Informationen in diesem Artikel beziehen sich auf ein vorab veröffentlichtes Produkt, das vor der kommerziellen Veröffentlichung möglicherweise erheblich geändert wird. Microsoft übernimmt mit diesen Informationen keinerlei Gewährleistung, sei sie ausdrücklich oder konkludent.

In diesem Beispiel erfahren Sie, wie Sie einen Agent über ein YAML-Beispiel erstellen, das globale Microsoft-Tools, GPT, API und KQL-Tools (Skills) verwendet.

Der gesamte Prozess sieht wie folgt aus:

  • Schritt 1: Erstellen und Hochladen des Agent-YAML
  • Schritt 2: Aktivieren oder Umschalten des Agents in "Quellen verwalten"
  • Schritt 3: Einrichten des Agents in Security Copilot
  • Schritt 4: Ausführen des Agents

Aufschlüsselung des Toolaufrufs (Skill)

In diesem Abschnitt erfahren Sie, wie die YAML-Agent-Tools (Skills) aufgerufen werden und welche Plug-Ins eingeschlossen werden müssen.

Der DCA URL Geolocation 090925 Agent ist so konzipiert, dass Sicherheitsanalysten den Hostingspeicherort einer bestimmten URL verstehen. Es folgt einem strukturierten Aufrufflow, der im YAML-Manifest definiert ist und mehrere Tools (Skills) in GPT- und KQL-Formaten verwendet.

Aktivierung auslösen

  • Der Agent wird alle 300 Sekunden über den Standardtrigger ausgelöst.

  • Zuerst wird der FetchSkill aufgerufen: Contoso.SecurityCopilot.Samples-0909d.RecentUrlClicks_DCA-090925. Der KQL-Skill (Format: KQL) fragt Defender-Protokolle nach URLs ab, auf die kürzlich geklickt wurde.

  • Anschließend wird processSkill aufgerufen: Contoso.SecurityCopilot.Samples-090925.URL_Location_DCA_Agent_Entrypoint-090925. Der Agent-Skill (Format:AGENT) untersucht den Hostingspeicherort der URL.

Wenn Sie den Agent ausführen, wird der Fetch Skill aufgerufen. Contoso.SecurityCopilot.Samples-0909d.RecentUrlClicks_DCA-090925

Einstiegspunkt für Die Agent-Qualifikation

Der URL_Location_DC_Agent_Entrypoint-090925 Agent-Skill ist unter FORMAT:AGENT definiert und führt die folgenden Schritte aus:

  • Eingaben: Erfordert eine einzelne Eingabe: URL (die URL, die untersucht werden soll).

  • Anweisungen: Der Agent folgt einem dreistufigen Prozess, um die untergeordneten Skills aufzurufen:

    • ExtractHostname: Verwendet das GPT-Tool ExtractHostname_DCA-090925 , um den Hostnamen aus der URL zu analysieren.

    • GetDnsResolutionsByIndicators: Verwendet das Microsoft Threat Intelligence-Skillset , um die dem Hostnamen zugeordneten IP-Adressen abzurufen. Stellen Sie sicher, dass RequiredSkillsets: ThreatIntelligence.DTI hinzugefügt werden muss, ohne welches GetDnsResolutionsByIndicators Tool nicht aufgerufen wird.

    • lookupIpAddressGeolocation: Ist die operationId in der OpenAPI-Spezifikation, auf die im API-Plug-In DCA_SampleAPIPlugin verwiesen wird, um Geolocationdaten für jede IP-Adresse nachzuschlagen. Eine Referenz finden Sie unter Build-API-Beispiel.

Schritt 1: Erstellen und Hochladen des Agent-YAML

Der Agent-YAML ist wie folgt definiert:

Descriptor:
  Name: Contoso.SecurityCopilot.Samples-090925_1b
  Description: DCA URL Geolocation 090925 Agent_1b
  DisplayName: DCA URL Geolocation 090925 Agent_1b

SkillGroups:
- Format: AGENT
  Skills:
  - Name: URL_Location_DCA_Agent_Entrypoint-090925_1b
    Description: The entrypoint into the URL Location Agent
    Interfaces:
    - Agent
    Inputs:
    - Required: true
      Name: URL
      Description: A URL the agent should investigate
    Settings:
      Model: gpt-4.1
      Instructions: |
            <|im_start|>system
            You are an AI agent that helps a security analyst understand the hosting situation of a URL (the input).
            You'll do this by following a three-step process:
            1) Use ExtractHostname to find the hostname from the URL provided as input
            2) Use GetDnsResolutionsByIndicators to extract IP Addresses that the hostname has been observed resolving to. This may produce a list of IP Addresses.
            3) One-at-a time, use lookupIpAddressGeolocation to look up the geolocation of an IP address.

            Produce a simply formatted response telling the security analyst which locations that URL is being served from.  
            If you encounter an error share that.  
            Always return something the user knows that something happened.
            
            <|im_end|>
            <|im_start|>user
            {{URL}}
            <|im_end|>

    ChildSkills:
    - lookupIpAddressGeolocation
    - ExtractHostname_DCA-090925_1b
    - GetDnsResolutionsByIndicators
- Format: GPT
  Skills:
  - Name: ExtractHostname_DCA-090925_1b
    DisplayName: ExtractHostname_DCA-090925_1b
    Description: ExtractHostname_DCA-090925_1b
    Inputs:
    - Name: URL
      Description: A URL string
    Settings:
      ModelName: gpt-4.1
      Template: |-
        <|im_start|>system
        Return the hostname component of the URL provided as input.  For example:
        - If the input is 'https://www.mlb.com/', return 'www.mlb.com'
        - If the input is 'http://dev.mycompany.co.uk/sign-up/blah?a=12&b=12&c=32#23', return 'dev.mycompany.co.uk'
        - If the input is 'ftp:/x.espon.com', return 'x.espon.com'
        <|im_end|>
        <|im_start|>user
        {{URL}}
        <|im_end|>
- Format: KQL
  Skills:
    - Name: RecentUrlClicks_DCA-090925_1b
      Description: Returns recently clicked URLs
      Inputs:
        - Name: LookbackMinutes
          Description: Number of minutes to lookback
          Required: false
      Settings:
        Target: Defender
        Template: UrlClickEvents | sort by TimeGenerated desc | limit 10 | project Url

AgentDefinitions:
  - Name:  URLLocationAgent-090925_1b
    DisplayName: URLLocationAgent 090925_1b
    Description: An agent to help an analyst understand URL hosting 
    Publisher: Contoso
    Product: Security Copilot
    RequiredSkillsets:
      - SecurityCopilot
      - ThreatIntelligence.DTI
      - DCA_SampleAPIPlugin
    AgentSingleInstanceConstraint: None
    Settings:
      - Name: LookbackWindowMinutes
        Label: Max Lookback Window in minutes
        Description: The maximum number of minutes to find clicked URLs
        HintText: You should probably enter 5
        SettingType: String
        Required: true
    Triggers:
      - Name: Default
        DefaultPeriodSeconds: 300
        FetchSkill: Contoso.SecurityCopilot.Samples-090925_1b.RecentUrlClicks_DCA-090925_1b
        ProcessSkill: Contoso.SecurityCopilot.Samples-090925_1b.URL_Location_DCA_Agent_Entrypoint-090925_1b
        Settings:
  
Settings:
    HistoryPassDownMode: None
    IncludeSessionHistory: false
WorkspaceId: SecurityCopilot_Workspace 

Schritt 2: Aktivieren oder Umschalten des Agents in "Quellen verwalten"

  1. Überprüfen Sie, ob das hochgeladene YAML (Plug-In) in Manage sources Custom (Quellen > verwalten) über die Eingabeaufforderungsleiste eingerichtet oder umgeschaltet ist.

    Screenshot: Benutzerdefiniertes Verwalten von Quellen

  2. Suchen Sie nach DCA URL Geolocation 090925 Agent, wobei es sich um handelt Descriptor.DisplayName.

Hinweis

Im Allgemeinen kann es Plug-Ins geben, für die beim Einrichten des Agents einige Konfigurationen festgelegt werden müssen.

Schritt 3: Einrichten des Agents in Security Copilot

  1. Navigieren Sie zu Home > Agents.

  2. Suchen Sie in der Agent-Bibliothek nach dem Agent URLLocationAgent-090925 , der AgentDefinitions.DisplayName aus YAML stammt. Aktualisieren Sie den Bildschirm in der Agent-Bibliothek, wenn der Agent bei der Suche nicht angezeigt wird.

    Abbildung der Ansicht

  3. Wählen Sie im Karte Agent die Option Details anzeigen aus, um den Agent einzurichten.

    Abbildung des Agent-Setups in Security Copilot

    Die aktivierten Plug-Ins finden Sie im Abschnitt Plug-Ins.

  4. Geben Sie die Eingabeparameter an, die zum Einrichten des Agents erforderlich sind.

    Abbildung des Bildschirms

  5. Wählen Sie Signin (Anmelden ) aus, um sich zu authentifizieren.

    Abbildung der Anmeldung bei der Agent-Identität in Security Copilot

Schritt 4: Ausführen des Agents

  1. Wählen Sie Fertig stellen aus, um den Agent auszuführen. Daraufhin wird der Agent-Ausführungsbildschirm angezeigt.

    Abbildung der Agentausführung in Security Copilot

  2. Wählen Sie Einmal ohne Trigger ausführen aus, um den Agent auszuführen.

    Die Ergebnisse der Agentausführung sind wie angezeigt.

    Abbildung der Agentergebnisse in Security Copilot

  3. Wählen Sie Aktivität anzeigen aus, um die einzelnen Agent-Ergebnisse anzuzeigen.

    Abbildung der Agent-Ansichtsaktivität in Security Copilot