一个非常简单的用于aiohttp的http基本auth实现。


aiohttp-basicauth-middleware的Python项目详细描述

https://travis-ci.org/bugov/aiohttp-basicauth-middleware.svg?branch=master

用于简单http-basic的Aiohttp中间件 对某些URL进行身份验证保护。

适用于Python>;=3.5

与UTF-8?配合使用

安装

pip install aiohttp-basicauth-middleware

用法

app=web.Application(loop=loop)app.router.add_route('GET','/hello',handler_a)app.router.add_route('GET','/admin/hello',handler_b)app.middlewares.append(basic_auth_middleware(('/admin',),{'user':'password'},))

基本认证中间件有3个参数:

  1. 受保护URL的列表。例如,['/admin']将匹配 与/admin/user匹配,但与/user/admin不匹配。
  2. auth dict–带对的dict:登录密码
  3. 密码比较策略(可选)。例如,你可以 将散列密码存储在auth dict中请参见aiohttp_basicauth_middleware.strategy.basestrategy 示例.strategy了解更多信息

MD5密码散列示例:

app=web.Application(loop=loop)app.router.add_route('GET','/hello',handler_a)app.router.add_route('GET','/admin/hello',handler_b)app.middlewares.append(basic_auth_middleware(('/admin',),{'user':'5f4dcc3b5aa765d61d8327deb882cf99'},lambdax:hashlib.md5(bytes(x,encoding='utf-8')).hexdigest(),))

/admin/..将由同一个登录名+密码对('user','password')访问

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
帐户名  kagiso  dev50  商业用途  ftm  pyi  wfs  watchdir  whale  okerr  mpinterfaces  pyclient  laugh  optimizers  pyth3  hts  usermanager  lfm  resttest  stahmctestt  排字  appspot  checkit  apikey  opam  haml  arf  apex  sshtunnel  slackipycore  tmx  basemodels  conflicts  cis  backorder  encore  dream  pycsw  sunstone  fiji  gnusolidario  列表框  workdays  stepik  theia  lmm  pty  actuary  pagerduty  typesafe