如何在Azure DevOps中锁定自定义字段的特定值并管控修改权限?
Azure DevOps自定义字段特定值权限限制解决方案
方案1:全局规则+字段状态联动
不用硬锁定值,换个思路用状态切换配合组权限:
- 给你的自定义字段加两个隐藏的辅助选项,比如
Approved(锁定)、Pending(锁定),在字段设置里把这两个选项设为仅特定组可见 - 配置全局规则:当特定组用户选择
Approved时,自动把字段值改成Approved(锁定);同理处理Pending - 给普通用户设置权限:只能看到
Review和未锁定的基础选项,且无法修改锁定状态的字段值
方案2:修复Power Automate的用户组判断
你之前找不到获取用户组的API,其实ADO有现成的接口可以用:
- 流触发后,先获取修改工作项的用户ID,调用
GET _apis/graph/users/{userId}/memberships?api-version=7.1-preview.1接口拿到该用户的所有组关联信息 - 提前从ADO组管理页面复制目标组的ID,在流里解析API返回的JSON,检查是否包含这个组ID
- 如果用户不在目标组,且修改后的字段值是
Approved或Pending,就调用PATCH _apis/wit/workitems/{workItemId}?api-version=7.1-preview.3接口把字段回滚到之前的状态(比如Pending)
方案3:用第三方扩展简化配置
直接装个ADO扩展,比如支持细粒度字段权限的Field Permissions Manager类扩展,这类工具能直接指定哪些组可以编辑特定的字段选项值,不用自己写规则或流,配置起来更省心
内容的提问来源于stack exchange,提问作者Sai Prudhvi Raju
相关产品推荐
相关产品推荐

