Delen via


Wijzigingen in gratis subsidies voor Azure Pipelines

Het proces voor het verkrijgen van gratis subsidies voor Azure Pipelines wordt tijdelijk gewijzigd om het toenemende misbruik van gehoste agents aan te pakken. Standaard krijgen nieuwe organisaties die zijn gemaakt in Azure DevOps mogelijk geen gratis toekenning meer van gelijktijdige pijplijnen. Nieuwe gebruikers moeten een e-mail verzenden en aanvullende informatie verstrekken om gratis CI/CD te krijgen.

Bekijk de onderstaande lijst met functies voor meer informatie.

Azure-pipelines

Azure-opslagplaatsen

Azure-pipelines

Wijzigingen in gratis subsidies voor Azure Pipelines

Azure Pipelines biedt al enkele jaren gratis CI/CD aan openbare en privéprojecten. Omdat dit neerkomt op het weggeven van gratis rekenkracht, is het altijd een doelwit geweest voor misbruik , met name crypto mining. Het minimaliseren van dit misbruik heeft altijd energie uit het team gehaald. De afgelopen maanden is de situatie aanzienlijk slechter geworden, waarbij een hoog percentage nieuwe projecten in Azure DevOps wordt gebruikt voor cryptoanalyse en andere activiteiten die we classificeren als misbruik. Verschillende service-incidenten in de afgelopen maand zijn veroorzaakt door dit misbruik, wat resulteert in lange wachttijden voor bestaande klanten.

Om deze situatie aan te pakken, hebben we een extra stap toegevoegd voor nieuwe organisaties in Azure DevOps om hun gratis toekenning te krijgen. De volgende wijzigingen zijn onmiddellijk van kracht:

  • Standaard krijgen nieuwe organisaties die zijn gemaakt in Azure DevOps, geen gratis toekenning meer van gelijktijdige pijplijnen. Dit geldt zowel voor openbare als voor privéprojecten in nieuwe organisaties.
  • Als u uw gratis subsidie wilt aanvragen, dient u een aanvraag in en geeft u de volgende gegevens duidelijk op:
    • Uw naam
    • Azure DevOps-organisatie waarvoor u de gratis toekenning aanvraagt
    • Of u nu de gratis subsidie voor openbare projecten of privéprojecten nodig hebt
    • Koppelingen naar de opslagplaatsen die u wilt bouwen (alleen openbare projecten)
    • Korte beschrijving van uw project (alleen openbare projecten)

We beoordelen uw aanvraag en reageren binnen een paar dagen.

Notitie

Deze wijziging is alleen van invloed op nieuwe organisaties. Dit geldt niet voor bestaande projecten of organisaties. Dit verandert niet het bedrag van de gratis toekenning dat u kunt krijgen. Er wordt alleen een extra stap toegevoegd om die gratis toekenning te krijgen.

Onze excuses voor eventuele ongemakken waardoor nieuwe klanten Azure Pipelines willen gebruiken voor CI/CD. Wij zijn van mening dat dit noodzakelijk is om een hoog serviceniveau aan al onze klanten te blijven leveren. We blijven geautomatiseerde manieren verkennen om misbruik te voorkomen en zullen het vorige model herstellen zodra we een betrouwbaar mechanisme hebben om misbruik te voorkomen.

Verwijderen van bewaarbeleid per pijplijn in klassieke builds

U kunt nu bewaarbeleid configureren voor klassieke builds en YAML-pijplijnen in azure DevOps-projectinstellingen. Hoewel dit de enige manier is om retentie voor YAML-pijplijnen te configureren, kunt u ook retentie configureren voor klassieke build-pijplijnen per pijplijn. In een toekomstige release verwijderen we alle bewaarregels per pijplijn voor klassieke build-pijplijnen.

Wat dit voor u betekent: elke klassieke build-pijplijn die nog steeds bewaarregels per pijplijn heeft, wordt binnenkort bepaald door de bewaarregels op projectniveau.

Om u te helpen deze pijplijnen te identificeren, implementeren we een wijziging in deze release om boven aan de lijstpagina met uitvoeringen een banner weer te geven.

Verbeteringen in retentie bouwen

U wordt aangeraden uw pijplijnen bij te werken door de bewaarregels per pijplijn te verwijderen. Als uw pijplijn specifiek aangepaste regels vereist, kunt u een aangepaste taak in uw pijplijn gebruiken. Zie de documentatie over builds, releases en tests voor meer informatie over het toevoegen van bewaarleases via een taak.

Nieuwe besturingselementen voor omgevingsvariabelen in pijplijnen

De Azure Pipelines-agent scant standaarduitvoer voor speciale logboekregistratieopdrachten en voert deze uit. De setVariable opdracht kan worden gebruikt om een variabele in te stellen of een eerder gedefinieerde variabele te wijzigen. Dit kan mogelijk worden misbruikt door een actor buiten het systeem. Als uw pijplijn bijvoorbeeld een stap heeft waarmee de lijst met bestanden op een FTP-server wordt afgedrukt, kan een persoon met toegang tot de FTP-server een nieuw bestand toevoegen, waarvan de naam de setVariable opdracht bevat en ervoor zorgt dat de pijplijn het gedrag ervan wijzigt.

We hebben veel gebruikers die afhankelijk zijn van het instellen van variabelen met behulp van de opdracht voor logboekregistratie in hun pijplijn. Met deze release brengen we de volgende wijzigingen aan om het risico op ongewenst gebruik van de setVariable opdracht te verminderen.

  • We hebben een nieuwe constructie toegevoegd voor taakauteurs. Door een fragment zoals het volgende in task.jsonop te halen, kan een auteur van een taak bepalen of er variabelen zijn ingesteld door hun taak.
{
    "restrictions": {
        "commands": {
            "mode": "restricted"
        },
        "settableVariables": {
            "allowed": [
                "myVar",
                "otherVar"
            ]
        }
    },
}​ 
  • Daarnaast werken we een aantal ingebouwde taken bij, zoals ssh, zodat ze niet kunnen worden misbruikt.

  • Ten slotte kunt u YAML-constructies gebruiken om te bepalen of een stap variabelen kan instellen.

steps:
- script: echo hello
  target:
    settableVariables: none
steps:
- script: echo hello
  target:
    settableVariables:
    - things
    - stuff

Onbeperkt token genereren voor fork-builds

GitHub-gebruikers gebruiken vaak forks om een bijdrage te leveren aan een upstream-opslagplaats. Wanneer Azure Pipelines bijdragen bouwt vanuit een fork van een GitHub-opslagplaats, worden de machtigingen beperkt die zijn verleend aan het toegangstoken voor de taak en kunnen pijplijngeheimen niet worden geopend door dergelijke taken. Meer informatie over de beveiliging van bouw vorken vindt u in onze documentatie.

Dezelfde beperkingen gelden standaard bij het bouwen van forks van een GitHub Enterprise Server-opslagplaats. Dit kan meer beperkend zijn dan gewenst in dergelijke gesloten omgevingen, waarbij gebruikers mogelijk nog steeds profiteren van een samenwerkingsmodel binnen de bron. Hoewel u een instelling in een pijplijn kunt configureren om geheimen beschikbaar te maken voor forks, is er geen instelling om het bereik van het toegangstoken voor taken te beheren. Met deze release geven we u de controle om een normaal toegangstoken voor taken te genereren, zelfs voor builds van forks.

U kunt deze instelling wijzigen vanuit Triggers in de pijplijneditor. Voordat u deze instelling wijzigt, moet u ervoor zorgen dat u de beveiligingsproblemen van het inschakelen van deze configuratie volledig begrijpt.

Onbeperkt token genereren voor fork-builds

Wijzigen in vooraf geïnstalleerde Az-, Azure- en Azure RM-modules

We werken het proces voor het vooraf installeren van Az-, Azure- en AzureRM-modules bij naar ubuntu- en Windows-gehoste installatiekopieën voor efficiënter gebruik van ondersteuning en gebruik van installatiekopieën.

In de week van 29 maart worden alle versies, met uitzondering van de nieuwste en meest populaire versie, opgeslagen als archieven en worden ze geëxtraheerd door de Azure PowerShell-taak op aanvraag. De gedetailleerde lijst met wijzigingen vindt u hieronder:

  1. Windows-installatiekopieën

    • Alle Az-moduleversies, met uitzondering van de nieuwste versie (momenteel 5.5.0) worden gearchiveerd

    • Alle Azure-modules, met uitzondering van de nieuwste module (momenteel 5.3.0) en 2.1.0 worden gearchiveerd

    • Alle AzureRM-modules, met uitzondering van de nieuwste module (momenteel 6.13.1) en 2.1.0 worden gearchiveerd

  2. Ubuntu-installatiekopieën

    • Alle Az-modules, met uitzondering van de meest recente (momenteel 5.5.0) worden gearchiveerd of volledig verwijderd uit de installatiekopieën en worden geïnstalleerd door de taak op aanvraag.

Pijplijnen die gebruikmaken van in-the-box Azure-taken op gehoste agents, werken zoals bedoeld en vereisen geen updates. Als u deze taken niet gebruikt, moet u uw pijplijnen overschakelen naar de Azure PowerShell-taak om wijzigingen in vooraf geïnstalleerde modules te voorkomen.

Notitie

Deze updates zijn niet van invloed op pijplijnen die worden uitgevoerd op zelf-hostende agents.

Azure-opslagplaatsen

Een opslagplaats uitschakelen

Klanten hebben vaak een manier aangevraagd om een opslagplaats uit te schakelen en te voorkomen dat gebruikers toegang hebben tot de inhoud ervan. U kunt dit bijvoorbeeld doen wanneer:

  • U hebt een geheim gevonden in de opslagplaats.
  • Een hulpprogramma voor scannen van derden heeft vastgesteld dat een opslagplaats niet meer aan de naleving voldoet.

In dergelijke gevallen kunt u de opslagplaats tijdelijk uitschakelen terwijl u werkt om het probleem op te lossen. Met deze update kunt u een opslagplaats uitschakelen als u machtigingen voor opslagplaats verwijderen hebt. Door een opslagplaats uit te schakelen, gaat u als volgt te werk:

  • Kan de opslagplaats in de lijst met opslagplaatsen vermelden
  • Kan de inhoud van de opslagplaats niet lezen
  • Kan de inhoud van de opslagplaats niet bijwerken
  • Een bericht weergeven dat de opslagplaats is uitgeschakeld wanneer deze probeert toegang te krijgen tot de opslagplaats in de gebruikersinterface van Azure-opslagplaatsen

Nadat de benodigde beperkingsstappen zijn uitgevoerd, kunnen gebruikers met de machtiging Opslagplaats verwijderen de opslagplaats opnieuw inschakelen. Als u een opslagplaats wilt uitschakelen of inschakelen, gaat u naar Projectinstellingen, selecteert u Opslagplaatsen en vervolgens de specifieke opslagplaats.

Een opslagplaats uitschakelen

Volgende stappen

Notitie

Deze functies worden de komende twee tot drie weken uitgerold.

Ga naar Azure DevOps en kijk eens.

Feedback geven

We horen graag wat u van deze functies vindt. Gebruik het Help-menu om een probleem te melden of een suggestie op te geven.

Een suggestie doen

U kunt ook advies krijgen en uw vragen beantwoorden door de community op Stack Overflow.

Met vriendelijke groet,

Vijay Machiraju