简单的仅密码保护
django-simple-auth的Python项目详细描述
Info: | Super simple password protection for limiting public access to pages and assets |
---|---|
Version: | 0.2.1 |
Author: | Ben Lopatin (http://benlopatin.com) |
django simple auth是一个secondary身份验证系统,用于保护 应用程序从公共访问提供的URL。它不能取代你的 认证系统。相反,它的目的是提供非常简单的 非公开信息(如共享照片库)的简单密码。
安装
首先将应用程序添加到python路径。最简单的方法是 pip:
pip install django-simple-auth
从0.2.0版开始,它只针对django 1.11+进行测试,可能是兼容的 与django 1.10,但这还没有测试。
配置
确保已安装了django.contrib.auth,并添加了 应用程序到已安装的应用程序列表:
INSTALLED_APPS = [ ... 'django.contrib.auth', 'simple_auth', ]
下一步将simple\u auth.url添加到您的项目url。:
... url(r'^protect/', include('simple_auth.urls')),
如果要在站点上启用默认的基于规则的限制,请安装 简单中间件:
MIDDLEWARE = [ ... 'simple_auth.middleware.SimpleAuthMiddleware', ]
默认情况下,这将要求所有URL都有密码,但前面有URL的除外 使用/admin/。可以使用protect和ignore覆盖这些url 设置。
SIMPLE_AUTH_IGNORE = [ r'^admin/, r'^$', ] SIMPLE_AUTH_PROTECT = [ r'^forums/' r^blog/', r^secret_page.html$', ]
如果忽略和保护列表中都列出了URL,则默认为 保护url,simple_auth将发出警告。
使用概述
有两种方法可以保护页面和资产:视图装饰器和中间件。
这些方法将始终允许经过身份验证的用户访问url。
中间件
要启用中间件,请按照 安装部分。
个人观点
注:尚未实施。
对于功能视图:
from simple_auth import simple_auth_required @simple_auth_required def myview(request): ...
对于基于类的视图:
from simple_auth import SimpleAuthMixin class MyView(SimpleAuthMixin, DetailView): ...