4

在 TFS2015 内部部署中,可以禁用从 Web 界面编辑文件的功能吗?

此功能似乎没有考虑签入政策。

4

1 回答 1

0

我通过安装 IIS URL 重写模块并添加一个重写规则来解决这个问题,该规则将一个返回403POSTs快速编辑调用的 api 方法:

<rewrite>
   <rules>
     <rule name="PreventQuickEditCheckin" patternSyntax="Wildcard" stopProcessing="true">
     <match url="*" />
     <conditions>
         <add input="{URL}" pattern="/tfs/collection/_apis/tfvc/changesets" />
         <add input="{REQUEST_METHOD}" pattern="POST" />
         <add input="{HEADER_X-Requested-With}" pattern="XMLHttpRequest" />
     </conditions>
     <action type="CustomResponse" 
             statusCode="403" 
             statusReason="Forbidden: This action is not permitted." 
             statusDescription="Quick edit is currently disabled to prevent
                                checkin policies being circumvented." />
   </rule>
  </rules>
 </rewrite>

仅对带有标头的请求X-Requested-With(由 jQuery 添加)执行此操作的附加约束是确保此方法仅被来自 TFS Web 的请求阻止。

虽然我没有看到这对 TFS 功能的其他方面有任何影响,但我不保证这会产生意外或不希望的结果!

于 2016-03-22T23:30:28.600 回答