【发布时间】:2021-02-08 04:43:17
【问题描述】:
我按照本指南 https://docs.microsoft.com/en-us/azure/devops/repos/git/create-pr-status-server-with-azure-functions?view=azure-devops 创建自定义分支策略。文章的要点是:当创建或更新 ADO PR 时,会发生以下情况:
- ADO 调用 Azure Functions webhook
- Azure Functions 执行一些自定义分支策略逻辑(例如,将自定义状态添加到 PR)。
Azure 函数使用 Personal Access Token 通过 ADO 进行身份验证以发布自定义状态。我不喜欢这种方法的两点:
- PAT 的最长使用寿命为 2 年。 2 年后,您需要更新您的 PAT 令牌 - 容易忘记,需要付出额外的努力才能实现自动化。
- PAT 由用户发布。我想为自定义分支策略设置一个单独的“系统”用户。我不想重复使用“活跃”用户(人们倾向于退出),也不想为此创建“假”活跃用户(公司的安全政策影响)。
所以,我想知道是否有一种方法可以直接在 ADO 中使用 Azure Functions 托管标识/服务主体:授予托管标识的 ADO 权限并使用 Azure AD 令牌在 ADO API 中对用户进行身份验证。
我知道您可以将 ADO 组织设置为用户 Azure AD 用户。这是我的组织目前的设置方式: 显示所有“活动”用户,但我看不到任何托管身份/服务主体。似乎只有用户与 ADO 同步。
【问题讨论】:
标签: azure-devops azure-active-directory