Kinto的Hawk身份验证支持
kinto-hawk的Python项目详细描述
Kinto的Hawk身份验证支持
Kinto-hawk为基于Kinto的应用程序启用hawk身份验证
它将hawk身份验证协议添加到kinto帐户插件中。
用户的处理方式与往常一样 Kinto Accounts Users。
Hawk对Kinto的主要好处是防止重放攻击(非常 用于得分游戏)和防止发送用户和密码 通过网络,比如使用Basic auth
它提供:
- 身份验证策略类;
- 与kinto缓存后端集成,用于令牌验证;
- 要执行的一些可选端点以获取新的hawk会话。
- Kinto documentation
- Issue tracker
安装
安装python包:
pip install kinto-hawk
在项目配置中包含包:
# Enable plugin. kinto.includes = kinto_hawk
并使用pyramid_multiauth形式化配置身份验证策略:
multiauth.policies = account # Enable Hawk authenticated policy and name it account multiauth.policy.account.use = kinto_hawk.authentication.HawkAuthenticationPolicy
默认情况下,它将依赖于在Kinto中配置的缓存
配置
到今天为止,Hawk还没有具体的配置
如有必要,重写身份验证策略的默认值:
# multiauth.policy.account.realm = Realm # hawk.nonce_ttl_seconds = 60 # A minute # hawk.session_ttl_seconds = 2613600 # 2 months since last usage.
如何创建用户?
您可以使用kinto create user命令创建用户:
kinto create-user --ini config/kinto.ini -u admin
登录流程
一旦有了用户并激活了kinto-hawk插件, 您将能够使用 Basic Auth或以前的Hawk Session。
注意
这只适用于帐户用户。你不能要求 例如,OAuth身份验证用户的Hawk会话。
$ http POST https://kinto.dev.mozaws.net/v1/hawk-sessions -v --auth (userID):(password) POST /v1/hawk-sessions HTTP/1.1 Host: kinto.dev.mozaws.net HTTP/1.1 201 Created Hawk-Session-Token: 47d5616e561443e79d0db605771db46234a984629a6e681059b76657f790583b
更改日志
本文档描述了每个以前版本之间的更改。
0.1.0(2018-04-26)
- 初步实施。
贡献者
- 托马斯·德莱斯勒<;Thomas.Dressler1@gmail.com>;
- 马修·莱普拉特
- 我的丈夫<;hubscher.remy@gmail.com>