Copilot Autofix voor waarschuwingen voor codebeveiliging (Preview)

Copilot Autofix biedt autonome remediatie voor waarschuwingen voor codescans en beveiligingsproblemen met afhankelijkheidsscans in GitHub Advanced Security for Azure DevOps. Open een waarschuwing waarvoor een oplossing wordt ondersteund en selecteer Oplossing genereren. De Copilot-codeeragent kan relevante context van de repository verkennen, de voorgestelde wijzigingen bekijken en verfijnen en een pull request openen met een voorgestelde oplossing.

U controleert, test en voegt de wijziging samen via uw normale pullrequestworkflow. De stappen zijn hetzelfde voor beide waarschuwingstypen. Kies eerst de relevante waarschuwingslijst en gebruik vervolgens de relevante scanner om de samengevoegde oplossing te controleren.

Note

Deze functie is beperkt beschikbaar als openbare preview. Microsoft accepteert momenteel geen extra gebruikers voor de preview.

Functionaliteit kan zonder kennisgeving worden gewijzigd of verwijderd. Preview-functies hebben geen SLA (Service Level Agreement) en beperkte ondersteuning.

GitHub Advanced Security voor Azure DevOps werkt met Azure-opslagplaatsen. Zie GitHub Advanced Securityvoor informatie over het gebruik van GitHub Advanced Security met GitHub-opslagplaatsen.

Prerequisites

Category Requirements
Permissions - Een overzicht van alle waarschuwingen voor een opslagplaats weergeven: Inzender machtigingen voor de opslagplaats.
- Waarschuwingen verwijderen in Geavanceerde beveiliging: Project administrator machtigingen.
- Machtigingen beheren in Geavanceerde beveiliging: Lid van de Project Verzamelingsbeheerders groep of Advanced Security: instellingen beheren machtigingen ingesteld op Allow.

Zie Geavanceerde beveiligingsmachtigingen beherenvoor meer informatie over geavanceerde beveiligingsmachtigingen.

  • Codescans of afhankelijkheidsscans zijn geconfigureerd en genereren waarschuwingen voor uw repository.
  • Ten minste één ondersteunde waarschuwing.
  • De opslagplaatsmachtiging Geavanceerde beveiliging: waarschuwingen bekijken voor de gebruiker die Oplossing genereren selecteert.
  • Toegang tot de Azure-pipelines-agentgroep. Copilot Autofix zet een door Microsoft gehoste pipeline-taak in de wachtrij om de oplossing te genereren en te publiceren. Voor de uitvoering is een beschikbare parallelle taak vereist. Als alle parallelle taken worden gebruikt, blijft de oplossing in de wachtrij totdat de capaciteit beschikbaar is.

Copilot Autofix voert bewerkingen in de opslagplaats uit met een speciale identiteit met de naam GitHub Copilot ({organization}), niet een Build Service-account van een project of verzameling. De service kent automatisch de volgende machtigingen toe aan de identiteit:

Operation Machtiging
Het project openen Informatie op projectniveau weergeven
De opslagplaats klonen Lezen
Fixbranch maken en pushen Bijdragen en branch aanmaken
De pull-aanvraag maken en bijwerken Bijdragen aan pull-aanvragen
Lees de waarschuwing Geavanceerde beveiliging: waarschuwingen weergeven
Discussies over pull-aanvragen toevoegen Discussies over pull-aanvragen lezen en hieraan bijdragen
De pijplijnuitvoering bijwerken Build-informatie bijwerken
Label de pull-aanvraag Het label Copilot Autofix maken

U hoeft deze machtigingen niet toe te kennen aan een Build Service-account. Als uw organisatie expliciete weigeringsmachtigingen gebruikt, controleert u of deze de GitHub Copilot ({organization}) identiteit niet blokkeert.

Hoe agentic AutoFix werkt

Agentic Autofix maakt gebruik van de bevindingen van de waarschuwing en de context van uw opslagplaats, in plaats van alleen te vertrouwen op de gerapporteerde codelocatie. De Copilot-codeeragent kan gebruikmaken van aangepaste instructies die zijn opgeslagen in de repository en relevante vaardigheden om inzicht te hebben in uw coderingsstandaarden, architectuur en oplossingspatronen. U kunt de voorgestelde wijziging bekijken en verfijnen voordat u een pull-aanvraag opent die het volgende bevat:

  • Een voorgestelde codewijziging die betrekking heeft op het onderliggende beveiligingsprobleem.
  • Een beschrijving van de waarschuwing die wordt opgelost, met inbegrip van de waarschuwings-id, ernst en een samenvatting van de wijziging.

Omdat de voorgestelde oplossing rekening houdt met de bredere context van uw codebasis, kan de wijziging meer dan de enkele regel omvatten waarin de waarschuwing is gegenereerd, en kan de wijziging waar nodig wijzigingen in andere bestanden bevatten.

Note

Gegevens die worden verwerkt door Copilot Autofix worden niet gebruikt voor het trainen van grote taalmodellen (LLM's).

Important

Copilot suggesties voor automatisch aanvullen worden gegenereerd door een AI-model en zijn niet gegarandeerd correct, volledig of veilig. Controleer de pull-aanvraag altijd zorgvuldig, controleer of deze de waarschuwing oplost zonder nieuwe problemen te introduceren en test uw wijzigingen voordat u ze samenvoegt.

Ondersteunde waarschuwingen

Waarschuwingstype Ondersteuning als beperkte openbare preview beschikbaar
Code scannen Waarschuwingen van CodeQL en hulpprogramma's voor codescans van derden.
Afhankelijkheidsscanning Waarschuwingen voor beveiligingsproblemen. Malwaredetecties zijn niet opgenomen.
Geheim scannen Niet ondersteund.

Voor beide ondersteunde waarschuwingstypen stelt Copilot Autofix een wijziging voor die u kunt controleren. Het biedt geen garantie voor herstel voor elke bevinding. Zie Fix is niet beschikbaar voor meer informatie.

Geef instructies en vaardigheden voor de repository

Geef Autofix met eigen besluitvorming de context die het moet meenemen bij het genereren van een fix. Check aangepaste instructies en vaardigheden in in de opslagplaats op ondersteunde .github of .agents locaties. Deze bestanden kunnen de Copilot coderingsagent helpen de coderingsstandaarden van uw team te volgen en bestaande remediëringsworkflows.

Coderingsstandaarden toevoegen aan aangepaste instructies

Gebruik aangepaste instructies voor de hele repository, zoals .github/copilot-instructions.md, om te beschrijven hoe wijzigingen in uw project passen. Neem richtlijnen op over naamconventies, goedgekeurde bibliotheken, architectuurgrenzen en het bouwen en testen van wijzigingen.

Als uw team bijvoorbeeld een helper voor gedeelde invoervalidatie vereist, beschrijft u die vereiste in de instructies. Ga er niet van uit dat de agent deze uit de waarschuwing zal afleiden.

# Coding standards

- Use the existing input-validation helpers instead of adding new validation logic.
- Follow the naming conventions in the surrounding code.
- Keep dependency changes scoped to the vulnerability being fixed.
- Update the relevant tests when a fix changes behavior.
- Run the documented build and test commands before proposing a change.

Gebruik de ondersteunde bestandsnamen en -locaties van Copilot. Een bestand met de naam custom-instructions.md vormt op basis van alleen de naam geen opslagplaatsbreed Copilot-instructiebestand. Zie Aangepaste instructies voor GitHub Copilot aan de opslagplaats toevoegen voor de bestandsindeling voor de hele opslagplaats.

Vaardigheden toevoegen voor herhaalbare remediëringstaken

Repositoryvaardigheden kunnen taakspecifieke instructies, scripts en ondersteunende resources bieden. Sla een vaardigheid op in een directory, zoals .github/skills/<skill-name>/ of .agents/skills/<skill-name>/, met de bijbehorende instructies in SKILL.md.

Een vaardigheid voor afhankelijkheidsupdates kan bijvoorbeeld uw procedure voor pakketupdates en compatibiliteitscontroles beschrijven. Een vaardigheid voor coderemediatie kan beschrijven hoe u uw goedgekeurde beveiligingsbibliotheken kunt gebruiken. Agentic Autofix kan verwijzen naar relevante skills als onderdeel van het genereren van een fix; niet elke skill is van toepassing op elke waarschuwing. Zie Over agentvaardigheden voor de indeling van vaardigheden.

Important

Repository-instructies en vaardigheden bieden extra context, geen garantie dat een gegenereerde fix aan elke vereiste voldoet. Controleer de voorgestelde wijziging op basis van uw standaarden, voer uw validatiecontroles uit en controleer of het beveiligingsprobleem is opgelost voordat u het samenvoegt.

Billing

Copilot Autofix is opgenomen in uw GitHub Advanced Security voor Azure DevOps licentie. Het genereren van een oplossing verbruikt AI-tegoed van de Azure factureringsmeter van uw organisatie.

Bij elke herstelgeneratie worden tokens gebruikt, waaronder invoertokens voor de codecontext die naar het model wordt verzonden, uitvoertokens voor de voorgestelde wijziging en tokens in de cache die bestaande context hergebruiken.

Om facturering eenvoudig te houden, worden deze tokens geconverteerd naar een standaardeenheid die een GitHub AI-tegoed wordt genoemd, waarbij 1 tegoed gelijk is aan $ 0,01 USD. De kosten worden gefactureerd voor het Azure abonnement dat is gekoppeld aan uw Azure DevOps organisatie en worden weergegeven als een afzonderlijke meter in Azure Cost Management.

De kosten van elke oplossing variëren met de grootte van de omringende codecontext en de complexiteit van de wijziging.

Note

GitHub Copilot budgetinstellingen en gebruikerslimieten die zijn geconfigureerd voor GitHub zijn niet van toepassing op uitgaven voor de Copilot Autofix-meter in Azure DevOps. Dit gebruik wordt gefactureerd via het Azure-abonnement dat is gekoppeld aan uw Azure DevOps organisatie, niet via GitHub Copilot facturering.

Autofix-kosten per project weergeven

Copilot Autofix ondersteunt organisatie- en projecttags, zodat u de gebruikskosten op basis van deze tags kunt filteren en de kosten voor Azure DevOps-projecten kunt vergelijken.

  1. Open in de Azure-portal het abonnement dat is gekoppeld aan uw Azure DevOps organisatie. Ga naar Cost Management>Kostenanalyse.
  2. Selecteer het datumbereik dat u wilt controleren.
  3. Voeg een meterfilter toe en selecteer AI-tegoed voor AzDO GAC. Dit filter isoleert de gebruikskosten voor Autofix van andere abonnementskosten.
  4. Voeg een tagfilter toe voor _organizationname_ en selecteer de Azure DevOps organisaties waarvan u de kosten wilt bekijken.
  5. Stel Groeperen op in op de _projectname_-tag om de uitsplitsing van de Autofix-kosten per project weer te geven.

Schermopname van Azure Kostenanalyse gefilterd op de AI-tegoed voor AzDO GAC-meter en een organisatie, met kosten gegroepeerd op project.

Als u afzonderlijke datums wilt bekijken, stelt u Granulariteit in op Dagelijks en schakelt u de visualisatie over naar Tabel. Houd de meter- en organisatiefilters en de projectgroepering. U kunt de _projectname_ tag ook filteren om de tabel te beperken tot specifieke projecten.

Schermopname van Azure Kostenanalyse in de dagelijkse tabelweergave met Autofix-kosten op datum en project, gefilterd op de AI-tegoed voor AzDO GAC-meter, een organisatie en geselecteerde projecten.

Copilot Autofix inschakelen

U kunt Copilot Autofix inschakelen op organisatie-, project- of opslagplaatsniveau. Wanneer u Autofix inschakelt in een breder bereik, is de instelling van toepassing op alle opslagplaatsen binnen dat bereik. Kies waar u Automatischfix wilt configureren op basis van de opslagplaatsen waarop u de instelling wilt toepassen:

Scope Waar autofix te configureren
Organization Selecteer Organisatie-instellingen> om Autofix in te schakelen voor alle repositories in de organisatie.
Project Selecteer Project instellingen>Opslagplaatsen Alle opslagplaatsen> om Autofix in te schakelen voor alle opslagplaatsen in de project.
Opslagplaats Selecteer Project instellingen>opslagplaatsen en selecteer vervolgens een opslagplaats om autofix voor alleen die opslagplaats in te schakelen.

Om Copilot Autofix in te schakelen:

  1. Meld u aan bij uw Azure DevOps-organisatie (https://dev.azure.com/{yourorganization}).
  2. Ga naar de instellingenpagina voor het bereik van de organisatie, het project of de opslagplaats die u wilt configureren.
  3. Zoek in de sectie Geavanceerde beveiliging naar Autofix voor beveiligingswaarschuwingen. Als u standalone Code Security gebruikt, selecteert u Opties om het deelvenster Code Security-functies te openen.
  4. Selecteer Autofix voor beveiligingswaarschuwingen. Met dezelfde instelling wordt Copilot Autofix ingeschakeld voor ondersteunde waarschuwingen voor codescans en afhankelijkheidsscans.
  5. Als u het deelvenster Functies voor codebeveiliging gebruikt, selecteert u Toepassen om uw wijzigingen op te slaan.

Zie Copilot Autofix configureren voor schermopnamen van zowel de gebundelde advanced security- als zelfstandige codebeveiligingsinstellingen.

Als u Automatisch herstellen inschakelt, worden scans niet geconfigureerd en oplossingen niet automatisch gegenereerd. Configureer eerst codescanning of afhankelijkheidsscans. Vraag vervolgens een oplossing aan voor een ondersteunde waarschuwing.

Een oplossing genereren voor een waarschuwing

Nadat u Copilot Autofix hebt ingeschakeld, gebruikt u dezelfde stappen voor een ondersteunde waarschuwing voor het scannen van code of waarschuwing voor beveiligingsproblemen in afhankelijkheden.

  1. Selecteer Repos>Geavanceerde beveiliging.
  2. Open de lijst met waarschuwingen voor codescans of afhankelijkheidsscans en selecteer vervolgens een waarschuwing om de detailweergave te openen.
  3. Bekijk de bevinding, getroffen code of afhankelijkheid en herstelrichtlijnen.
  4. Selecteer Oplossing genereren.

De volgende voorbeelden van codescans illustreren de gedeelde werkstroom. Een voorbeeld van een afhankelijkheidsscan toont een gegenereerde pull request verderop in deze sectie.

Schermopname van een detailweergave van een waarschuwing voor codescanning met de knop Oplossing genereren rechtsboven.

Terwijl Copilot Autofix werkt voor de oplossing, ziet u in de detailweergave van de waarschuwing dat de oplossing wordt uitgevoerd. Copilot Autofix opent een pull request zodra de oplossing klaar is.

Schermopname van de detailweergave van een waarschuwing voor codescanning waarop Copilot Autofix aan een oplossing werkt voordat er een pull request wordt geopend.

Copilot Autofix genereert de fix en opent een pull request vanuit een branch met de naam copilot-autofix/.... De pull request wordt voorzien van een Copilot Autofix-tag, die u kunt gebruiken om Autofix-pull requests in de lijst met pull requests te identificeren.

Slechts één oplossing kan actief zijn voor dezelfde waarschuwing en vertakking. Terwijl een verzoek in behandeling is of de pijplijn actief is, is Oplossing genereren niet beschikbaar. Als er tegelijkertijd een andere aanvraag wordt ingediend, wordt in de waarschuwing aangegeven dat er al een oplossing wordt gegenereerd. U kunt een andere oplossing genereren nadat de actieve aanvraag is geslaagd of mislukt.

Voor CodeQL-waarschuwingen wordt de pull-aanvraag automatisch weergegeven onder Gerelateerde pull-aanvragen in de detailweergave van de waarschuwing en blijft het bijwerken als de voortgang van het genereren en voltooien is voltooid, zodat u de pagina niet hoeft te vernieuwen.

Schermafbeelding van de detailweergave van een waarschuwing voor codescanning met een actieve Autofix-pull request onder Gerelateerde pull requests.

In het volgende voorbeeld van het scannen van afhankelijkheden ziet u een actieve Autofix pull request voor een kwetsbaar pakket onder Gerelateerde pull requests.

Schermopname van een waarschuwing voor het scannen van afhankelijkheden met een actieve Autofix-pull-aanvraag voor een urllib3-beveiligingsprobleem onder Gerelateerde pull-aanvragen.

Als Copilot Autofix geen codewijzigingen voor de waarschuwing oplevert, worden er geen branch of pull request gemaakt en wordt er in de detailweergave van de waarschuwing geen pull request gekoppeld. In dit geval herstelt u de waarschuwing handmatig. Zie Fix is niet beschikbaar voor meer informatie.

De bugfix controleren en samenvoegen

De pull request die door Copilot Autofix wordt geopend, werkt net als elke andere pull request in Azure-opslagplaatsen. De beschrijving vat de waarschuwing samen die door de oplossing wordt verholpen.

Schermafbeelding van een pull-aanvraag die is gemaakt door Copilot Autofix, met de waarschuwings-id, ernst en fix details in de beschrijving.

Het label Copilot Autofix identificeert pull-aanvragen voor autofix.

  1. Open de pull-aanvraag in de sectie Gerelateerde pull-aanvragen of vanuit Repos>Pull-aanvragen.
  2. Bekijk de voorgestelde wijziging op het tabblad Bestanden voor alle betrokken bestanden.
  3. Bewerk de wijziging als u de codestijl, naamconventies of projectvereisten wilt aanpassen.
  4. Keur de pull-aanvraag goed en voltooi deze via uw normale beoordelingswerkstroom.

Nadat u de pull request hebt samengevoegd, voert u de relevante scanner uit op de samengevoegde target branch. Copilot Autofix voert deze scan na het samenvoegen niet uit.

Waarschuwing opgelost Wat u moet doen na het samenvoegen
Code scannen Voer CodeQL of de scanner van derden uit die de waarschuwing heeft gerapporteerd en publiceer de bijgewerkte analyseresultaten in Advanced Security.
Kwetsbaarheid in afhankelijkheden Voer afhankelijkheidsscans uit zodat Advanced Security de bijgewerkte afhankelijkheden kan verwerken.

Als u alleen een pull request samenvoegt, wordt de waarschuwing niet gesloten. Advanced Security werkt de waarschuwingsstatus bij nadat deze de nieuwe scanresultaten heeft verwerkt. Controleer of deze resultaten het beveiligingsprobleem niet meer rapporteren.

Tip

Een gegenereerde oplossing is een beginpunt, niet een definitief antwoord. Behandel de pull-aanvraag als elke andere wijziging: controleer deze, test deze en vraag indien nodig extra revisoren aan voordat u samenvoegt.

Problemen met Copilot autofix oplossen

Oplossing in uitvoering

De meeste Copilot Autofix-runs worden in ongeveer 2-5 minuten uitgevoerd. De uitvoeringstijd kan variëren op basis van de beschikbare pijplijncapaciteit en de complexiteit van de wijziging. Als alle parallelle taken in gebruik zijn, blijft de pipeline in de wachtrij en blijft de waarschuwing Oplossing wordt uitgevoerd tonen totdat er capaciteit beschikbaar komt.

Een aanvraag die in behandeling blijft voordat een pijplijn in de wachtrij wordt geplaatst, mislukt na 30 minuten. Een pijplijn in een wachtrij of actieve pijplijn heeft een time-out van twee uur. De waarschuwing wordt mogelijk niet meer automatisch bijgewerkt voordat de time-out van de back-end is bereikt. Als de waarschuwing nog actief is:

  1. Vernieuw de detailpagina van de waarschuwing.
  2. Als Uitvoering weergeven beschikbaar is, open de pipeline-uitvoering en controleer of deze in de wachtrij staat of wordt uitgevoerd.
  3. Wacht totdat de aanvraag de status Geslaagd of Mislukt heeft bereikt. Dien geen andere aanvraag in terwijl de bestaande aanvraag actief is.
  4. Als de aanvraag mislukt, bekijkt u het foutbericht en selecteert u Oplossing voor opnieuw proberen nadat u de oorzaak hebt opgelost.

Pull-aanvraag gemaakt, maar niet gekoppeld aan de waarschuwing

De pull-aanvraag kan met succes worden gemaakt voordat deze wordt weergegeven onder Gerelateerde pull-aanvragen. Vernieuw de detailpagina van de waarschuwing. Als de pull-aanvraag nog steeds niet is gekoppeld, selecteert u Repos>Pull-aanvragen en zoekt u naar:

  • Het label 'Copilot Autofix'.
  • Een bronvertakking die begint met copilot-autofix/.
  • Een titel of beschrijving van een pull request die verwijst naar de waarschuwing.

Controleer en voeg de pull-aanvraag samen via de normale werkstroom voor pull-aanvragen, zelfs als de koppeling niet wordt weergegeven in de waarschuwing.

Bewerkingen voor opslagplaatsen of pull-aanvragen mislukken

Copilot Autofix voert een ondiepe kloon uit van de vertakking die aan de waarschuwing is gekoppeld. Het initialiseert Git-submodules niet. Er wordt een branch met een unieke naam gemaakt, de gegenereerde wijziging wordt gepusht en er wordt een pull request geopend die is gericht op de alertbranch.

Gebruik Uitvoering weergeven vanuit de foutstatus van de waarschuwing om de pijplijnlogboeken te bekijken. De volgende tabel bevat veelvoorkomende oorzaken en acties:

Mislukt Wat u moet controleren
De opslagplaats of vertakking kan niet worden gekloond Controleer of de opslagplaats en de waarschuwingsbranch nog bestaan. Voor een waarschuwing die bij een pullrequest is gevonden, moeten zowel de bronvertakking als de pullrequest nog actief zijn. Als de vertakking is verwijderd, voert u de relevante scanner uit op de huidige vertakking en genereert u een oplossing op basis van de resulterende waarschuwing.
De oplossing is afhankelijk van code in een Git-submodule Copilot Autofix initialiseert geen submodules. Herstel de waarschuwing handmatig als de vereiste codecontext is opgeslagen in een submodule.
De standaardbranch is gewijzigd of de waarschuwingsbranch is verwijderd Copilot Autofix richt zich op de branch die aan de waarschuwing is gekoppeld, en dat is niet per se de huidige standaardbranch. Voer de relevante scanner uit op de beoogde branch en genereer een fix op basis van de waarschuwing van die branch.
Er kan geen branch voor de oplossing worden gemaakt Controleer de vertakkingsbeperkingen van de opslagplaats en expliciete weigeringsmachtigingen voor de GitHub Copilot ({organization}) identiteit. Branches met het voorvoegsel copilot-autofix/ toestaan. Bij opnieuw proberen wordt een nieuwe branch met een unieke naam gemaakt.
Een vertakkingsbeleid blokkeert de wijziging Het voltooiingsbeleid voor pull-aanvragen is van toepassing op de pull-aanvraag van Autofix, net als op elke andere pull-aanvraag. Zorg ervoor dat aan de vereiste controleurs- en validatiebeleidsregels is voldaan voordat u dit afrondt. Als repositorybeleid de initiële push blokkeert, werk je het beleid bij zodat de Autofix-identiteit en het branchvoorvoegsel worden toegestaan.
De gegenereerde commit kan niet gepusht worden Controleer de machtigingen Bijdragen en Branch maken voor de GitHub Copilot ({organization})-identiteit, inclusief expliciete weigeringen. Controleer ook de validatie van het e-mailadres van de commit-auteur, zoals beschreven in Er is een oplossing gegenereerd, maar die kon niet worden gecommit of gepusht.
De pull-aanvraag kan niet worden gemaakt Controleer de machtiging Bijdragen aan pull requests en de machtiging om het label Copilot Autofix te maken voor de identiteit GitHub Copilot ({organization}).

Er is een fix gegenereerd, maar deze kon niet worden gecommit of gepusht

Copilot Autofix gebruikt noreply@dev.azure.com als het e-mailadres van de commitauteur. Als e-mailvalidatiebeleid voor doorvoerbewerkingen dit adres niet toestaat, kan Copilot Autofix de codewijziging genereren, maar deze niet doorvoeren of pushen om de pull-aanvraag te maken.

In de detailweergave van de waarschuwing wordt een foutmelding weergegeven die het e-mailadres van de auteur van de geblokkeerde commit identificeert.

Schermopname van een waarschuwing voor het scannen van code die laat zien dat Copilot Autofix een gegenereerde oplossing niet kon doorvoeren omdat het e-mailadres van de auteur van de doorvoer niet is toegestaan.

Voeg noreply@dev.azure.com toe aan de toegestane e-mailpatronen in het validatiebeleid voor het e-mailadres van de commitauteur:

  1. Selecteer Projectinstellingen>Opslagplaatsen.
  2. Selecteer Alle opslagplaatsen om het beleid op projectniveau bij te werken of selecteer de opslagplaats met het beleid.
  3. Selecteer Beleidsregels.
  4. Zoek onder Repositorybeleid naar validatie van het e-mailadres van de auteur van de commit.
  5. Toevoegen noreply@dev.azure.com aan de toegestane e-mailpatronen.
  6. Ga terug naar de waarschuwing en selecteer Opnieuw proberen.

Schermopname van de instellingen voor het repositorybeleid waar u het Copilot Autofix-e-mailadres toevoegt aan de toegestane e-mailpatronen voor commitauteurs.

Een uitvoering is mislukt

Als de uitvoering van een Copilot autofix niet kan worden voltooid, wordt in de waarschuwing een prominente foutstatus weergegeven, zodat u snel kunt zien dat de uitvoering niet is geslaagd. Vanuit de foutstatus kunt u de uitvoering opnieuw uitvoeren om een nieuwe oplossing te genereren.

Schermopname van een code scan-waarschuwing waarop een Copilot Autofix-uitvoering in een mislukte status wordt weergegeven, met de optie om de run opnieuw te proberen.

Een uitvoering kan om tijdelijke redenen mislukken of wanneer de uitvoering geen bruikbare codewijziging produceert. Voer de uitvoering opnieuw uit om de oplossing opnieuw te genereren.

Er blijft een waarschuwing geopend nadat u de oplossing hebt samengevoegd

Als u een Autofix pull request samenvoegt, wordt de waarschuwing niet automatisch gesloten. Advanced Security heeft nieuwe resultaten nodig van de scanner die de bevinding heeft gerapporteerd. Als de waarschuwing geopend blijft:

  1. Controleer of de pull request is samengevoegd in dezelfde branch waarin de waarschuwing is gedetecteerd.
  2. Controleer of codescanning of afhankelijkhedenscanning, indien van toepassing, zijn uitgevoerd na de samenvoeging en de samengevoegde commit hebben geanalyseerd.
  3. Controleer of Advanced Security de bijgewerkte resultaten voor de juiste repository en branch heeft verwerkt.
  4. Bekijk de nieuwe resultaten om te controleren of het beveiligingsprobleem niet meer wordt gedetecteerd.
  5. Als het beveiligingsprobleem nog steeds aanwezig is, werkt u de oplossing bij en voert u de relevante scanner opnieuw uit.

Oplossing is niet beschikbaar

Copilot Autofix kan niet voor elke melding een oplossing bieden. Er is mogelijk geen oplossing beschikbaar wanneer:

  • Het waarschuwingstype wordt momenteel niet ondersteund door Copilot Autofix.
  • Copilot bepaalt dat de waarschuwing vals positief zou kunnen zijn.
  • Copilot Autofix wordt uitgevoerd, maar er worden geen codewijzigingen aangebracht. In dit geval wordt geen branch of pull request aangemaakt.

Als Copilot Autofix bepaalt dat de waarschuwing vals positief kan zijn en geen wijzigingen aanbrengt, wordt het resultaat weergegeven in de detailweergave van de waarschuwing. U kunt de uitvoering controleren of de oplossing opnieuw proberen.

Schermopname van de detailweergave van een waarschuwing voor codescanning, waaruit blijkt dat Copilot heeft vastgesteld dat de waarschuwing mogelijk een vals positief is en geen oplossing heeft voorgesteld, met opties om de run te bekijken of de oplossing opnieuw te proberen.

Wanneer een correctie niet beschikbaar is, gebruikt u de herstelrichtlijnen van de waarschuwing om dit handmatig op te lossen. Sluit een waarschuwing pas af nadat u de bevinding hebt bekeken en de juiste reden voor afwijzing hebt vastgesteld. Zie Details van waarschuwingen voor codescans en details van waarschuwingen voor afhankelijkheidsscans voor meer informatie.