TFS 2010中的字段级权限

时间:2011-06-07 10:38:12

标签: permissions tfs2010

在团队项目中,我创建了一个名为“LimitedAccess”的组,并向其添加了几个用户。我现在需要将此组权限授予
1)添加错误并将其分配给默认的“assignedTo”用户,即用户无法选择要分配的用户。但是,用户应该能够设置其他字段,例如优先等 2)仅修改现有错误的描述。其余的字段应该是只读的 这可能吗?看起来它是读取或写入但没有字段级别权限。感谢。

我修改了工作项类型工作流程(第三个选项卡) - 双击第一个转换,即错误变为活动之前,并添加了我想要限制的字段('AssignedTo')。 我为'LimitedAccess'组添加了3个规则,ALLOWEDVALUES,READONLY和DEFAULT。 保存时,该字段是只读(灰显)但没有默认值。 下面是xml。我使用转换,因为当错误已经提出时,将适用不同的规则。

[从=“”转换为=“激活”]     [原因]
     [REASON value =“Build Failure”/]
    [DEFAULTREASON值=“新”/]
  [/理由]
  [场]
    [FIELD refname =“Microsoft.VSTS.Common.ActivatedBy”]
      [ALLOWEXISTINGVALUE /]
      [COPY from =“currentuser”/]
      [VALIDUSER /]
      [必需/]
    [/ FIELD]
    [FIELD refname =“Microsoft.VSTS.Common.ActivatedDate”]
      [SERVERDEFAULT from =“clock”/]
    [/ FIELD]
    [FIELD refname =“System.AssignedTo”]
      [READONLY for =“[project] \ LimitedAccess”/]
      [DEFAULT for =“[project] \ LimitedAccess”from =“value”value =“QA”/]
      [ALLOWEDVALUES for =“[project] \ LimitedAccess”expanditems =“false”]
        [LISTITEM value =“[project] \ QA”/]
        [LISTITEM value =“[project] \ DEV”/]
        [LISTITEM value =“[project] \ OTHERS”/]
      [/ ALLOWEDVALUES]
    [/ FIELD]
  [/场]
[/ Transition]

2 个答案:

答案 0 :(得分:1)

如果使用随TFS电源工具包安装的工作项模板编辑器打开工作项模板,您将看到工作项类型中使用的字段列表。

双击字段,打开“字段定义”窗口,其中有一个“规则”选项卡,允许您为各个字段定义规则。对于每个规则定义,您可以定义规则“for”的规则以及规则“不适用于”。

我相信你可以使用DEFAULT和READONLY规则构建一个像你上面解释过的流程。

以下是指向有关规则的文档页面的链接 http://msdn.microsoft.com/en-us/library/ms194953.aspx

答案 1 :(得分:0)

我能够达到这个限制,但解决方案看起来很糟糕。如果其他人有更好的主意我很感兴趣。但是,由于这个问题超过一年半,我对此表示怀疑。我所做的是在场上放置了6条规则。第一个是允许值(1值,我的默认值)和NOT组中的Admin组。第二个是默认值(与规则1相同)。第三个是我的管理员组在FOR中的AllowedValues,它有可能值的真实列表,而不仅仅是默认值。我的Admin组在NOT字段中冻结了第四条规则。我的第五个规则是AllowExistingValue(因为如果我的管理员组将其设置为其他值不可用的值之一,则普通用户需要此例外以使用Admin设置的值保存它)。而且,最后我的第6条规则是必需的,这是因为Frozen会允许用户删除值但不更改它,通过设置所需我们消除消隐。请告诉我有人有一个更好的方法来获取默认值仍然保存,即使该字段当前只读给当前用户。