我有一个私人 PyPI 存储库。有什么办法可以存储凭据pip.conf
如同.pypirc
?
我的意思是。目前在.pypirc
你可以有这样的配置:
[distutils]
index-servers = custom
[custom]
repository: https://pypi.example.com
username: johndoe
password: changeme
根据我的发现,你可以输入pip.conf
:
[global]
index = https://username:[email protected] /cdn-cgi/l/email-protection/pypi
index-url = https://username:[email protected] /cdn-cgi/l/email-protection/simple
cert = /etc/ssl/certs/ca-certificates.crt
但在这里我看到两个问题:
- 对于每个 url,您每次都需要指定相同的用户名和密码。
- 用户名和密码在日志中可见,因为它们是 url 的一部分。
有没有办法在 url 之外存储用户名和密码?
您可以存储 Pip 的凭据以供使用~/.netrc
像这样:
machine pypi.example.com
login johndoe
password changeme
Pip 在访问时将使用这些凭据https://pypi.example.com
但不会记录它们。您必须单独指定索引服务器(例如pip.conf
如问题中所示)。
注意~/.netrc
必须由用户拥有pip
执行为。它也不能被任何其他用户读取。无效文件将被默默忽略。您可以像这样确保权限正确:
chown $USER ~/.netrc
chmod 0600 ~/.netrc
此权限检查在 Python 3.4 之前不适用,但无论如何它都是一个好主意。
Pip 内部使用requests http://2.python-requests.org/en/master/发出 HTTP 请求时。 requests 使用标准库netrc https://docs.python.org/3/library/netrc.html模块来读取文件,因此字符集仅限于 ASCII 子集。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)