【问题标题】:Restrict work item fields to specific users in TFS 2010将工作项字段限制为 TFS 2010 中的特定用户
【发布时间】:2012-02-12 16:57:27
【问题描述】:

我正在使用 TFS 2010 并且正在自定义工作项类型。我想知道,是否有办法限制组成员用户对字段的访问,例如:

<FIELD name="Created By" refname="System.CreatedBy" type="String" syncnamechanges="true" reportable="dimension" />

<FIELD name="Project Manager" refname="CustomField.ProjectManager" type="String" reportable="dimension">
    <HELPTEXT>The name of the project manager.</HELPTEXT>
    <SUGGESTEDVALUES expanditems="true" filteritems="excludegroups">
        <LISTITEM value="[global]\Project Managers" />
    </SUGGESTEDVALUES>
    <WHENNOT field="System.CreatedBy" value="CustomField.ProjectManager">
        <READONLY />
    </WHENNOT>
</FIELD>

编辑 有没有办法限制组内的特定用户,例如:限制项目经理“John”更改字段,因为该工作项不是他的项目,但允许项目经理“简”要改,因为这是她的项目?

上面代码的问题是value属性只接受字符串值,不识别字段表达式。

【问题讨论】:

    标签: xml tfs workitem tfs-workitem


    【解决方案1】:

    我自己没有尝试过,但您应该可以在工作项模板中编辑它(我假设您已经做到了这一点,因为您已经从中粘贴了一些 XML :)?如果不是,则在Tools &gt; Process Editor 菜单下)使用您的 FIELD 中的 VALIDUSER 元素,请参阅http://msdn.microsoft.com/en-us/library/aa337606(v=vs.90).aspx

    【讨论】:

    • 不要求字段的值是有效的 TFS 用户名。 (与随机字符串相反)。
    • 在那种情况下是文档错误吗?它指出“VALIDUSER 是 FIELD(工作项类型定义架构)、FIELD(WORKITEMTYPE 元素)、WHENCHANGED 和 WHENNOTCHANGED 的可选子元素。如果您没有定义可选属性之一,所有有效的 Team Foundation Server 用户和组将能够修改字段。”
    • “如果您没有定义可选属性之一,所有有效的 Team Foundation Server 用户和组都将能够修改该字段。”与 VALIDUSER 元素的“for”、“not”和“group”属性有关,这与上面的问题没有什么不同。
    • 你可以这样做吗:&lt;VALIDUSER group="groupName" for="System.CreatedBy" /&gt; ?换句话说,你能提供一个动态的用户名,这里是工作项的创建者吗?
    【解决方案2】:

    我的结论是你不能这样做。除非我被证明是错误的,否则使用 TFS 2010 不支持此操作。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-03-01
      • 2011-11-03
      • 1970-01-01
      • 2013-04-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-09-24
      相关资源
      最近更新 更多