基于http基本认证的django认证

django-auth-http-basic的Python项目详细描述


说明

此模块为http基本身份验证提供程序提供客户端 允许对django应用程序进行身份验证。它必须作为 Django身份验证后端。

这允许在web的帮助下验证django应用程序 已提供HTTP基本身份验证的服务器,如中所述 [RFC2617](https://www.ietf.org/rfc/rfc2617.txt)。web服务器,如apache 或者nginx,可以很容易地配置为适应复杂的身份验证场景, 例如,通过LDAP和手动过滤器的组合进行身份验证。你的Django project现在能够使用这样的配置。

安装

将此模块添加到setup.py和/或requirements.txt文件:

# … django-auth-http-basic # …

您至少需要django>;=1.10。

配置

settings.py文件中,必须添加/设置变量 身份验证后端以便它包括身份验证后端,例如:

AUTHENTICATION_BACKENDS = [‘django_auth_http_basic.HttpBasicAuthBackend’]

此外,您必须指定提供http基本身份验证的url 在settings.py中为变量http\u basic\u auth\u url提供值 文件,例如:

HTTP_BASIC_AUTH_URL = ‘https://example.com/auth

只要web服务符合http基本身份验证,就可以 用作身份验证后端。因为http基本身份验证传输 用户名和密码以明文形式,您应该通过https访问它。如果 Web服务器位于本地主机上,您可能使用未加密的HTTP。

如果没有用户名和/或 未提供密码。如果用户是 已验证,如果用户未验证,则返回403响应。目前, 除了2xx之外的每个响应代码都将被解释为失败的身份验证。 大多数Web服务器都符合此规则。但是,您可以自由地实现 拥有身份验证Web服务器。

出于测试目的,http_basic_auth_url可以设置为none。在这种情况下 不会联系任何Web服务器,每个用户都将通过身份验证。求求你了 请确保将http\u basic\u auth\u url更改为生产代码的有效url。

如果不将变量http_basic_auth_url设置为任何值,则任何用户都不会 被认证。在这种情况下,将向记录器发送错误消息 命名为django auth http basic。

您可以在设置中使用的另一个(可选)变量是 http_basic_auth_case。此值指定用户名是否 在后端处理区分大小写或不区分大小写的。它的价值本身 是治疗病例不敏感。只分析它的第一个字母。如果是“0”, “f”或“n”,则用户名将折叠为小写。如果你忽略了这个 变量,则假定值为“yes”。

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

推荐PyPI第三方库


热门话题
由于java的原因,maven无法运行代码。lang.NoClassDefFoundError:com/fasterxml/jackson/annotation/JsonMerge   Android项目中的java Creative SDK图像编辑器UI   java如何在Android Studio中使用DataOutputStream上传文件并将其他参数传递到web服务器   java倒计时服务打开时崩溃   java将RubyonRails项目转换为JRubyonRails项目   java我的图库意图是不显示图像?为什么?   java如何在春季启动时跳过mongodb/   java@Autowired在Spring中是如何实现的   甲骨文Akka java。util。同时发生的timeoutexception线程池频繁超时   java maven依赖项对spring启动应用程序有何影响?   java Firestore执行复合查询,未截获事件“已修改”   java ItemStreamException:未能初始化读取器,原因是:IllegalStateException:流已初始化。重新开放前关闭   java将空标记解组到集合的新实例中   使用AspectJ的java新手:无法调用aspect   java查找棋类游戏的所有组合   你为什么要这样做and==与Java中的equals方法不一样吗?   如何对使用JavaUUID的代码进行单元测试?