跳转到主要内容

pyramid_jwtauth

项目描述

注意:这是代码的早期版本,因此库可能会发生变化。

这是一个用于JSON Web Token (JWT) 认证的Pyramid认证插件

http://self-issued.info/docs/draft-ietf-oauth-json-web-token.html

要使用JWT访问认证访问资源,客户端必须获得JWT来对服务器进行签名请求。此库还可以为客户生成JSON Web Tokens。令牌对客户端来说是透明的,尽管如此,除非它被加密,否则客户端可以读取令牌中声明的信息。

在访问受保护资源时,服务器将生成一个带有“JWT”方案的401挑战响应,如下所示

> GET /protected_resource HTTP/1.1
> Host: example.com

< HTTP/1.1 401 Unauthorized
< WWW-Authenticate: JWT

客户端将使用其JWT来构建请求签名并将其包含在Authorization头中,如下所示

> GET /protected_resource HTTP/1.1
> Host: example.com
> Authorization: JWT token=eyJ0eXAiOiJKV1QiLA0KICJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJqb2UiLA0KICJleHAiOjEzMDA4MTkzODAsDQogImh0dHA6Ly9leGFt
 cGxlLmNvbS9pc19yb290Ijp0cnVlfQ.dBjftJeZ4CVP-mB92K27uhbUJU1p1r_wW1gFWFOEjXk

< HTTP/1.1 200 OK
< Content-Type: text/plain
<
< For your eyes only:  secret data!

(注意:根据JWT中声明的数量,令牌可能变得很大。出于所有实际目的,它应该保持简短。)

此插件使用PyJWT库来验证JWT

http://github.com/progrium/pyjwt

还可以查看用于生成JWT的库,尽管可以使用任何语言来生成它。

灵感

本模块高度基于(并复制自)Mozilla Services的pyramid_macauth包和macauthlib包。

https://github.com/mozilla-services/pyramid_macauth

https://github.com/mozilla-services/macauthlib

没有它,我就无法对这个包进行少量修改,使其与Pyramid兼容。

许可证

本源代码形式受Mozilla公共许可证第2.0版条款约束。如果此文件未附带MPL副本,您可以在http://mozilla.org/MPL/2.0/获取一份。

待定

  • 初始开发版本0.0.1.dev1。

https://github.com/mozilla-services/pyramid_macauth版本0.4.0-dev1分叉而来

0.0.1.dev5

更新后的包需要PyJWT。

0.0.1.dev4

更新后的包现在可以用于Python 3.3/3.4下载。

0.0.1.dev3

现在可以正确地与RSA密钥一起工作,并修复了没有使用适当的挑战而进行401错误的问题。已停止支持Python 2.6和3.2。

0.1.1

与PyJWT 0.4.x(未锁定)兼容。Wichert Akkerman(wichert@wiggy.net)的贡献使身份验证可以使用‘Bearer’头而不是自定义头‘JWT’。

在tox中已停止支持Python 3.3,但它仍然可以正常工作。

使用Vagrant开发并针对python 2.7和3.4进行tox测试的包的(开发)视角。

0.1.2

通过Pyramid设置系统在decode()方法中的PyJWT选项{}中添加了禁用各种检查的能力。这通过策略配置。

0.1.3

从Shadizzle合并了PR#11,以提供从INI文件配置‘方案’的能力。版本提升到0.1.3。

项目详情


下载文件

为您的平台下载文件。如果您不确定要选择哪个,请了解更多关于安装包的信息。

源代码分发

pyramid_jwtauth-0.1.3.tar.gz (19.1 kB 查看哈希值)

上传时间 源代码

由以下组织支持

AWS AWS 云计算和安全赞助商 Datadog Datadog 监控 Fastly Fastly CDN Google Google 下载分析 Microsoft Microsoft PSF 赞助商 Pingdom Pingdom 监控 Sentry Sentry 错误记录 StatusPage StatusPage 状态页面