防止用户在Azure DevOps中创建新的工作项

3

我一直在查看 Azure DevOps 的组织和项目设置,但我没有找到可以防止用户在项目中创建工作项的设置。

我有一些用户拒绝遵循我们为项目制定的准则,因此我想使他们和整个项目团队感到不便,以便他们更愿意遵循准则而不是忽略它们。目前,我们的用户故事或任务只有一个单词,并且估计需要60-70小时,这并不符合我们应该进行的规划方式。

我仍然希望他们能够编辑故事或任务并移动状态,但最初的创建应该对他们不可用(至少有一段时间)。有办法做到这一点吗?


类似于aggregator-cli这样的聚合器可以关闭工作项并向未遵守规则的人发送电子邮件... https://github.com/tfsaggregator/aggregator-cli - jessehouwing
我喜欢这个听起来的声音 - 这可以应用于所有项目(当前和未来),而无需每次都进行配置吗? - James
是的。聚合器可以在组织级别激活策略。但您需要编写(程序化)以了解您需要支持的所有工作项类型。 - jessehouwing
2个回答

0
Azure DevOps聚合器项目允许您编写简单的脚本,当工作项被创建或更新时触发。它使用服务钩子来触发此类事件,并抽象出大部分API特定的内容,为您提供一个工作项实例以直接交互。
您无法阻止此类策略的创建或更新,Azure DevOps会在创建过程中太晚通知聚合器,因此无法这样做,但是您可以还原更改、关闭工作项等。还有一些实用函数可用于发送电子邮件。
您需要在某个地方安装聚合器,它可以托管在Azure Functions中,我们提供了一个Docker容器,您可以在任何地方启动它。然后使用具有足够权限的PAT令牌将其链接到Azure DevOps,并编写您的第一个策略。
一些示例规则可以在聚合器文档中找到。
store.DeleteWorkItem(self);

应该将工作项放入 Azure DevOps 的回收站中。您可以创建一个代码片段,围绕它检查工作项的创建者(self.CreatedBy.Id)与已知的坏身份列表进行比较。

请注意,当 Azure DevOps 创建新的工作项时,Created 和 Updated 事件可能会快速连续触发(这是由设置工作项的待办事项顺序的机制引起的),因此您可能需要找到一种方法来检测哪些元数据告诉您应删除工作项。我通常检查低修订号(例如,< 5)和最近几个修订版本未更改除 Backlog Priority 之外的任何字段。


0
我仍希望他们能够编辑故事或任务并移动状态,但最初的创建应该对他们不可用(至少一段时间)。有没有办法做到这一点??
恐怕目前没有这样的设置。
这是因为工作项的当前权限设置尚未细分以适用于当前情况。
关于此设置有一个设置:
项目设置->团队配置->区域->安全性:

enter image description here

将此值设置为拒绝,它将防止用户创建新的工作项。但它也会阻止用户修改工作项。

针对您的请求,您可以在我们的UserVoice网站上(https://developercommunity.visualstudio.com/content/idea/post.html?space=21 )添加此功能的请求,该网站是我们产品建议的主要论坛。

enter image description here


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接