Pyramid调试认证策略
项目描述
为Pyramid提供调试认证策略。提供一个简单和标准的方式来定义从HTTP客户端的pyramid主体。
警告:这个pyramid在生产环境中完全不安全,应仅限于调试用途/开发阶段。
安装
使用setuptools安装,例如(在虚拟环境中)
$ pip install pyramid_debugauth
设置
一旦安装了pyramid_debugauth,您可以使用config.set_authentication_policy定义一个认证策略。
在您的Pyramid项目中
from pyramid.authorization import ACLAuthorizationPolicy
from pyramid_debugauth import DebugAuthenticationPolicy
config = Configurator(.....)
config.set_authentication_policy(DebugAuthenticationPolicy())
config.set_authorization_policy(ACLAuthorizationPolicy())
用法
DebugAuthenticationPolicy允许客户端伪装成任何用户,并使用标准的Authorization http头和非常规的auth-scheme Debug(RFC 7235)指定任何数量的期望的主体。
授权:调试用户_id [principal_1] [principal_2] ...
使用通用HTTP客户端
$ curl https://127.0.0.1:6543 -H 'Authorization: Debug bob admin'
$ http https://127.0.0.1:6543 'Authorization: Debug bob admin'
或使用非标准的 授权 查询参数
https://127.0.0.1:6543/protected?authorization=debug%20user_id%20principal_1
使用通用HTTP客户端
$ curl https://127.0.0.1:6543?authorization=debug%20bob%20admin
$ http https://127.0.0.1:6543?authorization=debug\ bob\ admin
开发
运行测试
$ virtualenv venv $ . venv/bin/activate (venv)$ pip install -e .[dev] (venv)$ nosetests
变更日志
0.2.0 (2018-02-09)
切换到Github
切换到setuptools(从d2to1)
修复与Pyramid最新版本测试中的崩溃问题
0.1.2 (2014-12-03)
允许设置自定义回调。
0.1.1 (2014-09-09)
添加通过查询字符串进行认证的能力
0.0.2 (2014-09-08)
最小功能集
首次发布于PyPI