一个django中间件,确保每个请求都有一个经过身份验证的用户。
django-always-authenticated的Python项目详细描述
确保请求始终具有经过身份验证的用户的中间件。
如果请求没有经过身份验证的用户,它将以默认值登录 用户。如果默认用户不存在,则创建该用户。
兼容性
这个中间件已经用django的这些版本进行了测试:
- 1.7
- 1.8
- 1.9
- 1.10
- Master(在发布时)
设置
从pypi安装:
pip install django_always_authenticated
添加到设置文件中的MIDDLEWARE(MIDDLEWARE_CLASSES对于django<;1.10)
MIDDLEWARE = ( ... 'always_authenticated.middleware.AlwaysAuthenticatedMiddleware', )
作为安全保障,中间件将 ImproperlyConfiguredException在生产模式下运行时 (DEBUG=False)。 要在生产环境中运行中间件,请将ALWAYS_AUTHENTICATED_DEBUG_ONLY设置为 False。
配置
此中间件读取这些设置:
始终验证用户名
具有默认用户名称的字符串,默认为'user'。
始终验证用户默认值
创建用户时要设置其他默认值的dict。
始终验证仅调试
设置为false以允许在debug=false的情况下运行。
示例项目
有一个非常单一的示例项目演示了 目录示例项目。
运行测试
要运行测试,请安装要求并运行py.test:
pip install -r requirements.txt py.test
您还可以使用tox运行所有受支持版本的 python和django:
pip install tox tox