Microsoft Entra ID 是一个标识和访问管理(IAM)平台,允许公司管理组织成员身份并保护公司资源。 许多 Azure DevOps 企业客户选择将其 Azure DevOps 组织连接到 Microsoft Entra ID 租户 ,以支持管理公司中的大量用户,并利用 Microsoft Entra 产品/服务的其他安全功能。
注释
Microsoft Entra 曾经称为 Azure Active Directory (Azure AD),因此,你仍可能会在Microsoft产品中看到对 Azure AD 的引用。 在某些情况下,Active Directory 可以被视为 Microsoft Entra 在本地环境中的等效项。
连接后,位于Microsoft Entra ID 之上的Microsoft 标识应用程序平台 可用于注册应用程序以访问 Azure 租户并定义 Azure 资源所需的权限,包括 Azure DevOps。
我们支持以下领域的应用开发:
基于 Azure DevOps 的身份验证与基于 Entra 的身份验证
许多基于 Azure DevOps 的本机身份验证(例如 ,个人访问令牌(PAT) 或 Azure DevOps OAuth 应用)是在Microsoft Entra 之前创建的。 Microsoft Entra 令牌提供一个安全的替代方法,仅持续一小时,然后需要刷新。 用于生成 Entra 令牌的身份验证协议更可靠且更安全。 条件访问策略等安全措施可防范令牌被盗和重播攻击。 同时,我们的本机令牌位于 Azure 外部,并且对租户或条件访问等概念没有本机支持。
每个平台颁发的令牌也不同。 Microsoft Entra OAuth 应用程序颁发 Microsoft Entra 令牌,而不是 Azure DevOps 访问令牌。 这些令牌不能在每个平台上互换使用。 如果要从 Azure DevOps OAuth 迁移到 Microsoft Entra OAuth,用户必须重新授权新应用。
将 PAT 替换为 Microsoft Entra 令牌
个人访问令牌(PAT)是一种常用的 Azure DevOps 身份验证形式,因为它易于创建和使用。 但是,不良的 PAT 管理和存储可能会导致对 Azure DevOps 组织的泄露和未经授权的访问。 长期或范围过大的 PAT 会增加因 PAT 泄露而造成损害的风险。 我们鼓励用户尽可能使用 Microsoft Entra 令牌而不是 PAT 进行探索。
常见的 PAT 替代项
由于风险增加,管理员越来越请求 限制 PAT 创建的安全策略。 因此,PAT 正在成为以编程方式访问 Azure DevOps 的一种不太可行的替代方法。 除了将任何现有应用开发迁移到 Microsoft 标识平台之外,我们还在 Azure DevOps 中共享一些常见用例,这些用例历来依赖于 PAT 及其推荐的 Microsoft Entra 替代项。
PAT 场景 | Entra 替代项 |
---|---|
使用 Git 凭据管理器进行身份验证 (GCM) | GCM 默认使用 PAT 进行身份验证。 将默认凭据类型设置为 oauth 。 在 Git 凭据管理器(GCM)页上 了解详细信息。 |
在生成或发布管道中进行身份验证 | 将 服务连接与工作负荷联合身份验证配合使用。 |
对 Azure DevOps REST API 的即席请求 | 使用 Azure CLI 发出一次性Microsoft Entra 令牌。 |
小窍门
是否在没有明确 Microsoft Entra 令牌替代方案的情况下使用 Azure DevOps PAT 场景? 在 开发人员社区中共享你的方案!