把代理密码留在 Git 的 URL 之外
让 Git 通过其凭据机制获取缺失的代理密码,然后如果磁盘持久化很重要,就单独检查凭据助手。
代理 URL 可以只包含用户名而不包含密码:
[http]
proxy = http://[email protected]:8080Git 会尝试通过其凭据机制获取缺失的密码。请把账号和端点换成你自己的。Git 版本、HTTP 后端和代理认证方式必须支持你所采用的方案。
选择需要留在存储之外的内容
| 要求 | 需要安排什么 |
|---|---|
| 配置的代理 URL 中不含密码 | 使用只含用户名的形式,并通过受支持的凭据机制提供缺失的机密。 |
| 磁盘上不保存可重复使用的密码 | 选择一个已获批准、其存储行为满足该要求的助手。仅从 URL 中去掉密码并不足够。 |
| 集成认证 | 使用受支持的方法和适用的进程标识,而不是把它当作 Basic 密码的另一种写法。 |
凭据助手可以把凭据保存在操作系统的凭据存储、内存、文件或其他系统中。在断定密码不再被保存之前,请检查为此账号和 URL 配置的助手。
把其他副本也纳入视野
返回硬编码密码的内联助手只是把它存到了别处。携带密码的环境变量或命令参数也可能进入脚本、诊断信息、进程检查或 shell 历史。
有用的记录很小:代理端点、认证方式、凭据来源和存储策略。请把机密排除在该记录之外。源站凭据和代理凭据可能使用不同的支持路径,因此成功登录网站并不能证明这套代理方案。