Django中的密钥证明支持
项目描述
django-keybase-proofs
django-keybase-proofs
是一个Django应用程序和参考实现,用于将Keybase证明集成到Web应用程序中。如果您想将Keybase证明集成到应用程序中,并且使用Django,则可以使用此作为即插即用库。否则,您可以在本地运行服务器或检出代码以了解如何构建自己的集成。您可以通过阅读完整的集成文档来了解与Keybase集成的所有必需步骤。
该库支持从Python 2.7到3.7的Python版本,以及从Django 1.11到Django 2.2。如果您想看到一个功能或找到一个问题,请通过打开问题或拉取请求来告诉我们。
与现有的django应用程序集成
要安装
pip install django-keybase-proofs
将 keybase_proofs
添加到settings.py的INSTALLED_APPS
并设置KEYBASE_PROOFS_DOMAIN
设置
INSTALLED_APPS = (
# ...other installed applications...
'keybase_proofs',
)
# Must match the `domain` set in the config.
KEYBASE_PROOFS_DOMAIN = <your-domain.com>
将 url(r'^keybase_proofs/', include('keybase_proofs.urls')),
添加到您的main urls.py
您可以将keybase_proofs/templates/
中的示例模板复制过来,根据需要自定义和样式化。查看剩余步骤以进行集成并将您的配置提交给Keybase。
注意:在集成指南定期检查中讨论了证明的有效性。由于没有一种通用的方式来为Django应用程序表达此行为,因此这个库不实现这种行为。我们提供了一个库函数(keybase_proofs.views.verify_proof
)以实现此功能(如果需要)。作业调度/重试行为由实现者决定。
探索示例服务
如果您正在构建Keybase证明集成但不使用Django,您仍然可以将此包用作参考实现。按照以下说明,您可以在本地运行服务器以查看应实现的行为/响应。
首先使用以下命令安装所需的Python包:
# install basic python requirements, a virtualenv is recommended.
make installdeps
# Run the example `test_app` server
make run
在运行测试服务器时,您可以尝试发布证明/读取API。测试服务器没有任何身份验证机制。您在登录表单中提交的任何用户名都将被验证并可以发布证明。
示例配置
以下是一个使用此库的示例配置。您应该查阅文档以获取此处发生的完整描述。
{
"version": 1,
"domain": "<your-domain.com>",
"display_name": "Django Keybase Proofs",
"username": {
"re": "^[a-zA-Z0-9_]{2,20}$",
"min": 2,
"max": 20
},
"brand_color": "#000100",
"logo": null,
"description": "Next gen social network using big data & AI in the cloud 🤖☁️.",
"prefill_url": "https://<your-domain.com>/keybase-proofs/new-proof?kb_username=%{kb_username}&username=%{username}&sig_hash=%{sig_hash}&kb_ua=%{kb_ua}",
"profile_url": "https://<your-domain.com>/keybase-proofs/profile/%{username}",
"check_url": "https://<your-domain.com>/keybase-proofs/api/%{username}",
"check_path": ["keybase_sigs"],
"contact": ["admin@<your-domain.com>", "joshblum@keybase"]
}
验证集成
在集成过程中,您可以使用验证脚本来帮助手动验证集成的正确性。
开发技巧
您可以通过运行以下命令来运行测试:
make test
发布到PyPI
TAG_NAME="XXX"
make release TAG_NAME=$TAG_NAME
项目详情
下载文件
下载适合您平台的文件。如果您不确定选择哪个,请了解更多关于安装包的信息。
源分布
构建分布
哈希值 for django_keybase_proofs-0.0.8-py2.py3-none-any.whl
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 5c79b6ae3281549a44cc2e44c2eac05b99f76039bf48895c789fd2a454e85112 |
|
MD5 | 7a2c30fc2d10d54df507a19da28c5833 |
|
BLAKE2b-256 | fbb8c08bdf53bad1cd1eabd0acedde1474df535b5bc083326d96ade09fbab739 |