Azure DevOps Services |Azure DevOps Server |Azure DevOps Server 2022 |Azure DevOps Server 2020
将服务与 Azure DevOps 集成后,可以授予服务对 Azure DevOps 资源(例如工作项、源代码和生成结果)的访问权限。
Azure DevOps 使用基于 OpenID Connect(OIDC)的身份验证向服务授予对资源的访问权限。
- 授权与凭据绑定,因此服务可以使用授权访问 Azure DevOps 中的资源。
- 使用Microsoft帐户或工作帐户来授权服务。
- 授权的服务无权访问 Azure DevOps 凭据。
先决条件
| 类别 | 要求 |
|---|---|
| 项目访问权限 | 项目成员. |
| 访问级别 | 至少具有基本访问权限。 |
| 权限 | 项目集合管理员组的成员。 组织所有者是此组的自动成员。 |
身份验证框架
在 Azure DevOps REST API 的基础上生成应用程序时,可以通过 在 Microsoft Entra ID 中注册应用程序来使用基于 OIDC 的身份验证。 有关详细信息,请参阅 什么是Microsoft标识平台?。
一些较旧的应用使用 OAuth 2.0 的实现来获取 Azure DevOps 资源的访问令牌。 不再支持这些 Azure DevOps OAuth 应用程序的注册,因为 Azure DevOps OAuth 定于 2026 年弃用。 有关详细信息,请参阅 2025 年 4 月开始没有新的 Azure DevOps OAuth 应用。
授权一个服务
典型的授权流可能包括以下步骤:
您使用一个需要 Azure DevOps 资源的服务,因此该服务请求授权。
若要启动服务的身份验证过程,已注册的应用将打开一个Microsoft Entra ID 网站,提示你选择帐户。
选择帐户后,将显示授权审批页。
您审核请求并批准授权。
授权服务使用该授权访问 Azure DevOps 组织中的资源。
若要确保授权请求合法,请采取以下预防措施:
- 请注意浏览器中与 HTTPS 相关的任何安全警告。
- 不要直接向其他服务提供凭据。 仅通过 Azure DevOps 中的授权审批页输入凭据。
管理授权
在 Microsoft Entra ID 中注册应用时,应用可以从Microsoft标识平台请求令牌。 然后,经过身份验证的服务可以使用令牌访问特定的受保护资源。 每个令牌的生存期最多为 90 分钟。 令牌过期后,将撤销服务对资源的访问权限。 有关详细信息,请参阅 令牌生存期。
相比之下,向 Azure DevOps OAuth 注册的应用可以授权服务访问 Azure DevOps 资源更长的时间。 有关当前有权访问帐户的服务列表,请转到 https://app.vssps.visualstudio.com/Profile/View 并选择“ 管理授权”。
可以使用此页面来撤销授权,以便服务无法代表你访问你的帐户。