Sdílet prostřednictvím


Federace identit úloh pro Azure Pipelines ve veřejném náhledu

S radostí oznamujeme, že federace identit úloh pro Azure Pipelines je teď ve verzi Public Preview. Připojení služeb Azure (ARM) se aktualizovala pomocí dalšího schématu pro podporu federace identit úloh.

Podívejte se na poznámky k verzi, kde se dozvíte, jak se můžete zaregistrovat k veřejné ukázce.

Azure Boards

Azure Pipelines

Azure Repos

Azure Boards

Omezení pro oblasti a cesty iterací

Omezení hrají důležitou roli při udržování zdraví a efektivity velké globální služby. V tomto sprintu zavádíme pevné limity ve výši 10 000 na projekt pro cesty oblastí a iterací. Další informace o různých omezeních služby najdete na stránce sledování práce, procesu a projektu .

Snímky obrazovky oblastních a iterativních cest.

Azure Pipelines

Federace identit výpočetních úloh ve službě Azure Pipelines (Veřejná ukázka)

Chcete zastavit ukládání tajných kódů a certifikátů v připojeních služeb Azure? Chcete se přestat starat o obměnu těchto tajných kódů, kdykoli vyprší jejich platnost? Nyní představujeme veřejnou verzi Preview federace pracovních identit pro připojení Azure služby. Federace pracovních identit využívá standardní technologii *Open ID Connect (OIDC)* ke zjednodušení ověřování mezi Azure Pipelines a Azure. Místo tajných kódů se k usnadnění tohoto ověřování používá subjekt federace.

V rámci této funkce se připojení služby Azure (ARM) aktualizovalo pomocí jiného schématu pro podporu federace identit úloh. To umožňuje úlohy v rámci pipeline, které používají připojení ke službě Azure k autentizaci pomocí předmětu federace (sc://<org>/<project>/<service connection name>). Hlavní výhody tohoto schématu pro stávající schémata ověřování jsou následující:

  • Zjednodušená správa: Už nemusíte generovat, kopírovat a ukládat tajné kódy z instančních objektů v Azure AD do Azure DevOps. Tajné kódy používané v jiných schématech ověřování připojení služeb Azure (např. instanční objekt) vyprší po určitém období (aktuálně dva roky). Když vyprší jejich platnost, kanály selžou. Musíte znovu vygenerovat nový tajný klíč a aktualizovat připojení služby. Přechod na federaci identit úloh eliminuje nutnost spravovat tyto tajné kódy a zlepšuje celkové prostředí pro vytváření a správu připojení služeb.
  • Vylepšené zabezpečení: S federací identit úloh neexistuje žádný trvalý tajný klíč, který by zahrnoval komunikaci mezi Azure Pipelines a Azure. V důsledku toho úlohy spuštěné v úlohách kanálu nemůžou uniknout nebo exfiltrovat tajné kódy, které mají přístup k vašim produkčním prostředím. To se často týká našich zákazníků.

Tyto funkce můžete využít dvěma způsoby:

  • Nové schéma federace identit úloh použijte pokaždé, když vytvoříte nové připojení služby Azure. V budoucnu to bude doporučený mechanismus.
  • Převeďte stávající připojení služeb Azure (která jsou založená na tajných kódech) na nové schéma. Tento převod můžete provést po jednom připojení. Nejlepší je, že nemusíte upravovat žádné pipeliny, které používají tato připojení ke službám. Po dokončení převodu automaticky použijí nové schéma.

Pokud chcete vytvořit nové připojení služby Azure pomocí federace identit úloh, jednoduše v prostředí pro vytváření připojení ke službě Azure vyberte federaci identit úloh (automatické) nebo (ruční):

Snímek obrazovky prostředku.

Snímek obrazovky s identifikací federace

Pokud chcete převést dříve vytvořené připojení služby Azure, vyberte po výběru připojení akci Převést:

 Snímek obrazovky Convert

Všechny úlohy Azure, které jsou součástí Azure Pipelines, teď podporují toto nové schéma. Pokud ale k nasazení do Azure používáte úlohu z Marketplace nebo z domácího vlastního úkolu, možná ještě nepodporuje federaci identit úloh. V těchto případech vás požádáme, abyste aktualizovali úlohu tak, aby podporovala federaci identit úloh, aby se zlepšilo zabezpečení. Úplný seznam podporovaných úkolů najdete tady.

Pro tuto verzi Preview podporujeme federaci identit úloh pouze pro připojení služeb Azure. Toto schéma nefunguje s žádným jiným typem připojení služeb. Další podrobnosti najdete v naší dokumentaci.

Tento blogový příspěvek obsahuje další podrobnosti.

Agenty kanálu je možné zaregistrovat pomocí MICROSOFT Entra ID místo PAT.

Agent kanálu nyní podporuje více argumentů k použití buď principálu služby, nebo uživatele k registraci agenta. Identitě byste měli udělit přístup k fondu agentů ve svém nastavení zabezpečení. Tím se odebere nutnost používat token PAT (Personal Access Token) k jednorázovému nastavení agentů.

Registrace agenta pomocí principálu služby

Pokud chcete k registraci agenta Pipelines v Azure DevOps Services použít Service Principal, zadejte následující argumenty:

--auth 'SP' --clientid 00001111-aaaa-2222-bbbb-3333cccc4444 --clientsecret --tenantid aaaabbbb-0000-cccc-1111-dddd2222eeee

Použijte služební principál v rozšíření agenta pro virtuální počítače

Virtuální počítače Azure je možné zahrnout do skupin nasazení pomocí rozšíření virtuálního počítače. Rozšíření virtuálního počítače bylo aktualizováno tak, aby místo pat používalo instanční objekt k registraci agenta:

"settings": {
  "userServicePrincipal": true     
}
"protectedSettings": {
  "clientId": "[parameters('clientId')]"      
  "clientSecret": "[parameters('clientSecret')]"      
  "tenantId": "[parameters('tenantId')]"      
}

Interaktivní registrace agenta pomocí toku kódu zařízení

K snadnému dokončení nastavení můžete použít webový prohlížeč. Když spustíte konfigurační skript agenta, jako typ ověřování zadejte AAD . Skript vás provede dalšími kroky, včetně toho, kam na webu přejít a jaký kód se má zadat. Po zadání kódu na webu se vraťte do konzoly a dokončete nastavení agenta.

 Snímek obrazovky s tokem ověřování

Rozhraní REST API pro prostředí

Prostředí je kolekce prostředků, na které můžete cílit pomocí nasazení z pipeline. Prostředí poskytují historii nasazení, sledovatelnost pracovních položek a commitů a mechanismy řízení přístupu.

Víme, že chcete prostředí vytvářet prostřednictvím kódu programu, takže jsme publikovali dokumentaci pro jejich rozhraní REST API.

Zabránění nechtěným spuštěním potrubí

V současné době, pokud potrubí YAML neurčí trigger oddíl, spustí se pro všechny změny, které se odeslaly do úložiště. To může vést k nejasnostem, proč potrubí běželo a způsobit mnoho nechtěných spuštění.

Přidali jsme v nastavení Pipelines na úrovni organizace a projektu možnost s názvem Zakázat implicitní spouštění CI YAML, která umožňuje toto chování změnit. Pokud chybí sekce spuštění, můžete se rozhodnout, že pipeline nespustíte.

 Snímek obrazovky s triggerem YAML CI

Bezpečné sestavování úložišť GitHub ve výchozím nastavení

V posledním sprintu jsme představili centralizovanou kontrolu pro vytváření žádostí o přijetí změn z forkovaných úložišť GitHubu.

V tomto sprintu povolujeme možnost Securely build pull requests from forked repositories na úrovni organizace, pro nové organizace. Stávající organizace nejsou ovlivněné.

Zakázáno změnit stav zásad pokrytí kódu na "selhání", pokud sestavení selhává.

Předchozí stav zásad pokrytí kódu byl přepsán na „Selhání“, pokud vaše sestavení v pull requestu nebylo úspěšné. To byla překážka pro některé z vás, kteří měli sestavení jako volitelnou kontrolu a zásady pokrytí kódu jako povinnou kontrolu pro žádosti o přijetí změn, což vedlo k jejich zablokování.

Snímek obrazovky blokovaných pull requestů

V tomto sprintu se zásada pokrytí kódu nepřepíše na „Selhání“, pokud sestavení selže. Tato funkce bude povolená pro všechny zákazníky.

Snímek obrazovky s výsledky po změně

Azure Repos

Podpora filtrů bez blobů a bez stromů

Azure DevOps teď podporuje dva další filtrování při klonování a načítání. Jedná se o: --filter=blob:none a --filter=tree:0 První možnost (klon bez objektů blob) je nejvhodnější pro běžný vývoj, zatímco druhá možnost (klon bez stromové struktury) se hodí lépe pro ty případy, kdy klon zahodíte, například po provedení sestavení.

Další kroky

Poznámka:

Tyto funkce se budou zavádět během následujících dvou až tří týdnů.

Přejděte na stránku Azure DevOps a podívejte se.

Jak poskytnout zpětnou vazbu

Rádi bychom slyšeli, co si o těchto funkcích myslíte. Pomocí nabídky nápovědy můžete nahlásit problém nebo poskytnout návrh.

Snímek obrazovky s návrhem

Můžete také získat rady a své otázky zodpovězené komunitou ve službě Stack Overflow.

Dík

Silviu Andrica