为啥在 Django 中需要基本或摘要式身份验证?

Posted

技术标签:

【中文标题】为啥在 Django 中需要基本或摘要式身份验证?【英文标题】:Why do you need basic or digest authentication in Django?为什么在 Django 中需要基本或摘要式身份验证? 【发布时间】:2016-11-21 13:17:05 【问题描述】:

我正在努力在 Django 中使用 apache 和 mod wsgi 进行身份验证。

我有一个很大的问号。在真正开始在 apache 中使用基本或摘要身份验证之前,这对我来说是一个基本问题。

为什么首先需要在 Django 中进行基本或摘要式身份验证? Django 有自己的身份验证系统。您可以在 Django 中使用用户和权限本身来管理权限。

我认为有一个明确的案例表明您需要此 apache 身份验证。如果您根本不需要它,我认为人们不会努力解释如何在 Django 手册中使用 apache 身份验证和 mod wsgi 进行设置。

In Django manual,

例如,您可以:

1. 仅从 Apache 直接向经过身份验证的用户提供静态/媒体文件。

2.针对具有特定权限的 Django 用户验证对 Subversion 存储库的访问权限。

3.允许某些用户连接到使用 mod_dav 创建的 WebDAV 共享。

即使反复阅读了这个设置和手册,我也想不出一些需要选择使用 apache 身份验证作为最佳选项的情况。

为什么在Django中需要使用apache认证或者在哪些特殊情况下需要使用?

【问题讨论】:

对不起,我不明白你在问什么。如果您认为不需要 Apache 身份验证,请不要使用它:我当然从来没有。你有什么问题? 我没想到apache认证也不是没用,即使你使用Django自带的认证系统。所以我希望在使用 apache 身份验证会更好或补偿 django 身份验证系统的某些薄弱部分或其他东西时会有一种情况或情况。所以我想问问更有经验的开发人员是否发现某些场景 apache 身份验证对 Django 系统有用。你能理解我提出这个问题的意图吗?我希望你解释得足够清楚! 【参考方案1】:

apachedjango 身份验证不同。第一个是 Web 服务器级别,然后是应用程序级别。

有一件事,登录和不登录都会有一些url可以访问。这种类型的auth不能在apache中设置(据我所知)。你可以在django里面做。

【讨论】:

也许,你能给我更多详细的例子吗,哪些情况下 apache 身份验证可能对 Django 应用程序有用?我的一个想法是这样的。例如,您首先使用 javascripts 在前端进行验证检查(例如检查您在注册新 id 时是否编写了相同的密码)并将验证过的数据发送到后端,后端可以再次检查验证。所以我认为使用 apache 身份验证有点像这样,你知道就像多放一个门来通过以获得更多的安全访问。这只是我的假设,想听听经验丰富的开发人员的意见。

以上是关于为啥在 Django 中需要基本或摘要式身份验证?的主要内容,如果未能解决你的问题,请参考以下文章

使用 Java 进行基本和摘要式访问身份验证

尝试使用 HTTParty 或 Net:HTTP(或等)连接到“摘要式身份验证”网络服务

HTTPS 和摘要式身份验证

您如何将 JMeter 与摘要式身份验证一起使用?

摘要式身份验证:从 javascript 获取浏览器存储的用户名

使用 HttpURLConnection 进行摘要式身份验证