有很多帖子说要将代理凭据添加到 git 配置文件中。
但我认为这会将用户名和密码以明文形式存储在配置文件中,这不是很安全,而且如果每 30 天更改一次密码,则会带来(小小的)麻烦。
其他组织如何解决这个问题 - 他们是否在内部托管 git 存储库,或者更昂贵的订阅是否包含解决这个问题的方法?或者一个允许匿名连接但仅限于 GitHub IP 地址的单独代理服务器?
答案1
因此,如果您从这里了解代理服务器身份验证的工作原理:
https://developer.mozilla.org/en-US/docs/Web/HTTP/Authentication#Authentication_schemes
您会发现其中有几个遵循某些授权类型:
以下是链接内容的简要概述
Basic (see RFC 7617, base64-encoded credentials. See below for more information.),
Bearer (see RFC 6750, bearer tokens to access OAuth 2.0-protected resources),
Digest (see RFC 7616, only md5 hashing is supported in Firefox, see bug 472823 for SHA encryption support),
HOBA (see RFC 7486 (draft), HTTP Origin-Bound Authentication, digital-signature-based),
Mutual (see draft-ietf-httpauth-mutual),
AWS4-HMAC-SHA256 (see AWS docs).
因此,通过代理使用 Git 进行身份验证的配置应该是 Basic,它使用 Plain-HTTP 身份验证,因此是明文,因此 Git 使用它们的目的是非加密。
我还没有看到其他与 Git 相关的身份验证方案的其他用例。我真的很想看一个例子,但我个人还没有发现这样的例子。
由于它是基础的,所以你只需要使用它,并在每次密码更改周期中更新它,或者使用 SSH 来防止首先使用密码