操作PyPI API令牌
项目描述
PyPIToken是一个开源的Python 3.8+库,用于生成和操作PyPI令牌。
PyPI令牌非常强大,因为它们基于Macaroons。它们允许持有人为现有令牌添加额外的限制。例如,给定一个可以为其所有者上传任何项目的PyPI令牌,您可以生成一个只能允许一些项目,甚至一个项目的令牌。
这里是一个例子
$ pip install pypitoken
import pypitoken
token = pypitoken.Token.load("pypi-foobartoken")
print(token.restrictions)
# [ProjectIDsRestriction(project_ids=["00000000-0000-0000-0000-000000000000"])]
token.restrict(project_names=["requests"])
print(token.restrictions)
# [
# ProjectIDsRestriction(project_ids=["00000000-0000-0000-0000-000000000000"]),
# ProjectNamesRestriction(project_names=["requests"]),
# ]
token.dump()
# pypi-newfoobartoken
我们创建的此令牌将仅限于上传requests的发行版。当然,您的PyPI用户仍然需要在requests上拥有上传权限才能使这成为可能。
该库的目标是提供一个简单的工具包来操作PyPI令牌。理想情况下,将来PyPI (Warehouse) 本身也可能使用这个库来生成它们的令牌。这应该使为PyPI令牌迭代新的限制类型变得更容易,如原始实现问题中讨论的那样。
关于将此库集成到Warehouse环境的讨论正在进行中
在将项目置于 PyPA 保护伞下的 Python 打包讨论区中
在替换当前 macaroon 实现的 Warehouse 追踪器中
接下来该做什么
完整的 文档 可能是了解此项目的最佳地方。
如果您遇到错误,或想取得联系,您始终可以打开 工单。
项目详情
下载文件
下载适合您平台的文件。如果您不确定选择哪个,请了解有关 安装包 的更多信息。
源分发
pypitoken-7.0.1.tar.gz (12.5 kB 查看哈希值)
构建分发
pypitoken-7.0.1-py3-none-any.whl (12.7 kB 查看哈希值)
关闭
pypitoken-7.0.1.tar.gz 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | dd90c8c1abb792b1de7f8380dccbaea238a1bd80e2231be8f5c527ed5ae510a2 |
|
MD5 | 383b951b4398ddba508cf4059e711093 |
|
BLAKE2b-256 | df540fa3df5aeee2963b68b8a04b3fcbade5e96f9e00bc438f52f051fac0009c |
关闭
pypitoken-7.0.1-py3-none-any.whl 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | f2966cc4c6f2ef9edeaa3a3e49febf748ff561c7acbdba911845998b2a6c8e16 |
|
MD5 | 40bf13b1feee2f5c5f93b28db0838d24 |
|
BLAKE2b-256 | 1634fc74ef1dd5b5e87681d7641d3c28911523ca99d164cf93343c6df27d7204 |