Ověřování v Azure DevOps pomocí Microsoft Entra
Microsoft Entra ID je samostatný produkt Microsoftu s vlastní platformou. Jako přední zprostředkovatel správy identit a přístupu (IAM) se Microsoft Entra ID zaměřuje na správu členů týmu a ochranu prostředků společnosti. Organizaci Azure DevOps můžete připojit ktenanta Microsoft Entra ID, který nabízí mnoha výhodvaší společnosti.
Po připojení poskytuje aplikační platforma Microsoft Identity nad Microsoft Entra ID několik výhod pro vývojáře aplikací a správce organizací. Můžete zaregistrovat aplikaci pro přístup k tenantům Azure a definovat oprávnění potřebná z prostředků Azure, včetně Azure DevOps, která existuje mimo konstruktor tenanta Azure.
Aplikace Microsoft Entra a aplikace Azure DevOps jsou samostatné entity bez vzájemné znalosti. Metody ověřování se liší: Microsoft Entra používá OAuth, zatímco Azure DevOps používá vlastní OAuth. Aplikace Microsoft Entra ID OAuth vydávají tokeny Microsoft Entra, nikoli přístupové tokeny Azure DevOps. Tyto tokeny mají standardní dobu trvání jedna hodina, než vyprší jejich platnost.
Vývoj aplikací Azure DevOps v Microsoft Entra
Důkladně si přečtěte dokumentaci k Microsoft Entra a seznamte se s novými funkcemi a různá očekávání během instalace.
Vývoj vašich aplikací podporujeme s pokyny pro:
- aplikace Microsoft Entra OAuth (jménem uživatelských aplikací) pro aplikace, které provádějí akce jménem uživatelů se souhlasem.
- Instanční objekty služby a spravované identity Microsoft Entra (pro aplikace jednající jménem sebe) pro aplikace, které automatizovaně pracují s nástroji v rámci týmu.
Nahraďte osobní přístupové tokeny tokeny Microsoft Entra
osobních přístupových tokenů (PAT) jsou oblíbené pro ověřování Azure DevOps kvůli snadnému vytvoření a použití. Špatná správa a úložiště PAT ale může vést k neoprávněnému přístupu k vašim organizacím Azure DevOps. Dlouhodobé nebo se širokým rozsahem PAT zvyšují riziko způsobených újmou z úniku PAT.
Tokeny Microsoft Entra nabízejí zabezpečenou alternativu, která trvá jen jednu hodinu před vyžádáním aktualizace. Ověřovací protokoly pro generování tokenů Entra jsou robustnější a bezpečnější. Bezpečnostní opatření, jako jsou zásady podmíněného přístupu, chrání před krádeží tokenů a útoky přehráním. Doporučujeme uživatelům, aby místo PAT používali tokeny Microsoft Entra. Sdílíme oblíbené případy použití PAT a způsoby nahrazení PAT tokeny Entra v tomto procesu.
Ad hoc požadavky na rozhraní REST API Azure DevOps
Můžete také použít Azure CLI získat přístupové tokeny Microsoft Entra ID pro uživatele, kteří budou volat rozhraní REST API Azure DevOps. Vzhledem k tomu, že přístupové tokeny Entra trvají jenom jednu hodinu, jsou ideální pro rychlé jednorázové operace, jako jsou volání rozhraní API, která nepotřebují trvalý token.
Získání uživatelských tokenů v Azure CLI
- Přihlaste se k Azure CLI pomocí příkazu
az login
a postupujte podle pokynů na obrazovce. - Nastavte správné předplatné pro přihlášeného uživatele pomocí těchto příkazů Bash. Ujistěte se, že je ID předplatného Azure přidružené k tenantovi připojenému k organizaci Azure DevOps, ke které se pokoušíte získat přístup. Pokud svoje ID předplatného neznáte, najdete ho na webu azure Portal.
az account set -s <subscription-id>
- Vygenerujte přístupový token Microsoft Entra ID pomocí
az account get-access-token
ID prostředku Azure DevOps:499b84ac-1321-427f-aa17-267ca6975798
.
az account get-access-token \
--resource 499b84ac-1321-427f-aa17-267ca6975798 \
--query "accessToken" \
-o tsv
Další informace najdete v dokumentaci k Databricks.
Získání tokenů služebního principu v Azure CLI
Služební identity můžou také pro ad hoc operace používat přístupové tokeny Microsoft Entra ID. Další informace najdete v tématu Instanční objekty a spravované identity / Získání tokenu ID Microsoft Entra pomocí Azure CLI.
Operace Gitu pomocí Git Credential Manageru
K provádění operací Git můžete použít také tokeny Microsoft Entra. Pokud pravidelně posíláte změny do úložišť Git, použijte Git Credential Manager pro snadné vyžádání a správu přihlašovacích údajů tokenu Microsoft Entra OAuth, pokud je oauth
nastavena jako výchozí volba credential.azReposCredentialType
.