跳转到主要内容

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

由以下提供支持