TF.exe Git 权限验证问题

Posted

技术标签:

【中文标题】TF.exe Git 权限验证问题【英文标题】:TF.exe Git Permission Authentication Issue 【发布时间】:2020-03-04 07:51:23 【问题描述】:

我正在尝试创建一个脚本,将CreateBranch 权限添加到我在 Azure DevOps 中的存储库中。我可以从 Powershell 登录并运行我的 git 命令,但是当需要使用 tf.exe 时,我会遇到身份验证错误。这是我到目前为止的设置:

tf.exe git permission /deny:CreateBranch /group:[$project]\Contributors /collection:https://dev.azure.com/$organization/ /teamproject:$project /repository:$reponame

这是我的代理设置的 tf.exe.config:

<system.net>
    <settings>
        <ipv6 enabled="true"/>
        <servicePointManager expect100Continue="false" />
    </settings>
    <defaultProxy useDefaultCredentials="true" enabled="true">
        <proxy usesystemdefault="True" />
    </defaultProxy>
</system.net>

当我运行我的脚本时,我收到以下错误:

设置分支策略

TF400324:Team Foundation 服务无法从服务器获得 https://dev.azure.com/ORGANIZATION。技术信息(用于 管理员):无法连接到远程服务器

过去几天我一直在传播 Google 和 Bing,但我无法修复它。有人有什么想法吗?

【问题讨论】:

您可以从运行此命令的同一台机器上的浏览器访问dev.azure.com/$organization吗? @scorpio 是的,我可以 只是想检查在你的脚本运行时 $organization 变量是否被正确的值替换?有时变量中的拼写错误和空/不正确的值会使问题变得不同! @scorpio 是的,我确定了。我打印了整个声明 【参考方案1】:

此类问题通常表示存在某些网络问题导致连接失败。

发送时发生意外错误。没有成功在代理后面使用 tf 命令。

请先去掉你环境中的代理设置,在使用那个tf.exe git权限命令时指定/login参数/login:FabrikamUser@hotmail.com,FabrikamPassword

如果您使用的是个人访问令牌,您还可以指定/login:PAT Token

您也可以按照评论的建议直接从运行此命令的同一台计算机上的浏览器访问 dev.azure.com/$organization。如果问题与您的网络环境或tf.exe 命令端相关,这将有助于缩小范围。

【讨论】:

如果你坚持使用带有 tf 命令的代理,你也可以在这里看看 Martin Woodward 的博客:woodwardweb.com/tfs_top_tip/tfs_top_tip_12.html 即使它看起来有点旧,也可以解决问题。 其实这行不通...我不明白什么行不通。在 Powershell 中,我可以毫无问题地运行所有 git 命令。当我使用 tf.exe 应用程序添加我的 git 权限时,我得到了这些错误。好像没有使用代理或者没有检测到它 @NerdinTraining 实际上我也没有找到任何配置或设置显示如何在通过官方文档后在代理后面使用 tf.exe 命令。以前从未听说过类似的情况。建议您使用相同的tf git permission command 进行测试,无需代理即可。如果它工作正常,那么 tf 命令可能无法使用代理或检测/使用它,正如您已经指出的那样。 我必须弄清楚如何在 tf.exe.config 中设置我的代理设置。我在网上找不到任何东西。太令人沮丧了! 嗨,书呆子,您是如何在本地环境中设置代理的? TF 命令实际上是与 Team Explorer 和 Visual Studio 一起定位和安装的。一个建议,您可以将您的 Visual Studio 设置在代理后面,然后尝试再次调用该命令,这可能会成功。

以上是关于TF.exe Git 权限验证问题的主要内容,如果未能解决你的问题,请参考以下文章

物联网架构成长之路-EMQ权限验证小结

SpringAOP01 利用AOP实现权限验证利用权限验证服务实现权限验证

启用 2FA 后 Git 身份验证失败

无法“git pull” - 主机密钥验证失败

Shiro后台实现验证权限

内存访问权限,需要从堆栈执行代码。如何验证系统权限?