git 客户端使用 GSSAPI 进行 NTLM 代理身份验证

标签 git curl github proxy ntlm

像许多人一样,我试图从公司代理后面访问 github.com。

显然* curl(通过 libcurl)现在包括对 NTLM 代理身份验证的 GSSAPI 支持,而无需手动泄露用户名和密码。

由于 git 客户端使用 libcurl,我认为这可以通过 git 访问。

如何使用 git 客户端访问它?

(*) 参见 NTLM proxy without password? , 用于讨论不提供密码的 ntlm 代理身份验证。

另见 Using Libcurl to authenticate ntlm proxy without pass .

最佳答案

最后只好RTFS了,总结一下答案:

截至 msysgit 版本 1.9.5(早期版本未经测试),git

  1. 为 http 和 https 使用 [http] 部分的代理配置
  2. 没有明确的方法来设置身份验证类型(例如 ntlm)
  3. 除了嵌入在代理 url 中之外,没有单独的方法来设置用户名和密码
  4. 使用空的用户名和密码是可行的,因此如果您执行以下操作,它将使用默认的 NTLM 凭据

    git config --global http.proxy https://:@proxyhost:proxyport/

请注意,分隔用户名和密码的 :@ 存在,但字段为空。而且它似乎接受使用 https 连接到代理。

关于git 客户端使用 GSSAPI 进行 NTLM 代理身份验证,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29338620/

相关文章:

POST 上的 django-rest-framework "This field is required"

ssl - 带有 ssl url 的 libcurl 中的高 CPU 使用率

git - 如何从 GitHub 加载/打开/吸收存储库到 GitX?

git - 如何在没有 --set-upstream 的情况下推送远程服务器上不存在的新分支?

子模块中的 Git Merge 冲突。如何提交他们的版本?

git - 文件太大,添加到 git 忽略但仍在尝试添加

github - 如何为 GitHub 拉取请求触发 Visual Studio Team Services 构建

django - 您如何在非主分支上干净地维护 django 迁移?

javascript - 使用 -H 将 Curl 转换为 Javascript

python - 以 GitHub 为源的 CDK Codepipeline