将 HTTP 重定向到 HTTPS 在基本身份验证中的关键作用是啥?
Posted
技术标签:
【中文标题】将 HTTP 重定向到 HTTPS 在基本身份验证中的关键作用是啥?【英文标题】:what is key role of redirection HTTP to HTTPS in basic authentication?将 HTTP 重定向到 HTTPS 在基本身份验证中的关键作用是什么? 【发布时间】:2017-09-10 14:32:29 【问题描述】:我在 ColdFusion 11 中使用 Windows 托管中的 apache Web 服务器工作我对基本身份验证没有更多的了解,所以我对此有点困惑
-
为什么基本身份验证类型将密码存储在
.htpasswd 文件所以
不需要存储数据库?
如何在进入前将请求HTTP重定向到https
密码
提示?
.htaccess 文件代码,它工作正常,首先完全验证,然后在 HTTP 上重定向到 https,但我想在此处输入密码之前将 HTTP 设置为 https 我的 httpd.config 文件虚拟主机代码
<VirtualHost 112.192.12.16>
DocumentRoot C:/Apache24/htdocs/enovis53
ServerName test.example.com
ErrorLog logs/enovis-inc.com-error_log
CustomLog logs/enovis-inc.com-access_log common
</VirtualHost>
我的 .htaccess 文件代码
AuthName "Example CLMS Production (v5.3.0.0)"
AuthType Basic
AuthUserFile "C:\Apache24\htdocs\enovis53\.htpasswd"
require valid-user
如果有人知道这一点,请指导我
【问题讨论】:
【参考方案1】:为什么基本身份验证类型将密码存储在 .htpasswd 文件中,而不需要存储数据库?
这是由AuthBasicProvider
确定的
语法:AuthBasicProvider provider-name [provider-name] ... 默认值:AuthBasicProvider 文件
AuthBasicProvider
指令设置使用哪个提供程序来验证此位置的用户。默认文件提供程序由 mod_authn_file 模块实现。
因此,在您的情况下,没有定义提供程序,并且应用了默认值(文件)。如果您想要其他提供商,例如一些数据库,指定dbm
,ldap
,...
如何在输入密码提示之前将请求HTTP重定向到https?
通常,某些指令是无条件应用的,除非受到某种限制。要仅在 HTTPS 处于活动状态时请求密码,您可以尝试将 Auth
指令或至少 Require
包含在 If
中
<If "%HTTPS == 'on'">
AuthName "Example CLMS Production (v5.3.0.0)"
AuthType Basic
AuthUserFile "C:\Apache24\htdocs\enovis53\.htpasswd"
require valid-user
</If>
但是现在,当通过http://test.example.com
请求时,所有内容都无需密码即可访问。不要忘记强制https
!
无关,但请注意来自AuthUserFile
的安全警告
安全
确保 AuthUserFile 存储在网络服务器的文档树之外。不要将它放在它保护的目录中。否则,客户端可能能够下载 AuthUserFile。
【讨论】:
谢谢,Olaf 我的知识对基本身份验证非常清楚。但是这段代码不起作用'on'
周围的引号,请重试。
好的,这对我有用。并提出更多问题如何获得有关 htacess 文件和规则的广泛知识?
@vinny 这就像任何知识一样,随着时间的推移而产生。当然,在这里回答问题,并阅读 https://httpd.apache.org/docs/current/
的文档。它还有助于在本地 Apache 安装中进行尝试,例如WAMP 或 XAMPP。
感谢您帮助我提高知识并解决我的问题,所有事情都按预期工作,但我的 Internet Explorer 没有将 HTTP 重定向到 HTTPS 知道它是如何工作的吗?以上是关于将 HTTP 重定向到 HTTPS 在基本身份验证中的关键作用是啥?的主要内容,如果未能解决你的问题,请参考以下文章
登录后 Laravel 基本身份验证重定向到 HTTPS 路由
启用 Azure Active Directory 身份验证时,Azure 移动应用将 Http POST 调用重定向到 GET